changed: generate IFEM.h in build folder
git-svn-id: http://svn.sintef.no/trondheim/IFEM/trunk@2373 e10b68d5-8a6e-419e-a041-bce267b0401d
This commit is contained in:
parent
6405cb3ffb
commit
c1b37b2f0d
@ -8,7 +8,7 @@ SET(IFEM_VERSION "${IFEM_VERSION_MAJOR}.${IFEM_VERSION_MINOR}.${IFEM_VERSION_PAT
|
||||
|
||||
# Generate header with version info
|
||||
CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/src/IFEM.h.in
|
||||
${PROJECT_SOURCE_DIR}/src/IFEM.h @ONLY)
|
||||
IFEM.h @ONLY)
|
||||
CONFIGURE_FILE(${PROJECT_SOURCE_DIR}/doc/libifem-builddeps.control.in
|
||||
${PROJECT_SOURCE_DIR}/doc/libifem-builddeps.control @ONLY)
|
||||
|
||||
@ -44,6 +44,7 @@ SET(INCLUDES
|
||||
${PROJECT_SOURCE_DIR}/src/SIM
|
||||
${PROJECT_SOURCE_DIR}/src/Utility
|
||||
${PROJECT_SOURCE_DIR}/3rdparty/expreval
|
||||
${CMAKE_BINARY_DIR}
|
||||
)
|
||||
|
||||
IF(NOT IFEM_USE_SYSTEM_TINYXML)
|
||||
@ -165,7 +166,7 @@ ELSE(WIN32)
|
||||
src/ASM/TimeDomain.h
|
||||
src/Integrands/*.h src/LinAlg/*.h src/SIM/*.h
|
||||
src/Utility/*.h
|
||||
src/IFEM.h)
|
||||
${CMAKE_BINARY_DIR}/IFEM.h)
|
||||
INSTALL(FILES ${IFEM_HEADERS}
|
||||
DESTINATION include/IFEM COMPONENT ${IFEM_DEV_COMPONENT})
|
||||
|
||||
|
@ -1,25 +1,34 @@
|
||||
IF(NOT IFEM_FORCE_SYSTEM_LIB)
|
||||
FIND_PATH(IFEM_PATH
|
||||
NAMES ${CMAKE_BUILD_TYPE}/IFEM.h
|
||||
PATHS ${PROJECT_SOURCE_DIR}/../../
|
||||
${PROJECT_SOURCE_DIR}/../../../ NO_DEFAULT_PATHS)
|
||||
SET(IFEM_H_PATH ${IFEM_PATH}/${CMAKE_BUILD_TYPE})
|
||||
IF(NOT IFEM_PATH)
|
||||
FIND_PATH(IFEM_PATH
|
||||
NAMES IFEM.h
|
||||
PATHS ${PROJECT_SOURCE_DIR}/../../src/
|
||||
${PROJECT_SOURCE_DIR}/../../../src/)
|
||||
PATHS ${PROJECT_SOURCE_DIR}/../../
|
||||
${PROJECT_SOURCE_DIR}/../../../ NO_DEFAULT_PATHS)
|
||||
SET(IFEM_H_PATH ${IFEM_PATH})
|
||||
ENDIF(NOT IFEM_PATH)
|
||||
ENDIF(NOT IFEM_FORCE_SYSTEM_LIB)
|
||||
|
||||
MESSAGE(STATUS "Path ${IFEM_PATH}")
|
||||
IF(IFEM_PATH)
|
||||
# Build is in-tree
|
||||
MESSAGE(STATUS "Using in-tree libIFEM")
|
||||
|
||||
SET(IFEM_INCLUDES ${IFEM_PATH}
|
||||
${IFEM_PATH}/ASM
|
||||
${IFEM_PATH}/Eig
|
||||
${IFEM_PATH}/LinAlg
|
||||
${IFEM_PATH}/SIM
|
||||
${IFEM_PATH}/Utility)
|
||||
SET(IFEM_INCLUDES ${IFEM_H_PATH}
|
||||
${IFEM_PATH}/src/ASM
|
||||
${IFEM_PATH}/src/Eig
|
||||
${IFEM_PATH}/src/LinAlg
|
||||
${IFEM_PATH}/src/SIM
|
||||
${IFEM_PATH}/src/Utility)
|
||||
|
||||
FIND_LIBRARY(IFEM_LIBRARIES
|
||||
NAMES IFEM
|
||||
PATHS ${IFEM_PATH}/../${IFEM_BUILD_TYPE}/lib
|
||||
${IFEM_PATH}/../lib
|
||||
PATHS ${IFEM_PATH}/${CMAKE_BUILD_TYPE}/lib
|
||||
${IFEM_PATH}/lib
|
||||
NO_DEFAULT_PATH)
|
||||
IF(NOT IFEM_LIBRARIES)
|
||||
MESSAGE(WARNING "Could not find the in-tree libIFEM library, "
|
||||
@ -34,7 +43,6 @@ IF(IFEM_PATH)
|
||||
SET(IFEM_INCLUDES ${IFEM_INCLUDES}
|
||||
${IFEM_PATH}/../3rdparty/tinyxml)
|
||||
ENDIF(NOT IFEM_USE_SYSTEM_TINYXML)
|
||||
SET(IFEM_H ${IFEM_PATH}/IFEM.h)
|
||||
ELSE(IFEM_PATH)
|
||||
IF(NOT DEFINED FORCE_SYSTEM_IFEM OR NOT "${FORCE_SYSTEM_IFEM}")
|
||||
MESSAGE(STATUS "No in-tree libIFEM found, looking for system library")
|
||||
@ -52,7 +60,7 @@ ELSE(IFEM_PATH)
|
||||
# system lib always uses system tixml
|
||||
FIND_PACKAGE(TinyXML REQUIRED)
|
||||
SET(IFEM_DEPLIBS ${IFEM_DEPLIBS} ${TINYXML_LIBRARIES})
|
||||
SET(IFEM_H ${IFEM_INCLUDES}/IFEM/IFEM.h)
|
||||
SET(IFEM_H_PATH ${IFEM_INCLUDES})
|
||||
ENDIF(IFEM_PATH)
|
||||
|
||||
INCLUDE(FindPackageHandleStandardArgs)
|
||||
@ -61,7 +69,7 @@ find_package_handle_standard_args(IFEM DEFAULT_MSG
|
||||
|
||||
# Export version information
|
||||
IF(IFEM_INCLUDES)
|
||||
EXECUTE_PROCESS(COMMAND cat "${IFEM_H}" OUTPUT_VARIABLE IFEM_HEADER)
|
||||
EXECUTE_PROCESS(COMMAND cat "${IFEM_H_PATH}/IFEM.h" OUTPUT_VARIABLE IFEM_HEADER)
|
||||
STRING(REGEX MATCH "IFEM_VERSION_MAJOR ([0-9]+)" IFEM_VERSION_MAJOR ${IFEM_HEADER})
|
||||
STRING(REGEX REPLACE "IFEM_VERSION_MAJOR ([0-9]+)" "\\1" IFEM_VERSION_MAJOR "${IFEM_VERSION_MAJOR}")
|
||||
STRING(REGEX MATCH "IFEM_VERSION_MINOR ([0-9]+)" IFEM_VERSION_MINOR ${IFEM_HEADER})
|
||||
|
Loading…
Reference in New Issue
Block a user