73 lines
2.3 KiB
CMake
73 lines
2.3 KiB
CMake
project(cd_utils)
|
|
cmake_minimum_required(VERSION 2.6)
|
|
if (POLICY CMP0017)
|
|
cmake_policy(SET CMP0017 NEW)
|
|
endif()
|
|
if (NOT LIBPROJECT)
|
|
find_package(PIP REQUIRED)
|
|
option(LIB "System install" 1)
|
|
option(DEBUG "Build with -g3" 0)
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -O3 -Wall")
|
|
if (DEBUG)
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -g3")
|
|
endif()
|
|
endif()
|
|
if (MINGW)
|
|
find_package(MinGW REQUIRED)
|
|
endif()
|
|
include_directories(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} ${PIP_INCLUDES})
|
|
#file(GLOB HDRS_UTILS "*.h")
|
|
#file(GLOB CPPS_UTILS "*.cpp")
|
|
file(GLOB CPPS_UTILS "cdutils_*.cpp")
|
|
file(GLOB HDRS_UTILS "cdutils_*.h")
|
|
if (DEFINED ENV{QNX_HOST})
|
|
add_library(${PROJECT_NAME} STATIC ${CPPS_UTILS} ${HDRS_UTILS})
|
|
else()
|
|
add_library(${PROJECT_NAME} SHARED ${CPPS_UTILS} ${HDRS_UTILS})
|
|
endif()
|
|
target_link_libraries(${PROJECT_NAME} ${PIP_LIBRARY})
|
|
|
|
add_executable(cdutilstest "cdutilstest.cpp" "cdtest.h")
|
|
target_link_libraries(cdutilstest ${PIP_LIBRARY} ${PROJECT_NAME})
|
|
message(STATUS "Building ${PROJECT_NAME}")
|
|
|
|
if(NOT LIBPROJECT)
|
|
if(LIB)
|
|
if(WIN32)
|
|
if(MINGW)
|
|
set(CMAKE_INSTALL_PREFIX ${MINGW_DIR})
|
|
endif()
|
|
else()
|
|
if (DEFINED ANDROID_PLATFORM)
|
|
set(CMAKE_INSTALL_PREFIX ${ANDROID_SYSTEM_LIBRARY_PATH}/usr)
|
|
else()
|
|
if(CMAKE_CROSSCOMPILING)
|
|
set(CMAKE_INSTALL_PREFIX ${CMAKE_STAGING_PREFIX})
|
|
else()
|
|
set(CMAKE_INSTALL_PREFIX ${INSTALL_PREFIX}/usr/local)
|
|
endif()
|
|
endif()
|
|
endif()
|
|
message(STATUS "Install ${PROJECT_NAME} to system \"${CMAKE_INSTALL_PREFIX}\"")
|
|
else()
|
|
message(STATUS "Install ${PROJECT_NAME} to local \"bin\", \"lib\" and \"include\"")
|
|
endif()
|
|
endif()
|
|
|
|
if(LIB)
|
|
if(WIN32)
|
|
install(FILES ${HDRS_UTILS} DESTINATION ${MINGW_INCLUDE})
|
|
install(TARGETS ${PROJECT_NAME} DESTINATION ${MINGW_LIB})
|
|
install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION ${MINGW_BIN})
|
|
else()
|
|
install(FILES ${HDRS_UTILS} DESTINATION ${CMAKE_INSTALL_PREFIX}/include)
|
|
install(TARGETS ${PROJECT_NAME} DESTINATION ${CMAKE_INSTALL_PREFIX}/lib)
|
|
endif()
|
|
#message(STATUS "Install ${PROJECT_NAME} to system \"${CMAKE_INSTALL_PREFIX}\"")
|
|
else()
|
|
install(TARGETS ${PROJECT_NAME} RUNTIME DESTINATION bin)
|
|
install(TARGETS ${PROJECT_NAME} DESTINATION lib)
|
|
install(FILES ${HDRS_UTILS} DESTINATION include)
|
|
#message(STATUS "Install ${PROJECT_NAME} to local \"bin\"")
|
|
endif()
|