Continuing work on cmake/ctest

This commit is contained in:
Mark Berrill 2015-02-13 13:02:07 -05:00
parent 636ddeb7b0
commit 0d9ba5b07a
2 changed files with 15 additions and 5 deletions

View File

@ -38,6 +38,7 @@ SET( BUILD_SERIAL $ENV{BUILD_SERIAL} )
SET( CUDA_FLAGS $ENV{CUDA_FLAGS} )
SET( CUDA_HOST_COMPILER $ENV{CUDA_HOST_COMPILER} )
# Get the source directory based on the current directory
IF ( NOT LBPM_SOURCE_DIR )
SET( LBPM_SOURCE_DIR "${CMAKE_CURRENT_LIST_DIR}/.." )
@ -184,7 +185,7 @@ ELSE()
SET( CTEST_OPTIONS "${CTEST_OPTIONS};-DUSE_TIMER:BOOL=false" )
ENDIF()
IF ( USE_CUDA )
SET( CTEST_OPTIONS "${CTEST_OPTIONS};-DUSE_CUDA:BOOL=true;-DCUDA_NVCC_FLAGS='${CUDA_FLAGS}';-DCUDA_HOST_COMPILER=${CUDA_HOST_COMPILER}" )
SET( CTEST_OPTIONS "${CTEST_OPTIONS};-DUSE_CUDA:BOOL=true;-DCUDA_NVCC_FLAGS='${CUDA_FLAGS}';-DCUDA_HOST_COMPILER=${CUDA_HOST_COMPILER};-DLIB_TYPE=SHARED" )
ELSE()
SET( CTEST_OPTIONS "${CTEST_OPTIONS};-DUSE_CUDA:BOOL=false" )
ENDIF()
@ -204,12 +205,13 @@ CTEST_BUILD()
IF ( USE_VALGRIND_MATLAB )
CTEST_TEST( INCLUDE MATLAB--test_hello_world PARALLEL_LEVEL ${N_PROCS} )
ELSEIF ( USE_VALGRIND )
CTEST_MEMCHECK( EXCLUDE "(procs)|(example--)" PARALLEL_LEVEL ${N_PROCS} )
CTEST_MEMCHECK( EXCLUDE "(procs|example--)" PARALLEL_LEVEL ${N_PROCS} )
ELSEIF ( RUN_WEEKLY )
CTEST_MEMCHECK( INCLUDE "(WEEKLY|example--)" PARALLEL_LEVEL ${N_PROCS} )
ELSE()
CTEST_TEST( EXCLUDE "(WEEKLY)|(example--)" PARALLEL_LEVEL ${N_PROCS} )
CTEST_TEST( PARALLEL_LEVEL ${N_PROCS} )
CTEST_TEST( EXCLUDE "(WEEKLY|example--)" PARALLEL_LEVEL ${N_PROCS} )
ENDIF()
IF( CTEST_COVERAGE_COMMAND )
IF( ENABLE_GCOV )
CTEST_COVERAGE()
ENDIF()

View File

@ -188,4 +188,12 @@ MACRO ( CONFIGURE_LBPM )
IF ( NOT TEST_MAX_PROCS )
SET( TEST_MAX_PROCS 32 )
ENDIF()
# Add the correct paths to rpath in case we build shared libraries
SET(CMAKE_INSTALL_RPATH ${CMAKE_INSTALL_RPATH} "${TIMER_DIRECTORY}" "${LBPM_INSTALL_DIR}/lib" )
IF (LIB_TYPE )
IF ( ${LIB_TYPE} STREQUAL "SHARED" )
SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
SET(CMAKE_BUILD_WITH_INSTALL_RPATH TRUE)
ENDIF()
ENDIF()
ENDMACRO ()