3 if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR})
4 include(GenerateExportHeader)
5 include(FeatureSummary)
7 find_package(KDE4 4.22.0 REQUIRED)
9 include_directories(${KDE4_INCLUDES})
10 add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS})
14 ${CMAKE_CURRENT_SOURCE_DIR}
15 ${CMAKE_CURRENT_BINARY_DIR}
18 kde4_optional_find_package(Poppler)
19 set_package_properties(Poppler PROPERTIES
20 DESCRIPTION "A PDF rendering library"
21 URL "https://poppler.freedesktop.org"
22 PURPOSE "Support for PDF files in Okular"
25 kde4_optional_find_package(LibSpectre 0.2)
26 set_package_properties(LibSpectre PROPERTIES
27 DESCRIPTION "A PostScript rendering library"
28 URL "http://libspectre.freedesktop.org/wiki/"
29 PURPOSE "Support for PS files in Okular"
32 kde4_optional_find_package(DjVuLibre 3.5.17)
33 set_package_properties(DjVuLibre PROPERTIES
34 DESCRIPTION "A library for dealing with DjVu formatted files"
35 URL "http://djvulibre.djvuzone.org"
36 PURPOSE "Support for DjVu files in Okular"
39 kde4_optional_find_package(Freetype)
40 set_package_properties(Freetype PROPERTIES
41 DESCRIPTION "A font rendering engine"
42 URL "http://www.freetype.org"
43 PURPOSE "Provides freetype font support in the Okular DVI generator"
46 kde4_optional_find_package(EPub)
47 set_package_properties(EPub PROPERTIES
48 DESCRIPTION "A library for reading EPub documents"
49 URL "http://sourceforge.net/projects/ebook-tools"
50 PURPOSE "Support for EPub documents in Okular"
53 kde4_optional_find_package(OpenSSL)
54 set_package_properties(OpenSSL PROPERTIES
55 DESCRIPTION "Robust, commercial-grade, full-featured toolkit for general-purpose cryptography and secure communication"
56 URL "https://www.openssl.org/"
57 PURPOSE "Support encrypted Open Document in Okular"
60 find_program(GHOSTSCRIPT_EXECUTABLE NAMES gs)
61 add_feature_info(okular_gs
62 GHOSTSCRIPT_EXECUTABLE
63 "PostScript support in Okular"
66 find_program(KPSEWHICH_EXECUTABLE NAMES kpsewhich)
67 add_feature_info(okular_kpsewhich
69 "DVI support in Okular"
74 "Forces okular to check for DRM to decide if you can copy/print protected pdf. (default=no)"
77 kde4_bool_to_01(OKULAR_FORCE_DRM _OKULAR_FORCE_DRM)
80 ${CMAKE_CURRENT_SOURCE_DIR}/config-okular.h.cmake
81 ${CMAKE_CURRENT_BINARY_DIR}/config-okular.h
84 add_subdirectory( ui )
85 add_subdirectory( shell )
86 add_subdirectory( generators )
89 add_subdirectory( tests )
101 core/bookmarkmanager.cpp
102 core/chooseenginedialog.cpp
104 core/documentcommands.cpp
113 core/pagecontroller.cpp
115 core/pagetransition.cpp
118 core/sourcereference.cpp
119 core/textdocumentgenerator.cpp
120 core/textdocumentsettings.cpp
122 core/tilesmanager.cpp
126 core/chooseenginewidget.ui
127 core/textdocumentsettings.ui
142 core/pagetransition.h
144 core/sourcereference.h
145 core/textdocumentgenerator.h
146 core/textdocumentsettings.h
153 ${CMAKE_CURRENT_BINARY_DIR}/settings_core.h
154 ${CMAKE_CURRENT_BINARY_DIR}/okular_export.h
155 DESTINATION ${KDE4_INCLUDE_INSTALL_DIR}/okular/core
161 interfaces/configinterface.h
162 interfaces/guiinterface.h
163 interfaces/printinterface.h
164 interfaces/saveinterface.h
165 interfaces/viewerinterface.h
166 DESTINATION ${KDE4_INCLUDE_INSTALL_DIR}/okular/interfaces
170 kde4_add_kcfg_files(okularcore_SRCS ${PROJECT_SOURCE_DIR}/conf/settings_core.kcfgc )
172 add_library(okularcore SHARED ${okularcore_SRCS})
174 target_link_libraries(okularcore
180 set_target_properties(okularcore PROPERTIES
181 VERSION ${GENERIC_LIB_VERSION}
182 SOVERSION ${GENERIC_LIB_SOVERSION}
185 generate_export_header(okularcore BASE_NAME okular)
187 install(TARGETS okularcore ${INSTALL_TARGETS_DEFAULT_ARGS} )
189 install(FILES conf/okular.kcfg DESTINATION ${KDE4_KCFG_INSTALL_DIR})
190 install(FILES conf/okular_core.kcfg DESTINATION ${KDE4_KCFG_INSTALL_DIR})
191 install(FILES core/okularGenerator.desktop DESTINATION ${KDE4_SERVICETYPES_INSTALL_DIR})
198 conf/preferencesdialog.cpp
199 conf/dlgaccessibility.cpp
203 conf/dlgannotations.cpp
204 conf/dlgperformance.cpp
205 conf/dlgpresentation.cpp
206 conf/widgetannottools.cpp
207 ui/embeddedfilesdialog.cpp
209 ui/annotationmodel.cpp
210 ui/annotationpopup.cpp
211 ui/annotationpropertiesdialog.cpp
212 ui/annotationproxymodels.cpp
213 ui/annotationtools.cpp
214 ui/annotationwidgets.cpp
216 ui/fileprinterpreview.cpp
220 ui/ktreeviewsearchline.cpp
223 ui/pageitemdelegate.cpp
226 ui/pageviewannotator.cpp
230 ui/presentationsearchbar.cpp
231 ui/presentationwidget.cpp
232 ui/propertiesdialog.cpp
233 ui/searchlineedit.cpp
244 conf/dlgaccessibilitybase.ui
245 conf/dlgeditorbase.ui
246 conf/dlggeneralbase.ui
247 conf/dlgannotationsbase.ui
248 conf/dlgperformancebase.ui
249 conf/dlgpresentationbase.ui
252 kde4_add_kcfg_files(okularpart_SRCS ${PROJECT_SOURCE_DIR}/conf/settings.kcfgc )
254 kde4_add_plugin(okularpart ${okularpart_SRCS})
256 target_link_libraries(okularpart
258 ${KDE4_KPASSWDSTORE_LIBS}
266 generate_export_header(okularpart)
268 install(TARGETS okularpart DESTINATION ${KDE4_PLUGIN_INSTALL_DIR})
271 ########### install files ###############
273 install(FILES okular_part.desktop DESTINATION ${KDE4_SERVICES_INSTALL_DIR})
274 install(FILES part.rc part-viewermode.rc DESTINATION ${KDE4_DATA_INSTALL_DIR}/okular)
276 if(${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_SOURCE_DIR})
277 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES FATAL_ON_MISSING_REQUIRED_PACKAGES)