diff --git a/package_arch/TribitsAddExecutable.cmake b/package_arch/TribitsAddExecutable.cmake index 4caefab53..ddaf22980 100644 --- a/package_arch/TribitsAddExecutable.cmake +++ b/package_arch/TribitsAddExecutable.cmake @@ -120,6 +120,13 @@ FUNCTION(TRIBITS_ADD_EXECUTABLE EXE_NAME) # # C) Add the executable # + + IF (NOT PACKAGE_ADD_EXECUTABLE_UNIT_TESTING) + INCLUDE_DIRECTORIES(REQUIRED_DURING_INSTALLATION_TESTING + ${${PACKAGE_NAME}_INCLUDE_DIRS}) + SET_PROPERTY(DIRECTORY APPEND PROPERTY PACKAGE_LIBRARY_DIRS + ${${PACKAGE_NAME}_LIBRARY_DIRS}) + ENDIF() SET (EXE_SOURCES) SET(EXE_BINARY_NAME ${EXE_NAME}) @@ -173,6 +180,9 @@ FUNCTION(TRIBITS_ADD_EXECUTABLE EXE_NAME) IF(PARSE_NOEXESUFFIX AND NOT WIN32) SET_TARGET_PROPERTIES(${EXE_BINARY_NAME} PROPERTIES SUFFIX "") + ELSE() + SET_TARGET_PROPERTIES(${EXE_BINARY_NAME} PROPERTIES SUFFIX + ${${PROJECT_NAME}_CMAKE_EXECUTABLE_SUFFIX}) ENDIF() IF(PARSE_LINKER_LANGUAGE) @@ -276,15 +286,15 @@ ENDFUNCTION() # Setup include directories and library dependencies # -IF (${PROJECT_NAME}_VERBOSE_CONFIGURE) - MESSAGE("TribitsAddExecutable.cmake") - PRINT_VAR(${PACKAGE_NAME}_INCLUDE_DIRS) - PRINT_VAR(${PACKAGE_NAME}_LIBRARY_DIRS) -ENDIF() - -IF (NOT PACKAGE_ADD_EXECUTABLE_UNIT_TESTING) - INCLUDE_DIRECTORIES(REQUIRED_DURING_INSTALLATION_TESTING - ${${PACKAGE_NAME}_INCLUDE_DIRS}) - SET_PROPERTY(DIRECTORY APPEND PROPERTY PACKAGE_LIBRARY_DIRS - ${${PACKAGE_NAME}_LIBRARY_DIRS}) -ENDIF() +#IF (${PROJECT_NAME}_VERBOSE_CONFIGURE) +# MESSAGE("TribitsAddExecutable.cmake") +# PRINT_VAR(${PACKAGE_NAME}_INCLUDE_DIRS) +# PRINT_VAR(${PACKAGE_NAME}_LIBRARY_DIRS) +#ENDIF() +# +#IF (NOT PACKAGE_ADD_EXECUTABLE_UNIT_TESTING) +# INCLUDE_DIRECTORIES(REQUIRED_DURING_INSTALLATION_TESTING +# ${${PACKAGE_NAME}_INCLUDE_DIRS}) +# SET_PROPERTY(DIRECTORY APPEND PROPERTY PACKAGE_LIBRARY_DIRS +# ${${PACKAGE_NAME}_LIBRARY_DIRS}) +#ENDIF() diff --git a/package_arch/TribitsAddExecutableAndTest.cmake b/package_arch/TribitsAddExecutableAndTest.cmake index 642e5ed51..b8caa6571 100644 --- a/package_arch/TribitsAddExecutableAndTest.cmake +++ b/package_arch/TribitsAddExecutableAndTest.cmake @@ -42,6 +42,11 @@ INCLUDE(TribitsAddExecutable) INCLUDE(TribitsAddTest) +# +# Helper Macros +# + + MACRO(TRIBITS_FWD_PARSE_ARG VAR_TO_SET_OUT ARGNAME) IF (PARSE_${ARGNAME}) SET(${VAR_TO_SET_OUT} ${${VAR_TO_SET_OUT}} ${ARGNAME} ${PARSE_${ARGNAME}}) diff --git a/package_arch/TribitsAddExecutableTestHelpers.cmake b/package_arch/TribitsAddExecutableTestHelpers.cmake index f40d7b40e..440255fcf 100644 --- a/package_arch/TribitsAddExecutableTestHelpers.cmake +++ b/package_arch/TribitsAddExecutableTestHelpers.cmake @@ -37,10 +37,11 @@ # ************************************************************************ # @HEADER +INCLUDE(AdvancedSet) - -SET(CMAKE_EXECUTABLE_SUFFIX ".exe") - +ADVANCED_SET( ${PROJECT_NAME}_CMAKE_EXECUTABLE_SUFFIX ".exe" + CACHE STRING + "Default exec suffix on all platforms (can be overridden by each executable added)." ) # # Process the COMM arguments diff --git a/package_arch/TribitsAddTestHelpers.cmake b/package_arch/TribitsAddTestHelpers.cmake index 775f2f83c..dbb2f8b5a 100644 --- a/package_arch/TribitsAddTestHelpers.cmake +++ b/package_arch/TribitsAddTestHelpers.cmake @@ -225,9 +225,12 @@ FUNCTION(TRIBITS_ADD_TEST_GET_EXE_BINARY_NAME EXE_NAME_IN TRIBITS_CREATE_NAME_FROM_CURRENT_SOURCE_DIRECTORY(DIRECTORY_NAME) SET(EXE_BINARY_NAME "${DIRECTORY_NAME}_${EXE_BINARY_NAME}") ENDIF() - IF (NOT NOEXESUFFIX_IN) - SET(EXE_BINARY_NAME "${EXE_BINARY_NAME}${CMAKE_EXECUTABLE_SUFFIX}") + IF (NOEXESUFFIX_IN) + SET(EXECUTABLE_SUFFIX "") + ELSE() + SET(EXECUTABLE_SUFFIX ${${PROJECT_NAME}_CMAKE_EXECUTABLE_SUFFIX}) ENDIF() + SET(EXE_BINARY_NAME "${EXE_BINARY_NAME}${EXECUTABLE_SUFFIX}") IF(PACKAGE_NAME AND NOT NOEXEPREFIX_IN) SET(EXE_BINARY_NAME ${PACKAGE_NAME}_${EXE_BINARY_NAME}) ENDIF()