From faaa9ad69452011312ca75bf98b3544052b6f6b4 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Tue, 19 Nov 2024 05:33:52 +1100 Subject: [PATCH 1/9] set up a swapfile on windows --- conda-forge.yml | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/conda-forge.yml b/conda-forge.yml index 245711e4..24f9f685 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -1,3 +1,7 @@ +azure: + settings_win: + variables: + SET_PAGEFILE: 'True' bot: abi_migration_branches: - 18.x From 272b91e7d6ddca2f38fe499cf4f1a2747d405fe2 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Tue, 19 Nov 2024 16:42:49 +1100 Subject: [PATCH 2/9] simplify extra handling; enable `.dev{X>1}` versions --- recipe/meta.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index 38769d5f..caa4ad9e 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,10 +1,11 @@ {% set version = "19.1.3" %} {% set major_ver = version.split(".")[0] %} +{% set tail_ver = version.split(".")[-1] %} {% set maj_min = major_ver ~ "." ~ version.split(".")[1] %} # as of LLVM 19, we expect an "-rcX" suffix for the release candidates -{% set extra = "-" ~ version.split(".")[-1] if version.split(".")[-1] not in "0123456789" else "" %} -{% set extra = "git" if version.split(".")[-1] == "dev0" else extra %} +{% set extra = "-" ~ tail_ver if tail_ver not in "0123456789" else "" %} +{% set extra = "git" if tail_ver|trim("0123456789") == "dev" else extra %} package: name: llvm-package From c172e112f5dae0b5c9076283f9815c769dea7ed3 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Tue, 19 Nov 2024 18:35:18 +1100 Subject: [PATCH 3/9] MNT: Re-rendered with conda-build 24.9.0, conda-smithy 3.44.6, and conda-forge-pinning 2024.11.18.19.00.37 --- .azure-pipelines/azure-pipelines-win.yml | 1 + .ci_support/linux_64_.yaml | 5 +---- .ci_support/linux_aarch64_.yaml | 5 +---- .ci_support/linux_ppc64le_.yaml | 5 +---- .ci_support/osx_64_.yaml | 2 +- .ci_support/osx_arm64_.yaml | 2 +- .scripts/run_osx_build.sh | 2 +- .scripts/run_win_build.bat | 10 ++++------ azure-pipelines.yml | 2 +- 9 files changed, 12 insertions(+), 22 deletions(-) diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml index 0c612210..d66b3fc0 100755 --- a/.azure-pipelines/azure-pipelines-win.yml +++ b/.azure-pipelines/azure-pipelines-win.yml @@ -15,6 +15,7 @@ jobs: variables: CONDA_BLD_PATH: D:\\bld\\ MINIFORGE_HOME: D:\Miniforge + SET_PAGEFILE: 'True' UPLOAD_TEMP: D:\\tmp steps: diff --git a/.ci_support/linux_64_.yaml b/.ci_support/linux_64_.yaml index d9419b6e..11fb3108 100644 --- a/.ci_support/linux_64_.yaml +++ b/.ci_support/linux_64_.yaml @@ -3,7 +3,7 @@ c_stdlib: c_stdlib_version: - '2.17' cdt_name: -- cos7 +- conda channel_sources: - conda-forge channel_targets: @@ -18,9 +18,6 @@ libxml2: - '2' target_platform: - linux-64 -zip_keys: -- - c_stdlib_version - - cdt_name zlib: - '1' zstd: diff --git a/.ci_support/linux_aarch64_.yaml b/.ci_support/linux_aarch64_.yaml index cada61e0..bc906b10 100644 --- a/.ci_support/linux_aarch64_.yaml +++ b/.ci_support/linux_aarch64_.yaml @@ -7,7 +7,7 @@ c_stdlib_version: cdt_arch: - aarch64 cdt_name: -- cos7 +- conda channel_sources: - conda-forge channel_targets: @@ -22,9 +22,6 @@ libxml2: - '2' target_platform: - linux-aarch64 -zip_keys: -- - c_stdlib_version - - cdt_name zlib: - '1' zstd: diff --git a/.ci_support/linux_ppc64le_.yaml b/.ci_support/linux_ppc64le_.yaml index bdbb8bec..ae2d4bc4 100644 --- a/.ci_support/linux_ppc64le_.yaml +++ b/.ci_support/linux_ppc64le_.yaml @@ -3,7 +3,7 @@ c_stdlib: c_stdlib_version: - '2.17' cdt_name: -- cos7 +- conda channel_sources: - conda-forge channel_targets: @@ -18,9 +18,6 @@ libxml2: - '2' target_platform: - linux-ppc64le -zip_keys: -- - c_stdlib_version - - cdt_name zlib: - '1' zstd: diff --git a/.ci_support/osx_64_.yaml b/.ci_support/osx_64_.yaml index 13d9924c..bc46289d 100644 --- a/.ci_support/osx_64_.yaml +++ b/.ci_support/osx_64_.yaml @@ -13,7 +13,7 @@ channel_targets: cxx_compiler: - clang_bootstrap cxx_compiler_version: -- '17' +- '18' libxml2: - '2' macos_machine: diff --git a/.ci_support/osx_arm64_.yaml b/.ci_support/osx_arm64_.yaml index e283bc5a..420d19bd 100644 --- a/.ci_support/osx_arm64_.yaml +++ b/.ci_support/osx_arm64_.yaml @@ -13,7 +13,7 @@ channel_targets: cxx_compiler: - clang_bootstrap cxx_compiler_version: -- '17' +- '18' libxml2: - '2' macos_machine: diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh index 7f948c41..0b364984 100755 --- a/.scripts/run_osx_build.sh +++ b/.scripts/run_osx_build.sh @@ -33,7 +33,7 @@ rm -rf "${MAMBA_ROOT_PREFIX}" "${micromamba_exe}" || true ( endgroup "Provisioning base env with micromamba" ) 2> /dev/null ( startgroup "Configuring conda" ) 2> /dev/null - +echo "Activating environment" source "${MINIFORGE_HOME}/etc/profile.d/conda.sh" conda activate base export CONDA_SOLVER="libmamba" diff --git a/.scripts/run_win_build.bat b/.scripts/run_win_build.bat index d3c0345e..3aaf80ce 100755 --- a/.scripts/run_win_build.bat +++ b/.scripts/run_win_build.bat @@ -12,6 +12,7 @@ setlocal enableextensions enabledelayedexpansion +FOR %%A IN ("%~dp0.") DO SET "REPO_ROOT=%%~dpA" if "%MINIFORGE_HOME%"=="" set "MINIFORGE_HOME=%USERPROFILE%\Miniforge3" :: Remove trailing backslash, if present if "%MINIFORGE_HOME:~-1%"=="\" set "MINIFORGE_HOME=%MINIFORGE_HOME:~0,-1%" @@ -32,17 +33,14 @@ call "%MICROMAMBA_EXE%" create --yes --root-prefix "%MAMBA_ROOT_PREFIX%" --prefi --channel conda-forge ^ pip python=3.12 conda-build conda-forge-ci-setup=4 "conda-build>=24.1" if !errorlevel! neq 0 exit /b !errorlevel! -echo Moving pkgs cache from %MAMBA_ROOT_PREFIX% to %MINIFORGE_HOME% -move /Y "%MAMBA_ROOT_PREFIX%\pkgs" "%MINIFORGE_HOME%" -if !errorlevel! neq 0 exit /b !errorlevel! echo Removing %MAMBA_ROOT_PREFIX% -del /S /Q "%MAMBA_ROOT_PREFIX%" -del /S /Q "%MICROMAMBA_TMPDIR%" -call :end_group +del /S /Q "%MAMBA_ROOT_PREFIX%" >nul +del /S /Q "%MICROMAMBA_TMPDIR%" >nul call :start_group "Configuring conda" :: Activate the base conda environment +echo Activating environment call "%MINIFORGE_HOME%\Scripts\activate.bat" :: Configure the solver set "CONDA_SOLVER=libmamba" diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 32da3d0c..eff4ad66 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -19,7 +19,7 @@ stages: echo "##vso[task.setvariable variable=log]$git_log" displayName: Obtain commit message - bash: echo "##vso[task.setvariable variable=RET]false" - condition: or(contains(variables.log, '[skip azp]'), contains(variables.log, '[azp skip]'), contains(variables.log, '[skip ci]'), contains(variables.log, '[ci skip]')) + 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 From 283264888265cccc271ce5c39d4bd0ef38a830fc Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Wed, 20 Nov 2024 05:59:24 +1100 Subject: [PATCH 4/9] llvmdev v19.1.4 --- recipe/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index caa4ad9e..b3a719dd 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "19.1.3" %} +{% set version = "19.1.4" %} {% set major_ver = version.split(".")[0] %} {% set tail_ver = version.split(".")[-1] %} {% set maj_min = major_ver ~ "." ~ version.split(".")[1] %} @@ -13,7 +13,7 @@ package: source: url: https://github.com/llvm/llvm-project/archive/refs/tags/llvmorg-{{ version.replace(".rc", "-rc") }}.tar.gz - sha256: e5106e2bef341b3f5e41340e4b6c6a58259f4021ad801acf14e88f1a84567b05 + sha256: 010e1fd3cabee8799bd2f8a6fbc68f28207494f315cf9da7057a2820f79fd531 patches: # - patches/intel-D47188-svml-VF.patch # Fixes vectorizer and extends SVML support # - patches/expect-fastmath-entrypoints-in-add-TLI-mappings.ll.patch # adjusts test added in 10.0.0 for intel-D47188-svml-VF.patch effects From 0683357a4a5e47ed4918d504c2a340b45fcfcb28 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Wed, 27 Nov 2024 07:34:02 +1100 Subject: [PATCH 5/9] Reinstate `libllvm-c{maj}` as part of `llvmdev` The removal in b4501ac did not take effect, and following through would require clobbering CMake metadata (as otherwise the targets aren't present), see #297 for attempted implementation and discussion. This reverts commit 55b5f72153c96186b3039c8416c1414d532bb9b1. This reverts commit b4501ac8de4cea3fc217b9157198e0e7350fd192. --- recipe/meta.yaml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index b3a719dd..d61fa4d6 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -21,7 +21,7 @@ source: - patches/0001-pass-through-QEMU_LD_PREFIX-SDKROOT.patch build: - number: 0 + number: 1 merge_build_host: false requirements: @@ -58,14 +58,14 @@ outputs: - libcxx {{ cxx_compiler_version }} # [osx] host: - libcxx {{ cxx_compiler_version }} # [osx] - # we're deliberately excluding "libllvm-c" on windows - {{ pin_subpackage("libllvm" ~ major_ver, exact=True) }} + - {{ pin_subpackage("libllvm-c" ~ major_ver, exact=True) }} # [win] - {{ pin_subpackage("llvm-tools", exact=True) }} - zlib - zstd run: - # we're deliberately excluding "libllvm-c" on windows - {{ pin_subpackage("libllvm" ~ major_ver, exact=True) }} + - {{ pin_subpackage("libllvm-c" ~ major_ver, exact=True) }} # [win] - {{ pin_subpackage("llvm-tools", exact=True) }} # we need to do this manually because clang_bootstrap has no run-export - libcxx >={{ cxx_compiler_version }} # [osx] From 41c372ec1f56a467b08594a57c065f2313cba9dd Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Wed, 27 Nov 2024 07:46:08 +1100 Subject: [PATCH 6/9] use new smithy config to install ATL components --- conda-forge.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/conda-forge.yml b/conda-forge.yml index 24f9f685..574568c8 100644 --- a/conda-forge.yml +++ b/conda-forge.yml @@ -1,5 +1,6 @@ azure: settings_win: + install_atl: true variables: SET_PAGEFILE: 'True' bot: From 6eeee96b6457bb238993f8b125263b3e3421e7fc Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Wed, 27 Nov 2024 07:48:24 +1100 Subject: [PATCH 7/9] MNT: Re-rendered with conda-build 24.11.1, conda-smithy 3.44.8, and conda-forge-pinning 2024.11.26.07.33.56 --- .azure-pipelines/azure-pipelines-linux.yml | 6 +++--- .azure-pipelines/azure-pipelines-win.yml | 18 ------------------ .ci_support/linux_64_.yaml | 2 +- .ci_support/linux_aarch64_.yaml | 2 +- .ci_support/linux_ppc64le_.yaml | 2 +- build-locally.py | 7 +++++++ 6 files changed, 13 insertions(+), 24 deletions(-) diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml index aef462c4..b1513b82 100755 --- a/.azure-pipelines/azure-pipelines-linux.yml +++ b/.azure-pipelines/azure-pipelines-linux.yml @@ -11,15 +11,15 @@ jobs: linux_64_: CONFIG: linux_64_ UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 linux_aarch64_: CONFIG: linux_aarch64_ UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 linux_ppc64le_: CONFIG: linux_ppc64le_ UPLOAD_PACKAGES: 'True' - DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64 + DOCKER_IMAGE: quay.io/condaforge/linux-anvil-x86_64:alma9 timeoutInMinutes: 360 variables: {} diff --git a/.azure-pipelines/azure-pipelines-win.yml b/.azure-pipelines/azure-pipelines-win.yml index d66b3fc0..f3d9ff2f 100755 --- a/.azure-pipelines/azure-pipelines-win.yml +++ b/.azure-pipelines/azure-pipelines-win.yml @@ -19,24 +19,6 @@ jobs: UPLOAD_TEMP: D:\\tmp steps: - - - task: PythonScript@0 - displayName: 'Download Miniforge' - inputs: - scriptSource: inline - script: | - import urllib.request - url = 'https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-Windows-x86_64.exe' - path = r"$(Build.ArtifactStagingDirectory)/Miniforge.exe" - urllib.request.urlretrieve(url, path) - - - script: | - start /wait "" %BUILD_ARTIFACTSTAGINGDIRECTORY%\Miniforge.exe /InstallationType=JustMe /RegisterPython=0 /S /D=C:\Miniforge - displayName: Install Miniforge - - - powershell: Write-Host "##vso[task.prependpath]C:\Miniforge\Scripts" - displayName: Add conda to PATH - - powershell: | Set-Location "C:\Program Files (x86)\Microsoft Visual Studio\Installer\" $InstallPath = "C:\Program Files\Microsoft Visual Studio\2022\Enterprise" diff --git a/.ci_support/linux_64_.yaml b/.ci_support/linux_64_.yaml index 11fb3108..9a1c7a75 100644 --- a/.ci_support/linux_64_.yaml +++ b/.ci_support/linux_64_.yaml @@ -13,7 +13,7 @@ cxx_compiler: cxx_compiler_version: - '13' docker_image: -- quay.io/condaforge/linux-anvil-cos7-x86_64 +- quay.io/condaforge/linux-anvil-x86_64:alma9 libxml2: - '2' target_platform: diff --git a/.ci_support/linux_aarch64_.yaml b/.ci_support/linux_aarch64_.yaml index bc906b10..0c6cbeea 100644 --- a/.ci_support/linux_aarch64_.yaml +++ b/.ci_support/linux_aarch64_.yaml @@ -17,7 +17,7 @@ cxx_compiler: cxx_compiler_version: - '13' docker_image: -- quay.io/condaforge/linux-anvil-cos7-x86_64 +- quay.io/condaforge/linux-anvil-x86_64:alma9 libxml2: - '2' target_platform: diff --git a/.ci_support/linux_ppc64le_.yaml b/.ci_support/linux_ppc64le_.yaml index ae2d4bc4..3e8a837f 100644 --- a/.ci_support/linux_ppc64le_.yaml +++ b/.ci_support/linux_ppc64le_.yaml @@ -13,7 +13,7 @@ cxx_compiler: cxx_compiler_version: - '13' docker_image: -- quay.io/condaforge/linux-anvil-cos7-x86_64 +- quay.io/condaforge/linux-anvil-x86_64:alma9 libxml2: - '2' target_platform: diff --git a/build-locally.py b/build-locally.py index 6788aea6..c4a56c66 100755 --- a/build-locally.py +++ b/build-locally.py @@ -26,6 +26,13 @@ def setup_environment(ns): os.path.dirname(__file__), "miniforge3" ) + # The default cache location might not be writable using docker on macOS. + if ns.config.startswith("linux") and platform.system() == "Darwin": + os.environ["CONDA_FORGE_DOCKER_RUN_ARGS"] = ( + os.environ.get("CONDA_FORGE_DOCKER_RUN_ARGS", "") + + " -e RATTLER_CACHE_DIR=/tmp/rattler_cache" + ) + def run_docker_build(ns): script = ".scripts/run_docker_build.sh" From bb7e8d133f376e386409bf4e6afa9c1aaf580681 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Wed, 27 Nov 2024 14:29:46 +1100 Subject: [PATCH 8/9] MNT: Re-rendered with conda-build 24.11.1, conda-smithy 3.44.8, and conda-forge-pinning 2024.11.26.23.29.58 --- .ci_support/linux_aarch64_.yaml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.ci_support/linux_aarch64_.yaml b/.ci_support/linux_aarch64_.yaml index 2b8d141d..65a426bc 100644 --- a/.ci_support/linux_aarch64_.yaml +++ b/.ci_support/linux_aarch64_.yaml @@ -1,11 +1,7 @@ -BUILD: -- aarch64-conda_cos7-linux-gnu c_stdlib: - sysroot c_stdlib_version: - '2.17' -cdt_arch: -- aarch64 cdt_name: - conda channel_sources: From bcddef441c0c735d1a73d7a34262af25ab932f16 Mon Sep 17 00:00:00 2001 From: "H. Vetinari" Date: Wed, 27 Nov 2024 14:33:41 +1100 Subject: [PATCH 9/9] build llvm v20 off of https://github.com/llvm/llvm-project/commit/74449ab86b8bc8d7388ede0cc7fc3a679da0c567 --- recipe/meta.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/recipe/meta.yaml b/recipe/meta.yaml index d9a97397..7b5cdc6e 100644 --- a/recipe/meta.yaml +++ b/recipe/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "20.0.0.dev0" %} +{% set version = "20.0.0.dev1" %} {% set major_ver = version.split(".")[0] %} {% set tail_ver = version.split(".")[-1] %} {% set maj_min = major_ver ~ "." ~ version.split(".")[1] %} @@ -13,8 +13,8 @@ package: source: # url: https://github.com/llvm/llvm-project/archive/refs/tags/llvmorg-{{ version.replace(".rc", "-rc") }}.tar.gz - url: https://github.com/llvm/llvm-project/archive/87bfa58a5a4b85416d2486797d0f21fc67da5cf3.tar.gz - sha256: 6453827c61593a987f51a5eaa265f4ccfc60901821c9bbb1c6fd1ac17681f0e3 + url: https://github.com/llvm/llvm-project/archive/74449ab86b8bc8d7388ede0cc7fc3a679da0c567.tar.gz + sha256: 429b861248900cdd340963e10f9f134bb738b789f50e933d10724680312ec530 patches: # - patches/intel-D47188-svml-VF.patch # Fixes vectorizer and extends SVML support # - patches/expect-fastmath-entrypoints-in-add-TLI-mappings.ll.patch # adjusts test added in 10.0.0 for intel-D47188-svml-VF.patch effects @@ -24,7 +24,7 @@ source: - patches/0002-llvm-LLVM_ENABLE_RUNTIMES-flang-rt.patch build: - number: 1 + number: 0 merge_build_host: false requirements: