# This module defines # CORE_INCS # List of include file paths for all required modules for GSI # CORE_LIBRARIES # Full list of libraries required to link GSI executable include(findHelpers) if(DEFINED ENV{CRTM_VER}) set(CRTM_VER $ENV{CRTM_VER}) STRING(REGEX REPLACE "v" "" CRTM_VER ${CRTM_VER}) endif() set( NO_DEFAULT_PATH ) if(NOT BUILD_CRTM ) if(DEFINED ENV{CRTM_LIB} ) set(CRTM_LIBRARY $ENV{CRTM_LIB} ) set(CRTMINC $ENV{CRTM_INC} ) message("CRTM library ${CRTM_LIBRARY} set via Environment variable") else() findInc( crtm CRTM_VER CRTMINC ) find_library( CRTM_LIBRARY NAMES libcrtm_v${CRTM_VER}.a libcrtm.a libCRTM.a HINTS /usr/local/jcsda/nwprod_gdas_2014/lib ${CRTM_BASE} ${CRTM_BASE}/lib ${CRTM_BASE}/${CRTM_VER} ${CRTM_BASE}/${CRTM_VER}/lib ${CRTM_BASE}/v${CRTM_VER}/intel ${CRTM_BASE}/v${CRTM_VER}/ips/${COMPILER_VERSION} ${COREPATH}/v${CRTM_VER}/ips/${COMPILER_VERSION} ${COREPATH} ${COREPATH}/lib $ENV{COREPATH} $ENV{COREPATH}/lib $ENV{COREPATH}/include ${CORECRTM}/crtm/${CRTM_VER} /nwprod2/lib/crtm/v${CRTM_VER} PATH_SUFFIXES lib ${NO_DEFAULT_PATH}) set( crtm "crtm_v${CRTM_VER}") message("Found CRTM library ${CRTM_LIBRARY}") endif() endif() if( NOT CRTM_LIBRARY ) # didn't find the library, so build it from source message("Could not find CRTM library, so building from libsrc") if( NOT DEFINED ENV{CRTM_SRC} ) findSrc( "crtm" CRTM_VER CRTM_DIR ) set(CRTMINC "${CMAKE_BINARY_DIR}/include") else() set( CRTM_DIR "$ENV{CRTM_SRC}/libsrc" CACHE STRING "CRTM Source Location") set(CRTMINC "${CORECRTM}/crtm/${CRTM_VER}/incmod/crtm_v${CRTM_VER}") endif() set( libsuffix "_v${CRTM_VER}${debug_suffix}" ) set( CRTM_LIBRARY "${LIBRARY_OUTPUT_PATH}/libcrtm${libsuffix}.a" CACHE STRING "CRTM Library" ) set( crtm "crtm${libsuffix}") set( BUILD_CRTM "ON" CACHE INTERNAL "Build the CRTM library") add_subdirectory(${CMAKE_SOURCE_DIR}/libsrc/crtm) set( CRTM_LIBRARY ${crtm} ) if( CORE_BUILT ) list( APPEND CORE_BUILT ${CRTM_LIBRARY} ) else() set( CORE_BUILT ${CRTM_LIBRARY} ) endif() else( NOT CRTM_LIBRARY ) if( CORE_LIBRARIES ) list( APPEND CORE_LIBRARIES ${CRTM_LIBRARY} ) else() set( CORE_LIBRARIES ${CRTM_LIBRARY} ) endif() endif( NOT CRTM_LIBRARY ) if( CORE_INCS ) list( APPEND CORE_INCS ${CRTMINC} ) else() set( CORE_INCS ${INCLUDE_OUTPUT_PATH} ${CRTMINC} ) endif() set( CRTM_LIBRARY_PATH ${CRTM_LIBRARY} CACHE STRING "CRTM Library Location" ) set( CRTM_INCLUDE_PATH ${CRTMINC} CACHE STRING "CRTM Include Location" )