CMakeLists.txt 5.42 KB
cmake_minimum_required(VERSION 2.6)

PROJECT(AMDA-Kernel)

SET(CPACK_PACKAGE_VERSION_MAJOR "3")
SET(CPACK_PACKAGE_VERSION_MINOR "6")
SET(CPACK_PACKAGE_VERSION_PATCH "0")

# configure a header file to pass some of the CMake settings to the source code
configure_file (
 "${CMAKE_SOURCE_DIR}/src/Common/AMDA-Kernel_Config.hh.in"
 "${CMAKE_SOURCE_DIR}/src/Common/AMDA-Kernel_Config.hh"
)

set(EXECUTABLE_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/build/${CMAKE_BUILD_TYPE}/bin/)
set(LIBRARY_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/build/${CMAKE_BUILD_TYPE}/lib/)
set(PLUGIN_OUTPUT_PATH ${CMAKE_SOURCE_DIR}/build/${CMAKE_BUILD_TYPE}/plugin/)

set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} ${OPTION_SUP} -std=c++0x -fPIC -Wall -Wextra -ggdb -DLINUX -Dlinux -D_REENTRANT -malign-double -pthread")
set(CMAKE_C_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG}  ${OPTION_SUP} -fPIC -Wall -ggdb -DLINUX  -fPIC -Dlinux -D_REENTRANT -malign-double -pthread")

set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -std=c++0x -Wall -Wextra -fPIC -DLINUX -Dlinux -D_REENTRANT -malign-double -pthread -O3 -DNDEBUG")
set(CMAKE_C_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_DEBUG}  ${OPTION_SUP} -fPIC -Wall -DLINUX -Dlinux -D_REENTRANT -malign-double -pthread")

set(USERLOCAL_ROOT "/opt/local")
#set(BOOST_ROOT "/opt/local")
set(BOOST_ROOT "/opt/tools/gcc/4.7.2/boost")
set(CSLIM_ROOT "/opt/FitNesse/CSlim")
set(Boost_USE_MULTITHREADED ON)
find_package( Boost 1.51 REQUIRED COMPONENTS program_options regex system filesystem thread iostreams)
 
find_package(Threads REQUIRED)
find_package( Boost COMPONENTS thread system REQUIRED)



#get_cmake_property(_variableNames VARIABLES)
#foreach (_variableName ${_variableNames})
#    message(STATUS "${_variableName}=${${_variableName}}")
#endforeach()

set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} "${CMAKE_SOURCE_DIR}/cmake/modules/")


    MESSAGE( STATUS "Build AMDA-Kernel Project" )
    find_package(cURL REQUIRED)
    find_package(Archive REQUIRED)
    find_package(Log4Cxx REQUIRED)
    find_package(LibXML2 REQUIRED)
    find_package(PLplot REQUIRED)
    find_package(CDF REQUIRED)
    find_package(DDClientCpp REQUIRED)
    find_package(Geopack)
    
    get_filename_component(DDCLIENTLIB_DIR ${DDCLIENTLIBRARIES} PATH)

	configure_file (
 		"${CMAKE_SOURCE_DIR}/script/loginDD_Server.sh.in"
 		"${CMAKE_SOURCE_DIR}/script/loginDD_Server.sh"
	)
    
    add_subdirectory(src/TimeUtil)
    add_subdirectory(src/Common)
    add_subdirectory(src/helpers)
    add_subdirectory(src/Info)
    add_subdirectory(src/Parameters)
    add_subdirectory(src/XMLConfigurator)
    add_subdirectory(src/XMLParameterConfigurator)
    add_subdirectory(src/Plugins)
    add_subdirectory(src/Main)
    add_subdirectory(src/XMLRequest)
    add_subdirectory(src/SpiceKernel)
    add_subdirectory(src/amdaXMLRequestorTool)
	add_subdirectory(src/amdaParameterGenerator)
	add_subdirectory(src/amdaParameterInfo)
	add_subdirectory(src/PostProcessing)
    add_subdirectory(src/ParamOutputImpl/Download)
    add_subdirectory(src/ParamOutputImpl/IntervalTrue)
    add_subdirectory(src/ParamOutputImpl/DataMining)
    add_subdirectory(src/ParamOutputImpl/Plot)
    add_subdirectory(src/ParamOutputImpl/Statistic)
    add_subdirectory(src/TimeTableCatalog)
    add_subdirectory(src/TTOperations)
    add_subdirectory(src/TTConversion)
    add_subdirectory(src/ParamGetImpl/DDServerInterface)
    add_subdirectory(src/ParamGetImpl/LocalFileInterface)
    add_subdirectory(src/InternLib)
    add_subdirectory(src/ExternLib/Deriv)
    add_subdirectory(src/ExternLib/Magnitude)
    add_subdirectory(src/ExternLib/Morschhauser)
    add_subdirectory(src/ExternLib/Ram_Presure)
	add_subdirectory(src/ExternLib/TimeShifted)
	add_subdirectory(src/ExternLib/GetClbInfo)
	add_subdirectory(src/ExternLib/GetClbInfoByIndex)
	add_subdirectory(src/ExternLib/GetMavenStaticEnergy)
	add_subdirectory(src/ExternLib/GetJunoJediEnergy)
	add_subdirectory(src/ExternLib/EnergyBounds)
    add_subdirectory(src/ExternLib/Boxcar)
    add_subdirectory(src/ExternLib/SlidingAverage)
	add_subdirectory(src/ExternLib/Merge)
	add_subdirectory(src/ExternLib/els_calculate)
        add_subdirectory(src/ExternLib/mexvex_els_decode)
	add_subdirectory(src/ExternLib/mexvex_els_calculate)
	add_subdirectory(src/ExternLib/PlotCurves)
	add_subdirectory(src/ExternLib/StatisticProcesses)
	add_subdirectory(src/ExternLib/FramesTransformation)
	add_subdirectory(src/ExternLib/sum_into_table_range)
    add_subdirectory(src/ExternLib/EISCATDataFilter)
    IF ( GEOPACK_FOUND )
	add_subdirectory(src/ExternLib/Tsyganenko96)
    ENDIF ()

    find_package(CSlim)
    IF ( CSLIM_FOUND )
        add_subdirectory(test/DD_Client/CSlimFixtures)
        add_subdirectory(test/CSlimTestServer)
    ENDIF ()
    
IF(CMAKE_COMPILER_IS_GNUCC)
  SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fmessage-length=0")
ENDIF(CMAKE_COMPILER_IS_GNUCC)
IF(CMAKE_COMPILER_IS_GNUCXX)
  SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fmessage-length=0")
ENDIF(CMAKE_COMPILER_IS_GNUCXX)

SET(CMAKE_VERBOSE_MAKEFILE ON)

SET(CPACK_PACKAGE_DESCRIPTION_SUMMARY "AMDA-Kernel")
SET(CPACK_GENERATOR "STGZ;TGZ")
SET(CPACK_SOURCE_GENERATOR "TGZ")
SET(CPACK_PACKAGE_VENDOR "AKKA IS")
#SET(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/ReadMe.txt")
#SET(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
SET(CPACK_PACKAGE_INSTALL_DIRECTORY "CMake ${CMake_VERSION_MAJOR}.${CMake_VERSION_MINOR}")
#SET(CPACK_STRIP_FILES "bin/MyExecutable")
#SET(CPACK_SOURCE_STRIP_FILES "")
SET(CPACK_PACKAGE_EXECUTABLES "roof" "FTP client")
INCLUDE(CPack)