From 1501090b4110ef4abf96c02ab48a73ccb88664b5 Mon Sep 17 00:00:00 2001 From: David Edmundson Date: Sat, 12 Sep 2015 22:03:26 +0200 Subject: [PATCH] Add a hack to export auto generated interfaces --- interfaces/CMakeLists.txt | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/interfaces/CMakeLists.txt b/interfaces/CMakeLists.txt index 2fa6c8b7a..90d1de575 100644 --- a/interfaces/CMakeLists.txt +++ b/interfaces/CMakeLists.txt @@ -9,7 +9,17 @@ function(geninterface source_h output_h) get_filename_component(basename ${output_h} NAME_WE) qt5_add_dbus_interface(libkdeconnect_SRC ${xml_file} ${basename}) + + #qdbusxml2cpp cannot add an export attribute to a class + #we need this as we export our generated classes + #this adds it in with a not ideal find and replace + add_custom_command(COMMAND + TARGET ${CMAKE_CURRENT_BINARY_DIR}/${output_h}.h + COMMAND sed -i "s/class/class Q_DECL_EXPORT/" ${CMAKE_CURRENT_BINARY_DIR}/${output_h}.h + ) + set(libkdeconnect_SRC ${libkdeconnect_SRC} PARENT_SCOPE) + set(libkdeconnect_HEADERS ${libkdeconnect_HEADERS} PARENT_SCOPE) endfunction() @@ -44,7 +54,6 @@ geninterface(${CMAKE_SOURCE_DIR}/plugins/mprisremote/mprisremoteplugin.h mprisre geninterface(${CMAKE_SOURCE_DIR}/plugins/remotecontrol/remotecontrolplugin.h remotecontrolinterface) geninterface(${CMAKE_SOURCE_DIR}/plugins/lockdevice/lockdeviceplugin.h lockdeviceinterface) - add_library(kdeconnectinterfaces SHARED ${libkdeconnect_SRC}) set_target_properties(kdeconnectinterfaces PROPERTIES VERSION ${KDECONNECT_VERSION}