Update CMake to use pkg-config to find librexy
This commit is contained in:
parent
67469cc575
commit
4581f8da8d
@ -2,6 +2,7 @@ project(rjp++)
|
|||||||
cmake_minimum_required(VERSION 3.0.2)
|
cmake_minimum_required(VERSION 3.0.2)
|
||||||
|
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
|
find_package(PkgConfig)
|
||||||
|
|
||||||
set(rjp++_VERSION_MAJOR 0)
|
set(rjp++_VERSION_MAJOR 0)
|
||||||
set(rjp++_VERSION_MINOR 9)
|
set(rjp++_VERSION_MINOR 9)
|
||||||
@ -14,13 +15,15 @@ option(BUILD_TESTS "Build test programs" OFF)
|
|||||||
option(ENABLE_PROFILING "Enable asan" OFF)
|
option(ENABLE_PROFILING "Enable asan" OFF)
|
||||||
mark_as_advanced(ENABLE_PROFILING)
|
mark_as_advanced(ENABLE_PROFILING)
|
||||||
|
|
||||||
|
pkg_check_modules(LIBREXY REQUIRED librexy)
|
||||||
|
|
||||||
set(SOURCE_LIST "src/allocator.cpp" "src/array.cpp" "src/integral.cpp" "src/object.cpp" "src/rjp.cpp" "src/string.cpp" "src/string_val.cpp" "src/value.cpp" "src/vget_proxy.cpp" "src/container.cpp" "src/member.cpp")
|
set(SOURCE_LIST "src/allocator.cpp" "src/array.cpp" "src/integral.cpp" "src/object.cpp" "src/rjp.cpp" "src/string.cpp" "src/string_val.cpp" "src/value.cpp" "src/vget_proxy.cpp" "src/container.cpp" "src/member.cpp")
|
||||||
if(ENABLE_SHARED)
|
if(ENABLE_SHARED)
|
||||||
set(RJP++_LIBFLAGS "-lrjp++ -lrexy")
|
set(RJP++_LIBFLAGS "-lrjp++ ${LIBREXY_LIBRARIES}")
|
||||||
add_library(rjp++ SHARED ${SOURCE_LIST})
|
add_library(rjp++ SHARED ${SOURCE_LIST})
|
||||||
set_target_properties(rjp++ PROPERTIES SOVERSION "${rjp_VERSION_MAJOR}.${rjp_VERSION_MINOR}.${rjp_VERSION_REVISION}")
|
set_target_properties(rjp++ PROPERTIES SOVERSION "${rjp_VERSION_MAJOR}.${rjp_VERSION_MINOR}.${rjp_VERSION_REVISION}")
|
||||||
else()
|
else()
|
||||||
set(RJP++_LIBFLAGS "-lrjp++ -lrjp -lrexy")
|
set(RJP++_LIBFLAGS "-lrjp++ -lrjp ${LIBREXY_LIBRARIES}")
|
||||||
add_library(rjp++ STATIC ${SOURCE_LIST})
|
add_library(rjp++ STATIC ${SOURCE_LIST})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
@ -46,9 +49,9 @@ if(BUILD_TESTS)
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
|
||||||
set_target_properties(rjp++ PROPERTIES COMPILE_FLAGS -std=c++17)
|
target_compile_options(rjp++ PUBLIC -Wall -Wextra -pedantic -std=c++17 ${LIBREXY_CFLAGS_OTHER})
|
||||||
target_compile_options(rjp++ PRIVATE -Wall -Wextra -pedantic)
|
target_include_directories(rjp++ PUBLIC ${LIBREXY_INCLUDE_DIRS})
|
||||||
target_link_libraries(rjp++ rjp -lrexy)
|
target_link_libraries(rjp++ PUBLIC rjp ${LIBREXY_LINK_LIBRARIES})
|
||||||
|
|
||||||
install(TARGETS rjp++
|
install(TARGETS rjp++
|
||||||
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user