diff --git a/.github/workflows/build.main.kts b/.github/workflows/build.main.kts index cff4eae..fe2216f 100755 --- a/.github/workflows/build.main.kts +++ b/.github/workflows/build.main.kts @@ -160,6 +160,13 @@ workflow( run(command = prefix + "conan profile detect") + // Export the vendored (org-fork-pinned) openssl recipe into the local + // conan cache so it takes precedence over the floating conancenter + // remote. Without this the submodule is unused and recipe provenance + // floats; with it, the recipe is pinned by the submodule's git SHA — + // which also carries the fork's Android asm-target fix. + run(command = prefix + "conan export conan-center-index/recipes/openssl/3.x.x --version=$version") + configuration.profiles.forEach { (profile, buildKind) -> if (buildKind.buildDynamic) { // run(command = prefix + conanCreateCommand(profile, version, "True")) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 5dd8ab1..f338d91 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -30,6 +30,8 @@ jobs: submodules: 'true' - id: 'step-3' run: 'conan profile detect' + - id: 'step-export-openssl' + run: 'conan export conan-center-index/recipes/openssl/3.x.x --version=${{ inputs.version }}' - id: 'step-4' run: 'conan install packages/openssl3 --output-folder build/openssl3/tvos-simulator-arm64 --build=missing --version=${{ inputs.version }} -pr:b default -pr:h profiles/tvos-simulator-arm64 -o "*:shared=False" -o "openssl/*:no_apps=True" -o "openssl/*:no_zlib=True"' - id: 'step-5' @@ -86,6 +88,8 @@ jobs: submodules: 'true' - id: 'step-3' run: 'conan profile detect' + - id: 'step-export-openssl' + run: 'conan export conan-center-index/recipes/openssl/3.x.x --version=${{ inputs.version }}' - id: 'step-4' run: 'conan install packages/openssl3 --output-folder build/openssl3/android-arm64 --build=missing --version=${{ inputs.version }} -pr:b default -pr:h profiles/android-arm64 -o "*:shared=True" -o "openssl/*:no_apps=True" -o "openssl/*:no_zlib=True"' - id: 'step-5' @@ -134,6 +138,8 @@ jobs: submodules: 'true' - id: 'step-5' run: 'export PATH=/github/home/.local/bin:$PATH && conan profile detect' + - id: 'step-export-openssl' + run: 'export PATH=/github/home/.local/bin:$PATH && conan export conan-center-index/recipes/openssl/3.x.x --version=${{ inputs.version }}' - id: 'step-6' run: 'export PATH=/github/home/.local/bin:$PATH && conan install packages/openssl3 --output-folder build/openssl3/linux-x64 --build=missing --version=${{ inputs.version }} -pr:b default -pr:h profiles/linux-x64 -o "*:shared=True" -o "openssl/*:no_apps=True" -o "openssl/*:no_zlib=True"' - id: 'step-7' @@ -168,6 +174,8 @@ jobs: submodules: 'true' - id: 'step-3' run: 'conan profile detect' + - id: 'step-export-openssl' + run: 'conan export conan-center-index/recipes/openssl/3.x.x --version=${{ inputs.version }}' - id: 'step-4' run: 'conan install packages/openssl3 --output-folder build/openssl3/mingw-x64 --build=missing --version=${{ inputs.version }} -pr:b default -pr:h profiles/mingw-x64 -o "*:shared=True" -o "openssl/*:no_apps=True" -o "openssl/*:no_zlib=True"' - id: 'step-5' diff --git a/.gitmodules b/.gitmodules index ef07577..0e03045 100644 --- a/.gitmodules +++ b/.gitmodules @@ -1,3 +1,3 @@ [submodule "conan-center-index"] path = conan-center-index - url = git@github.com:whyoleg/conan-center-index.git + url = git@github.com:CrossPaste/conan-center-index.git diff --git a/conan-center-index b/conan-center-index index d2faa86..9d876ae 160000 --- a/conan-center-index +++ b/conan-center-index @@ -1 +1 @@ -Subproject commit d2faa86c22ee30367072d0a94c3665af01014eae +Subproject commit 9d876ae3bb22fec765564d069f60afbcc687fa6d diff --git a/profiles/android b/profiles/android index 308a53b..96d43c4 100644 --- a/profiles/android +++ b/profiles/android @@ -1,9 +1,15 @@ include(base) [settings] os=Android -os.api_level=21 +os.api_level=29 compiler=clang -compiler.version=14 +compiler.version=18 [tool_requires] -android-ndk/r20b +android-ndk/r27c + +[conf] +# Google Play requires 16 KB page-size support for apps targeting Android 15+ +# (NDK r27 supports it but does not default to it; r28+ defaults are not in the +# pinned conan-center-index). Harmless padding on 4 KB-page devices and 32-bit. +tools.build:sharedlinkflags=["-Wl,-z,max-page-size=16384"]