diff options
| author | Mehmet Samet Duman <yongdohyun@projecttick.org> | 2026-04-02 18:51:45 +0300 |
|---|---|---|
| committer | Mehmet Samet Duman <yongdohyun@projecttick.org> | 2026-04-02 18:51:45 +0300 |
| commit | d3261e64152397db2dca4d691a990c6bc2a6f4dd (patch) | |
| tree | fac2f7be638651181a72453d714f0f96675c2b8b /archived/projt-launcher/cmake/useLibqrencode.cmake | |
| parent | 31b9a8949ed0a288143e23bf739f2eb64fdc63be (diff) | |
| download | Project-Tick-d3261e64152397db2dca4d691a990c6bc2a6f4dd.tar.gz Project-Tick-d3261e64152397db2dca4d691a990c6bc2a6f4dd.zip | |
NOISSUE add archived projects
Signed-off-by: Mehmet Samet Duman <yongdohyun@projecttick.org>
Diffstat (limited to 'archived/projt-launcher/cmake/useLibqrencode.cmake')
| -rw-r--r-- | archived/projt-launcher/cmake/useLibqrencode.cmake | 91 |
1 files changed, 91 insertions, 0 deletions
diff --git a/archived/projt-launcher/cmake/useLibqrencode.cmake b/archived/projt-launcher/cmake/useLibqrencode.cmake new file mode 100644 index 0000000000..268ff019f2 --- /dev/null +++ b/archived/projt-launcher/cmake/useLibqrencode.cmake @@ -0,0 +1,91 @@ +function(projt_add_libqrencode) + # Avoid optional tools/tests that require getopt/PNG on Windows. + if(WIN32) + set(_qrencode_prev_build_shared_libs "${BUILD_SHARED_LIBS}") + set(BUILD_SHARED_LIBS OFF CACHE BOOL "" FORCE) + set(ENABLE_SHARED OFF CACHE BOOL "" FORCE) + set(ENABLE_STATIC ON CACHE BOOL "" FORCE) + endif() + set(WITH_TOOLS OFF CACHE BOOL "" FORCE) + set(WITH_PNG OFF CACHE BOOL "" FORCE) + set(_launcher_prev_build_testing "${BUILD_TESTING}") + set(_launcher_prev_with_tests "") + set(_launcher_with_tests_set FALSE) + if(DEFINED WITH_TESTS) + set(_launcher_prev_with_tests "${WITH_TESTS}") + set(_launcher_with_tests_set TRUE) + endif() + set(BUILD_TESTING OFF CACHE BOOL "" FORCE) + set(WITH_TESTS OFF CACHE BOOL "" FORCE) + set(_qrencode_prev_install_libdir "") + set(_qrencode_install_libdir_set FALSE) + if(APPLE) + set(_qrencode_bundle_dir "ProjTLauncher.app/Contents/Frameworks") + if(DEFINED Launcher_Name AND NOT Launcher_Name STREQUAL "") + set(_qrencode_bundle_dir "${Launcher_Name}.app/Contents/Frameworks") + endif() + if(DEFINED CMAKE_INSTALL_LIBDIR) + set(_qrencode_prev_install_libdir "${CMAKE_INSTALL_LIBDIR}") + set(_qrencode_install_libdir_set TRUE) + endif() + set(CMAKE_INSTALL_LIBDIR "${_qrencode_bundle_dir}" CACHE PATH "" FORCE) + endif() + if(UNIX AND NOT APPLE) + if(DEFINED Launcher_BUNDLED_LIBDIR AND NOT Launcher_BUNDLED_LIBDIR STREQUAL "") + projt_push_install_libdir("${Launcher_BUNDLED_LIBDIR}") + endif() + if(DEFINED Launcher_BUNDLED_INCLUDEDIR AND NOT Launcher_BUNDLED_INCLUDEDIR STREQUAL "") + projt_push_install_includedir("${Launcher_BUNDLED_INCLUDEDIR}") + endif() + endif() + projt_push_output_dirs("libqrencode") + projt_push_autogen_disabled() + set(PROJT_DISABLE_SUMMARY ON CACHE BOOL "" FORCE) + add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../libqrencode libqrencode) + projt_pop_autogen_disabled() + projt_pop_output_dirs() + if(UNIX AND NOT APPLE) + if(DEFINED Launcher_BUNDLED_INCLUDEDIR AND NOT Launcher_BUNDLED_INCLUDEDIR STREQUAL "") + projt_pop_install_includedir() + endif() + if(DEFINED Launcher_BUNDLED_LIBDIR AND NOT Launcher_BUNDLED_LIBDIR STREQUAL "") + projt_pop_install_libdir() + endif() + endif() + if(APPLE) + if(_qrencode_install_libdir_set) + set(CMAKE_INSTALL_LIBDIR "${_qrencode_prev_install_libdir}" CACHE PATH "" FORCE) + else() + unset(CMAKE_INSTALL_LIBDIR CACHE) + endif() + endif() + if(WIN32) + set(BUILD_SHARED_LIBS "${_qrencode_prev_build_shared_libs}" CACHE BOOL "" FORCE) + endif() + set(BUILD_TESTING "${_launcher_prev_build_testing}" CACHE BOOL "" FORCE) + if(_launcher_with_tests_set) + set(WITH_TESTS "${_launcher_prev_with_tests}" CACHE BOOL "" FORCE) + else() + unset(WITH_TESTS CACHE) + endif() + unset(_launcher_prev_build_testing) + unset(_launcher_prev_with_tests) + unset(_launcher_with_tests_set) + unset(_qrencode_prev_install_libdir) + unset(_qrencode_install_libdir_set) + add_library(qrcodegenerator ALIAS qrencode) + # Ensure the qrencode target exposes include directories so consumers can find qrencode.h + if(TARGET qrencode) + get_target_property(_qr_inc qrencode INTERFACE_INCLUDE_DIRECTORIES) + if(NOT _qr_inc) + target_include_directories(qrencode PUBLIC + "${CMAKE_CURRENT_SOURCE_DIR}/../libqrencode" + "${CMAKE_CURRENT_SOURCE_DIR}/../libqrencode/src" + "${CMAKE_CURRENT_SOURCE_DIR}/../libqrencode/lib" + "${CMAKE_CURRENT_SOURCE_DIR}/../libqrencode/include") + endif() + endif() + if(NOT DEFINED QRENCODE_INC OR QRENCODE_INC STREQUAL "") + set(QRENCODE_INC "${CMAKE_CURRENT_SOURCE_DIR}/../libqrencode;${CMAKE_CURRENT_SOURCE_DIR}/../libqrencode/include;${CMAKE_CURRENT_SOURCE_DIR}/../libqrencode/lib" CACHE PATH "QRENCODE include dir" FORCE) + endif() +endfunction() |
