12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- #project(spbase)
- set(MODULE_NAME "spbase")
- set(MODULE_PREFIX "SPBASE")
- file(GLOB ${MODULE_PREFIX}_SRCS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} "*.h" "*.cpp" "*.c")
- list(REMOVE_ITEM ${MODULE_PREFIX}_SRCS
- "SpVitualDevice.h"
- "SpVirtualDevice.cpp"
- "testInherits.cpp"
- "Console.h"
- "Console.cpp"
- "sp_hcc.h" # no used anywhere
- "sp_hcc.c"
- )
- if(MSVC)
- list(REMOVE_ITEM ${MODULE_PREFIX}_SRCS
- "sp_dbg.c"
- )
- else()
- list(REMOVE_ITEM ${MODULE_PREFIX}_SRCS
- "CodeSignVerify.cpp"
- "PadMisc.cpp"
- "SpBaseRoutine.h"
- "SpBaseRoutine.cpp"
- "SpSecureClient.cpp" # remove this file temporary.
- "spShareMemoryBase.h"
- "spShareMemoryBase.cpp"
- "sp_checkEntity.cpp"
- "sp_checkEntity.h"
- "sp_groupProcess.cpp"
- "sp_groupProcess.h"
- "sp_runTask.cpp"
- "sp_sps.c" #silverlight
- "sp_dbg.cpp"
- "sp_dbg.h"
- )
- endif(MSVC)
- if (WIN32)
- set (RC_VERSION_MAJOR ${RVC_VERSION_MAJOR})
- set (RC_VERSION_MINOR ${RVC_VERSION_MINOR})
- set (RC_VERSION_BUILD ${RVC_VERSION_REVISION})
- configure_file(
- ${CMAKE_SOURCE_DIR}/Version.rc.in
- ${CMAKE_CURRENT_BINARY_DIR}/version.rc
- @ONLY)
- set ( ${MODULE_PREFIX}_SRCS ${${MODULE_PREFIX}_SRCS} ${CMAKE_CURRENT_BINARY_DIR}/version.rc)
- list(APPEND ${MODULE_PREFIX}_SRCS "spbase.rc")
- endif()
- list(APPEND ${MODULE_PREFIX}_LIBS libtoolkit RVCComm)
- if(WIN32)
- #add_definitions(-DSPBASE_EXPORTS -DSCEW_DLL)
- list(APPEND ${MODULE_PREFIX}_LIBS psapi imagehlp ws2_32 scew)
- list(APPEND ${MODULE_PREFIX}_LIBS
- Version WinTrust Crypt32 # for CodeSignVerify
- DbgHelp #for SpBase.cpp
- GdiPlus #for GUI
- )
- else()
- list(APPEND ${MODULE_PREFIX}_LIBS winpr scew)
- endif(WIN32)
- add_library(${MODULE_NAME} SHARED ${${MODULE_PREFIX}_SRCS})
- include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../Common)
- include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../libtoolkit)
- include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../third_party/scew/scew)
- include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../third_party/scew/expat-2.1.0/lib)
- if(MSVC)
- target_compile_definitions(${MODULE_NAME} PRIVATE "-DSPBASE_EXPORTS" "-DSCEW_DLL")
- else()
- endif(MSVC)
- target_link_libraries(${MODULE_NAME} ${${MODULE_PREFIX}_LIBS})
- if (BUILD_TESTING)
- add_library(${MODULE_NAME}_a STATIC ${${MODULE_PREFIX}_SRCS})
- target_link_libraries(${MODULE_NAME}_a ${${MODULE_PREFIX}_LIBS})
- set_target_properties(${MODULE_NAME}_a PROPERTIES COMPILE_DEFINITIONS "SPABASE_LINKED_AS_STATIC_LIBRARY")
- # target_compile_definitions(${MODULE_NAME}_a PRIVATE "-DSPABASE_LINKED_AS_STATIC_LIBRARY")
- add_subdirectory(test)
- endif()
- install(TARGETS ${MODULE_NAME}
- RUNTIME DESTINATION "${RVC_RUNTIME_PATH}"
- ARCHIVE DESTINATION "${RVC_LIBRARY_PATH}"
- LIBRARY DESTINATION "${RVC_LIBRARY_PATH}"
- COMPONENT libraries)
|