kdelibs/dnssd/CMakeLists.txt
Ivailo Monev e735f1fd50 generic: move find_package() calls to top-level build file
reference:
https://github.com/fluxer/katana/issues/7

Signed-off-by: Ivailo Monev <xakepa10@gmail.com>
2021-03-26 21:09:16 +02:00

110 lines
2.5 KiB
CMake

project(dnssd)
include_directories( ${KDE4_KDECORE_INCLUDES} )
set(kdnssd_LIB_SRCS
servicebase.cpp
servicemodel.cpp
domainmodel.cpp
)
kde4_add_kcfg_files(kdnssd_LIB_SRCS ${CMAKE_CURRENT_SOURCE_DIR}/settings.kcfgc)
if(AVAHI_FOUND)
include_directories( ${AVAHI_INCLUDE_DIR} )
set(kdnssd_LIB_SRCS ${kdnssd_LIB_SRCS}
avahi-domainbrowser.cpp
avahi-servicebrowser.cpp
avahi-remoteservice.cpp
avahi-publicservice.cpp
avahi-servicetypebrowser.cpp
avahi_server_interface.cpp
avahi_serviceresolver_interface.cpp
avahi_entrygroup_interface.cpp
)
qt4_add_dbus_interface(
kdnssd_LIB_SRCS
org.freedesktop.Avahi.DomainBrowser.xml
avahi_domainbrowser_interface
)
qt4_add_dbus_interface(
kdnssd_LIB_SRCS
org.freedesktop.Avahi.ServiceBrowser.xml
avahi_servicebrowser_interface
)
qt4_add_dbus_interface(
kdnssd_LIB_SRCS
org.freedesktop.Avahi.ServiceTypeBrowser.xml
avahi_servicetypebrowser_interface
)
elseif(DNSSD_FOUND)
include_directories( ${DNSSD_INCLUDE_DIR} )
set(kdnssd_LIB_SRCS ${kdnssd_LIB_SRCS}
mdnsd-domainbrowser.cpp
mdnsd-remoteservice.cpp
mdnsd-publicservice.cpp
mdnsd-responder.cpp
mdnsd-servicebrowser.cpp
mdnsd-servicetypebrowser.cpp
)
else()
set(kdnssd_LIB_SRCS ${kdnssd_LIB_SRCS}
dummy-domainbrowser.cpp
dummy-remoteservice.cpp
dummy-publicservice.cpp
dummy-servicebrowser.cpp
dummy-servicetypebrowser.cpp
)
endif()
########### next target ###############
add_library(kdnssd ${LIBRARY_TYPE} ${kdnssd_LIB_SRCS})
target_link_libraries(kdnssd PRIVATE
${KDE4_KDECORE_LIBS}
${QT_QTNETWORK_LIBRARY}
)
if(DNSSD_FOUND)
target_link_libraries(kdnssd PRIVATE
${DNSSD_LIBRARIES}
)
endif()
target_link_libraries(kdnssd PUBLIC kdecore ${QT_QTCORE_LIBRARY} )
set_target_properties(kdnssd PROPERTIES
VERSION ${GENERIC_LIB_VERSION}
SOVERSION ${GENERIC_LIB_SOVERSION}
)
install(
TARGETS kdnssd
EXPORT kdelibsLibraryTargets
${INSTALL_TARGETS_DEFAULT_ARGS}
)
########### install files ###############
generate_export_header(kdnssd)
install(
FILES
${CMAKE_CURRENT_BINARY_DIR}/kdnssd_export.h
domainbrowser.h
remoteservice.h
servicetypebrowser.h
publicservice.h
servicebase.h
servicebrowser.h
servicemodel.h
domainmodel.h
${CMAKE_CURRENT_BINARY_DIR}/settings.h
DESTINATION ${KDE4_INCLUDE_INSTALL_DIR}/dnssd
COMPONENT Devel
)