diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index 2b93a12..0801e67 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -8,19 +8,24 @@ jobs: vmImage: ubuntu-latest strategy: matrix: - linux_64_: - CONFIG: linux_64_ + linux_64_libgit21.7: + CONFIG: linux_64_libgit21.7 UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - linux_aarch64_: - CONFIG: linux_aarch64_ + linux_64_libgit21.8: + CONFIG: linux_64_libgit21.8 UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 - linux_ppc64le_: - CONFIG: linux_ppc64le_ + linux_aarch64_libgit21.7: + CONFIG: linux_aarch64_libgit21.7 + UPLOAD_PACKAGES: 'True' + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + linux_aarch64_libgit21.8: + CONFIG: linux_aarch64_libgit21.8 UPLOAD_PACKAGES: 'True' DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 timeoutInMinutes: 360 + variables: {} steps: # configure qemu binfmt-misc running. This allows us to run docker containers diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml index f3ff063..63498da 100755 --- a/.azure-pipelines/azure-pipelines-osx.yml +++ b/.azure-pipelines/azure-pipelines-osx.yml @@ -5,16 +5,23 @@ jobs: - job: osx pool: - vmImage: macOS-11 + vmImage: macOS-12 strategy: matrix: - osx_64_: - CONFIG: osx_64_ + osx_64_libgit21.7: + CONFIG: osx_64_libgit21.7 UPLOAD_PACKAGES: 'True' - osx_arm64_: - CONFIG: osx_arm64_ + osx_64_libgit21.8: + CONFIG: osx_64_libgit21.8 + UPLOAD_PACKAGES: 'True' + osx_arm64_libgit21.7: + CONFIG: osx_arm64_libgit21.7 + UPLOAD_PACKAGES: 'True' + osx_arm64_libgit21.8: + CONFIG: osx_arm64_libgit21.8 UPLOAD_PACKAGES: 'True' timeoutInMinutes: 360 + variables: {} steps: # TODO: Fast finish on azure pipelines? diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml index d609fcd..dd9774e 100755 --- a/.azure-pipelines/azure-pipelines-win.yml +++ b/.azure-pipelines/azure-pipelines-win.yml @@ -8,8 +8,11 @@ jobs: vmImage: windows-2022 strategy: matrix: - win_64_: - CONFIG: win_64_ + win_64_libgit21.7: + CONFIG: win_64_libgit21.7 + UPLOAD_PACKAGES: 'True' + win_64_libgit21.8: + CONFIG: win_64_libgit21.8 UPLOAD_PACKAGES: 'True' timeoutInMinutes: 360 variables: diff --git a/.ci_support/linux_64_.yaml b/.ci_support/linux_64_libgit21.7.yaml similarity index 72% rename from .ci_support/linux_64_.yaml rename to .ci_support/linux_64_libgit21.7.yaml index e3def00..9456ba7 100644 --- a/.ci_support/linux_64_.yaml +++ b/.ci_support/linux_64_libgit21.7.yaml @@ -2,6 +2,10 @@ c_compiler: - gcc c_compiler_version: - '12' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_name: - cos6 channel_sources: @@ -12,11 +16,16 @@ docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 libcurl: - '8' +libgit2: +- '1.7' openssl: - '3' rust_compiler: - rust target_platform: - linux-64 +zip_keys: +- - c_stdlib_version + - cdt_name zlib: - '1.2' diff --git a/.ci_support/linux_ppc64le_.yaml b/.ci_support/linux_64_libgit21.8.yaml similarity index 67% rename from .ci_support/linux_ppc64le_.yaml rename to .ci_support/linux_64_libgit21.8.yaml index 8f49c1e..f28e53c 100644 --- a/.ci_support/linux_ppc64le_.yaml +++ b/.ci_support/linux_64_libgit21.8.yaml @@ -2,8 +2,12 @@ c_compiler: - gcc c_compiler_version: - '12' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_name: -- cos7 +- cos6 channel_sources: - conda-forge channel_targets: @@ -12,11 +16,16 @@ docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 libcurl: - '8' +libgit2: +- '1.8' openssl: - '3' rust_compiler: - rust target_platform: -- linux-ppc64le +- linux-64 +zip_keys: +- - c_stdlib_version + - cdt_name zlib: - '1.2' diff --git a/.ci_support/linux_aarch64_.yaml b/.ci_support/linux_aarch64_libgit21.7.yaml similarity index 76% rename from .ci_support/linux_aarch64_.yaml rename to .ci_support/linux_aarch64_libgit21.7.yaml index ed57c1a..69d3633 100644 --- a/.ci_support/linux_aarch64_.yaml +++ b/.ci_support/linux_aarch64_libgit21.7.yaml @@ -4,6 +4,10 @@ c_compiler: - gcc c_compiler_version: - '12' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' cdt_arch: - aarch64 cdt_name: @@ -16,11 +20,16 @@ docker_image: - quay.io/condaforge/linux-anvil-cos7-x86_64 libcurl: - '8' +libgit2: +- '1.7' openssl: - '3' rust_compiler: - rust target_platform: - linux-aarch64 +zip_keys: +- - c_stdlib_version + - cdt_name zlib: - '1.2' diff --git a/.ci_support/linux_aarch64_libgit21.8.yaml b/.ci_support/linux_aarch64_libgit21.8.yaml new file mode 100644 index 0000000..a241635 --- /dev/null +++ b/.ci_support/linux_aarch64_libgit21.8.yaml @@ -0,0 +1,35 @@ +BUILD: +- aarch64-conda_cos7-linux-gnu +c_compiler: +- gcc +c_compiler_version: +- '12' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +cdt_arch: +- aarch64 +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +docker_image: +- quay.io/condaforge/linux-anvil-cos7-x86_64 +libcurl: +- '8' +libgit2: +- '1.8' +openssl: +- '3' +rust_compiler: +- rust +target_platform: +- linux-aarch64 +zip_keys: +- - c_stdlib_version + - cdt_name +zlib: +- '1.2' diff --git a/.ci_support/linux_ppc64le_libgit21.7.yaml b/.ci_support/linux_ppc64le_libgit21.7.yaml new file mode 100644 index 0000000..a2eb9f2 --- /dev/null +++ b/.ci_support/linux_ppc64le_libgit21.7.yaml @@ -0,0 +1,31 @@ +c_compiler: +- gcc +c_compiler_version: +- '12' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +docker_image: +- quay.io/condaforge/linux-anvil-ppc64le +libcurl: +- '8' +libgit2: +- '1.7' +openssl: +- '3' +rust_compiler: +- rust +target_platform: +- linux-ppc64le +zip_keys: +- - c_stdlib_version + - cdt_name +zlib: +- '1.2' diff --git a/.ci_support/linux_ppc64le_libgit21.8.yaml b/.ci_support/linux_ppc64le_libgit21.8.yaml new file mode 100644 index 0000000..880ffc8 --- /dev/null +++ b/.ci_support/linux_ppc64le_libgit21.8.yaml @@ -0,0 +1,31 @@ +c_compiler: +- gcc +c_compiler_version: +- '12' +c_stdlib: +- sysroot +c_stdlib_version: +- '2.17' +cdt_name: +- cos7 +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +docker_image: +- quay.io/condaforge/linux-anvil-ppc64le +libcurl: +- '8' +libgit2: +- '1.8' +openssl: +- '3' +rust_compiler: +- rust +target_platform: +- linux-ppc64le +zip_keys: +- - c_stdlib_version + - cdt_name +zlib: +- '1.2' diff --git a/.ci_support/osx_64_.yaml b/.ci_support/osx_64_libgit21.7.yaml similarity index 79% rename from .ci_support/osx_64_.yaml rename to .ci_support/osx_64_libgit21.7.yaml index e73331f..5bfb3dc 100644 --- a/.ci_support/osx_64_.yaml +++ b/.ci_support/osx_64_libgit21.7.yaml @@ -6,12 +6,18 @@ c_compiler: - clang c_compiler_version: - '16' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '10.9' channel_sources: - conda-forge channel_targets: - conda-forge main libcurl: - '8' +libgit2: +- '1.7' macos_machine: - x86_64-apple-darwin13.4.0 openssl: diff --git a/.ci_support/osx_64_libgit21.8.yaml b/.ci_support/osx_64_libgit21.8.yaml new file mode 100644 index 0000000..c045437 --- /dev/null +++ b/.ci_support/osx_64_libgit21.8.yaml @@ -0,0 +1,30 @@ +MACOSX_DEPLOYMENT_TARGET: +- '10.9' +MACOSX_SDK_VERSION: +- '10.12' +c_compiler: +- clang +c_compiler_version: +- '16' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '10.9' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +libcurl: +- '8' +libgit2: +- '1.8' +macos_machine: +- x86_64-apple-darwin13.4.0 +openssl: +- '3' +rust_compiler: +- rust +target_platform: +- osx-64 +zlib: +- '1.2' diff --git a/.ci_support/osx_arm64_.yaml b/.ci_support/osx_arm64_libgit21.7.yaml similarity index 77% rename from .ci_support/osx_arm64_.yaml rename to .ci_support/osx_arm64_libgit21.7.yaml index a9c6268..a51d6dd 100644 --- a/.ci_support/osx_arm64_.yaml +++ b/.ci_support/osx_arm64_libgit21.7.yaml @@ -4,12 +4,18 @@ c_compiler: - clang c_compiler_version: - '16' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '11.0' channel_sources: - conda-forge channel_targets: - conda-forge main libcurl: - '8' +libgit2: +- '1.7' macos_machine: - arm64-apple-darwin20.0.0 openssl: diff --git a/.ci_support/osx_arm64_libgit21.8.yaml b/.ci_support/osx_arm64_libgit21.8.yaml new file mode 100644 index 0000000..249cbe8 --- /dev/null +++ b/.ci_support/osx_arm64_libgit21.8.yaml @@ -0,0 +1,28 @@ +MACOSX_DEPLOYMENT_TARGET: +- '11.0' +c_compiler: +- clang +c_compiler_version: +- '16' +c_stdlib: +- macosx_deployment_target +c_stdlib_version: +- '11.0' +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +libcurl: +- '8' +libgit2: +- '1.8' +macos_machine: +- arm64-apple-darwin20.0.0 +openssl: +- '3' +rust_compiler: +- rust +target_platform: +- osx-arm64 +zlib: +- '1.2' diff --git a/.ci_support/win_64_.yaml b/.ci_support/win_64_libgit21.7.yaml similarity index 80% rename from .ci_support/win_64_.yaml rename to .ci_support/win_64_libgit21.7.yaml index 8046930..524db79 100644 --- a/.ci_support/win_64_.yaml +++ b/.ci_support/win_64_libgit21.7.yaml @@ -1,9 +1,13 @@ c_compiler: - vs2019 +c_stdlib: +- vs channel_sources: - conda-forge channel_targets: - conda-forge main +libgit2: +- '1.7' rust_compiler: - rust target_platform: diff --git a/.ci_support/win_64_libgit21.8.yaml b/.ci_support/win_64_libgit21.8.yaml new file mode 100644 index 0000000..ce10f50 --- /dev/null +++ b/.ci_support/win_64_libgit21.8.yaml @@ -0,0 +1,14 @@ +c_compiler: +- vs2019 +c_stdlib: +- vs +channel_sources: +- conda-forge +channel_targets: +- conda-forge main +libgit2: +- '1.8' +rust_compiler: +- rust +target_platform: +- win-64 diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh index f017291..2f3df6c 100755 --- a/.scripts/build_steps.sh +++ b/.scripts/build_steps.sh @@ -34,9 +34,9 @@ CONDARC export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 mamba install --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup=4 + pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" mamba update --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup=4 + pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" # set up the condarc setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" @@ -65,7 +65,7 @@ if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then # Drop into an interactive shell /bin/bash else - conda mambabuild "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ + conda-build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ --suppress-variables ${EXTRA_CB_OPTIONS:-} \ --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" \ --extra-meta flow_run_id="${flow_run_id:-}" remote_url="${remote_url:-}" sha="${sha:-}" diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index 1fa8468..165fa51 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -26,9 +26,9 @@ export CONDA_SOLVER="libmamba" export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 mamba install --update-specs --quiet --yes --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup=4 + pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" mamba update --update-specs --yes --quiet --channel conda-forge --strict-channel-priority \ - pip mamba conda-build boa conda-forge-ci-setup=4 + pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" @@ -77,7 +77,7 @@ if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then /bin/bash else - conda mambabuild ./recipe -m ./.ci_support/${CONFIG}.yaml \ + conda-build ./recipe -m ./.ci_support/${CONFIG}.yaml \ --suppress-variables ${EXTRA_CB_OPTIONS:-} \ --clobber-file ./.ci_support/clobber_${CONFIG}.yaml \ --extra-meta flow_run_id="$flow_run_id" remote_url="$remote_url" sha="$sha" diff --git a/.scripts/run_win_build.bat b/.scripts/run_win_build.bat index 7bde26b..7491838 100755 --- a/.scripts/run_win_build.bat +++ b/.scripts/run_win_build.bat @@ -24,7 +24,7 @@ set "CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1" :: Provision the necessary dependencies to build the recipe later echo Installing dependencies -mamba.exe install "python=3.10" pip mamba conda-build boa conda-forge-ci-setup=4 -c conda-forge --strict-channel-priority --yes +mamba.exe install "python=3.10" pip mamba conda-build conda-forge-ci-setup=4 "conda-build>=24.1" -c conda-forge --strict-channel-priority --yes if !errorlevel! neq 0 exit /b !errorlevel! :: Set basic configuration @@ -50,7 +50,7 @@ call :end_group :: Build the recipe echo Building recipe -conda.exe mambabuild "recipe" -m .ci_support\%CONFIG%.yaml --suppress-variables %EXTRA_CB_OPTIONS% +conda-build.exe "recipe" -m .ci_support\%CONFIG%.yaml --suppress-variables %EXTRA_CB_OPTIONS% if !errorlevel! neq 0 exit /b !errorlevel! :: Prepare some environment variables for the upload step diff --git a/.travis.yml b/.travis.yml new file mode 100644 index 0000000..0a99d8a --- /dev/null +++ b/.travis.yml @@ -0,0 +1,30 @@ +# This file was generated automatically from conda-smithy. To update this configuration, +# update the conda-forge.yml and/or the recipe/meta.yaml. + +language: generic + + + +matrix: + include: + - env: CONFIG=linux_ppc64le_libgit21.7 UPLOAD_PACKAGES=True PLATFORM=linux-ppc64le DOCKER_IMAGE=quay.io/condaforge/linux-anvil-ppc64le + os: linux + arch: ppc64le + dist: focal + + - env: CONFIG=linux_ppc64le_libgit21.8 UPLOAD_PACKAGES=True PLATFORM=linux-ppc64le DOCKER_IMAGE=quay.io/condaforge/linux-anvil-ppc64le + os: linux + arch: ppc64le + dist: focal + +script: + - export CI=travis + - export GIT_BRANCH="$TRAVIS_BRANCH" + - export flow_run_id="travis_$TRAVIS_JOB_ID" + - export sha="$TRAVIS_COMMIT" + - export remote_url="https://github.com/$TRAVIS_REPO_SLUG" + - export FEEDSTOCK_NAME=$(basename ${TRAVIS_REPO_SLUG}) + - if [[ "${TRAVIS_PULL_REQUEST:-}" == "false" ]]; then export IS_PR_BUILD="False"; else export IS_PR_BUILD="True"; fi + + + - if [[ ${PLATFORM} =~ .*linux.* ]]; then CONDA_FORGE_DOCKER_RUN_ARGS="--network=host --security-opt=seccomp=unconfined" ./.scripts/run_docker_build.sh; fi \ No newline at end of file diff --git a/README.md b/README.md index 856ffd5..cf0d181 100644 --- a/README.md +++ b/README.md @@ -17,7 +17,14 @@ Current build status ==================== - +
+ + + @@ -31,45 +38,87 @@ Current build status
Travis + + linux + +
Azure
- + + + + + + + + + + + + + + + + + + + - + - + - + - + - + diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 6b346f5..e5306da 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -4,5 +4,5 @@ jobs: - template: ./.azure-pipelines/azure-pipelines-linux.yml - - template: ./.azure-pipelines/azure-pipelines-win.yml - - template: ./.azure-pipelines/azure-pipelines-osx.yml \ No newline at end of file + - template: ./.azure-pipelines/azure-pipelines-osx.yml + - template: ./.azure-pipelines/azure-pipelines-win.yml \ No newline at end of file diff --git a/build-locally.py b/build-locally.py index 3f4b7a7..e0d408d 100755 --- a/build-locally.py +++ b/build-locally.py @@ -64,8 +64,9 @@ def verify_config(ns): elif ns.config.startswith("osx"): if "OSX_SDK_DIR" not in os.environ: raise RuntimeError( - "Need OSX_SDK_DIR env variable set. Run 'export OSX_SDK_DIR=SDKs' " - "to download the SDK automatically to 'SDKs/MacOSX.sdk'. " + "Need OSX_SDK_DIR env variable set. Run 'export OSX_SDK_DIR=$PWD/SDKs' " + "to download the SDK automatically to '$PWD/SDKs/MacOSX.sdk'. " + "Note: OSX_SDK_DIR must be set to an absolute path. " "Setting this variable implies agreement to the licensing terms of the SDK by Apple." ) diff --git a/conda-forge.yml b/conda-forge.yml index 64dd09f..6a1d5d3 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -1,9 +1,8 @@ provider: linux_aarch64: azure - linux_ppc64le: azure + linux_ppc64le: default build_platform: linux_aarch64: linux_64 - linux_ppc64le: linux_64 osx_arm64: osx_64 github: branch_name: main diff --git a/recipe/bld.bat b/recipe/bld.bat index 74b31cf..50e7a13 100644 --- a/recipe/bld.bat +++ b/recipe/bld.bat @@ -1,5 +1,7 @@ echo ON +set "LIBGIT2_NO_VENDOR=1" + cargo install --path . --root %LIBRARY_PREFIX% if errorlevel 1 exit 1 diff --git a/recipe/build.sh b/recipe/build.sh index b326ecd..88d0c93 100644 --- a/recipe/build.sh +++ b/recipe/build.sh @@ -1,5 +1,7 @@ set -o xtrace -o nounset -o pipefail -o errexit +export LIBGIT2_NO_VENDOR=1 + # Required for cross-compiling with pkg-config export PKG_CONFIG_SYSROOT_DIR=$PREFIX export PKG_CONFIG_PATH=$PREFIX/lib/pkgconfig diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml index f8760c8..2fcc806 100644 --- a/recipe/conda_build_config.yaml +++ b/recipe/conda_build_config.yaml @@ -1,2 +1,9 @@ MACOSX_SDK_VERSION: # [osx and x86_64] - "10.12" # [osx and x86_64] +# libgit2 on conda-forge requires glibc >=2.14 +c_stdlib_version: # [linux] + - 2.17 # [linux] + +libgit2: + - '1.7' + - '1.8' diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 5776688..7706fec 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "0.9.30" %} +{% set version = "0.9.32" %} package: name: cargo-c @@ -6,7 +6,7 @@ package: source: url: https://github.com/lu-zero/cargo-c/archive/refs/tags/v{{ version }}.tar.gz - sha256: 174cfc3a69263c3e54b95e00c4bd61b13377f7f72d4bf60aa714fd9e7ed3849c + sha256: a96f3cc6c63d9901c9583083338d50b0132504bb067f68accc17f4116ed01f72 build: number: 0 @@ -14,6 +14,7 @@ build: requirements: build: - {{ compiler('c') }} + - {{ stdlib('c') }} - {{ compiler('rust') }} - cargo-bundle-licenses - pkg-config @@ -22,6 +23,7 @@ requirements: - zlib # [not win] host: - libcurl # [not win] + - libgit2 - openssl # [not win] - zlib # [not win] run:
VariantStatus
linux_64linux_64_libgit21.7 + + variant + +
linux_64_libgit21.8 + + variant + +
linux_aarch64_libgit21.7 + + variant + +
linux_aarch64_libgit21.8 + + variant + +
linux_ppc64le_libgit21.7 + + variant + +
linux_ppc64le_libgit21.8 + + variant + +
osx_64_libgit21.7 - variant + variant
linux_aarch64osx_64_libgit21.8 - variant + variant
linux_ppc64leosx_arm64_libgit21.7 - variant + variant
osx_64osx_arm64_libgit21.8 - variant + variant
osx_arm64win_64_libgit21.7 - variant + variant
win_64win_64_libgit21.8 - variant + variant