diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml deleted file mode 100755 index d08eed2c6..000000000 --- a/.azure-pipelines/azure-pipelines-osx.yml +++ /dev/null @@ -1,40 +0,0 @@ -# This file was generated automatically from conda-smithy. To update this configuration, -# update the conda-forge.yml and/or the recipe/meta.yaml. -# -*- mode: yaml -*- - -jobs: -- job: osx - pool: - vmImage: macOS-15 - strategy: - matrix: - osx_64_: - CONFIG: osx_64_ - UPLOAD_PACKAGES: 'True' - osx_arm64_: - CONFIG: osx_arm64_ - UPLOAD_PACKAGES: 'True' - timeoutInMinutes: 360 - variables: {} - - steps: - # TODO: Fast finish on azure pipelines? - - script: | - export CI=azure - export flow_run_id=azure_$(Build.BuildNumber).$(System.JobAttempt) - export remote_url=$(Build.Repository.Uri) - export sha=$(Build.SourceVersion) - export OSX_FORCE_SDK_DOWNLOAD="1" - export GIT_BRANCH=$BUILD_SOURCEBRANCHNAME - export FEEDSTOCK_NAME=$(basename ${BUILD_REPOSITORY_NAME}) - if [[ "${BUILD_REASON:-}" == "PullRequest" ]]; then - export IS_PR_BUILD="True" - else - export IS_PR_BUILD="False" - fi - ./.scripts/run_osx_build.sh - displayName: Run OSX build - env: - BINSTAR_TOKEN: $(BINSTAR_TOKEN) - FEEDSTOCK_TOKEN: $(FEEDSTOCK_TOKEN) - STAGING_BINSTAR_TOKEN: $(STAGING_BINSTAR_TOKEN) diff --git a/.ci_support/linux_64_cuda_compiler_version12.9microarch_level1.yaml b/.ci_support/linux_64_cuda_compiler_version12.9microarch_level1.yaml deleted file mode 100644 index de7cdabbb..000000000 --- a/.ci_support/linux_64_cuda_compiler_version12.9microarch_level1.yaml +++ /dev/null @@ -1,80 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- '12.9' -cudnn: -- '9' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -flatbuffers: -- 25.2.10 -giflib: -- '5.2' -github_actions_labels: -- cirun-openstack-cpu-2xlarge -icu: -- '75' -libabseil: -- '20250512' -libcurl: -- '8' -libgrpc: -- '1.73' -libjpeg_turbo: -- '3' -libpng: -- '1.6' -libprotobuf: -- 6.31.1 -libtensorflow_cc: -- '2.16' -microarch_level: -- '1' -nccl: -- '2' -numpy: -- '2' -openssl: -- '3.5' -perl: -- 5.32.1 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -snappy: -- '1.2' -sqlite: -- '3' -target_platform: -- linux-64 -tensorflow: -- '2.16' -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -zlib: -- '1' diff --git a/.ci_support/linux_64_cuda_compiler_version12.9microarch_level3.yaml b/.ci_support/linux_64_cuda_compiler_version12.9microarch_level3.yaml deleted file mode 100644 index f7ff716c8..000000000 --- a/.ci_support/linux_64_cuda_compiler_version12.9microarch_level3.yaml +++ /dev/null @@ -1,80 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- '12.9' -cudnn: -- '9' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -flatbuffers: -- 25.2.10 -giflib: -- '5.2' -github_actions_labels: -- cirun-openstack-cpu-2xlarge -icu: -- '75' -libabseil: -- '20250512' -libcurl: -- '8' -libgrpc: -- '1.73' -libjpeg_turbo: -- '3' -libpng: -- '1.6' -libprotobuf: -- 6.31.1 -libtensorflow_cc: -- '2.16' -microarch_level: -- '3' -nccl: -- '2' -numpy: -- '2' -openssl: -- '3.5' -perl: -- 5.32.1 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -snappy: -- '1.2' -sqlite: -- '3' -target_platform: -- linux-64 -tensorflow: -- '2.16' -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -zlib: -- '1' diff --git a/.ci_support/linux_64_cuda_compiler_versionNonemicroarch_level1.yaml b/.ci_support/linux_64_cuda_compiler_versionNonemicroarch_level1.yaml deleted file mode 100644 index cf3f3c57e..000000000 --- a/.ci_support/linux_64_cuda_compiler_versionNonemicroarch_level1.yaml +++ /dev/null @@ -1,80 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- None -cudnn: -- '9' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -flatbuffers: -- 25.2.10 -giflib: -- '5.2' -github_actions_labels: -- cirun-openstack-cpu-2xlarge -icu: -- '75' -libabseil: -- '20250512' -libcurl: -- '8' -libgrpc: -- '1.73' -libjpeg_turbo: -- '3' -libpng: -- '1.6' -libprotobuf: -- 6.31.1 -libtensorflow_cc: -- '2.16' -microarch_level: -- '1' -nccl: -- '2' -numpy: -- '2' -openssl: -- '3.5' -perl: -- 5.32.1 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -snappy: -- '1.2' -sqlite: -- '3' -target_platform: -- linux-64 -tensorflow: -- '2.16' -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -zlib: -- '1' diff --git a/.ci_support/linux_64_cuda_compiler_versionNonemicroarch_level3.yaml b/.ci_support/linux_64_cuda_compiler_versionNonemicroarch_level3.yaml deleted file mode 100644 index 6e720a3ff..000000000 --- a/.ci_support/linux_64_cuda_compiler_versionNonemicroarch_level3.yaml +++ /dev/null @@ -1,80 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '14' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- None -cudnn: -- '9' -cxx_compiler: -- gxx -cxx_compiler_version: -- '14' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -flatbuffers: -- 25.2.10 -giflib: -- '5.2' -github_actions_labels: -- cirun-openstack-cpu-2xlarge -icu: -- '75' -libabseil: -- '20250512' -libcurl: -- '8' -libgrpc: -- '1.73' -libjpeg_turbo: -- '3' -libpng: -- '1.6' -libprotobuf: -- 6.31.1 -libtensorflow_cc: -- '2.16' -microarch_level: -- '3' -nccl: -- '2' -numpy: -- '2' -openssl: -- '3.5' -perl: -- 5.32.1 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -snappy: -- '1.2' -sqlite: -- '3' -target_platform: -- linux-64 -tensorflow: -- '2.16' -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -zlib: -- '1' diff --git a/.ci_support/linux_aarch64_c_compiler_version11cuda_compiler_versionNonecxx_compiler_version11.yaml b/.ci_support/linux_aarch64_c_compiler_version11cuda_compiler_versionNonecxx_compiler_version11.yaml deleted file mode 100644 index ab16ae612..000000000 --- a/.ci_support/linux_aarch64_c_compiler_version11cuda_compiler_versionNonecxx_compiler_version11.yaml +++ /dev/null @@ -1,76 +0,0 @@ -c_compiler: -- gcc -c_compiler_version: -- '11' -c_stdlib: -- sysroot -c_stdlib_version: -- '2.17' -channel_sources: -- conda-forge -channel_targets: -- conda-forge main -cuda_compiler: -- cuda-nvcc -cuda_compiler_version: -- None -cxx_compiler: -- gxx -cxx_compiler_version: -- '11' -docker_image: -- quay.io/condaforge/linux-anvil-x86_64:alma9 -flatbuffers: -- 25.2.10 -giflib: -- '5.2' -github_actions_labels: -- cirun-openstack-cpu-2xlarge -icu: -- '75' -libabseil: -- '20250512' -libcurl: -- '8' -libgrpc: -- '1.73' -libjpeg_turbo: -- '3' -libpng: -- '1.6' -libprotobuf: -- 6.31.1 -libtensorflow_cc: -- '2.16' -microarch_level: -- '1' -numpy: -- '2' -openssl: -- '3.5' -perl: -- 5.32.1 -pin_run_as_build: - python: - min_pin: x.x - max_pin: x.x -python: -- 3.10.* *_cpython -- 3.11.* *_cpython -- 3.12.* *_cpython -- 3.13.* *_cp313 -snappy: -- '1.2' -sqlite: -- '3' -target_platform: -- linux-aarch64 -tensorflow: -- '2.16' -zip_keys: -- - c_compiler_version - - cxx_compiler_version - - c_stdlib_version - - cuda_compiler_version -zlib: -- '1' diff --git a/.ci_support/migrations/cuda128.yaml b/.ci_support/migrations/cuda128.yaml new file mode 100644 index 000000000..c6fa8e4d3 --- /dev/null +++ b/.ci_support/migrations/cuda128.yaml @@ -0,0 +1,52 @@ +migrator_ts: 1738229377 +__migrator: + kind: + version + migration_number: + 1 + build_number: + 1 + paused: false + use_local: true + override_cbc_keys: + - cuda_compiler_stub + check_solvable: false + primary_key: cuda_compiler_version + ordering: + cuda_compiler_version: + - 11.8 + - 12.4 + - 12.6 + - None + - 12.8 + - 12.9 + - 13.0 + commit_message: | + Upgrade to CUDA 12.8 + + With CUDA 12.8, the following new architectures are added `sm_100`, `sm_101` and `sm_120`. + To build for these architectures, maintainers will need to add these to list of architectures + that their package builds for. + + ref: https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#new-features + +cuda_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 12.8 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +c_stdlib_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 2.17 # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +cudnn: # [(linux or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 9 # [(linux or win) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +c_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 11 # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 14 # [linux and x86_64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +cxx_compiler_version: # [linux and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 11 # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 14 # [linux and x86_64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + +fortran_compiler_version: # [linux and (x86_64 or aarch64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 11 # [linux and aarch64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] + - 14 # [linux and x86_64 and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] diff --git a/.ci_support/migrations/cuda129.yaml b/.ci_support/migrations/cuda129.yaml deleted file mode 100644 index a0d377571..000000000 --- a/.ci_support/migrations/cuda129.yaml +++ /dev/null @@ -1,61 +0,0 @@ -migrator_ts: 1738229377 -__migrator: - kind: - version - migration_number: - 1 - build_number: - 1 - paused: false - override_cbc_keys: - - cuda_compiler_stub - check_solvable: false - primary_key: cuda_compiler_version - ordering: - cuda_compiler_version: - - 12.4 - - 12.6 - - 12.8 - - None - - 12.9 - - 13.0 - # to allow manual opt-in for CUDA 11.8, see - # https://github.com/conda-forge/conda-forge-pinning-feedstock/pull/7472 - # must be last due to how cuda_compiler ordering in that migrator works - - 11.8 - commit_message: | - Upgrade to CUDA 12.9 - - CUDA 12.8 added support for architectures `sm_100`, `sm_101` and `sm_120`, - while CUDA 12.9 further added `sm_103` and `sm_121`. To build for these, - maintainers will need to modify their existing list of specified architectures - (e.g. `CMAKE_CUDA_ARCHITECTURES`, `TORCH_CUDA_ARCH_LIST`, etc.) - for their package. A good balance between broad support and storage - footprint (resp. compilation time) is to add `sm_100` and `sm_120`. - - Since CUDA 12.8, the conda-forge nvcc package now sets `CUDAARCHS` - in its activation script to a string containing all - of the supported real architectures plus the virtual architecture of the - latest. Recipes for packages who use these variables to control their build - but do not want to build for all supported architectures will need to override - these variables in their build script. - - ref: https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#new-features - -cuda_compiler_version: # [((linux and (x86_64 or aarch64)) or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 12.9 # [((linux and (x86_64 or aarch64)) or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - -cuda_compiler_version_min: # [((linux and (x86_64 or aarch64)) or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 12.9 # [((linux and (x86_64 or aarch64)) or win64) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - -c_stdlib_version: # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 2.17 # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - -c_compiler_version: # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 14 # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - -cxx_compiler_version: # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 14 # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - -fortran_compiler_version: # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] - - 14 # [(linux and (x86_64 or aarch64)) and os.environ.get("CF_CUDA_ENABLED", "False") == "True"] diff --git a/.ci_support/migrations/flatbuffers25923.yaml b/.ci_support/migrations/flatbuffers25923.yaml new file mode 100644 index 000000000..01bf5168f --- /dev/null +++ b/.ci_support/migrations/flatbuffers25923.yaml @@ -0,0 +1,8 @@ +__migrator: + build_number: 1 + commit_message: Rebuild for flatbuffers 25.9.23 + kind: version + migration_number: 1 +flatbuffers: +- 25.9.23 +migrator_ts: 1761147754.823254 diff --git a/.ci_support/osx_64_.yaml b/.ci_support/osx_64_.yaml index c256efd13..6165dc15a 100644 --- a/.ci_support/osx_64_.yaml +++ b/.ci_support/osx_64_.yaml @@ -23,9 +23,11 @@ cxx_compiler: cxx_compiler_version: - '19' flatbuffers: -- 25.2.10 +- 25.9.23 giflib: - '5.2' +github_actions_labels: +- cirun-macos-m4-large icu: - '75' libabseil: diff --git a/.ci_support/osx_arm64_.yaml b/.ci_support/osx_arm64_.yaml index 6bbb5ccff..d2fba5867 100644 --- a/.ci_support/osx_arm64_.yaml +++ b/.ci_support/osx_arm64_.yaml @@ -23,9 +23,11 @@ cxx_compiler: cxx_compiler_version: - '19' flatbuffers: -- 25.2.10 +- 25.9.23 giflib: - '5.2' +github_actions_labels: +- cirun-macos-m4-large icu: - '75' libabseil: diff --git a/.github/workflows/conda-build.yml b/.github/workflows/conda-build.yml index 801e12b2d..6e2c847b6 100644 --- a/.github/workflows/conda-build.yml +++ b/.github/workflows/conda-build.yml @@ -21,31 +21,14 @@ jobs: fail-fast: false matrix: include: - - CONFIG: linux_64_cuda_compiler_version12.9microarch_level1 + - CONFIG: osx_64_ UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-cpu-2xlarge--${{ github.run_id }}-linux_64_cuda_compiler_version12.9microa_h28a6e8b1', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - - CONFIG: linux_64_cuda_compiler_version12.9microarch_level3 + os: macos + runs_on: ['cirun-macos-m4-large--${{ github.run_id }}-osx_64_', 'macOS', 'arm64', 'self-hosted'] + - CONFIG: osx_arm64_ UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-cpu-2xlarge--${{ github.run_id }}-linux_64_cuda_compiler_version12.9microa_h764a83b2', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - - CONFIG: linux_64_cuda_compiler_versionNonemicroarch_level1 - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-cpu-2xlarge--${{ github.run_id }}-linux_64_cuda_compiler_versionNonemicroa_h0e112a19', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - - CONFIG: linux_64_cuda_compiler_versionNonemicroarch_level3 - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-cpu-2xlarge--${{ github.run_id }}-linux_64_cuda_compiler_versionNonemicroa_hb1134425', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 - - CONFIG: linux_aarch64_c_compiler_version11cuda_compiler_versionNonecxx_compiler_version11 - UPLOAD_PACKAGES: True - os: ubuntu - runs_on: ['cirun-openstack-cpu-2xlarge--${{ github.run_id }}-linux_aarch64_c_compiler_version11cuda_c_hde0bec76', 'linux', 'x64', 'self-hosted'] - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 + os: macos + runs_on: ['cirun-macos-m4-large--${{ github.run_id }}-osx_arm64_', 'macOS', 'arm64', 'self-hosted'] steps: - name: Checkout code diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh deleted file mode 100755 index 64fd2b763..000000000 --- a/.scripts/build_steps.sh +++ /dev/null @@ -1,100 +0,0 @@ -#!/usr/bin/env bash - -# PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here -# will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent -# changes to this script, consider a proposal to conda-smithy so that other feedstocks can also -# benefit from the improvement. - -# -*- mode: jinja-shell -*- - -set -xeuo pipefail -export FEEDSTOCK_ROOT="${FEEDSTOCK_ROOT:-/home/conda/feedstock_root}" -source ${FEEDSTOCK_ROOT}/.scripts/logging_utils.sh - - -( endgroup "Start Docker" ) 2> /dev/null - -( startgroup "Configuring conda" ) 2> /dev/null - -export PYTHONUNBUFFERED=1 -export RECIPE_ROOT="${RECIPE_ROOT:-/home/conda/recipe_root}" -export CI_SUPPORT="${FEEDSTOCK_ROOT}/.ci_support" -export CONFIG_FILE="${CI_SUPPORT}/${CONFIG}.yaml" - -cat >~/.condarc < /opt/conda/conda-meta/history -micromamba install --root-prefix ~/.conda --prefix /opt/conda \ - --yes --override-channels --channel conda-forge --strict-channel-priority \ - pip python=3.12 conda-build conda-libmamba-solver conda-forge-ci-setup=4 "conda-build>=24.1" -export CONDA_LIBMAMBA_SOLVER_NO_CHANNELS_FROM_INSTALLED=1 - -# set up the condarc -setup_conda_rc "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" - -source run_conda_forge_build_setup - - - -# make the build number clobber -make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" - -if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]] && [[ "${HOST_PLATFORM}" != linux-* ]] && [[ "${BUILD_WITH_CONDA_DEBUG:-0}" != 1 ]]; then - EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" -fi - - -( endgroup "Configuring conda" ) 2> /dev/null - -if [[ -f "${FEEDSTOCK_ROOT}/LICENSE.txt" ]]; then - cp "${FEEDSTOCK_ROOT}/LICENSE.txt" "${RECIPE_ROOT}/recipe-scripts-license.txt" -fi - -if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then - if [[ "x${BUILD_OUTPUT_ID:-}" != "x" ]]; then - EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --output-id ${BUILD_OUTPUT_ID}" - fi - conda debug "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" \ - ${EXTRA_CB_OPTIONS:-} \ - --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml" - - # Drop into an interactive shell - /bin/bash -else - CONDA_SOLVER=libmamba 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:-}" - ( startgroup "Inspecting artifacts" ) 2> /dev/null - - # inspect_artifacts was only added in conda-forge-ci-setup 4.9.4 - command -v inspect_artifacts >/dev/null 2>&1 && inspect_artifacts --recipe-dir "${RECIPE_ROOT}" -m "${CONFIG_FILE}" || echo "inspect_artifacts needs conda-forge-ci-setup >=4.9.4" - - ( endgroup "Inspecting artifacts" ) 2> /dev/null - ( startgroup "Validating outputs" ) 2> /dev/null - - validate_recipe_outputs "${FEEDSTOCK_NAME}" - - ( endgroup "Validating outputs" ) 2> /dev/null - - ( startgroup "Uploading packages" ) 2> /dev/null - - if [[ "${UPLOAD_PACKAGES}" != "False" ]] && [[ "${IS_PR_BUILD}" == "False" ]]; then - upload_package --validate --feedstock-name="${FEEDSTOCK_NAME}" "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CONFIG_FILE}" - fi - - ( endgroup "Uploading packages" ) 2> /dev/null -fi - -( startgroup "Final checks" ) 2> /dev/null - -touch "${FEEDSTOCK_ROOT}/build_artifacts/conda-forge-build-done-${CONFIG}" diff --git a/.scripts/download_osx_sdk.sh b/.scripts/download_osx_sdk.sh new file mode 100644 index 000000000..de175122e --- /dev/null +++ b/.scripts/download_osx_sdk.sh @@ -0,0 +1,89 @@ +set -e + +# We don't change the default here to a newer SDK to ensure that old, non-rerendered feedstock keep working. +if [ -f ${CI_SUPPORT}/${CONFIG}.yaml ]; then + export MACOSX_DEPLOYMENT_TARGET=$(cat ${CI_SUPPORT}/${CONFIG}.yaml | shyaml get-value MACOSX_DEPLOYMENT_TARGET.0 10.9) +fi + +export MACOSX_DEPLOYMENT_TARGET=${MACOSX_DEPLOYMENT_TARGET:-10.9} + +# Some project require a new SDK version even though they can target older versions +if [ -f ${CI_SUPPORT}/${CONFIG}.yaml ]; then + export MACOSX_SDK_VERSION=$(cat ${CI_SUPPORT}/${CONFIG}.yaml | shyaml get-value MACOSX_SDK_VERSION.0 0) + export WITH_LATEST_OSX_SDK=$(cat ${CI_SUPPORT}/${CONFIG}.yaml | shyaml get-value WITH_LATEST_OSX_SDK.0 0) + if [[ "${WITH_LATEST_OSX_SDK}" != "0" ]]; then + echo "Setting WITH_LATEST_OSX_SDK is removed. Use MACOSX_SDK_VERSION to specify an explicit version for the SDK." + export MACOSX_SDK_VERSION=10.15 + fi +fi + +if [[ "${MACOSX_SDK_VERSION:-0}" == "0" ]]; then + export MACOSX_SDK_VERSION=$MACOSX_DEPLOYMENT_TARGET +fi + +export CONDA_BUILD_SYSROOT="${OSX_SDK_DIR}/MacOSX${MACOSX_SDK_VERSION}.sdk" + +if [[ ! -d ${CONDA_BUILD_SYSROOT} ]]; then + echo "Downloading ${MACOSX_SDK_VERSION} sdk" + + if [[ "${MACOSX_SDK_VERSION:-0}" == "currently_unused" ]]; then + # not all versions get tagged, see https://github.com/alexey-lysiuk/macos-sdk/issues/2 + url="https://github.com/alexey-lysiuk/macos-sdk/archive/e96f557d53a0282abc7c93a76a802605b20e4282.tar.gz" + elif [[ $(echo "${MACOSX_SDK_VERSION}" | cut -d "." -f 1) -gt 11 ]]; then + url="https://github.com/alexey-lysiuk/macos-sdk/releases/download/${MACOSX_SDK_VERSION}/MacOSX${MACOSX_SDK_VERSION}.tar.xz" + else + url="https://github.com/phracker/MacOSX-SDKs/releases/download/11.3/MacOSX${MACOSX_SDK_VERSION}.sdk.tar.xz" + fi + curl -L --output MacOSX${MACOSX_SDK_VERSION}.sdk.tar.xz "${url}" + # As of 2024-04-02, hashes are coming from: + # - SDKs 12+ list a hash in the descriptions on https://github.com/alexey-lysiuk/macos-sdk/releases + # - SDKs <12 were generated by running `openssl sha256` on artifacts at https://github.com/phracker/MacOSX-SDKs/releases/tag/11.3 + sdk_sha256=$( + case "${MACOSX_SDK_VERSION}" in + ("15.5") echo "5096f730e9935adbd99d4bb082c3c6c01c077d966405ee4ae45705521476332e" ;; + ("14.5") echo "f6acc6209db9d56b67fcaf91ec1defe48722e9eb13dc21fb91cfeceb1489e57e" ;; + ("13.3") echo "71ae3a78ab1be6c45cf52ce44cb29a3cc27ed312c9f7884ee88e303a862a1404" ;; + ("12.3") echo "91c03be5399be04d8f6b773da13045525e01298c1dfff273b4e1f1e904ee5484" ;; + ("11.3") echo "cd4f08a75577145b8f05245a2975f7c81401d75e9535dcffbb879ee1deefcbf4" ;; + ("11.1") echo "68797baaacb52f56f713400de306a58a7ca00b05c3dc6d58f0a8283bcac721f8" ;; + ("11.0") echo "d3feee3ef9c6016b526e1901013f264467bb927865a03422a9cb925991cc9783" ;; + ("10.15") echo "ac75d9e0eb619881f5aa6240689fce862dcb8e123f710032b7409ff5f4c3d18b" ;; + ("10.14") echo "123dcd2e02051bed8e189581f6eea1b04eddd55a80f98960214421404aa64b72" ;; + ("10.13") echo "1d2984acab2900c73d076fbd40750035359ee1abe1a6c61eafcd218f68923a5a" ;; + ("10.12") echo "b314704d85934481c9927a0450db1768baf9af9efe649562fcb1a503bb44512f" ;; + ("10.11") echo "d080fc672d94f95eb54651c37ede80f61761ce4c91f87061e11a20222c8d00c8" ;; + ("10.10") echo "3839b875df1f2bc98893b8502da456cc0b022c4666bc6b7eb5764a5f915a9b00" ;; + ("10.9") echo "fcf88ce8ff0dd3248b97f4eb81c7909f2cc786725de277f4d05a2b935cc49de0" ;; + (*) echo "Unknown version & hash, please update conda-forge-ci-setup's download_osx_sdk.sh" ;; + esac) + echo "${sdk_sha256} *MacOSX${MACOSX_SDK_VERSION}.sdk.tar.xz" | shasum -a 256 -c + sudo mkdir -p "$(dirname "$CONDA_BUILD_SYSROOT")" + # delete symlink that may exist already, e.g. MacOSX15.5.sdk -> MacOSX.sdk + sudo rm -rf $CONDA_BUILD_SYSROOT + if [[ "${MACOSX_SDK_VERSION:-0}" == "currently_unused" ]]; then + tar -xf MacOSX${MACOSX_SDK_VERSION}.sdk.tar.xz + # we've downloaded the whole https://github.com/alexey-lysiuk/macos-sdk repo, go into the right folder; + # github names the folder in the tarball based on the hash of the commit we're using; rename for ease of use + mv macos-sdk-* repo + sudo mv repo/MacOSX${MACOSX_SDK_VERSION}.sdk "$(dirname "$CONDA_BUILD_SYSROOT")/" + else + sudo tar -xf MacOSX${MACOSX_SDK_VERSION}.sdk.tar.xz -C "$(dirname "$CONDA_BUILD_SYSROOT")" + fi +fi + +if [ ! -z "$CONFIG" ]; then + echo "" >> ${CI_SUPPORT}/${CONFIG}.yaml + echo "CONDA_BUILD_SYSROOT:" >> ${CI_SUPPORT}/${CONFIG}.yaml + echo "- ${CONDA_BUILD_SYSROOT}" >> ${CI_SUPPORT}/${CONFIG}.yaml + echo "" >> ${CI_SUPPORT}/${CONFIG}.yaml +fi + +echo "export CONDA_BUILD_SYSROOT='${CONDA_BUILD_SYSROOT}'" >> "${CONDA_PREFIX}/etc/conda/activate.d/conda-forge-ci-setup-activate.sh" +echo "export MACOSX_DEPLOYMENT_TARGET='${MACOSX_DEPLOYMENT_TARGET}'" >> "${CONDA_PREFIX}/etc/conda/activate.d/conda-forge-ci-setup-activate.sh" + +if [[ -d "${CONDA_BUILD_SYSROOT}" ]]; then + echo "Found CONDA_BUILD_SYSROOT: ${CONDA_BUILD_SYSROOT}" +else + echo "Missing CONDA_BUILD_SYSROOT: ${CONDA_BUILD_SYSROOT}" + exit 1 +fi diff --git a/.scripts/run_docker_build.sh b/.scripts/run_docker_build.sh deleted file mode 100755 index b63b5a05a..000000000 --- a/.scripts/run_docker_build.sh +++ /dev/null @@ -1,114 +0,0 @@ -#!/usr/bin/env bash - -# PLEASE NOTE: This script has been automatically generated by conda-smithy. Any changes here -# will be lost next time ``conda smithy rerender`` is run. If you would like to make permanent -# changes to this script, consider a proposal to conda-smithy so that other feedstocks can also -# benefit from the improvement. - -source .scripts/logging_utils.sh - -( startgroup "Configure Docker" ) 2> /dev/null - -set -xeo pipefail - -THISDIR="$( cd "$( dirname "$0" )" >/dev/null && pwd )" -PROVIDER_DIR="$(basename "$THISDIR")" - -FEEDSTOCK_ROOT="$( cd "$( dirname "$0" )/.." >/dev/null && pwd )" -RECIPE_ROOT="${FEEDSTOCK_ROOT}/recipe" - -if [ -z ${FEEDSTOCK_NAME} ]; then - export FEEDSTOCK_NAME=$(basename ${FEEDSTOCK_ROOT}) -fi - -if [[ "${sha:-}" == "" ]]; then - pushd "${FEEDSTOCK_ROOT}" - sha=$(git rev-parse HEAD) - popd -fi - -docker info - -# In order for the conda-build process in the container to write to the mounted -# volumes, we need to run with the same id as the host machine, which is -# normally the owner of the mounted volumes, or at least has write permission -export HOST_USER_ID=$(id -u) -# Check if docker-machine is being used (normally on OSX) and get the uid from -# the VM -if hash docker-machine 2> /dev/null && docker-machine active > /dev/null; then - export HOST_USER_ID=$(docker-machine ssh $(docker-machine active) id -u) -fi - -ARTIFACTS="$FEEDSTOCK_ROOT/build_artifacts" - -if [ -z "$CONFIG" ]; then - set +x - FILES=`ls .ci_support/linux_*` - CONFIGS="" - for file in $FILES; do - CONFIGS="${CONFIGS}'${file:12:-5}' or "; - done - echo "Need to set CONFIG env variable. Value can be one of ${CONFIGS:0:-4}" - exit 1 -fi - -if [ -z "${DOCKER_IMAGE}" ]; then - SHYAML_INSTALLED="$(shyaml -h || echo NO)" - if [ "${SHYAML_INSTALLED}" == "NO" ]; then - echo "WARNING: DOCKER_IMAGE variable not set and shyaml not installed. Trying to parse with coreutils" - DOCKER_IMAGE=$(cat .ci_support/${CONFIG}.yaml | grep '^docker_image:$' -A 1 | tail -n 1 | cut -b 3-) - if [ "${DOCKER_IMAGE}" = "" ]; then - echo "No docker_image entry found in ${CONFIG}. Falling back to quay.io/condaforge/linux-anvil-comp7" - DOCKER_IMAGE="quay.io/condaforge/linux-anvil-comp7" - fi - else - DOCKER_IMAGE="$(cat "${FEEDSTOCK_ROOT}/.ci_support/${CONFIG}.yaml" | shyaml get-value docker_image.0 quay.io/condaforge/linux-anvil-comp7 )" - fi -fi - -mkdir -p "$ARTIFACTS" -DONE_CANARY="$ARTIFACTS/conda-forge-build-done-${CONFIG}" -rm -f "$DONE_CANARY" - -# Allow people to specify extra default arguments to `docker run` (e.g. `--rm`) -DOCKER_RUN_ARGS="${CONDA_FORGE_DOCKER_RUN_ARGS}" -if [ -z "${CI}" ]; then - DOCKER_RUN_ARGS="-it ${DOCKER_RUN_ARGS}" -fi - -( endgroup "Configure Docker" ) 2> /dev/null - -( startgroup "Start Docker" ) 2> /dev/null - -export UPLOAD_PACKAGES="${UPLOAD_PACKAGES:-True}" -export IS_PR_BUILD="${IS_PR_BUILD:-False}" -docker pull "${DOCKER_IMAGE}" -docker run ${DOCKER_RUN_ARGS} \ - -v "${RECIPE_ROOT}":/home/conda/recipe_root:rw,z,delegated \ - -v "${FEEDSTOCK_ROOT}":/home/conda/feedstock_root:rw,z,delegated \ - -e CONFIG \ - -e HOST_USER_ID \ - -e UPLOAD_PACKAGES \ - -e IS_PR_BUILD \ - -e GIT_BRANCH \ - -e UPLOAD_ON_BRANCH \ - -e CI \ - -e FEEDSTOCK_NAME \ - -e CPU_COUNT \ - -e BUILD_WITH_CONDA_DEBUG \ - -e BUILD_OUTPUT_ID \ - -e flow_run_id \ - -e remote_url \ - -e sha \ - -e BINSTAR_TOKEN \ - -e FEEDSTOCK_TOKEN \ - -e STAGING_BINSTAR_TOKEN \ - "${DOCKER_IMAGE}" \ - bash \ - "/home/conda/feedstock_root/${PROVIDER_DIR}/build_steps.sh" - -# verify that the end of the script was reached -test -f "$DONE_CANARY" - -# This closes the last group opened in `build_steps.sh` -( endgroup "Final checks" ) 2> /dev/null diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index a71f1c52c..bac7141a9 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -26,7 +26,7 @@ chmod +x "${micromamba_exe}" echo "Creating environment" "${micromamba_exe}" create --yes --root-prefix "${MAMBA_ROOT_PREFIX}" --prefix "${MINIFORGE_HOME}" \ --channel conda-forge \ - pip python=3.12 conda-build conda-libmamba-solver conda-forge-ci-setup=4 "conda-build>=24.1" + pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" echo "Moving pkgs cache from ${MAMBA_ROOT_PREFIX} to ${MINIFORGE_HOME}" mv "${MAMBA_ROOT_PREFIX}/pkgs" "${MINIFORGE_HOME}" echo "Cleaning up micromamba" @@ -63,6 +63,25 @@ if [[ "${sha:-}" == "" ]]; then sha=$(git rev-parse HEAD) fi +if [[ "${OSX_SDK_DIR:-}" == "" ]]; then + if [[ "${CI:-}" == "" ]]; then + echo "Please set OSX_SDK_DIR to a directory where SDKs can be downloaded to. Aborting" + exit 1 + else + export OSX_SDK_DIR=/opt/conda-sdks + /usr/bin/sudo mkdir -p "${OSX_SDK_DIR}" + /usr/bin/sudo chown "${USER}" "${OSX_SDK_DIR}" + fi +else + if tmpf=$(mktemp -p "$OSX_SDK_DIR" tmp.XXXXXXXX 2>/dev/null); then + rm -f "$tmpf" + echo "OSX_SDK_DIR is writeable without sudo, continuing" + else + echo "User-provided OSX_SDK_DIR is not writeable for current user! Aborting" + exit 1 + fi +fi + echo -e "\n\nRunning the build setup script." source run_conda_forge_build_setup @@ -93,7 +112,7 @@ else EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test" fi - CONDA_SOLVER=libmamba conda-build ./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/README.md b/README.md index f57247f98..36b65c6b0 100644 --- a/README.md +++ b/README.md @@ -24,73 +24,6 @@ Current build status - - - - -
Azure -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
VariantStatus
linux_64_cuda_compiler_version12.9microarch_level1 - - variant - -
linux_64_cuda_compiler_version12.9microarch_level3 - - variant - -
linux_64_cuda_compiler_versionNonemicroarch_level1 - - variant - -
linux_64_cuda_compiler_versionNonemicroarch_level3 - - variant - -
linux_aarch64_c_compiler_version11cuda_compiler_versionNonecxx_compiler_version11 - - variant - -
osx_64 - - variant - -
osx_arm64 - - variant - -
-
-
Current release info @@ -102,11 +35,9 @@ Current release info | [![Conda Recipe](https://img.shields.io/badge/recipe-libtensorflow__cc-green.svg)](https://anaconda.org/conda-forge/libtensorflow_cc) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/libtensorflow_cc.svg)](https://anaconda.org/conda-forge/libtensorflow_cc) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/libtensorflow_cc.svg)](https://anaconda.org/conda-forge/libtensorflow_cc) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/libtensorflow_cc.svg)](https://anaconda.org/conda-forge/libtensorflow_cc) | | [![Conda Recipe](https://img.shields.io/badge/recipe-libtensorflow__framework-green.svg)](https://anaconda.org/conda-forge/libtensorflow_framework) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/libtensorflow_framework.svg)](https://anaconda.org/conda-forge/libtensorflow_framework) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/libtensorflow_framework.svg)](https://anaconda.org/conda-forge/libtensorflow_framework) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/libtensorflow_framework.svg)](https://anaconda.org/conda-forge/libtensorflow_framework) | | [![Conda Recipe](https://img.shields.io/badge/recipe-tensorflow-green.svg)](https://anaconda.org/conda-forge/tensorflow) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/tensorflow.svg)](https://anaconda.org/conda-forge/tensorflow) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/tensorflow.svg)](https://anaconda.org/conda-forge/tensorflow) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/tensorflow.svg)](https://anaconda.org/conda-forge/tensorflow) | -| [![Conda Recipe](https://img.shields.io/badge/recipe-tensorflow--avx2-green.svg)](https://anaconda.org/conda-forge/tensorflow-avx2) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/tensorflow-avx2.svg)](https://anaconda.org/conda-forge/tensorflow-avx2) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/tensorflow-avx2.svg)](https://anaconda.org/conda-forge/tensorflow-avx2) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/tensorflow-avx2.svg)](https://anaconda.org/conda-forge/tensorflow-avx2) | | [![Conda Recipe](https://img.shields.io/badge/recipe-tensorflow--base-green.svg)](https://anaconda.org/conda-forge/tensorflow-base) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/tensorflow-base.svg)](https://anaconda.org/conda-forge/tensorflow-base) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/tensorflow-base.svg)](https://anaconda.org/conda-forge/tensorflow-base) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/tensorflow-base.svg)](https://anaconda.org/conda-forge/tensorflow-base) | | [![Conda Recipe](https://img.shields.io/badge/recipe-tensorflow--cpu-green.svg)](https://anaconda.org/conda-forge/tensorflow-cpu) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/tensorflow-cpu.svg)](https://anaconda.org/conda-forge/tensorflow-cpu) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/tensorflow-cpu.svg)](https://anaconda.org/conda-forge/tensorflow-cpu) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/tensorflow-cpu.svg)](https://anaconda.org/conda-forge/tensorflow-cpu) | | [![Conda Recipe](https://img.shields.io/badge/recipe-tensorflow--estimator-green.svg)](https://anaconda.org/conda-forge/tensorflow-estimator) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/tensorflow-estimator.svg)](https://anaconda.org/conda-forge/tensorflow-estimator) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/tensorflow-estimator.svg)](https://anaconda.org/conda-forge/tensorflow-estimator) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/tensorflow-estimator.svg)](https://anaconda.org/conda-forge/tensorflow-estimator) | -| [![Conda Recipe](https://img.shields.io/badge/recipe-tensorflow--gpu-green.svg)](https://anaconda.org/conda-forge/tensorflow-gpu) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/tensorflow-gpu.svg)](https://anaconda.org/conda-forge/tensorflow-gpu) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/tensorflow-gpu.svg)](https://anaconda.org/conda-forge/tensorflow-gpu) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/tensorflow-gpu.svg)](https://anaconda.org/conda-forge/tensorflow-gpu) | | [![Conda Recipe](https://img.shields.io/badge/recipe-tensorflow--sse3-green.svg)](https://anaconda.org/conda-forge/tensorflow-sse3) | [![Conda Downloads](https://img.shields.io/conda/dn/conda-forge/tensorflow-sse3.svg)](https://anaconda.org/conda-forge/tensorflow-sse3) | [![Conda Version](https://img.shields.io/conda/vn/conda-forge/tensorflow-sse3.svg)](https://anaconda.org/conda-forge/tensorflow-sse3) | [![Conda Platforms](https://img.shields.io/conda/pn/conda-forge/tensorflow-sse3.svg)](https://anaconda.org/conda-forge/tensorflow-sse3) | Installing tensorflow @@ -119,16 +50,16 @@ conda config --add channels conda-forge conda config --set channel_priority strict ``` -Once the `conda-forge` channel has been enabled, `libtensorflow, libtensorflow_cc, libtensorflow_framework, tensorflow, tensorflow-avx2, tensorflow-base, tensorflow-cpu, tensorflow-estimator, tensorflow-gpu, tensorflow-sse3` can be installed with `conda`: +Once the `conda-forge` channel has been enabled, `libtensorflow, libtensorflow_cc, libtensorflow_framework, tensorflow, tensorflow-base, tensorflow-cpu, tensorflow-estimator, tensorflow-sse3` can be installed with `conda`: ``` -conda install libtensorflow libtensorflow_cc libtensorflow_framework tensorflow tensorflow-avx2 tensorflow-base tensorflow-cpu tensorflow-estimator tensorflow-gpu tensorflow-sse3 +conda install libtensorflow libtensorflow_cc libtensorflow_framework tensorflow tensorflow-base tensorflow-cpu tensorflow-estimator tensorflow-sse3 ``` or with `mamba`: ``` -mamba install libtensorflow libtensorflow_cc libtensorflow_framework tensorflow tensorflow-avx2 tensorflow-base tensorflow-cpu tensorflow-estimator tensorflow-gpu tensorflow-sse3 +mamba install libtensorflow libtensorflow_cc libtensorflow_framework tensorflow tensorflow-base tensorflow-cpu tensorflow-estimator tensorflow-sse3 ``` It is possible to list all of the versions of `libtensorflow` available on your platform with `conda`: diff --git a/azure-pipelines.yml b/azure-pipelines.yml deleted file mode 100644 index a13f0ae28..000000000 --- a/azure-pipelines.yml +++ /dev/null @@ -1,31 +0,0 @@ -# This file was generated automatically from conda-smithy. To update this configuration, -# update the conda-forge.yml and/or the recipe/meta.yaml. -# -*- mode: yaml -*- - -stages: -- stage: Check - jobs: - - job: Skip - pool: - vmImage: 'ubuntu-22.04' - variables: - DECODE_PERCENTS: 'false' - RET: 'true' - steps: - - checkout: self - fetchDepth: '2' - - bash: | - git_log=`git log --max-count=1 --skip=1 --pretty=format:"%B" | tr "\n" " "` - echo "##vso[task.setvariable variable=log]$git_log" - displayName: Obtain commit message - - bash: echo "##vso[task.setvariable variable=RET]false" - condition: and(eq(variables['Build.Reason'], 'PullRequest'), or(contains(variables.log, '[skip azp]'), contains(variables.log, '[azp skip]'), contains(variables.log, '[skip ci]'), contains(variables.log, '[ci skip]'))) - displayName: Skip build? - - bash: echo "##vso[task.setvariable variable=start_main;isOutput=true]$RET" - name: result - displayName: Export result -- stage: Build - condition: and(succeeded(), eq(dependencies.Check.outputs['Skip.result.start_main'], 'true')) - dependsOn: Check - jobs: - - template: ./.azure-pipelines/azure-pipelines-osx.yml \ No newline at end of file diff --git a/conda-forge.yml b/conda-forge.yml index d48c53e5e..a72186b31 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -4,10 +4,9 @@ azure: swapfile_size: 10GiB build_platform: linux_aarch64: linux_64 - osx_arm64: osx_64 + osx_64: osx_arm64 conda_build: pkg_format: '2' -conda_build_tool: conda-build+conda-libmamba-solver conda_forge_output_validation: true github: branch_name: main @@ -20,5 +19,5 @@ github_actions: - pull_request provider: linux_64: github_actions - linux_aarch64: default + osx_arm64: github_actions test: native_and_emulated diff --git a/recipe/conda_build_config.yaml b/recipe/conda_build_config.yaml index a7c9d6e66..3a1169a10 100644 --- a/recipe/conda_build_config.yaml +++ b/recipe/conda_build_config.yaml @@ -6,8 +6,9 @@ cxx_compiler_version: # [aarch64] - 11 # [aarch64] - 11 # [aarch64] -github_actions_labels: # [linux] +github_actions_labels: # [unix] - cirun-openstack-cpu-2xlarge # [linux] +- cirun-macos-m4-large # [osx] microarch_level: - 1 # hmaarrfk -- temporary, uncomment during actual build diff --git a/recipe/meta.yaml b/recipe/meta.yaml index fb5be67d4..6637d751f 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,6 +1,6 @@ {% set version = "2.19.1" %} {% set estimator_version = "2.15.0" %} -{% set build = 2 %} +{% set build = 3 %} {% if cuda_compiler_version != "None" %} {% set build = build + 200 %} @@ -75,8 +75,6 @@ source: - patches/0041-Disable-profiler.patch - patches/0042-bump-h5py-req.patch # [aarch64] - patches/0043-cross-arch-config.patch # [aarch64 and target_platform != build_platform] - # backport https://github.com/tensorflow/tensorflow/pull/99364 - - patches/0044-Support-for-TFv2.20-to-compile-with-CUDA-v12.9.1.patch - url: https://github.com/tensorflow/estimator/archive/refs/tags/v{{ estimator_version.replace(".rc", "-rc") }}.tar.gz sha256: 2d7e100b1878084da34b5e23b49a0cbb5ee8a7add74b7dd189a82ada1cf85530 folder: tensorflow-estimator @@ -84,6 +82,8 @@ source: build: number: {{ build }} skip: true # [win] + # debug + skip: true # [not osx] # TODO: debug issues with CUDA cross-compilation skip: true # [aarch64 and cuda_compiler_version != "None"]