From 3605ac982af1b2ebf1d930f4de3fab6087e83f44 Mon Sep 17 00:00:00 2001 From: Alexander Golubev Date: Thu, 1 Aug 2013 17:23:21 -0500 Subject: Fix build failures when compiling kfax and kdvi separately. This resolves bug report 1593. --- CMakeLists.txt | 7 ++- kviewshell/CMakeLists.txt | 132 ++++++++++++++++++++++++---------------------- 2 files changed, 74 insertions(+), 65 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index feda8c2c..7e8f3d05 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -118,6 +118,12 @@ if( BUILD_TDEFILE_PLUGINS AND NOT BUILD_KGHOSTVIEW ) add_subdirectory( kghostview/dscparse ) endif( ) +# kdvi and kfax require a static library from kviewshell +# see BUG 1593 for details +if( BUILD_KVIEWSHELL OR BUILD_KDVI OR BUILD_KFAX ) + add_subdirectory( kviewshell ) +endif( ) + tde_conditional_add_subdirectory( BUILD_DOC doc ) tde_conditional_add_subdirectory( BUILD_KAMERA kamera ) tde_conditional_add_subdirectory( BUILD_KCOLOREDIT kcoloredit ) @@ -138,7 +144,6 @@ tde_conditional_add_subdirectory( BUILD_KSNAPSHOT ksnapshot ) tde_conditional_add_subdirectory( BUILD_KSVG ksvg ) tde_conditional_add_subdirectory( BUILD_KUICKSHOW kuickshow ) tde_conditional_add_subdirectory( BUILD_KVIEW kview ) -tde_conditional_add_subdirectory( BUILD_KVIEWSHELL kviewshell ) tde_conditional_add_subdirectory( BUILD_LIBKSCAN libkscan ) diff --git a/kviewshell/CMakeLists.txt b/kviewshell/CMakeLists.txt index 3ad83e46..d2d78865 100644 --- a/kviewshell/CMakeLists.txt +++ b/kviewshell/CMakeLists.txt @@ -11,9 +11,6 @@ project( kviewshell ) -add_subdirectory( pics ) -add_subdirectory( plugins ) - include_directories( ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR} @@ -27,95 +24,102 @@ link_directories( ) -##### headers ################################### +##### kviewshell (static) ####################### +# we need this library for kdvi and kfax +tde_add_library( kviewshell STATIC_PIC AUTOMOC + SOURCES + kviewshell.cpp +) -install( FILES - tdemultipageInterface.h - DESTINATION ${INCLUDE_INSTALL_DIR} ) -install( FILES - anchor.h bookmark.h pageView.h documentPageCache.h - documentRenderer.h documentWidget.h history.h hyperlink.h - tdemultipage.h length.h pageNumber.h pageSize.h renderedDocumentPage.h - renderedDocumentPagePixmap.h renderedDocumentPagePrinter.h - selection.h simplePageSize.h textBox.h zoom.h zoomlimits.h - DESTINATION ${INCLUDE_INSTALL_DIR}/kviewshell ) +##### kviewshell itself ######################### +if ( BUILD_KVIEWSHELL ) + add_subdirectory( pics ) + add_subdirectory( plugins ) -##### other data ################################ +##### ifaces (static) ########################### + tde_add_library( ifaces STATIC_PIC AUTOMOC + SOURCES + kviewpart_iface.cpp + ) -install( FILES kviewshell.rc DESTINATION ${DATA_INSTALL_DIR}/kviewshell ) -install( FILES kviewerpart.rc DESTINATION ${DATA_INSTALL_DIR}/kviewerpart ) -install( FILES tdemultipage.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} ) -install( FILES emptymultipage.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) -install( FILES kviewshell.kcfg DESTINATION ${KCFG_INSTALL_DIR} ) +##### headers ################################### -##### ifaces (static) ########################### + install( FILES + tdemultipageInterface.h + DESTINATION ${INCLUDE_INSTALL_DIR} ) -tde_add_library( ifaces STATIC_PIC AUTOMOC - SOURCES - kviewpart_iface.cpp -) + install( FILES + anchor.h bookmark.h pageView.h documentPageCache.h + documentRenderer.h documentWidget.h history.h hyperlink.h + tdemultipage.h length.h pageNumber.h pageSize.h renderedDocumentPage.h + renderedDocumentPagePixmap.h renderedDocumentPagePrinter.h + selection.h simplePageSize.h textBox.h zoom.h zoomlimits.h + DESTINATION ${INCLUDE_INSTALL_DIR}/kviewshell ) -##### kviewshell (static) ####################### +##### other data ################################ -tde_add_library( kviewshell STATIC_PIC AUTOMOC - SOURCES - kviewshell.cpp -) + install( FILES kviewshell.rc DESTINATION ${DATA_INSTALL_DIR}/kviewshell ) + install( FILES kviewerpart.rc DESTINATION ${DATA_INSTALL_DIR}/kviewerpart ) + install( FILES tdemultipage.desktop DESTINATION ${SERVICETYPES_INSTALL_DIR} ) + install( FILES emptymultipage.desktop DESTINATION ${SERVICES_INSTALL_DIR} ) + install( FILES kviewshell.kcfg DESTINATION ${KCFG_INSTALL_DIR} ) ##### tdemultipage (shared) ####################### -tde_add_library( tdemultipage SHARED AUTOMOC - SOURCES - tdemultipage.cpp pageView.cpp marklist.cpp tdemultipageInterface.skel - units.cpp pageSize.cpp simplePageSize.cpp renderedDocumentPage.cpp - renderedDocumentPagePixmap.cpp renderedDocumentPagePrinter.cpp - documentPageCache.cpp documentWidget.cpp searchWidget.cpp - selection.cpp documentRenderer.cpp history.cpp kvsprefs.kcfgc - tableOfContents.cpp kprintDialogPage_pageoptions.cpp - VERSION 0.0.0 - LINK tdeparts-shared tdeprint-shared - DESTINATION ${LIB_INSTALL_DIR} -) + tde_add_library( tdemultipage SHARED AUTOMOC + SOURCES + tdemultipage.cpp pageView.cpp marklist.cpp tdemultipageInterface.skel + units.cpp pageSize.cpp simplePageSize.cpp renderedDocumentPage.cpp + renderedDocumentPagePixmap.cpp renderedDocumentPagePrinter.cpp + documentPageCache.cpp documentWidget.cpp searchWidget.cpp + selection.cpp documentRenderer.cpp history.cpp kvsprefs.kcfgc + tableOfContents.cpp kprintDialogPage_pageoptions.cpp + VERSION 0.0.0 + LINK tdeparts-shared tdeprint-shared + DESTINATION ${LIB_INSTALL_DIR} + ) ##### kviewerpart (module) ###################### -tde_add_kpart( kviewerpart AUTOMOC - SOURCES - kviewpart.cpp pageSizeWidget_base.ui pageSizeWidget.cpp - pageSizeDialog.cpp pageSize.cpp sizePreview.cpp zoom.cpp - units.cpp kvsprefs.kcfgc optionDialogGUIWidget_base.ui - optionDialogAccessibilityWidget.ui simplePageSize.cpp - LINK ifaces-static tdeparts-shared - DESTINATION ${PLUGIN_INSTALL_DIR} -) + tde_add_kpart( kviewerpart AUTOMOC + SOURCES + kviewpart.cpp pageSizeWidget_base.ui pageSizeWidget.cpp + pageSizeDialog.cpp pageSize.cpp sizePreview.cpp zoom.cpp + units.cpp kvsprefs.kcfgc optionDialogGUIWidget_base.ui + optionDialogAccessibilityWidget.ui simplePageSize.cpp + LINK ifaces-static tdeparts-shared + DESTINATION ${PLUGIN_INSTALL_DIR} + ) ##### kviewshell (executable) ################## -tde_add_executable( kviewshell AUTOMOC - SOURCES - main.cpp - LINK kviewshell-static tdeparts-shared - DESTINATION ${BIN_INSTALL_DIR} -) + tde_add_executable( kviewshell AUTOMOC + SOURCES + main.cpp + LINK kviewshell-static tdeparts-shared + DESTINATION ${BIN_INSTALL_DIR} + ) ##### emptymultipagepart (module) ############### -tde_add_kpart( emptymultipagepart AUTOMOC - SOURCES - empty_multipage.cpp emptyRenderer.cpp - LINK tdemultipage-shared - DESTINATION ${PLUGIN_INSTALL_DIR} -) + tde_add_kpart( emptymultipagepart AUTOMOC + SOURCES + empty_multipage.cpp emptyRenderer.cpp + LINK tdemultipage-shared + DESTINATION ${PLUGIN_INSTALL_DIR} + ) ##### install import cmake modules ############### -tde_install_export( ) + tde_install_export( ) + +endif( BUILD_KVIEWSHELL ) -- cgit v1.2.3