Mercurial > hgrepos > Python2 > PyMuPDF
diff mupdf-source/thirdparty/zxing-cpp/CMakeLists.txt @ 2:b50eed0cc0ef upstream
ADD: MuPDF v1.26.7: the MuPDF source as downloaded by a default build of PyMuPDF 1.26.4.
The directory name has changed: no version number in the expanded directory now.
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Mon, 15 Sep 2025 11:43:07 +0200 |
| parents | |
| children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/mupdf-source/thirdparty/zxing-cpp/CMakeLists.txt Mon Sep 15 11:43:07 2025 +0200 @@ -0,0 +1,102 @@ +cmake_minimum_required(VERSION 3.16) + +project(ZXing) + +option (ZXING_READERS "Build with reader support (decoders)" ON) +set (ZXING_WRITERS "ON" CACHE STRING "Build with old and/or new writer (encoder) backend (OFF/ON/OLD/NEW/BOTH)") +option (ZXING_USE_BUNDLED_ZINT "Use the bundled libzint for barcode creation/writing" ON) +option (ZXING_C_API "Build the C-API" OFF) +option (ZXING_EXPERIMENTAL_API "Build with experimental API" OFF) +option (ZXING_EXAMPLES "Build the example barcode reader/writer applications" ON) +option (ZXING_BLACKBOX_TESTS "Build the black box reader/writer tests" OFF) +option (ZXING_UNIT_TESTS "Build the unit tests (don't enable for production builds)" OFF) +option (ZXING_PYTHON_MODULE "Build the python module" OFF) +set (ZXING_DEPENDENCIES "AUTO" CACHE STRING "Fetch from github or use locally installed (AUTO/GITHUB/LOCAL)") + +if (WIN32) + option (BUILD_SHARED_LIBS "Build and link as shared library" OFF) +else() + option (BUILD_SHARED_LIBS "Build and link as shared library" ON) +endif() + +if (MSVC) + add_definitions (-DUNICODE -D_UNICODE -D_CRT_SECURE_NO_WARNINGS) + option (ZXING_LINK_CPP_STATICALLY "MSVC only, link standard library statically (/MT and /MTd)" OFF) + if (LINK_CPP_STATICALLY OR ZXING_LINK_CPP_STATICALLY) + set(CMAKE_MSVC_RUNTIME_LIBRARY "MultiThreaded$<$<CONFIG:Debug>:Debug>") + endif() +endif() + +if (NOT CMAKE_BUILD_TYPE) + set (DEFAULT_BUILD_TYPE "Release") + message (STATUS "Setting build type to '${DEFAULT_BUILD_TYPE}' as none was specified.") + set (CMAKE_BUILD_TYPE "${DEFAULT_BUILD_TYPE}" CACHE STRING "Choose the type of build." FORCE) + set_property (CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS "Debug" "Release" "MinSizeRel" "RelWithDebInfo") +endif() + +# provide backward compatibility for deprecated BUILD_... options +if (DEFINED BUILD_READERS) + set (ZXING_READERS ${BUILD_READERS}) +endif() +if (DEFINED BUILD_WRITERS) + set (ZXING_WRITERS ${BUILD_WRITERS}) +endif() +if (DEFINED BUILD_EXAMPLES) + message (WARNING "zxing-cpp cmake options BUILD_... are deprecated, please switch to ZXING_... variant") + set (ZXING_EXAMPLES ${BUILD_EXAMPLES}) +endif() +if (DEFINED BUILD_PYTHON_MODULE) + message (WARNING "zxing-cpp cmake options BUILD_... are deprecated, please switch to ZXING_... variant") + set (ZXING_PYTHON_MODULE ${BUILD_PYTHON_MODULE}) +endif() +if (DEFINED BUILD_DEPENDENCIES) + message (WARNING "zxing-cpp cmake options BUILD_... are deprecated, please switch to ZXING_... variant") + set (ZXING_DEPENDENCIES ${BUILD_DEPENDENCIES}) +endif() + +if (NOT (ZXING_READERS OR ZXING_WRITERS)) + message(FATAL_ERROR "At least one of ZXING_READERS/ZXING_WRITERS must be enabled.") +endif() + +set(ZXING_WRITERS_LIST OFF ON OLD NEW BOTH) +set_property(CACHE ZXING_WRITERS PROPERTY STRINGS ${ZXING_WRITERS_LIST}) +if(NOT ZXING_WRITERS IN_LIST ZXING_WRITERS_LIST) + message(FATAL_ERROR "ZXING_WRITERS must be one of ${ZXING_WRITERS_LIST}") +endif() + +set(ZXING_DEPENDENCIES_LIST AUTO GITHUB LOCAL) +set_property(CACHE ZXING_DEPENDENCIES PROPERTY STRINGS ${ZXING_DEPENDENCIES_LIST}) +if(NOT ZXING_DEPENDENCIES IN_LIST ZXING_DEPENDENCIES_LIST) + message(FATAL_ERROR "ZXING_DEPENDENCIES must be one of ${ZXING_DEPENDENCIES_LIST}") +endif() + +if (NOT DEFINED CMAKE_CXX_STANDARD) + set (CMAKE_CXX_STANDARD 20) + # Allow the fallback to earlier versions if the compiler does not support it. + set(CMAKE_CXX_STANDARD_REQUIRED OFF) +endif() +if (NOT DEFINED CMAKE_CXX_EXTENSIONS) + set (CMAKE_CXX_EXTENSIONS OFF) +endif() + +add_subdirectory (core) + +enable_testing() + +include(zxing.cmake) + +if (ZXING_EXAMPLES) + add_subdirectory (example) +endif() +if (ZXING_BLACKBOX_TESTS) + add_subdirectory (test/blackbox) +endif() +if (ZXING_UNIT_TESTS) + add_subdirectory (test/unit) +endif() +if (ZXING_PYTHON_MODULE) + add_subdirectory (wrappers/python) +endif() +if (ZXING_C_API) + add_subdirectory (wrappers/c) +endif()
