2019-07-26 07:08:13 +02:00
|
|
|
find_package(PkgConfig REQUIRED)
|
|
|
|
pkg_check_modules(LIBXDG_BASEDIR REQUIRED libxdg-basedir)
|
|
|
|
# sqlite3 is not a direct dependency, but vsqlite++ has no cmake- or pkg-config
|
|
|
|
# module. Since it installs in the same directories as sqlite3, I am adding the
|
|
|
|
# module here to add the include- and link directories below. It is not REQUIRED
|
|
|
|
# because the sqlite3 in Debian jessie doesn't come with a pkg-config module.
|
|
|
|
pkg_check_modules(SQLITE3 sqlite3)
|
|
|
|
pkg_check_modules(CURLPP REQUIRED curlpp)
|
|
|
|
find_package(ICU COMPONENTS uc i18n REQUIRED)
|
|
|
|
|
|
|
|
include_directories(${LIBXDG_BASEDIR_INCLUDE_DIRS})
|
|
|
|
include_directories(${SQLITE3_INCLUDE_DIRS})
|
|
|
|
include_directories(${CURLPP_INCLUDE_DIRS})
|
|
|
|
include_directories(${ICU_INCLUDE_DIRS})
|
|
|
|
|
|
|
|
link_directories(${LIBXDG_BASEDIR_LIBRARY_DIRS})
|
|
|
|
link_directories(${SQLITE3_LIBRARY_DIRS})
|
|
|
|
link_directories(${CURLPP_LIBRARY_DIRS})
|
|
|
|
link_directories(${ICU_LIBRARY_DIRS})
|
|
|
|
|
2019-07-26 07:12:50 +02:00
|
|
|
file(GLOB sources_lib *.cpp export/*.cpp)
|
2019-07-26 20:57:12 +02:00
|
|
|
file(GLOB headers_lib *.hpp)
|
|
|
|
file(GLOB headers_lib_export export/*.hpp)
|
|
|
|
|
2019-07-26 07:08:13 +02:00
|
|
|
add_library(${PROJECT_NAME} SHARED ${sources_lib})
|
|
|
|
target_link_libraries(${PROJECT_NAME} ${LIBXDG_BASEDIR_LIBRARIES}
|
|
|
|
vsqlitepp stdc++fs ${CURLPP_LIBRARIES} ${ICU_LIBRARIES})
|
|
|
|
set_target_properties(${PROJECT_NAME} PROPERTIES
|
|
|
|
VERSION ${PROJECT_VERSION}
|
|
|
|
SOVERSION ${${PROJECT_NAME}_VERSION_MAJOR}
|
|
|
|
)
|
2019-07-26 20:57:12 +02:00
|
|
|
|
2019-07-26 07:08:13 +02:00
|
|
|
install(TARGETS ${PROJECT_NAME} LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
|
2019-07-26 20:57:12 +02:00
|
|
|
install(FILES ${headers_lib}
|
|
|
|
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME})
|
|
|
|
install(FILES ${headers_lib_export}
|
|
|
|
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}/export)
|