cmake_minimum_required(VERSION 2.6) PROJECT(DDServer) add_definitions( -DLINUX ) set(EXECUTABLE_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/build/${CMAKE_BUILD_TYPE}/bin/) set(LIBRARY_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/build/${CMAKE_BUILD_TYPE}/lib/) if( CMAKE_SIZEOF_VOID_P EQUAL 8 ) #64 bits MESSAGE( STATUS "64 bits" ) set(CMAKE_C_FLAGS_DEBUG "-ggdb -DLINUX -Dlinux -m64 -march=core2 -fPIC -D_REENTRANT -pthread") set(CMAKE_C_FLAGS_RELEASE "-DLINUX -Dlinux -m64 -march=core2 -fPIC -D_REENTRANT -pthread") set(USRLIB_DIR "/usr/lib64/:/usr/local/lib64/") else( CMAKE_SIZEOF_VOID_P EQUAL 8 ) #32 bits MESSAGE( STATUS "32 bits" ) set(CMAKE_C_FLAGS_DEBUG "-ggdb -DLINUX -march=i686 -fPIC -Dlinux -D_REENTRANT -malign-double -pthread") set(CMAKE_C_FLAGS_DEBUG "-DLINUX -march=i686 -fPIC -Dlinux -D_REENTRANT -malign-double -pthread") set(USRLIB_DIR "/usr/lib/:/usr/local/lib/") endif( CMAKE_SIZEOF_VOID_P EQUAL 8 ) set (USERLOCAL_ROOT "/usr/local/lib/") if (EXISTS "$ENV{USERLOCAL_ROOT}") set(USERLOCAL_ROOT "$ENV{USERLOCAL_ROOT}") message("USERLOCAL_ROOT forced to ${USERLOCAL_ROOT}") endif() set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules/") # Fedora30 # include_directories( AFTER "/usr/include/tirpc" ) find_package( Threads REQUIRED ) find_package( CRYPT REQUIRED ) find_package( NetCDF REQUIRED ) find_package( DDClient REQUIRED ) find_package( CDF REQUIRED ) find_package( LibXML2 REQUIRED ) get_filename_component(NETCDFLIB_DIR ${NETCDFLIBRARIES} PATH) get_filename_component(DDCLIENTLIB_DIR ${DDCLIENTLIBRARIES} PATH) set(DDSERVICE_URL $ENV{DDSERVICE_URL}) set(DDRESPATH $ENV{DDRESPATH}) set(DDBASEPATH "$ENV{DDBASEPATH}") set(DDBASEDATA "$ENV{DDBASEPATH}/DATA") set(DDBASEINFO "$ENV{DDBASEPATH}/INFO") set(USERMANAGER "$ENV{INSTALL_DIR}/bin/USERMANAGER") set(PROXY_HOST $ENV{PROXY_HOST}) set(PROXY_USERPWD $ENV{PROXY_USERPWD}) configure_file ( "${CMAKE_SOURCE_DIR}/scripts/DDServer.env.in" "${CMAKE_SOURCE_DIR}/scripts/DDServer.env" ) configure_file ( "${CMAKE_SOURCE_DIR}/src/DDSERVICES/SOAP/DDserverWeb_ini.php.in" "${CMAKE_SOURCE_DIR}/src/DDSERVICES/SOAP/DDserverWeb_ini.php" ) configure_file ( "${CMAKE_SOURCE_DIR}/src/DDSERVICES/SOAP/dd.wsdl.in" "${CMAKE_SOURCE_DIR}/src/DDSERVICES/SOAP/dd.wsdl" ) MESSAGE( STATUS "Build DD_Server Project" ) add_subdirectory(src/SERVER) add_subdirectory(src/DECODERS/ascii2nc) add_subdirectory(src/DECODERS/cdfnew2nc) add_subdirectory(src/DECODERS/nc2nc) add_subdirectory(src/DECODERS/themis) add_subdirectory(src/DATA/TOOLS) add_subdirectory(src/DDSERVICES/TOOLS) add_subdirectory(src/DDADMIN/TOOLS) add_subdirectory(tests) install(FILES "scripts/StartServer" DESTINATION . PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) install(FILES "scripts/DDServer.env" DESTINATION . PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) file(GLOB scripts "scripts/*.sh") install(FILES ${scripts} DESTINATION . PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE) install(DIRECTORY "src/CALLEXT/" DESTINATION bin/CALLEXT) install(DIRECTORY "src/DATA/MANAGER/" DESTINATION bin/DATAMANAGER) install(DIRECTORY "src/DATA/TEMPLATES/" DESTINATION bin) install(DIRECTORY "src/REMOTEDATA/" DESTINATION bin/REMOTEDATA) install(DIRECTORY "src/DDADMIN/MANAGER/" DESTINATION bin/USERMANAGER) install(DIRECTORY "src/DDSERVICES/SOAP/" DESTINATION DDService) install(DIRECTORY "src/DDSERVICES/REST/" DESTINATION DDService) install(FILES "src/DECODERS/cdfnew2nc/cdf_to_netcdf_mapping.dat" DESTINATION bin PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) file(GLOB config_files "info/REMOTEDATA/*.xml") install(FILES ${config_files} DESTINATION ${DDBASEINFO} PERMISSIONS OWNER_READ OWNER_WRITE GROUP_READ WORLD_READ) SET(CMAKE_VERBOSE_MAKEFILE ON)