Files
sethLabels/model/CMakeLists.txt
T
Jaye Evins e6673a0a24 Add generic templates (#307)
- Add generic full-page templates.  (This feature from 3.4 was missing)
- Also add generic half-page, quarter-page, and envelope templates.
- Add several more common envelope sizes to page-sizes.xml
- Qt print backend does not need pwg_size.
    - Replace with pwg_class, to distinguish between ISO and NA sizes
2026-02-11 11:27:41 -05:00

126 lines
2.3 KiB
CMake

project (Model LANGUAGES CXX)
#=======================================
# Handle optional dependencies
#=======================================
if (${ZLIB_FOUND})
add_definitions (-DHAVE_ZLIB=1)
set (OPTIONAL_ZLIB ZLIB::ZLIB)
else ()
set (OPTIONAL_ZLIB "")
endif ()
#=======================================
# Sources
#=======================================
# Auto-generated files
configure_file (Version.hpp.in ${CMAKE_CURRENT_BINARY_DIR}/Version.hpp @ONLY)
configure_file (Config.hpp.in ${CMAKE_CURRENT_BINARY_DIR}/Config.hpp @ONLY)
set (Model_sources
Category.cpp
ColorNode.cpp
DataCache.cpp
Db.cpp
Distance.cpp
FileUtil.cpp
Frame.cpp
FrameCd.cpp
FrameContinuous.cpp
FrameEllipse.cpp
FramePath.cpp
FrameRect.cpp
FrameRound.cpp
GenericTemplate.cpp
Handle.cpp
Layout.cpp
Markup.cpp
Model.cpp
ModelObject.cpp
ModelBarcodeObject.cpp
ModelBoxObject.cpp
ModelEllipseObject.cpp
ModelImageObject.cpp
ModelLineObject.cpp
ModelShapeObject.cpp
ModelTextObject.cpp
Outline.cpp
PageRenderer.cpp
Paper.cpp
ParserState.cpp
Point.cpp
RawText.cpp
Region.cpp
Settings.cpp
Size.cpp
StrUtil.cpp
SubstitutionField.cpp
Template.cpp
TextNode.cpp
Units.cpp
Variable.cpp
Variables.cpp
Version.cpp
Vendor.cpp
XmlCategoryParser.cpp
XmlLabelCreator.cpp
XmlLabelParser.cpp
XmlLabelParser_3.cpp
XmlPaperParser.cpp
XmlTemplateCreator.cpp
XmlTemplateParser.cpp
XmlUtil.cpp
XmlVendorParser.cpp
)
set (Model_qobject_headers
Model.hpp
ModelObject.hpp
ModelBarcodeObject.hpp
ModelBoxObject.hpp
ModelEllipseObject.hpp
ModelImageObject.hpp
ModelLineObject.hpp
ModelShapeObject.hpp
ModelTextObject.hpp
PageRenderer.hpp
Settings.hpp
Variables.hpp
)
qt6_wrap_cpp (Model_moc_sources ${Model_qobject_headers})
#=====================================
# Target
#=====================================
add_library (Model STATIC
${Model_sources}
${Model_moc_sources}
)
target_compile_features (Model
PUBLIC cxx_std_20
)
target_include_directories (Model
PUBLIC .. ${CMAKE_CURRENT_BINARY_DIR}/..
PRIVATE ${CMAKE_CURRENT_BINARY_DIR}
)
target_link_libraries (Model
Barcode
Merge
Qt6::Core
Qt6::PrintSupport
Qt6::Xml
Qt6::Svg
${OPTIONAL_ZLIB}
)
#=======================================
# Subdirectories
#=======================================
add_subdirectory (unit_tests)