Issue #118: First part of splitting

This commit is contained in:
Jakub Melka 2023-12-03 19:11:17 +01:00
parent c01a1da4ec
commit bc8be2198b
391 changed files with 126 additions and 67 deletions

View File

@ -108,7 +108,8 @@ else()
set(PDF4QT_INSTALL_SHARE_DIR share)
endif()
add_subdirectory(Pdf4QtLib)
add_subdirectory(Pdf4QtLibCore)
add_subdirectory(Pdf4QtLibWidgets)
add_subdirectory(CodeGenerator)
add_subdirectory(JBIG2_Viewer)
add_subdirectory(PdfExampleGenerator)

View File

@ -22,7 +22,7 @@ add_executable(CodeGenerator
generatormainwindow.ui
)
target_link_libraries(CodeGenerator PRIVATE Pdf4QtLib Qt6::Core Qt6::Widgets Qt6::Gui Qt6::Xml)
target_link_libraries(CodeGenerator PRIVATE Pdf4QtLibCore Qt6::Core Qt6::Widgets Qt6::Gui Qt6::Xml)
set_target_properties(CodeGenerator PROPERTIES
WIN32_EXECUTABLE ON

View File

@ -21,7 +21,7 @@ add_executable(JBIG2_VIEWER
main.cpp
)
target_link_libraries(JBIG2_VIEWER PRIVATE Pdf4QtLib Qt6::Core Qt6::Widgets Qt6::Gui)
target_link_libraries(JBIG2_VIEWER PRIVATE Pdf4QtLibCore Qt6::Core Qt6::Widgets Qt6::Gui)
set_target_properties(JBIG2_VIEWER PROPERTIES
WIN32_EXECUTABLE ON

View File

@ -31,10 +31,10 @@ add_executable(Pdf4QtDocDiff
)
if(PDF4QT_ENABLE_OPENGL)
target_link_libraries(Pdf4QtDocDiff PRIVATE Pdf4QtLib Qt6::OpenGLWidgets)
target_link_libraries(Pdf4QtDocDiff PRIVATE Pdf4QtLibCore Qt6::OpenGLWidgets)
endif()
target_link_libraries(Pdf4QtDocDiff PRIVATE Pdf4QtLib Qt6::Core Qt6::Gui Qt6::Widgets)
target_link_libraries(Pdf4QtDocDiff PRIVATE Pdf4QtLibCore Qt6::Core Qt6::Gui Qt6::Widgets)
set_target_properties(Pdf4QtDocDiff PROPERTIES
WIN32_EXECUTABLE ON

View File

@ -31,7 +31,7 @@ add_executable(Pdf4QtDocPageOrganizer
icon.rc
)
target_link_libraries(Pdf4QtDocPageOrganizer PRIVATE Pdf4QtLib Qt6::Core Qt6::Gui Qt6::Widgets)
target_link_libraries(Pdf4QtDocPageOrganizer PRIVATE Pdf4QtLibCore Qt6::Core Qt6::Gui Qt6::Widgets)
set_target_properties(Pdf4QtDocPageOrganizer PROPERTIES
WIN32_EXECUTABLE ON

View File

@ -1,4 +1,4 @@
# Copyright (C) 2022 Jakub Melka
# Copyright (C) 2022-2023 Jakub Melka
#
# This file is part of PDF4QT.
#
@ -15,18 +15,15 @@
# You should have received a copy of the GNU Lesser General Public License
# along with PDF4QT. If not, see <https://www.gnu.org/licenses/>.
add_library(Pdf4QtLib SHARED
add_library(Pdf4QtLibCore SHARED
sources/pdfaction.cpp
sources/pdfadvancedtools.cpp
sources/pdfalgorithmlcs.cpp
sources/pdfannotation.cpp
sources/pdfblendfunction.cpp
sources/pdfccittfaxdecoder.cpp
sources/pdfcertificatemanager.cpp
sources/pdfcertificatemanagerdialog.cpp
sources/pdfcms.cpp
sources/pdfcompiler.cpp
sources/pdfcreatecertificatedialog.cpp
sources/pdfdiff.cpp
sources/pdfdocumentbuilder.cpp
sources/pdfdocumentmanipulator.cpp
@ -43,14 +40,10 @@ add_library(Pdf4QtLib SHARED
sources/pdfmultimedia.cpp
sources/pdfobject.cpp
sources/pdfobjecteditormodel.cpp
sources/pdfobjecteditorwidget.cpp
sources/pdfobjectutils.cpp
sources/pdfoptimizer.cpp
sources/pdfoptionalcontent.cpp
sources/pdfoutline.cpp
sources/pdfpagecontenteditorstylesettings.cpp
sources/pdfpagecontenteditortools.cpp
sources/pdfpagecontenteditorwidget.cpp
sources/pdfpagecontentelements.cpp
sources/pdfpagenavigation.cpp
sources/pdfpagetransition.cpp
@ -63,7 +56,6 @@ add_library(Pdf4QtLib SHARED
sources/pdfprogress.cpp
sources/pdfredact.cpp
sources/pdfsecurityhandler.cpp
sources/pdfselectpagesdialog.cpp
sources/pdfsignaturehandler.cpp
sources/pdfsnapper.cpp
sources/pdfstructuretree.cpp
@ -71,8 +63,6 @@ add_library(Pdf4QtLib SHARED
sources/pdftextlayout.cpp
sources/pdftransparencyrenderer.cpp
sources/pdfutils.cpp
sources/pdfwidgettool.cpp
sources/pdfwidgetutils.cpp
sources/pdfxfaengine.cpp
sources/pdfxreftable.cpp
sources/pdfvisitor.cpp
@ -81,23 +71,14 @@ add_library(Pdf4QtLib SHARED
sources/pdfpage.cpp
sources/pdfstreamfilters.cpp
sources/pdfdrawspacecontroller.cpp
sources/pdfdrawwidget.cpp
sources/pdfcolorspaces.cpp
sources/pdfrenderer.cpp
sources/pdfpagecontentprocessor.cpp
sources/pdfpainter.cpp
sources/pdfrenderingerrorswidget.cpp
sources/pdffunction.cpp
sources/pdfnametounicode.cpp
sources/pdffont.cpp
sources/pdfimage.cpp
sources/pdfcertificatemanagerdialog.ui
sources/pdfcreatecertificatedialog.ui
sources/pdfpagecontenteditorstylesettings.ui
sources/pdfpagecontenteditorwidget.ui
sources/pdfrenderingerrorswidget.ui
sources/pdfselectpagesdialog.ui
sources/pdfobjecteditorwidget_impl.h
sources/pdfdocumentsanitizer.h
sources/pdfdocumentsanitizer.cpp
sources/pdfimageconversion.h
@ -109,38 +90,34 @@ add_library(Pdf4QtLib SHARED
include(GenerateExportHeader)
GENERATE_EXPORT_HEADER(Pdf4QtLib
GENERATE_EXPORT_HEADER(Pdf4QtLibCore
EXPORT_MACRO_NAME
PDF4QTLIBSHARED_EXPORT
EXPORT_FILE_NAME "${CMAKE_BINARY_DIR}/${INSTALL_INCLUDEDIR}/pdf4qtlib_export.h")
EXPORT_FILE_NAME "${CMAKE_BINARY_DIR}/${INSTALL_INCLUDEDIR}/pdf4qtlibcore_export.h")
if(PDF4QT_ENABLE_OPENGL)
target_link_libraries(Pdf4QtLib PRIVATE Qt6::OpenGLWidgets)
endif()
target_link_libraries(Pdf4QtLib PRIVATE Qt6::Core Qt6::Gui Qt6::Widgets Qt6::Xml Qt6::Svg)
target_link_libraries(Pdf4QtLib PRIVATE lcms2::lcms2)
target_link_libraries(Pdf4QtLib PRIVATE OpenSSL::SSL OpenSSL::Crypto)
target_link_libraries(Pdf4QtLib PRIVATE ZLIB::ZLIB)
target_link_libraries(Pdf4QtLib PRIVATE freetype)
target_link_libraries(Pdf4QtLib PRIVATE openjp2)
target_link_libraries(Pdf4QtLib PRIVATE JPEG::JPEG)
target_link_libraries(Pdf4QtLibCore PRIVATE Qt6::Core Qt6::Gui Qt6::Xml Qt6::Svg)
target_link_libraries(Pdf4QtLibCore PRIVATE lcms2::lcms2)
target_link_libraries(Pdf4QtLibCore PRIVATE OpenSSL::SSL OpenSSL::Crypto)
target_link_libraries(Pdf4QtLibCore PRIVATE ZLIB::ZLIB)
target_link_libraries(Pdf4QtLibCore PRIVATE freetype)
target_link_libraries(Pdf4QtLibCore PRIVATE openjp2)
target_link_libraries(Pdf4QtLibCore PRIVATE JPEG::JPEG)
if(LINUX_GCC)
target_link_libraries(Pdf4QtLib PUBLIC TBB::tbb)
target_link_libraries(Pdf4QtLibCore PUBLIC TBB::tbb)
endif()
if(MINGW)
target_link_libraries(Pdf4QtLib PRIVATE Secur32 Mscms Gdi32 User32 crypt32)
target_link_libraries(Pdf4QtLibCore PRIVATE Secur32 Mscms Gdi32 User32 crypt32)
endif()
target_include_directories(Pdf4QtLib INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/sources)
target_include_directories(Pdf4QtLib PUBLIC ${CMAKE_BINARY_DIR}/${INSTALL_INCLUDEDIR})
target_include_directories(Pdf4QtLibCore INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/sources)
target_include_directories(Pdf4QtLibCore PUBLIC ${CMAKE_BINARY_DIR}/${INSTALL_INCLUDEDIR})
set_target_properties(Pdf4QtLib PROPERTIES
set_target_properties(Pdf4QtLibCore PROPERTIES
VERSION ${PDF4QT_VERSION}
SOVERSION ${PDF4QT_VERSION}
LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${PDF4QT_INSTALL_LIB_DIR}
RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/${PDF4QT_INSTALL_BIN_DIR})
install(TARGETS Pdf4QtLib RUNTIME DESTINATION ${PDF4QT_INSTALL_BIN_DIR} LIBRARY DESTINATION ${PDF4QT_INSTALL_LIB_DIR})
install(TARGETS Pdf4QtLibCore RUNTIME DESTINATION ${PDF4QT_INSTALL_BIN_DIR} LIBRARY DESTINATION ${PDF4QT_INSTALL_LIB_DIR})

Some files were not shown because too many files have changed in this diff Show More