PDF4QT/PdfForQtLib/PdfForQtLib.pro

136 lines
4.6 KiB
Prolog

# Copyright (C) 2018 Jakub Melka
#
# This file is part of PdfForQt.
#
# PdfForQt is free software: you can redistribute it and/or modify
# it under the terms of the GNU Lesser General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# PdfForQt is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU Lesser General Public License for more details.
#
# You should have received a copy of the GNU Lesser General Public License
# along with PDFForQt. If not, see <https://www.gnu.org/licenses/>.
QT += gui widgets
TARGET = PdfForQtLib
TEMPLATE = lib
DEFINES += PDFFORQTLIB_LIBRARY
# The following define makes your compiler emit warnings if you use
# any feature of Qt which has been marked as deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS
# You can also make your code fail to compile if you use deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
DESTDIR = $$OUT_PWD/..
SOURCES += \
sources/pdfobject.cpp \
sources/pdfoptionalcontent.cpp \
sources/pdfparser.cpp \
sources/pdfdocument.cpp \
sources/pdfdocumentreader.cpp \
sources/pdfutils.cpp \
sources/pdfxreftable.cpp \
sources/pdfvisitor.cpp \
sources/pdfencoding.cpp \
sources/pdfcatalog.cpp \
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
HEADERS += \
sources/pdfobject.h \
sources/pdfoptionalcontent.h \
sources/pdfparser.h \
sources/pdfglobal.h \
sources/pdfconstants.h \
sources/pdfdocument.h \
sources/pdfdocumentreader.h \
sources/pdfxreftable.h \
sources/pdfflatmap.h \
sources/pdfvisitor.h \
sources/pdfencoding.h \
sources/pdfcatalog.h \
sources/pdfnumbertreeloader.h \
sources/pdfpage.h \
sources/pdfstreamfilters.h \
sources/pdfdrawspacecontroller.h \
sources/pdfdrawwidget.h \
sources/pdfflatarray.h \
sources/pdfcolorspaces.h \
sources/pdfrenderer.h \
sources/pdfpagecontentprocessor.h \
sources/pdfpainter.h \
sources/pdfutils.h \
sources/pdfrenderingerrorswidget.h \
sources/pdffunction.h \
sources/pdfnametounicode.h \
sources/pdffont.h \
sources/pdfexception.h \
sources/pdfimage.h
FORMS += \
sources/pdfrenderingerrorswidget.ui
# Link to freetype library
LIBS += -L$$PWD/../FreeType/ -lfreetype
INCLUDEPATH += $$PWD/../FreeType/include
DEPENDPATH += $$PWD/../FreeType/include
# Add freetype to installations
freetype_lib.files = $$PWD/../FreeType/freetype.dll
freetype_lib.path = $$DESTDIR
INSTALLS += freetype_lib
# Link to OpenJPEG library
LIBS += -L$$PWD/../OpenJPEG/lib/ -lopenjp2
INCLUDEPATH += $$PWD/../OpenJPEG/include/openjpeg-2.3
DEPENDPATH += $$PWD/../OpenJPEG/include/openjpeg-2.3
# Add OpenJPEG to installations
openjpeg_lib.files = $$PWD/../OpenJPEG/openjp2.dll
openjpeg_lib.path = $$DESTDIR
INSTALLS += openjpeg_lib
# Link to Independent JPEG Groups libjpeg
LIBS += -L$$PWD/../libjpeg/bin/ -ljpeg
INCLUDEPATH += $$PWD/../libjpeg/include
DEPENDPATH += $$PWD/../libjpeg/include
# ensure debug info even for RELEASE build
CONFIG += force_debug_info
QMAKE_CXXFLAGS += /std:c++latest /utf-8
# resource manifest
CMAP_RESOURCE_INPUT = $$PWD/cmaps.qrc
cmap_resource_builder.commands = $$[QT_HOST_BINS]/rcc -binary ${QMAKE_FILE_IN} -o ${QMAKE_FILE_OUT} -threshold 0 -compress 9
cmap_resource_builder.depend_command = $$[QT_HOST_BINS]/rcc -list $$QMAKE_RESOURCE_FLAGS ${QMAKE_FILE_IN}
cmap_resource_builder.input = CMAP_RESOURCE_INPUT
cmap_resource_builder.output = $$DESTDIR/${QMAKE_FILE_IN_BASE}.qrb
cmap_resource_builder.CONFIG += no_link target_predeps
QMAKE_EXTRA_COMPILERS += cmap_resource_builder