From a48a58c8d45e49000ce95e705bd5d65e31eb566c Mon Sep 17 00:00:00 2001 From: Andrey Ilyin Date: Fri, 2 Apr 2021 16:04:01 +0300 Subject: [PATCH 1/9] bzip2 v1.0.8-p1.tar.gz --- cmake/projects/BZip2/hunter.cmake | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/cmake/projects/BZip2/hunter.cmake b/cmake/projects/BZip2/hunter.cmake index e403d6bfdd..2f415d5940 100644 --- a/cmake/projects/BZip2/hunter.cmake +++ b/cmake/projects/BZip2/hunter.cmake @@ -65,6 +65,17 @@ hunter_add_version( 9125bd674fbe7c8169c8ea6a2a15a414a7dc2f86 ) +hunter_add_version( + PACKAGE_NAME + BZip2 + VERSION + "1.0.8-p1" + URL + "https://github.com/regulaforensics/bzip2/archive/refs/tags/v1.0.8-p1.tar.gz" + SHA1 + 46137C4EB477E0383DEAE0A809154E85E8FEF862 +) + hunter_cmake_args( BZip2 CMAKE_ARGS From bd9c6387847fc09e9a4613316843795becc99b47 Mon Sep 17 00:00:00 2001 From: Andrey Ilyin Date: Fri, 2 Apr 2021 16:25:10 +0300 Subject: [PATCH 2/9] freetype v2.9.1-p4.tar.gz --- cmake/projects/freetype/hunter.cmake | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/cmake/projects/freetype/hunter.cmake b/cmake/projects/freetype/hunter.cmake index cc215b4612..8da85085d6 100644 --- a/cmake/projects/freetype/hunter.cmake +++ b/cmake/projects/freetype/hunter.cmake @@ -8,6 +8,17 @@ include(hunter_cmake_args) include(hunter_download) include(hunter_pick_scheme) +hunter_add_version( + PACKAGE_NAME + freetype + VERSION + "2.9.1-p4" + URL + "https://github.com/regulaforensics/freetype/archive/refs/tags/v2.9.1-p4.tar.gz" + SHA1 + 2409311388E54EC839C3E9BEF0EC62C748D1F810 +) + hunter_add_version( PACKAGE_NAME freetype From 9a5950f056f62faaa2662b36dd4272c9390cadc1 Mon Sep 17 00:00:00 2001 From: Andrey Ilyin Date: Sat, 3 Apr 2021 01:49:25 +0300 Subject: [PATCH 3/9] links upd --- cmake/projects/BZip2/hunter.cmake | 4 ++-- cmake/projects/freetype/hunter.cmake | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/cmake/projects/BZip2/hunter.cmake b/cmake/projects/BZip2/hunter.cmake index 2f415d5940..d751044ccf 100644 --- a/cmake/projects/BZip2/hunter.cmake +++ b/cmake/projects/BZip2/hunter.cmake @@ -71,9 +71,9 @@ hunter_add_version( VERSION "1.0.8-p1" URL - "https://github.com/regulaforensics/bzip2/archive/refs/tags/v1.0.8-p1.tar.gz" + "https://github.com/regulaforensics/bzip2/archive/v1.0.8-p1.tar.gz" SHA1 - 46137C4EB477E0383DEAE0A809154E85E8FEF862 + D3772F29147BDD034109E2B47242AE115ADF2E95 ) hunter_cmake_args( diff --git a/cmake/projects/freetype/hunter.cmake b/cmake/projects/freetype/hunter.cmake index 8da85085d6..390ec6417d 100644 --- a/cmake/projects/freetype/hunter.cmake +++ b/cmake/projects/freetype/hunter.cmake @@ -14,7 +14,7 @@ hunter_add_version( VERSION "2.9.1-p4" URL - "https://github.com/regulaforensics/freetype/archive/refs/tags/v2.9.1-p4.tar.gz" + "https://github.com/regulaforensics/freetype/archive/v2.9.1-p4.tar.gz" SHA1 2409311388E54EC839C3E9BEF0EC62C748D1F810 ) From 5fb9d7cdd8264b8ac95eea5d9518c185017bacc3 Mon Sep 17 00:00:00 2001 From: "andrei.svatko" Date: Fri, 22 Sep 2023 15:41:45 +0300 Subject: [PATCH 4/9] added OpenSSL 1.1.1w --- cmake/projects/OpenSSL/hunter.cmake | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/cmake/projects/OpenSSL/hunter.cmake b/cmake/projects/OpenSSL/hunter.cmake index f3bb1a1fb9..4841baf973 100755 --- a/cmake/projects/OpenSSL/hunter.cmake +++ b/cmake/projects/OpenSSL/hunter.cmake @@ -656,6 +656,17 @@ hunter_add_version( 34ea65451f7fc4625f31ba50f89b3fbea12f13f3 ) +hunter_add_version( + PACKAGE_NAME + OpenSSL + VERSION + "1.1.1w" + URL + "https://github.com/openssl/openssl/archive/OpenSSL_1_1_1w.tar.gz" + SHA1 + 3409260b6a9bf19d10d253c670e5e7b3c7b3a90b +) + # 3.0 series (LTS) hunter_add_version( PACKAGE_NAME From 8cac8d47a5596b9ac9b9d5c8ab39a361a6c7753f Mon Sep 17 00:00:00 2001 From: "aliaksandr.anishchuk" Date: Sat, 11 Nov 2023 17:07:36 +0300 Subject: [PATCH 5/9] [no-upstream] iOS with normal toolchain build fixes for Boost & OpenSSL --- cmake/projects/Boost/schemes/url_sha1_boost_library.cmake.in | 2 +- cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/cmake/projects/Boost/schemes/url_sha1_boost_library.cmake.in b/cmake/projects/Boost/schemes/url_sha1_boost_library.cmake.in index fe0128d8eb..e281eba414 100644 --- a/cmake/projects/Boost/schemes/url_sha1_boost_library.cmake.in +++ b/cmake/projects/Boost/schemes/url_sha1_boost_library.cmake.in @@ -96,7 +96,7 @@ else() hunter_fatal_error("TODO: set toolset for boost" ERROR_PAGE "error.boost.toolset") endif() -hunter_dump_cmake_flags() +hunter_dump_cmake_flags(SKIP_DEPLOYMENT_TARGET) # -> CMAKE_C_FLAGS # -> CMAKE_CXX_FLAGS diff --git a/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in b/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in index 3d8e2f991b..b1f97ed77d 100644 --- a/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in +++ b/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in @@ -35,7 +35,7 @@ hunter_assert_not_empty_string("@IOS_SDK_VERSION@") hunter_assert_not_empty_string("@IPHONESIMULATOR_ROOT@") hunter_assert_not_empty_string("@IPHONEOS_ROOT@") -hunter_dump_cmake_flags(SKIP_INCLUDES) +hunter_dump_cmake_flags(SKIP_INCLUDES SKIP_DEPLOYMENT_TARGET) # -> CMAKE_CXX_FLAGS # -> CMAKE_C_FLAGS @@ -114,7 +114,7 @@ foreach(variant @IPHONEOS_ARCHS@ @IPHONESIMULATOR_ARCHS@) string(COMPARE EQUAL "${variant}" "arm64" ios64_cross) if(ios64_cross) - set(target "ios64-cross") + set(target "iossimulator-xcrun") endif() string(COMPARE EQUAL "${variant}" "i386" i386) @@ -156,6 +156,7 @@ foreach(variant @IPHONEOS_ARCHS@ @IPHONESIMULATOR_ARCHS@) "-isysroot ${SDK_ROOT}" BUILD_COMMAND . "@HUNTER_GLOBAL_SCRIPT_DIR@/clear-all.sh" && + export CROSS_COMPILE=`xcode-select --print-path`/Toolchains/XcodeDefault.xctoolchain/usr/bin/ export CROSS_TOP=${CROSS_TOP} && export CROSS_SDK=${CROSS_SDK} && make From 712e6b08113393ee449bdca2ed4fb27044fa0188 Mon Sep 17 00:00:00 2001 From: "aliaksandr.anishchuk" Date: Mon, 13 Nov 2023 12:53:34 +0300 Subject: [PATCH 6/9] [no-upstream] Fixed build OpenSSL for iOS on old MacOS systems --- cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in | 1 - 1 file changed, 1 deletion(-) diff --git a/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in b/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in index b1f97ed77d..fa7d7bf2bd 100644 --- a/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in +++ b/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in @@ -156,7 +156,6 @@ foreach(variant @IPHONEOS_ARCHS@ @IPHONESIMULATOR_ARCHS@) "-isysroot ${SDK_ROOT}" BUILD_COMMAND . "@HUNTER_GLOBAL_SCRIPT_DIR@/clear-all.sh" && - export CROSS_COMPILE=`xcode-select --print-path`/Toolchains/XcodeDefault.xctoolchain/usr/bin/ export CROSS_TOP=${CROSS_TOP} && export CROSS_SDK=${CROSS_SDK} && make From 147a19c16dd0ec771c1f60d3b25f711fd22c273e Mon Sep 17 00:00:00 2001 From: "aliaksandr.anishchuk" Date: Fri, 1 Dec 2023 21:48:55 +0300 Subject: [PATCH 7/9] Fixed build openssl for curl on iOS --- .../schemes/url_sha1_openssl_ios.cmake.in | 224 ++++++++++-------- 1 file changed, 126 insertions(+), 98 deletions(-) diff --git a/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in b/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in index fa7d7bf2bd..f04f75ef9c 100644 --- a/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in +++ b/cmake/projects/OpenSSL/schemes/url_sha1_openssl_ios.cmake.in @@ -48,18 +48,34 @@ set(configure_opts threads no-shared) # Pass C flags through set(configure_opts ${configure_opts} ${CMAKE_C_FLAGS}) -foreach(arch @IPHONEOS_ARCHS@ @IPHONESIMULATOR_ARCHS@) - list( - APPEND - ssl_input_libraries - "@HUNTER_PACKAGE_SOURCE_DIR@/${arch}/libssl.a" - ) - list( - APPEND - crypto_input_libraries - "@HUNTER_PACKAGE_SOURCE_DIR@/${arch}/libcrypto.a" - ) -endforeach() +list(APPEND iphoneos_archs @IPHONEOS_ARCHS@) +list(APPEND iphonesimulator_archs @IPHONESIMULATOR_ARCHS@) + +macro(__setup_lipo_input _platform _archs) + message(STATUS "lipo ${_platform}-${_archs}") + foreach(arch IN ITEMS ${_archs}) + list( + APPEND + ssl_input_libraries + "@HUNTER_PACKAGE_SOURCE_DIR@/${_platform}-${arch}/libssl.a" + ) + list( + APPEND + crypto_input_libraries + "@HUNTER_PACKAGE_SOURCE_DIR@/${_platform}-${arch}/libcrypto.a" + ) + message(STATUS " - lipo add ${_platform}-${arch}") + endforeach() +endmacro() + +if(iphoneos_archs) + __setup_lipo_input(iphoneos "${iphoneos_archs}") +endif() + +if(iphonesimulator_archs) + __setup_lipo_input(iphonesimulator "${iphonesimulator_archs}") +endif() + # fuse all libraries by 'lipo' ExternalProject_Add( @@ -93,89 +109,101 @@ ExternalProject_Add( "@HUNTER_PACKAGE_INSTALL_PREFIX@/lib/libcrypto.a" ) -foreach(variant @IPHONEOS_ARCHS@ @IPHONESIMULATOR_ARCHS@) - set(iphoneos_archs @IPHONEOS_ARCHS@) - list(FIND iphoneos_archs ${variant} find_index) - if(find_index EQUAL -1) - set(CROSS_TOP "@IPHONESIMULATOR_ROOT@") - set(CROSS_SDK "iPhoneSimulator@IOS_SDK_VERSION@.sdk") - set(SDK_ROOT ${IPHONESIMULATOR_SDK_ROOT}) - else() - set(CROSS_TOP "@IPHONEOS_ROOT@") - set(CROSS_SDK "iPhoneOS@IOS_SDK_VERSION@.sdk") - set(SDK_ROOT ${IPHONEOS_SDK_ROOT}) - endif() - - string(COMPARE EQUAL "${variant}" "arm" arm) - string(COMPARE EQUAL "${variant}" "armv7" armv7) - if(arm OR armv7) - set(target "ios-cross") - endif() - - string(COMPARE EQUAL "${variant}" "arm64" ios64_cross) - if(ios64_cross) - set(target "iossimulator-xcrun") - endif() - - string(COMPARE EQUAL "${variant}" "i386" i386) - if(i386) - set(target "darwin-i386-cc") - endif() - - string(COMPARE EQUAL "${variant}" "x86_64" x86_64) - if(x86_64) - set(target "darwin64-x86_64-cc") - # set_key.c:398:17: error: unsupported inline asm: - # input with type 'unsigned long' matching output with type 'unsigned int' - set(configure_opts ${configure_opts} "no-asm") - endif() - - ExternalProject_Add( - "@HUNTER_EP_NAME@-${variant}" - URL - @HUNTER_PACKAGE_URL@ - URL_HASH - SHA1=@HUNTER_PACKAGE_SHA1@ - DOWNLOAD_DIR - "@HUNTER_PACKAGE_DOWNLOAD_DIR@" - TLS_VERIFY - "@HUNTER_TLS_VERIFY@" - SOURCE_DIR - "@HUNTER_PACKAGE_SOURCE_DIR@/${variant}" - INSTALL_DIR - "@HUNTER_PACKAGE_INSTALL_PREFIX@" - # not used, just avoid creating Install/ empty directory - CONFIGURE_COMMAND - ./Configure - "${target}" - "${configure_opts}" - "no-async" - "--prefix=@HUNTER_PACKAGE_INSTALL_PREFIX@" - "--libdir=lib" - "-arch ${variant}" - "-isysroot ${SDK_ROOT}" - BUILD_COMMAND - . "@HUNTER_GLOBAL_SCRIPT_DIR@/clear-all.sh" && - export CROSS_TOP=${CROSS_TOP} && - export CROSS_SDK=${CROSS_SDK} && - make - BUILD_IN_SOURCE - 1 - INSTALL_COMMAND - make install_sw - # installed libraries will be rewrited, - # other files are equal - COMMAND # Copy license files - "@CMAKE_COMMAND@" - "-C@HUNTER_ARGS_FILE@" # for 'HUNTER_INSTALL_LICENSE_FILES' - "-Dsrcdir=@HUNTER_PACKAGE_SOURCE_DIR@/${variant}" - "-Ddstdir=@HUNTER_PACKAGE_LICENSE_DIR@" - -P - "@HUNTER_SELF@/scripts/try-copy-license.cmake" - ) - - add_dependencies( - "@HUNTER_EP_NAME@-ios_universal" - "@HUNTER_EP_NAME@-${variant}" - ) -endforeach() +macro(__setup_platform _platform _archs) + string(COMPARE EQUAL "${_platform}" "iphoneos" is_iphoneos) + string(COMPARE EQUAL "${_platform}" "iphonesimulator" is_iphonesimulator) + message(STATUS "platform ${_platform}-${_archs}") + foreach(arch IN ITEMS ${_archs}) + if(_platform STREQUAL "iphoneos") + set(CROSS_TOP "@IPHONEOS_ROOT@") + set(CROSS_SDK "iPhoneOS@IOS_SDK_VERSION@.sdk") + elseif(_platform STREQUAL "iphonesimulator") + set(CROSS_TOP "@IPHONESIMULATOR_ROOT@") + set(CROSS_SDK "iPhoneSimulator@IOS_SDK_VERSION@.sdk") + endif() + + if(arch MATCHES "arm|armv7") + set(target "ios-cross") + endif() + + if(arch MATCHES "arm64") + set(target "iossimulator-xcrun") + endif() + + if(arch MATCHES "i386") + set(target "darwin-i386-cc") + endif() + + if(arch MATCHES "x86_64") + if(is_iphoneos) + set(target "darwin64-x86_64-cc") + else() + set(target "iossimulator-xcrun") + endif() + # set_key.c:398:17: error: unsupported inline asm: + # input with type 'unsigned long' matching output with type 'unsigned int' + set(configure_opts ${configure_opts} "no-asm") + endif() + + ExternalProject_Add( + "@HUNTER_EP_NAME@-${_platform}-${arch}" + URL + @HUNTER_PACKAGE_URL@ + URL_HASH + SHA1=@HUNTER_PACKAGE_SHA1@ + DOWNLOAD_DIR + "@HUNTER_PACKAGE_DOWNLOAD_DIR@" + TLS_VERIFY + "@HUNTER_TLS_VERIFY@" + SOURCE_DIR + "@HUNTER_PACKAGE_SOURCE_DIR@/${_platform}-${arch}" + INSTALL_DIR + "@HUNTER_PACKAGE_INSTALL_PREFIX@" + # not used, just avoid creating Install/ empty directory + CONFIGURE_COMMAND + ./Configure + "${target}" + "${configure_opts}" + "no-async" + "--prefix=@HUNTER_PACKAGE_INSTALL_PREFIX@" + "--libdir=lib" + "-arch ${arch}" + "-isysroot ${CMAKE_OSX_SYSROOT}" + BUILD_COMMAND + . "@HUNTER_GLOBAL_SCRIPT_DIR@/clear-all.sh" && + export CROSS_TOP=${CROSS_TOP} && + export CROSS_SDK=${CROSS_SDK} && + make + BUILD_IN_SOURCE + 1 + INSTALL_COMMAND + make install_sw + # installed libraries will be rewrited, + # other files are equal + COMMAND # Copy license files + "@CMAKE_COMMAND@" + "-C@HUNTER_ARGS_FILE@" # for 'HUNTER_INSTALL_LICENSE_FILES' + "-Dsrcdir=@HUNTER_PACKAGE_SOURCE_DIR@/${_platform}-${arch}" + "-Ddstdir=@HUNTER_PACKAGE_LICENSE_DIR@" + -P + "@HUNTER_SELF@/scripts/try-copy-license.cmake" + ) + + add_dependencies( + "@HUNTER_EP_NAME@-ios_universal" + "@HUNTER_EP_NAME@-${_platform}-${arch}" + ) + + message(STATUS " - build add ${_platform}-${arch}") + endforeach() +endmacro() + + +if(iphoneos_archs) + __setup_platform(iphoneos "${iphoneos_archs}") +endif() + +if(iphonesimulator_archs) + __setup_platform(iphonesimulator "${iphonesimulator_archs}") +endif() + From 20d4cc4dccc424bac6b57c9e4a4575861758136e Mon Sep 17 00:00:00 2001 From: "aliaksandr.anishchuk" Date: Tue, 14 Jan 2025 17:06:29 +0300 Subject: [PATCH 8/9] Fixed long time cache load --- cmake/modules/hunter_download_cache_meta_file.cmake | 2 +- cmake/modules/hunter_download_cache_raw_file.cmake | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/modules/hunter_download_cache_meta_file.cmake b/cmake/modules/hunter_download_cache_meta_file.cmake index 77add18bef..bb08bec897 100644 --- a/cmake/modules/hunter_download_cache_meta_file.cmake +++ b/cmake/modules/hunter_download_cache_meta_file.cmake @@ -68,7 +68,7 @@ function(hunter_download_cache_meta_file) hunter_get_passwords_path(pass_path) string(COMPARE NOTEQUAL "${pass_path}" "" has_pass) - set(total_retry 10) + set(total_retry 1) foreach(x RANGE ${total_retry}) foreach(server ${HUNTER_CACHE_SERVERS}) set(HUNTER_CACHE_SERVER_NAME "${server}") diff --git a/cmake/modules/hunter_download_cache_raw_file.cmake b/cmake/modules/hunter_download_cache_raw_file.cmake index 04bfa3e961..45cd34aeb8 100644 --- a/cmake/modules/hunter_download_cache_raw_file.cmake +++ b/cmake/modules/hunter_download_cache_raw_file.cmake @@ -75,7 +75,7 @@ function(hunter_download_cache_raw_file) hunter_get_passwords_path(pass_path) string(COMPARE NOTEQUAL "${pass_path}" "" has_pass) - set(total_retry 10) + set(total_retry 1) foreach(x RANGE ${total_retry}) foreach(server ${HUNTER_CACHE_SERVERS}) set(HUNTER_CACHE_SERVER_NAME "${server}") From 4f04cdcc8d3c1cca725b60b5265e072d2d1dd3fc Mon Sep 17 00:00:00 2001 From: "aliaksandr.anishchuk" Date: Thu, 13 Feb 2025 23:20:58 +0300 Subject: [PATCH 9/9] Added version 1.9.6 --- cmake/projects/jsoncpp/hunter.cmake | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/cmake/projects/jsoncpp/hunter.cmake b/cmake/projects/jsoncpp/hunter.cmake index 02e50638f8..2c0f85fc71 100644 --- a/cmake/projects/jsoncpp/hunter.cmake +++ b/cmake/projects/jsoncpp/hunter.cmake @@ -11,6 +11,17 @@ include(hunter_cmake_args) # List of versions: +hunter_add_version( + PACKAGE_NAME + jsoncpp + VERSION + "1.9.6" + URL + "https://github.com/open-source-parsers/jsoncpp/archive/1.9.6.tar.gz" + SHA1 + fb695d42da4a60e1d25d0757eff8308827f07240 +) + hunter_add_version( PACKAGE_NAME jsoncpp