move to new build system
This commit is contained in:
@ -1,50 +1,51 @@
|
||||
if (ALPINE_FOUND)
|
||||
set(CMAKE_POSITION_INDEPENDENT_CODE OFF)
|
||||
set(CMAKE_COLOR_MAKEFILE OFF)
|
||||
set(CMAKE_FIND_PACKAGE_PREFER_CONFIG ON)
|
||||
|
||||
set(REPERTORY_MUSL ON)
|
||||
set(REPERTORY_DEFINITIONS ${REPERTORY_DEFINITIONS} -DREPERTORY_MUSL)
|
||||
set(CMAKE_C_STANDARD 11)
|
||||
set(CMAKE_C_STANDARD_REQUIRED ON)
|
||||
|
||||
set(CMAKE_CXX_STANDARD 20)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
|
||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
|
||||
if(PROJECT_STATIC_LINK)
|
||||
set(CMAKE_POSITION_INDEPENDENT_CODE OFF)
|
||||
else()
|
||||
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
||||
endif()
|
||||
|
||||
set(CMAKE_COLOR_MAKEFILE OFF)
|
||||
set(CMAKE_CXX_STANDARD 20)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED ON)
|
||||
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||
set(CMAKE_MODULE_PATH
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules
|
||||
${CMAKE_MODULE_PATH}
|
||||
set(CMAKE_BUILD_TYPE ${PROJECT_CMAKE_BUILD_TYPE})
|
||||
|
||||
file(MAKE_DIRECTORY ${PROJECT_EXTERNAL_BUILD_ROOT}/lib)
|
||||
file(CREATE_LINK ${PROJECT_EXTERNAL_BUILD_ROOT}/lib ${PROJECT_EXTERNAL_BUILD_ROOT}/lib64 SYMBOLIC)
|
||||
|
||||
list(PREPEND CMAKE_PREFIX_PATH
|
||||
${PROJECT_EXTERNAL_BUILD_ROOT}
|
||||
${PROJECT_EXTERNAL_BUILD_ROOT}/share
|
||||
)
|
||||
if (MINGW)
|
||||
set(CMAKE_MODULE_PATH
|
||||
/mingw64/lib/cmake
|
||||
/mingw64/lib64/cmake
|
||||
${CMAKE_MODULE_PATH}
|
||||
|
||||
if(PROJECT_IS_MINGW)
|
||||
list(PREPEND CMAKE_PREFIX_PATH
|
||||
/mingw64
|
||||
)
|
||||
|
||||
include_directories(BEFORE
|
||||
/mingw64/include
|
||||
)
|
||||
|
||||
link_directories(BEFORE
|
||||
/mingw64/lib
|
||||
/mingw64/lib64
|
||||
)
|
||||
endif()
|
||||
set(THREADS_PREFER_PTHREAD_FLAG ON)
|
||||
|
||||
if (NOT CMAKE_BUILD_TYPE)
|
||||
set(CMAKE_BUILD_TYPE Release)
|
||||
endif()
|
||||
include_directories(BEFORE SYSTEM
|
||||
${PROJECT_3RD_PARTY_DIR}/include
|
||||
${PROJECT_EXTERNAL_BUILD_ROOT}/include
|
||||
)
|
||||
|
||||
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
set(DEBUG_EXTRA d)
|
||||
set(DEBUG_EXTRA2 -${DEBUG_EXTRA})
|
||||
set(DEBUG_EXTRA3 _${DEBUG_EXTRA})
|
||||
set(BOOST_DEBUG_EXTRA gd-)
|
||||
set(CMAKE_BUILD_TYPE_LOWER debug)
|
||||
else()
|
||||
set(CMAKE_BUILD_TYPE_LOWER release)
|
||||
endif()
|
||||
string(TOLOWER "${CMAKE_GENERATOR}" CMAKE_GENERATOR_LOWER)
|
||||
|
||||
set(REPERTORY_OUTPUT_DIR ${CMAKE_BINARY_DIR})
|
||||
|
||||
set(EXTERNAL_BUILD_ROOT ${CMAKE_BINARY_DIR}/external)
|
||||
set(EXTERNAL_BUILD_TYPE ${CMAKE_BUILD_TYPE})
|
||||
|
||||
if (UNIX OR MINGW)
|
||||
file(MAKE_DIRECTORY ${EXTERNAL_BUILD_ROOT}/lib)
|
||||
file(CREATE_LINK ${EXTERNAL_BUILD_ROOT}/lib ${EXTERNAL_BUILD_ROOT}/lib64 SYMBOLIC)
|
||||
endif()
|
||||
link_directories(BEFORE
|
||||
${PROJECT_EXTERNAL_BUILD_ROOT}/lib
|
||||
${PROJECT_EXTERNAL_BUILD_ROOT}/lib64
|
||||
)
|
||||
|
Reference in New Issue
Block a user