Skip to content
This repository was archived by the owner on Dec 5, 2020. It is now read-only.

Commit

Permalink
Update release branch to 0.2.6
Browse files Browse the repository at this point in the history
--HG--
branch : release
  • Loading branch information
jamespjh committed Jun 11, 2012
2 parents 5ae8ca5 + b04643c commit 1e1f98f
Show file tree
Hide file tree
Showing 325 changed files with 198,609 additions and 4,465 deletions.
7 changes: 7 additions & 0 deletions .hgignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ build/*
Tools/visclients/dependencies/jogamp
Code/build/*
Code/build_clang/*
install/*
results/*
dependencies/build/*
deploy/.jobscripts
Expand All @@ -34,7 +35,13 @@ dependencies/cppunit-prefix
dependencies/tinyxml-prefix
Tools/visim/visim
Tools/setuptool/*.gdb
Tools/steering/javagui/dependencies
Tools/setuptool/HemeLbSetupTool/Model/_Generation.so
Tools/setuptool/HemeLbSetupTool/Model/Generation.py
Tools/setuptool/HemeLbSetupTool/Model/Generation/Wrap.cpp
Tools/steering/javagui/dependencies/jogamp/
Tools/visclients/hs_err*.log
Tools/analysis/config.yml
Tools/analysis/plot.sh
Tools/derek
hemelb-prefix/src/hemelb-stamp/hemelb-urlinfo.txt
1 change: 1 addition & 0 deletions .hgtags
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,4 @@ cf69e9e672eb2366c422909f4a7c8c61beef7e46 C++ Vis-client removed - Java one, whic
5b8334f7529800dff017ad588034ff26441d86ea 0.1.0
a6b66311e3c4712559ff6852157263d8e46f1eed 0.2.0
85a80e60d1452e3d440752034db94be3feeae12d 0.2.1
b7694be48d4ec46562ad386822a01ea7de9e0619 0.2.2
7 changes: 6 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ if(TIXML_USE_STL)
endif(TIXML_USE_STL)

option(HEMELB_USE_DEBUGGER "Use built in hemelb debugger" OFF)
option(HEMELB_VALIDATE_GEOMETRY "Validate geometry" OFF)
set(HEMELB_READING_GROUP_SIZE 5
CACHE INTEGER "Number of cores to use to read geometry file.")
set(HEMELB_LOG_LEVEL info
Expand All @@ -23,6 +24,7 @@ option(HEMELB_USE_ALL_WARNINGS_GNU "Show all compiler warnings on development bu
option(HEMELB_USE_BOOST "Use Boost" OFF)
option(HEMELB_STATIC_ASSERT "Use simple compile-time assertions" ON)
set(HEMELB_OPTIMISATION "-O4" CACHE STRING "Optimisation level (can be blank or -O1 to -O4)")
option(HEMELB_BUILD_MULTISCALE "Build HemeLB Multiscale functionality" OFF)
set(HEMELB_LATTICE "D3Q15"
CACHE STRING "Select the lattice type to use (D3Q15,D3Q19,D3Q27)")
set(HEMELB_KERNEL "LBGK"
Expand All @@ -32,6 +34,7 @@ set(HEMELB_WALL_BOUNDARY "SIMPLEBOUNCEBACK"
set(HEMELB_STEERING_HOST "CCS" CACHE STRING "Use a default host suffix for steering? (CCS, NGS2Leeds, NGS2Manchester, LONI, NCSA or blank)")
option(HEMELB_DEPENDENCIES_SET_RPATH "Set runtime RPATH" ON)
set(HEMELB_SUBPROJECT_MAKE_JOBS 1 CACHE INTEGER "Number of jobs to use for subproject build steps")
option(HEMELB_WAIT_ON_CONNECT "Wait for steering client" OFF)
#------- Dependencies -----------

add_subdirectory(dependencies)
Expand All @@ -47,6 +50,7 @@ ExternalProject_Add(
-DHEMELB_DEPENDENCIES_INSTALL_PATH=${HEMELB_DEPENDENCIES_INSTALL_PATH}
-DTIXML_USE_STL=${TIXML_USE_STL}
-DHEMELB_USE_DEBUGGER=${HEMELB_USE_DEBUGGER}
-DHEMELB_VALIDATE_GEOMETRY=${HEMELB_VALIDATE_GEOMETRY}
-DHEMELB_LOG_LEVEL=${HEMELB_LOG_LEVEL}
-DHEMELB_STEERING_LIB=${HEMELB_STEERING_LIB}
-DHEMELB_USE_MULTIMACHINE=${HEMELB_USE_MULTIMACHINE}
Expand All @@ -70,7 +74,8 @@ ExternalProject_Add(
-DHEMELB_LATTICE=${HEMELB_LATTICE}
-DHEMELB_KERNEL=${HEMELB_KERNEL}
-DHEMELB_WALL_BOUNDARY=${HEMELB_WALL_BOUNDARY}

-DHEMELB_WAIT_ON_CONNECT=${HEMELB_WAIT_ON_CONNECT}
-DHEMELB_BUILD_MULTISCALE=${HEMELB_BUILD_MULTISCALE}
BUILD_COMMAND make -j${HEMELB_SUBPROJECT_MAKE_JOBS}
)

Expand Down
19 changes: 14 additions & 5 deletions Code/.project
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,13 @@
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.python.pydev.PyDevBuilder</name>
<arguments>
</arguments>
</buildCommand>
<buildCommand>
<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
<triggers>clean,full,incremental,</triggers>
<arguments>
<dictionary>
<key>?name?</key>
Expand All @@ -19,27 +23,31 @@
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.autoBuildTarget</key>
<value>all</value>
<value></value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildArguments</key>
<value></value>
<value>-j4</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildCommand</key>
<value>make</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.buildLocation</key>
<value>${workspace_loc:/Code/build}</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.cleanBuildTarget</key>
<value>clean_all</value>
<value>clean</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.contents</key>
<value>org.eclipse.cdt.make.core.activeConfigSettings</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableAutoBuild</key>
<value>false</value>
<value>true</value>
</dictionary>
<dictionary>
<key>org.eclipse.cdt.make.core.enableCleanBuild</key>
Expand Down Expand Up @@ -75,5 +83,6 @@
<nature>org.eclipse.cdt.core.ccnature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
<nature>org.python.pydev.pythonNature</nature>
</natures>
</projectDescription>
4 changes: 3 additions & 1 deletion Code/.settings/org.eclipse.cdt.core.prefs
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
#Thu Jan 12 10:43:36 GMT 2012
#Mon May 21 17:33:11 BST 2012
eclipse.preferences.version=1
environment/project/cdt.managedbuild.toolchain.gnu.base.825880950.1300491428=
environment/project/cdt.managedbuild.toolchain.gnu.base.825880950.1300491428.770148502/append=true
environment/project/cdt.managedbuild.toolchain.gnu.base.825880950.1300491428.770148502/appendContributed=true
environment/project/cdt.managedbuild.toolchain.gnu.base.825880950.1300491428/HEMELB_MACHINE/delimiter=\:
environment/project/cdt.managedbuild.toolchain.gnu.base.825880950.1300491428/HEMELB_MACHINE/operation=append
environment/project/cdt.managedbuild.toolchain.gnu.base.825880950.1300491428/HEMELB_MACHINE/value=CCS
Expand Down
115 changes: 107 additions & 8 deletions Code/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,13 +5,18 @@ project(HemeLB)
#---- OPTION switches accepted by the build -------

option(HEMELB_USE_DEBUGGER "Use built in hemelb debugger" OFF)
option(HEMELB_VALIDATE_GEOMETRY "Validate geometry" OFF)
option(HEMELB_USE_MULTIMACHINE "Use multi-level parallelism support" OFF)
option(HEMELB_BUILD_UNITTESTS "Build the unit-tests" ON)
option(HEMELB_BUILD_TESTS_ALL "Build all the tests" ON)
option(HEMELB_BUILD_TESTS_UNIT "Build the unit-tests (HEMELB_BUILD_TESTS_ALL takes precedence)" ON)
option(HEMELB_BUILD_TESTS_FUNCTIONAL "Build the functional tests (HEMELB_BUILD_TESTS_ALL takes precedence)" ON)
option(HEMELB_USE_ALL_WARNINGS_GNU "Show all compiler warnings on development builds (gnu-style-compilers)" ON)
option(HEMELB_USE_STREAKLINES "Calculate streakline images" ON)
option(HEMELB_USE_BOOST "Use Boost" OFF)
option(HEMELB_DEPENDENCIES_SET_RPATH "Set runtime RPATH" ON)
option(HEMELB_STATIC_ASSERT "Use simple compile-time assertions" ON)
option(HEMELB_WAIT_ON_CONNECT "Wait for steering client" OFF)
option(HEMELB_BUILD_MULTISCALE "Build HemeLB Multiscale functionality" OFF)

set(HEMELB_READING_GROUP_SIZE 5
CACHE INTEGER "Number of cores to use to read geometry file.")
Expand Down Expand Up @@ -46,10 +51,18 @@ add_definitions(-DHEMELB_LATTICE=${HEMELB_LATTICE})
add_definitions(-DHEMELB_KERNEL=${HEMELB_KERNEL})
add_definitions(-DHEMELB_WALL_BOUNDARY=${HEMELB_WALL_BOUNDARY})

if(HEMELB_VALIDATE_GEOMETRY)
add_definitions(-DHEMELB_VALIDATE_GEOMETRY)
endif()

if (NOT HEMELB_USE_STREAKLINES)
add_definitions(-DNO_STREAKLINES)
endif()

if (HEMELB_WAIT_ON_CONNECT)
add_definitions(-DHEMELB_WAIT_ON_CONNECT)
endif()

if (NOT HEMELB_STATIC_ASSERT)
add_definitions(-DHEMELB_NO_STATIC_ASSERT)
endif()
Expand All @@ -72,21 +85,26 @@ list(APPEND CMAKE_LIBRARY_PATH ${HEMELB_DEPENDENCIES_INSTALL_PATH}/lib)
#--- Set up runtime search path for DLLs -----
if(HEMELB_DEPENDENCIES_SET_RPATH)
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
SET(CMAKE_INSTALL_RPATH "${HEMELB_DEPENDENCIES_PATH}/lib")
SET(CMAKE_INSTALL_RPATH "${HEMELB_DEPENDENCIES_INSTALL_PATH}/lib")
endif()

#-------Check for platform dependent features ----

include(CheckCXXSourceCompiles)
CHECK_CXX_SOURCE_COMPILES("#include <cmath>\n int main(int c,char** v){ return isnan(1.0); }" HAVE_ISNAN)
CHECK_CXX_SOURCE_COMPILES("#include <cmath>\n int main(int c,char** v){ return std::isnan(1.0); }" HAVE_STD_ISNAN)
CHECK_CXX_SOURCE_COMPILES("#include <sys/time.h>\n#include <sys/resource.h>\nint main(int c,char** v){ rusage usage;\ngetrusage(RUSAGE_SELF, &usage);\nreturn usage.ru_maxrss; }" HAVE_RUSAGE)

if(HAVE_ISNAN)
add_definitions(-DHAVE_ISNAN)
endif()

if( HAVE_STD_ISNAN)
add_definitions(-D HAVE_STD_ISNAN)
if(HAVE_STD_ISNAN)
add_definitions(-DHAVE_STD_ISNAN)
endif()

if(HAVE_RUSAGE)
add_definitions(-DHAVE_RUSAGE)
endif()

# ------MPI------------------
Expand Down Expand Up @@ -118,6 +136,12 @@ endif()
#------CTemplate ----------------
find_package(CTemplate REQUIRED)
include_directories(${CTEMPLATE_INCLUDE_DIR})
if(HEMELB_BUILD_MULTISCALE)
#------MPWide ----------------
find_package(MPWide REQUIRED)
include_directories(${MPWide_INCLUDE_DIR})
add_definitions(-DHEMELB_BUILD_MULTISCALE)
endif()

#------zlib ----------------
find_package(ZLIB REQUIRED)
Expand All @@ -138,7 +162,7 @@ configure_file (
# so that we will find TutorialConfig.h
include_directories("${PROJECT_BINARY_DIR}")

# ----------- HemeLB ------------------s
# ----------- HemeLB ------------------
if (APPLE)
add_definitions(-DHEMELB_CFG_ON_BSD -DHEMELB_CFG_ON_OSX)
endif()
Expand All @@ -149,6 +173,7 @@ endif()

set(root_sources SimulationMaster.cc mpiInclude.cc)
add_executable(hemelb main.cc ${root_sources})

include_directories(${PROJECT_SOURCE_DIR})
set(package_subdirs
configuration
Expand Down Expand Up @@ -180,14 +205,65 @@ target_link_libraries(hemelb
${Boost_LIBRARIES}
${CTEMPLATE_LIBRARIES}
${ZLIB_LIBRARIES}
${MPWide_LIBRARIES}
)
INSTALL(TARGETS hemelb RUNTIME DESTINATION bin)
list(APPEND RESOURCES resources/report.txt.ctp resources/report.xml.ctp)

# ----------- HemeLB Multiscale ------------------
if (HEMELB_BUILD_MULTISCALE)
if (APPLE)
add_definitions(-DHEMELB_CFG_ON_BSD -DHEMELB_CFG_ON_OSX)
endif()
if (HEMELB_USE_DEBUGGER)
# Force a debug build, because the debugger makes no sense without debug symbols
set(CMAKE_BUILD_TYPE DEBUG)
endif()

set(root_sources SimulationMaster.cc mpiInclude.cc multiscale/MultiscaleSimulationMaster.h)
add_executable(ms_hemelb mainMultiscale.cc ${root_sources})
include_directories(${PROJECT_SOURCE_DIR})
set(package_subdirs
configuration
extraction
reporting
steering
vis
geometry
lb
net
debug
topology
util
io
log
colloids
)
foreach(subdir ${package_subdirs})
set(lib "hemelb_${subdir}")
list(APPEND heme_libraries ${lib})
# add_subdirectory(${subdir})
endforeach()
# add_subdirectory(resources)
target_link_libraries(ms_hemelb
${heme_libraries}
${MPI_LIBRARIES}
${PARMETIS_LIBRARIES}
${TINYXML_LIBRARIES}
${Boost_LIBRARIES}
${CTEMPLATE_LIBRARIES}
${ZLIB_LIBRARIES}
${MPWide_LIBRARIES}
)
INSTALL(TARGETS ms_hemelb RUNTIME DESTINATION bin)
list(APPEND RESOURCES resources/report.txt.ctp resources/report.xml.ctp)
endif()

# ----------- HEMELB unittests ---------------
if(HEMELB_BUILD_UNITTESTS)
if(HEMELB_BUILD_TESTS_ALL OR HEMELB_BUILD_TESTS_UNIT)
#------CPPUnit ---------------
find_package(CPPUnit REQUIRED)
include_directories(${CPPUNIT_INCLUDE_DIR})
find_package(CPPUnit REQUIRED)
include_directories(${CPPUNIT_INCLUDE_DIR})
add_executable(unittests_hemelb ${root_sources})
add_subdirectory(unittests)
target_link_libraries(unittests_hemelb
Expand All @@ -200,6 +276,7 @@ if(HEMELB_BUILD_UNITTESTS)
${Boost_LIBRARIES}
${CTEMPLATE_LIBRARIES}
${ZLIB_LIBRARIES}
${MPWide_LIBRARIES}
${CMAKE_DL_LIBS}) #Because on some systems CPPUNIT needs to be linked to libdl
INSTALL(TARGETS unittests_hemelb RUNTIME DESTINATION bin)
list(APPEND RESOURCES unittests/resources/four_cube.gmy unittests/resources/four_cube.xml unittests/resources/four_cube_multiscale.xml
Expand All @@ -208,6 +285,28 @@ if(HEMELB_BUILD_UNITTESTS)
)
endif()

# ----------- HEMELB functionaltests ---------------
if(HEMELB_BUILD_TESTS_ALL OR HEMELB_BUILD_TESTS_FUNCTIONAL)
#------CPPUnit ---------------
find_package(CPPUnit REQUIRED)
include_directories(${CPPUNIT_INCLUDE_DIR})
add_executable(functionaltests_hemelb ${root_sources})
add_subdirectory(functionaltests/cpptests)
target_link_libraries(functionaltests_hemelb
hemelb_functionaltests
${heme_libraries}
${MPI_LIBRARIES}
${PARMETIS_LIBRARIES}
${TINYXML_LIBRARIES}
${CPPUNIT_LIBRARY}
${Boost_LIBRARIES}
${CTEMPLATE_LIBRARIES}
${MPWide_LIBRARIES}
${ZLIB_LIBRARIES}
${CMAKE_DL_LIBS}) #Because on some systems CPPUNIT needs to be linked to libdl
INSTALL(TARGETS functionaltests_hemelb RUNTIME DESTINATION bin)
endif()

#-------- Copy and install resources --------------

foreach(resource ${RESOURCES})
Expand Down
Loading

0 comments on commit 1e1f98f

Please sign in to comment.