From 835e373b3eeaabcd0621ed6798ab500f37982fae Mon Sep 17 00:00:00 2001 From: Calvin Morrison Date: Wed, 5 Apr 2023 14:13:39 -0400 Subject: xpdf-no-select-disable --- xpdf-qt/CMakeLists.txt | 115 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) create mode 100644 xpdf-qt/CMakeLists.txt (limited to 'xpdf-qt/CMakeLists.txt') diff --git a/xpdf-qt/CMakeLists.txt b/xpdf-qt/CMakeLists.txt new file mode 100644 index 0000000..026174a --- /dev/null +++ b/xpdf-qt/CMakeLists.txt @@ -0,0 +1,115 @@ +#======================================================================== +# +# xpdf-qt/cmake-xpdf.txt +# +# CMake script for the xpdf application. +# +# Copyright 2015 Glyph & Cog, LLC +# +#======================================================================== + +if ((QT4_FOUND OR Qt5Widgets_FOUND OR Qt6Widgets_FOUND) + AND HAVE_SPLASH AND MULTITHREADED AND USE_EXCEPTIONS) + include_directories("${PROJECT_SOURCE_DIR}") + include_directories("${PROJECT_BINARY_DIR}") + include_directories("${PROJECT_SOURCE_DIR}/goo") + include_directories("${PROJECT_SOURCE_DIR}/fofi") + include_directories("${PROJECT_SOURCE_DIR}/splash") + include_directories("${PROJECT_SOURCE_DIR}/xpdf") + if (QT4_FOUND) + include(${QT_USE_FILE}) + else () + include_directories(SYSTEM "${QT_INCLUDES}") + add_definitions(${QT_DEFINITIONS}) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${QT_CFLAGS}") + endif () + cmake_policy(SET CMP0020 NEW) + + if (Qt5Widgets_FOUND AND NOT (Qt5Widgets_VERSION VERSION_LESS 5.7.0)) + set(CMAKE_CXX_STANDARD 11) + set(CMAKE_CXX_STANDARD_REQUIRED ON) + endif () + + if (WIN32) + set(XPDF_MANIFEST "${PROJECT_SOURCE_DIR}/xpdf/winLongPath.exe.manifest") + else () + set(XPDF_MANIFEST "") + endif () + + if (XPDFWIDGET_PRINTING) + if (WIN32) + if (EXISTS ${PROJECT_SOURCE_DIR}/xpdf/WinPDFPrinter.cc) + add_definitions(-DXPDFWIDGET_PRINTING=1) + add_definitions(-DXPDFWIDGET_WIN32_PRINTING=1) + set(XPDFWIDGET_PRINT_MODULES XpdfWidgetPrint.cc + ${PROJECT_SOURCE_DIR}/xpdf/GDIOutputDev.cc + ${PROJECT_SOURCE_DIR}/xpdf/WinPDFPrinter.cc) + endif () + else () + add_definitions(-DXPDFWIDGET_PRINTING=1) + set(XPDFWIDGET_PRINT_MODULES XpdfWidgetPrint.cc) + endif () + else () + set(XPDFWIDGET_PRINT_MODULES "") + endif () + + if (QT4_FOUND) + qt4_wrap_cpp(XPDFWIDGET_MOC XpdfWidget.h) + qt4_wrap_cpp(XPDFVIEWER_MOC XpdfViewer.h) + qt4_wrap_cpp(XPDFAPP_MOC XpdfApp.h) + qt4_add_resources(XPDF_ICONS icons.qrc) + elseif (Qt5Widgets_FOUND) + qt5_wrap_cpp(XPDFWIDGET_MOC XpdfWidget.h) + qt5_wrap_cpp(XPDFVIEWER_MOC XpdfViewer.h) + qt5_wrap_cpp(XPDFAPP_MOC XpdfApp.h) + qt5_add_resources(XPDF_ICONS icons.qrc) + else () + qt6_wrap_cpp(XPDFWIDGET_MOC XpdfWidget.h) + qt6_wrap_cpp(XPDFVIEWER_MOC XpdfViewer.h) + qt6_wrap_cpp(XPDFAPP_MOC XpdfApp.h) + qt6_add_resources(XPDF_ICONS icons.qrc) + endif () + + # workaround for a conflict between the Qt5/6 QDateTime and windows.h + if (WIN32) + add_definitions(-DNOMINMAX) + endif () + + add_executable(xpdf + $ + $ + $ + $ + $ + ${XPDFWIDGET_PRINT_MODULES} + QtPDFCore.cc + XpdfApp.cc + XpdfViewer.cc + XpdfWidget.cc + xpdf.cc + xpdf.rc + ${XPDFAPP_MOC} + ${XPDFVIEWER_MOC} + ${XPDFWIDGET_MOC} + ${XPDF_ICONS} + ${XPDF_MANIFEST} + ) + target_link_libraries(xpdf ${QT_LIBRARIES} ${EXTRA_QT_LIBRARIES} + ${PAPER_LIBRARY} + ${FREETYPE_LIBRARY} ${FREETYPE_OTHER_LIBS} + ${DTYPE_LIBRARY} + ${LCMS_LIBRARY} + ${FONTCONFIG_LIBRARY} + ${CMAKE_THREAD_LIBS_INIT}) + set_property(TARGET xpdf PROPERTY WIN32_EXECUTABLE 1) + if (QT4_FOUND) + set_property(TARGET xpdf PROPERTY QT4_NO_LINK_QTMAIN ON) + elseif (Qt5Widgets_FOUND) + set_property(TARGET xpdf PROPERTY Qt5_NO_LINK_QTMAIN ON) + else () + set_property(TARGET xpdf PROPERTY Qt6_NO_LINK_QTMAIN ON) + endif () + + install(TARGETS xpdf RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}) + install(FILES ${PROJECT_SOURCE_DIR}/doc/xpdf.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1) +endif () -- cgit v1.2.3