I really hate cmake
This commit is contained in:
@@ -4,6 +4,8 @@ set(CMAKE_CXX_STANDARD 17)
|
||||
set(CMAKE_CXX_STANDARD_REQUIRED True)
|
||||
set(CMAKE_EXPORT_COMPILE_COMMANDS True)
|
||||
|
||||
set(THIRD_PARTY_DIR ${CMAKE_BINARY_DIR}/third_party)
|
||||
|
||||
find_package (Threads REQUIRED)
|
||||
|
||||
include(cmake/Pistache.cmake)
|
||||
|
||||
@@ -1,15 +1,19 @@
|
||||
project(pistache)
|
||||
include(ExternalProject)
|
||||
|
||||
set(EXTERNAL_INSTALL_LOCATION ${CMAKE_CURRENT_SOURCE_DIR}/external)
|
||||
set(PISTACHE_BINARY_DIR ${THIRD_PARTY_DIR}/pistache)
|
||||
|
||||
ExternalProject_Add(pistache_extern
|
||||
ExternalProject_Add(${PROJECT_NAME}_extern
|
||||
GIT_REPOSITORY https://github.com/pistacheio/pistache.git
|
||||
GIT_TAG master
|
||||
#CMAKE_ARGS -DCMAKE_INSTALL_PREFIX=${EXTERNAL_INSTALL_LOCATION}
|
||||
BINARY_DIR ${PISTACHE_BINARY_DIR}
|
||||
INSTALL_COMMAND ""
|
||||
)
|
||||
# include_directories(${EXTERNAL_INSTALL_LOCATION}/include)
|
||||
# link_directories(${EXTERNAL_INSTALL_LOCATION}/lib)
|
||||
|
||||
#add_library(pistache STATIC IMPORTED GLOBAL)
|
||||
#SET_PROPERTY(TARGET pistache IMPORTED_LOCATION ${EXTERNA_INSTALL_LOCATION})
|
||||
add_library(${PROJECT_NAME} STATIC IMPORTED)
|
||||
add_dependencies(${PROJECT_NAME} ${PROJECT_NAME}_extern)
|
||||
|
||||
set_target_properties(${PROJECT_NAME} PROPERTIES IMPORTED_LOCATION "${PISTACHE_BINARY_DIR}/lib/libpistache.a")
|
||||
|
||||
#file(MAKE_DIRECTORY "${PISTACHE_BINARY_DIR}/include")
|
||||
target_include_directories(${PROJECT_NAME} SYSTEM INTERFACE "${PISTACHE_BINARY_DIR}/include/")
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
project(daggy)
|
||||
|
||||
ExternalProject_Add_StepDependencies(pistache_extern build)
|
||||
#ExternalProject_Add_StepDependencies(pistache_extern build)
|
||||
|
||||
file(GLOB SOURCES src/*.cpp)
|
||||
add_library(${PROJECT_NAME} SHARED ${SOURCES})
|
||||
add_library(${PROJECT_NAME} STATIC ${SOURCES})
|
||||
target_include_directories(${PROJECT_NAME} PUBLIC include)
|
||||
add_dependencies(${PROJECT_NAME} pistache_extern)
|
||||
target_link_libraries(${PROJECT_NAME} pistache_static pthread)
|
||||
add_dependencies(${PROJECT_NAME} pistache)
|
||||
target_link_libraries(${PROJECT_NAME} pistache pthread)
|
||||
|
||||
Reference in New Issue
Block a user