CMakeLists.txt 2.88 KB
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(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules/")

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)

configure_file (
 "${CMAKE_SOURCE_DIR}/scripts/DDServer.env.in"
 "${CMAKE_SOURCE_DIR}/scripts/DDServer.env"
)

MESSAGE( STATUS "Build DD_Server Project" )
add_subdirectory(src/SERVER)
add_subdirectory(src/DECODERS/ascii2nc)
add_subdirectory(src/DECODERS/cdf2nc)
add_subdirectory(src/DECODERS/cdfnew2nc)
add_subdirectory(src/DECODERS/nc2nc)
add_subdirectory(src/DECODERS/themis/esa2nc)
add_subdirectory(src/DECODERS/themis/esafull2nc)
add_subdirectory(src/DECODERS/themis/esamom2nc)
add_subdirectory(src/DECODERS/themis/fgm2nc)
add_subdirectory(src/DECODERS/themis/sst2nc)
add_subdirectory(src/DATA/TOOLS)
add_subdirectory(src/DDSERVICES/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)
install(FILES "scripts/AddLocalVI.sh" DESTINATION . PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE)
install(FILES "scripts/UpdateInfoVI.sh" 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/REMOTEDATA/" DESTINATION bin/REMOTEDATA)
install(DIRECTORY "src/DDSERVICES/SOAP/" DESTINATION DDService)
install(DIRECTORY "src/DDSERVICES/REST/" DESTINATION DDService)

SET(CMAKE_VERBOSE_MAKEFILE ON)