aboutsummaryrefslogtreecommitdiff
path: root/xpdf/CMakeLists.txt
diff options
context:
space:
mode:
authorCalvin Morrison <calvin@pobox.com>2023-04-05 14:13:39 -0400
committerCalvin Morrison <calvin@pobox.com>2023-04-05 14:13:39 -0400
commit835e373b3eeaabcd0621ed6798ab500f37982fae (patch)
treedfa16b0e2e1b4956b38f693220eac4e607802133 /xpdf/CMakeLists.txt
xpdf-no-select-disableHEADmaster
Diffstat (limited to 'xpdf/CMakeLists.txt')
-rw-r--r--xpdf/CMakeLists.txt292
1 files changed, 292 insertions, 0 deletions
diff --git a/xpdf/CMakeLists.txt b/xpdf/CMakeLists.txt
new file mode 100644
index 0000000..63a8dec
--- /dev/null
+++ b/xpdf/CMakeLists.txt
@@ -0,0 +1,292 @@
+#========================================================================
+#
+# xpdf/cmake-xpdf.txt
+#
+# CMake script for the Xpdf tools.
+#
+# Copyright 2015 Glyph & Cog, LLC
+#
+#========================================================================
+
+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")
+if (PNG_FOUND)
+ include_directories("${PNG_INCLUDE_DIRS}")
+ add_definitions("${PNG_DEFINITIONS}")
+endif ()
+if (HAVE_LCMS)
+ include_directories("${LCMS_INCLUDE_DIR}")
+ set(COLOR_MANAGER_SOURCE "ColorManager.cc")
+else ()
+ set(COLOR_MANAGER_SOURCE "")
+endif ()
+if (WIN32)
+ set(MANIFEST "winLongPath.exe.manifest")
+else ()
+ set(MANIFEST "")
+endif ()
+
+add_library(xpdf_objs OBJECT
+ AcroForm.cc
+ Annot.cc
+ Array.cc
+ BuiltinFont.cc
+ BuiltinFontTables.cc
+ Catalog.cc
+ CharCodeToUnicode.cc
+ CMap.cc
+ ${COLOR_MANAGER_SOURCE}
+ Decrypt.cc
+ Dict.cc
+ Error.cc
+ FontEncodingTables.cc
+ Function.cc
+ Gfx.cc
+ GfxFont.cc
+ GfxState.cc
+ GlobalParams.cc
+ JArithmeticDecoder.cc
+ JBIG2Stream.cc
+ JPXStream.cc
+ Lexer.cc
+ Link.cc
+ NameToCharCode.cc
+ Object.cc
+ OptionalContent.cc
+ Outline.cc
+ OutputDev.cc
+ Page.cc
+ Parser.cc
+ PDF417Barcode.cc
+ PDFDoc.cc
+ PDFDocEncoding.cc
+ PSTokenizer.cc
+ SecurityHandler.cc
+ Stream.cc
+ TextString.cc
+ UnicodeMap.cc
+ UnicodeRemapping.cc
+ UnicodeTypeTable.cc
+ UTF8.cc
+ XFAScanner.cc
+ XRef.cc
+ Zoox.cc
+)
+set_property(TARGET xpdf_objs
+ PROPERTY POSITION_INDEPENDENT_CODE True)
+
+#--- object files needed by XpdfWidget
+
+if ((QT4_FOUND OR Qt5Widgets_FOUND OR Qt6Widgets_FOUND)
+ AND HAVE_SPLASH AND MULTITHREADED AND USE_EXCEPTIONS)
+
+ if (HIGHLIGHTED_REGIONS)
+ set(HIGHLIGHT_SRC "HighlightFile.cc")
+ else ()
+ set(HIGHLIGHT_SRC "")
+ endif ()
+
+ add_library(xpdf_widget_objs OBJECT
+ DisplayState.cc
+ PDFCore.cc
+ PreScanOutputDev.cc
+ PSOutputDev.cc
+ ShadingImage.cc
+ SplashOutputDev.cc
+ TextOutputDev.cc
+ TileCache.cc
+ TileCompositor.cc
+ TileMap.cc
+ ${HIGHLIGHT_SRC}
+ )
+ set_property(TARGET xpdf_widget_objs
+ PROPERTY POSITION_INDEPENDENT_CODE True)
+endif ()
+
+#--- pdftops
+
+if (HAVE_SPLASH)
+ add_executable(pdftops
+ $<TARGET_OBJECTS:xpdf_objs>
+ PreScanOutputDev.cc
+ PSOutputDev.cc
+ ShadingImage.cc
+ SplashOutputDev.cc
+ pdftops.cc
+ ${MANIFEST}
+ )
+ target_link_libraries(pdftops goo fofi splash
+ ${PAPER_LIBRARY}
+ ${FREETYPE_LIBRARY} ${FREETYPE_OTHER_LIBS}
+ ${DTYPE_LIBRARY}
+ ${LCMS_LIBRARY}
+ ${FONTCONFIG_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT})
+else ()
+ add_executable(pdftops
+ $<TARGET_OBJECTS:xpdf_objs>
+ PreScanOutputDev.cc
+ PSOutputDev.cc
+ pdftops.cc
+ ${MANIFEST}
+ )
+ target_link_libraries(pdftops goo fofi
+ ${PAPER_LIBRARY}
+ ${LCMS_LIBRARY}
+ ${FONTCONFIG_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT})
+endif ()
+install(TARGETS pdftops RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+install(FILES ${PROJECT_SOURCE_DIR}/doc/pdftops.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+
+#--- pdftotext
+
+add_executable(pdftotext
+ $<TARGET_OBJECTS:xpdf_objs>
+ TextOutputDev.cc
+ pdftotext.cc
+ ${MANIFEST}
+)
+target_link_libraries(pdftotext goo fofi
+ ${PAPER_LIBRARY}
+ ${LCMS_LIBRARY}
+ ${FONTCONFIG_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT})
+install(TARGETS pdftotext RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+install(FILES ${PROJECT_SOURCE_DIR}/doc/pdftotext.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+
+#--- pdftohtml
+
+if (HAVE_SPLASH AND PNG_FOUND)
+ add_executable(pdftohtml
+ $<TARGET_OBJECTS:xpdf_objs>
+ HTMLGen.cc
+ ShadingImage.cc
+ SplashOutputDev.cc
+ TextOutputDev.cc
+ WebFont.cc
+ pdftohtml.cc
+ ${MANIFEST}
+ )
+ target_link_libraries(pdftohtml goo fofi splash
+ ${PAPER_LIBRARY}
+ ${FREETYPE_LIBRARY} ${FREETYPE_OTHER_LIBS}
+ ${DTYPE_LIBRARY}
+ ${LCMS_LIBRARY}
+ ${PNG_LIBRARIES}
+ ${FONTCONFIG_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT})
+ install(TARGETS pdftohtml RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ install(FILES ${PROJECT_SOURCE_DIR}/doc/pdftohtml.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+endif ()
+
+#--- pdfinfo
+
+add_executable(pdfinfo
+ $<TARGET_OBJECTS:xpdf_objs>
+ pdfinfo.cc
+ ${MANIFEST}
+)
+target_link_libraries(pdfinfo goo fofi
+ ${PAPER_LIBRARY}
+ ${LCMS_LIBRARY}
+ ${FONTCONFIG_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT})
+install(TARGETS pdfinfo RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+install(FILES ${PROJECT_SOURCE_DIR}/doc/pdfinfo.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+
+#--- pdffonts
+
+add_executable(pdffonts
+ $<TARGET_OBJECTS:xpdf_objs>
+ pdffonts.cc
+ ${MANIFEST}
+)
+target_link_libraries(pdffonts goo fofi
+ ${PAPER_LIBRARY}
+ ${LCMS_LIBRARY}
+ ${FONTCONFIG_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT})
+install(TARGETS pdffonts RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+install(FILES ${PROJECT_SOURCE_DIR}/doc/pdffonts.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+
+#--- pdfdetach
+
+add_executable(pdfdetach
+ $<TARGET_OBJECTS:xpdf_objs>
+ pdfdetach.cc
+ ${MANIFEST}
+)
+target_link_libraries(pdfdetach goo fofi
+ ${PAPER_LIBRARY}
+ ${LCMS_LIBRARY}
+ ${FONTCONFIG_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT})
+install(TARGETS pdfdetach RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+install(FILES ${PROJECT_SOURCE_DIR}/doc/pdfdetach.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+
+#--- pdftoppm
+
+if (HAVE_SPLASH)
+ add_executable(pdftoppm
+ $<TARGET_OBJECTS:xpdf_objs>
+ ShadingImage.cc
+ SplashOutputDev.cc
+ pdftoppm.cc
+ ${MANIFEST}
+ )
+ target_link_libraries(pdftoppm goo fofi splash
+ ${PAPER_LIBRARY}
+ ${FREETYPE_LIBRARY} ${FREETYPE_OTHER_LIBS}
+ ${DTYPE_LIBRARY}
+ ${LCMS_LIBRARY}
+ ${FONTCONFIG_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT})
+ install(TARGETS pdftoppm RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ install(FILES ${PROJECT_SOURCE_DIR}/doc/pdftoppm.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+endif ()
+
+#--- pdftopng
+
+if (HAVE_SPLASH AND PNG_FOUND)
+ add_executable(pdftopng
+ $<TARGET_OBJECTS:xpdf_objs>
+ ShadingImage.cc
+ SplashOutputDev.cc
+ pdftopng.cc
+ ${MANIFEST}
+ )
+ target_link_libraries(pdftopng goo fofi splash
+ ${PAPER_LIBRARY}
+ ${FREETYPE_LIBRARY} ${FREETYPE_OTHER_LIBS}
+ ${DTYPE_LIBRARY}
+ ${LCMS_LIBRARY}
+ ${PNG_LIBRARIES}
+ ${FONTCONFIG_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT})
+ install(TARGETS pdftopng RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+ install(FILES ${PROJECT_SOURCE_DIR}/doc/pdftopng.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+endif ()
+
+#--- pdfimages
+
+add_executable(pdfimages
+ $<TARGET_OBJECTS:xpdf_objs>
+ ImageOutputDev.cc
+ pdfimages.cc
+ ${MANIFEST}
+)
+target_link_libraries(pdfimages goo fofi
+ ${PAPER_LIBRARY}
+ ${LCMS_LIBRARY}
+ ${FONTCONFIG_LIBRARY}
+ ${CMAKE_THREAD_LIBS_INIT})
+install(TARGETS pdfimages RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR})
+install(FILES ${PROJECT_SOURCE_DIR}/doc/pdfimages.1 DESTINATION ${CMAKE_INSTALL_MANDIR}/man1)
+
+#--- xpdfrc man page
+
+install(FILES ${PROJECT_SOURCE_DIR}/doc/xpdfrc.5 DESTINATION ${CMAKE_INSTALL_MANDIR}/man5)