kdelibs/kpty/CMakeLists.txt
Ivailo Monev 4d6fb007e7 generic: fix most of the overlinking issues
TODO from https://github.com/fluxer/katana/issues/7. I've decided to
keep KDE4 and Katie libraries as PUBLIC, all other libraries as PRIVATE
for that and not use INTERFACE at all since that will not require a lot
of changes to all other sub-projects (kde-baseapps, kde-workspace and
kde-extraapps) build systems.

MusicBrainz5 CMake module was also rewritten as the actual library that
should be linked to is libmusicbrainz5cc, libmusicbrainz5 is the C
version of it.

common checks for X11 extensions where move to main config header,
eventually to be moved to separate config-x11 header.

Signed-off-by: Ivailo Monev <xakepa10@laimg.moc>
2020-02-09 21:58:11 +00:00

55 lines
1.1 KiB
CMake

project(kpty)
include_directories(${KDE4_KDECORE_INCLUDES})
set(kpty_LIB_SRCS
kpty.cpp
kptydevice.cpp
kptyprocess.cpp
)
add_library(kpty ${LIBRARY_TYPE} ${kpty_LIB_SRCS})
target_link_libraries(kpty PRIVATE
${UTIL_LIBRARY}
${UTEMPTER_LIBRARY}
)
target_link_libraries(kpty PUBLIC
${KDE4_KDECORE_LIBS}
)
set_target_properties(kpty PROPERTIES
VERSION ${GENERIC_LIB_VERSION}
SOVERSION ${GENERIC_LIB_SOVERSION}
)
install(
TARGETS kpty
EXPORT kdelibsLibraryTargets
${INSTALL_TARGETS_DEFAULT_ARGS}
)
generate_export_header(kpty)
install(
FILES
${CMAKE_CURRENT_BINARY_DIR}/kpty_export.h
kpty.h
kptydevice.h
kptyprocess.h
DESTINATION ${INCLUDE_INSTALL_DIR}
COMPONENT Devel
)
########### next target ###############
if(NOT HAVE_OPENPTY)
add_executable(kgrantpty kgrantpty.c)
# it needs only some fakes but they are part of kdecore now
target_link_libraries(kgrantpty ${KDE4_KDECORE_LIBS})
install(TARGETS kgrantpty DESTINATION ${LIBEXEC_INSTALL_DIR})
endif()
if(ENABLE_TESTING)
add_subdirectory(tests)
endif()