From 4a55ae0536e46020ca17070155a3223536e36703 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Vr=C3=A1til?= Date: Fri, 15 May 2015 16:01:11 +0200 Subject: Async: make it a stand-alone CMake project --- async/src/CMakeLists.txt | 64 +++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 55 insertions(+), 9 deletions(-) (limited to 'async/src') diff --git a/async/src/CMakeLists.txt b/async/src/CMakeLists.txt index becc8ee..05d08b6 100644 --- a/async/src/CMakeLists.txt +++ b/async/src/CMakeLists.txt @@ -1,17 +1,63 @@ -project(akonadi2async) - -include_directories(${CMAKE_CURRENT_BINARY_DIR}) - -set(async_SRCS +set(kasync_SRCS async.cpp future.cpp debug.cpp ) -add_library(${PROJECT_NAME} SHARED ${async_SRCS}) -target_link_libraries(${PROJECT_NAME} PUBLIC Qt5::Core) +set(kasync_priv_HEADERS + async_impl.h + debug.h +) + +ecm_generate_headers(kasync_HEADERS + HEADER_NAMES + Async + Future +) + + +add_library(KF5Async ${kasync_SRCS}) +add_library(KF5::Async ALIAS KF5Async) + +generate_export_header(KF5Async BASE_NAME kasync) + +target_include_directories(KF5Async INTERFACE "$") +target_include_directories(KF5Async PUBLIC "$") + +target_link_libraries(KF5Async + PUBLIC + Qt5::Core +) if (WITH_KJOB) - target_link_libraries(${PROJECT_NAME} PUBLIC KF5::CoreAddons) + target_link_libraries(KF5Async PUBLIC KF5::CoreAddons) endif () -install(TARGETS ${PROJECT_NAME} ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) + +set_target_properties(KF5Async PROPERTIES + VERSION ${KASYNC_VERSION_STRING} + SOVERSION ${KASYNC_SOVERSION} + EXPORT_NAME KAsync +) + +ecm_generate_pri_file(BASE_NAME KAsync + LIB_NAME KF5Async + FILENAME_VAR PRI_FILENAME +) + +install(TARGETS + KF5Async + EXPORT KF5AsyncTargets ${KF5_INSTALL_TARGETS_DEFAULT_ARGS} +) + +install(FILES + ${CMAKE_CURRENT_BINARY_DIR}/kasync_export.h + ${kasync_HEADERS} + ${kasync_priv_HEADERS} + DESTINATION ${KDE_INSTALL_INCLUDEDIR_KF5}/Async + COMPONENT Devel +) + +install(FILES + ${PRI_FILENAME} + DESTINATION ${ECM_MKSPECS_INSTALL_DIR} +) -- cgit v1.2.3