mirror of
https://github.com/fralx/LimeReport.git
synced 2024-12-24 00:33:02 +03:00
CMake: fix libzint build
* LimeReport with libzint can now be built * 3rdpaty libraries have separate CMakeLists now * libpng is no longer required
This commit is contained in:
parent
5648f68a35
commit
21eae76d0a
71
3rdparty/CMakeLists.txt
vendored
Normal file
71
3rdparty/CMakeLists.txt
vendored
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
# LimeReport 3rd-party modules
|
||||||
|
|
||||||
|
find_package(PNG)
|
||||||
|
|
||||||
|
set(ZINT_FILES
|
||||||
|
zint-2.6.1/backend/2of5.c
|
||||||
|
zint-2.6.1/backend/auspost.c
|
||||||
|
zint-2.6.1/backend/aztec.c
|
||||||
|
zint-2.6.1/backend/bmp.c
|
||||||
|
zint-2.6.1/backend/codablock.c
|
||||||
|
zint-2.6.1/backend/code.c
|
||||||
|
zint-2.6.1/backend/code1.c
|
||||||
|
zint-2.6.1/backend/code128.c
|
||||||
|
zint-2.6.1/backend/code16k.c
|
||||||
|
zint-2.6.1/backend/code49.c
|
||||||
|
zint-2.6.1/backend/common.c
|
||||||
|
zint-2.6.1/backend/composite.c
|
||||||
|
zint-2.6.1/backend/dllversion.c
|
||||||
|
zint-2.6.1/backend/dmatrix.c
|
||||||
|
zint-2.6.1/backend/dotcode.c
|
||||||
|
zint-2.6.1/backend/eci.c
|
||||||
|
zint-2.6.1/backend/emf.c
|
||||||
|
zint-2.6.1/backend/gif.c
|
||||||
|
zint-2.6.1/backend/gridmtx.c
|
||||||
|
zint-2.6.1/backend/gs1.c
|
||||||
|
zint-2.6.1/backend/hanxin.c
|
||||||
|
zint-2.6.1/backend/imail.c
|
||||||
|
zint-2.6.1/backend/large.c
|
||||||
|
zint-2.6.1/backend/library.c
|
||||||
|
zint-2.6.1/backend/libzint.rc
|
||||||
|
zint-2.6.1/backend/maxicode.c
|
||||||
|
zint-2.6.1/backend/medical.c
|
||||||
|
zint-2.6.1/backend/pcx.c
|
||||||
|
zint-2.6.1/backend/pdf417.c
|
||||||
|
zint-2.6.1/backend/plessey.c
|
||||||
|
zint-2.6.1/backend/png.c
|
||||||
|
zint-2.6.1/backend/postal.c
|
||||||
|
zint-2.6.1/backend/ps.c
|
||||||
|
zint-2.6.1/backend/qr.c
|
||||||
|
zint-2.6.1/backend/raster.c
|
||||||
|
zint-2.6.1/backend/reedsol.c
|
||||||
|
zint-2.6.1/backend/render.c
|
||||||
|
zint-2.6.1/backend/rss.c
|
||||||
|
zint-2.6.1/backend/svg.c
|
||||||
|
zint-2.6.1/backend/telepen.c
|
||||||
|
zint-2.6.1/backend/tif.c
|
||||||
|
zint-2.6.1/backend/upcean.c
|
||||||
|
zint-2.6.1/backend_qt/qzint.cpp
|
||||||
|
)
|
||||||
|
|
||||||
|
if (ENABLE_ZINT)
|
||||||
|
|
||||||
|
add_library(QZint STATIC ${ZINT_FILES})
|
||||||
|
|
||||||
|
target_include_directories(QZint PUBLIC zint-2.6.1/backend)
|
||||||
|
target_include_directories(QZint PUBLIC zint-2.6.1/backend_qt)
|
||||||
|
|
||||||
|
target_link_libraries(QZint PUBLIC
|
||||||
|
Qt${QT_VERSION_MAJOR}::Core
|
||||||
|
Qt${QT_VERSION_MAJOR}::Widgets
|
||||||
|
)
|
||||||
|
|
||||||
|
target_compile_definitions(QZint PUBLIC -DQZINT_STATIC_BUILD)
|
||||||
|
|
||||||
|
if(PNG_FOUND)
|
||||||
|
target_link_libraries(QZint PRIVATE PNG::PNG)
|
||||||
|
else(PNG_FOUND)
|
||||||
|
target_compile_definitions(QZint -DNO_PNG)
|
||||||
|
endif(PNG_FOUND)
|
||||||
|
|
||||||
|
endif(ENABLE_ZINT)
|
@ -1,7 +1,12 @@
|
|||||||
project(limereport)
|
project(limereport)
|
||||||
cmake_minimum_required(VERSION 3.14)
|
cmake_minimum_required(VERSION 3.14)
|
||||||
|
|
||||||
find_package(PNG REQUIRED)
|
set(LIMEREPORT_VERSION_MAJOR 1)
|
||||||
|
set(LIMEREPORT_VERSION_MINOR 5)
|
||||||
|
set(LIMEREPORT_VERSION_RELEASE 90)
|
||||||
|
|
||||||
|
option(ENABLE_ZINT "Enable libzint build for barcode support" OFF)
|
||||||
|
option(LIMEREPORT_STATIC "Build LimeReport as static library" OFF)
|
||||||
|
|
||||||
find_package(
|
find_package(
|
||||||
QT NAMES Qt6 Qt5
|
QT NAMES Qt6 Qt5
|
||||||
@ -11,7 +16,6 @@ find_package(
|
|||||||
Qt${QT_VERSION_MAJOR}
|
Qt${QT_VERSION_MAJOR}
|
||||||
COMPONENTS Core Widgets Sql Network Xml Svg Qml PrintSupport UiTools
|
COMPONENTS Core Widgets Sql Network Xml Svg Qml PrintSupport UiTools
|
||||||
)
|
)
|
||||||
|
|
||||||
# Old Qt does not provide QT_VERSION_MAJOR
|
# Old Qt does not provide QT_VERSION_MAJOR
|
||||||
if (NOT QT_VERSION_MAJOR)
|
if (NOT QT_VERSION_MAJOR)
|
||||||
string(SUBSTRING ${QT_VERSION} 0 1 QT_VERSION_MAJOR)
|
string(SUBSTRING ${QT_VERSION} 0 1 QT_VERSION_MAJOR)
|
||||||
@ -25,6 +29,8 @@ if (Qt${QT_VERSION_MAJOR}Widgets_FOUND)
|
|||||||
message(STATUS "QtWidgets found")
|
message(STATUS "QtWidgets found")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
add_subdirectory(3rdparty)
|
||||||
|
|
||||||
set(CMAKE_AUTOMOC ON)
|
set(CMAKE_AUTOMOC ON)
|
||||||
set(CMAKE_AUTOUIC ON)
|
set(CMAKE_AUTOUIC ON)
|
||||||
set(CMAKE_AUTORCC ON)
|
set(CMAKE_AUTORCC ON)
|
||||||
@ -301,6 +307,7 @@ if (LIMEREPORT_STATIC)
|
|||||||
list(APPEND LIMEREPORT_SOURCES ${PROJECT_NAME}/lrfactoryinitializer.h)
|
list(APPEND LIMEREPORT_SOURCES ${PROJECT_NAME}/lrfactoryinitializer.h)
|
||||||
endif(LIMEREPORT_STATIC)
|
endif(LIMEREPORT_STATIC)
|
||||||
|
|
||||||
|
|
||||||
set(EXTRA_FILES
|
set(EXTRA_FILES
|
||||||
${PROJECT_NAME}/lrglobal.h
|
${PROJECT_NAME}/lrglobal.h
|
||||||
${PROJECT_NAME}/lrdatasourcemanagerintf.h
|
${PROJECT_NAME}/lrdatasourcemanagerintf.h
|
||||||
@ -313,58 +320,6 @@ set(EXTRA_FILES
|
|||||||
${PROJECT_NAME}/lrpreparedpagesintf.h
|
${PROJECT_NAME}/lrpreparedpagesintf.h
|
||||||
)
|
)
|
||||||
|
|
||||||
set(ZINT_FILES
|
|
||||||
3rdparty/zint-2.6.1/backend/2of5.c
|
|
||||||
3rdparty/zint-2.6.1/backend/auspost.c
|
|
||||||
3rdparty/zint-2.6.1/backend/aztec.c
|
|
||||||
3rdparty/zint-2.6.1/backend/bmp.c
|
|
||||||
3rdparty/zint-2.6.1/backend/codablock.c
|
|
||||||
3rdparty/zint-2.6.1/backend/code.c
|
|
||||||
3rdparty/zint-2.6.1/backend/code1.c
|
|
||||||
3rdparty/zint-2.6.1/backend/code128.c
|
|
||||||
3rdparty/zint-2.6.1/backend/code16k.c
|
|
||||||
3rdparty/zint-2.6.1/backend/code49.c
|
|
||||||
3rdparty/zint-2.6.1/backend/common.c
|
|
||||||
3rdparty/zint-2.6.1/backend/composite.c
|
|
||||||
3rdparty/zint-2.6.1/backend/dllversion.c
|
|
||||||
3rdparty/zint-2.6.1/backend/dmatrix.c
|
|
||||||
3rdparty/zint-2.6.1/backend/dotcode.c
|
|
||||||
3rdparty/zint-2.6.1/backend/eci.c
|
|
||||||
3rdparty/zint-2.6.1/backend/emf.c
|
|
||||||
3rdparty/zint-2.6.1/backend/gif.c
|
|
||||||
3rdparty/zint-2.6.1/backend/gridmtx.c
|
|
||||||
3rdparty/zint-2.6.1/backend/gs1.c
|
|
||||||
3rdparty/zint-2.6.1/backend/hanxin.c
|
|
||||||
3rdparty/zint-2.6.1/backend/imail.c
|
|
||||||
3rdparty/zint-2.6.1/backend/large.c
|
|
||||||
3rdparty/zint-2.6.1/backend/library.c
|
|
||||||
3rdparty/zint-2.6.1/backend/libzint.rc
|
|
||||||
3rdparty/zint-2.6.1/backend/maxicode.c
|
|
||||||
3rdparty/zint-2.6.1/backend/medical.c
|
|
||||||
3rdparty/zint-2.6.1/backend/pcx.c
|
|
||||||
3rdparty/zint-2.6.1/backend/pdf417.c
|
|
||||||
3rdparty/zint-2.6.1/backend/plessey.c
|
|
||||||
3rdparty/zint-2.6.1/backend/png.c
|
|
||||||
3rdparty/zint-2.6.1/backend/postal.c
|
|
||||||
3rdparty/zint-2.6.1/backend/ps.c
|
|
||||||
3rdparty/zint-2.6.1/backend/qr.c
|
|
||||||
3rdparty/zint-2.6.1/backend/raster.c
|
|
||||||
3rdparty/zint-2.6.1/backend/reedsol.c
|
|
||||||
3rdparty/zint-2.6.1/backend/render.c
|
|
||||||
3rdparty/zint-2.6.1/backend/rss.c
|
|
||||||
3rdparty/zint-2.6.1/backend/svg.c
|
|
||||||
3rdparty/zint-2.6.1/backend/telepen.c
|
|
||||||
3rdparty/zint-2.6.1/backend/tif.c
|
|
||||||
3rdparty/zint-2.6.1/backend/upcean.c
|
|
||||||
3rdparty/zint-2.6.1/backend_qt/qzint.cpp
|
|
||||||
)
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
set(LIMEREPORT_VERSION_MAJOR 1)
|
|
||||||
set(LIMEREPORT_VERSION_MINOR 5)
|
|
||||||
set(LIMEREPORT_VERSION_RELEASE 88)
|
|
||||||
|
|
||||||
configure_file(config.h.in config.h @ONLY)
|
configure_file(config.h.in config.h @ONLY)
|
||||||
|
|
||||||
set(GLOBAL_HEADERS
|
set(GLOBAL_HEADERS
|
||||||
@ -375,10 +330,6 @@ set(GLOBAL_HEADERS
|
|||||||
${CMAKE_CURRENT_BINARY_DIR}/config.h
|
${CMAKE_CURRENT_BINARY_DIR}/config.h
|
||||||
)
|
)
|
||||||
|
|
||||||
if(ENABLE_ZINT)
|
|
||||||
add_library(QZint STATIC ${ZINT_FILES})
|
|
||||||
endif(ENABLE_ZINT)
|
|
||||||
|
|
||||||
if (LIMEREPORT_STATIC)
|
if (LIMEREPORT_STATIC)
|
||||||
message(STATUS "STATIC LIBRARY")
|
message(STATUS "STATIC LIBRARY")
|
||||||
add_library(${PROJECT_NAME} STATIC ${EXTRA_FILES} ${LIMEREPORT_SOURCES})
|
add_library(${PROJECT_NAME} STATIC ${EXTRA_FILES} ${LIMEREPORT_SOURCES})
|
||||||
@ -389,18 +340,6 @@ else()
|
|||||||
endif()
|
endif()
|
||||||
|
|
||||||
target_compile_definitions(${PROJECT_NAME} PUBLIC -DCMAKE_CONFIG)
|
target_compile_definitions(${PROJECT_NAME} PUBLIC -DCMAKE_CONFIG)
|
||||||
target_link_libraries( ${PROJECT_NAME} PRIVATE PNG::PNG)
|
|
||||||
if(ENABLE_ZINT)
|
|
||||||
target_link_libraries( ${PROJECT_NAME} PRIVATE QZint)
|
|
||||||
target_include_directories( ${PROJECT_NAME} PRIVATE
|
|
||||||
3rdparty/zint-2.6.1/backend_qt
|
|
||||||
3rdparty/zint-2.6.1/backend)
|
|
||||||
endif(ENABLE_ZINT)
|
|
||||||
|
|
||||||
if (LIMEREPORT_STATIC AND ENABLE_ZINT)
|
|
||||||
target_compile_definitions( ${PROJECT_NAME} PRIVATE -DQZINT_STATIC_BUILD)
|
|
||||||
endif(LIMEREPORT_STATIC AND ENABLE_ZINT)
|
|
||||||
|
|
||||||
|
|
||||||
target_link_libraries( ${PROJECT_NAME} PUBLIC
|
target_link_libraries( ${PROJECT_NAME} PUBLIC
|
||||||
Qt${QT_VERSION_MAJOR}::Core
|
Qt${QT_VERSION_MAJOR}::Core
|
||||||
@ -412,6 +351,10 @@ target_link_libraries( ${PROJECT_NAME} PUBLIC
|
|||||||
Qt${QT_VERSION_MAJOR}::Svg
|
Qt${QT_VERSION_MAJOR}::Svg
|
||||||
Qt${QT_VERSION_MAJOR}::UiTools)
|
Qt${QT_VERSION_MAJOR}::UiTools)
|
||||||
|
|
||||||
|
if(ENABLE_ZINT)
|
||||||
|
target_link_libraries( ${PROJECT_NAME} PRIVATE QZint)
|
||||||
|
endif(ENABLE_ZINT)
|
||||||
|
|
||||||
target_compile_definitions( ${PROJECT_NAME} PRIVATE -DHAVE_QT5 -DHAVE_REPORT_DESIGNER -DUSE_QJSENGINE -DHAVE_UI_LOADER -D_CRT_SECURE_NO_WARNINGS)
|
target_compile_definitions( ${PROJECT_NAME} PRIVATE -DHAVE_QT5 -DHAVE_REPORT_DESIGNER -DUSE_QJSENGINE -DHAVE_UI_LOADER -D_CRT_SECURE_NO_WARNINGS)
|
||||||
target_include_directories( ${PROJECT_NAME} PRIVATE
|
target_include_directories( ${PROJECT_NAME} PRIVATE
|
||||||
limereport/
|
limereport/
|
||||||
|
Loading…
Reference in New Issue
Block a user