diff --git a/.azure-pipelines/azure-pipelines-linux.yml b/.azure-pipelines/azure-pipelines-linux.yml
index a20f315..fcb0974 100755
--- a/.azure-pipelines/azure-pipelines-linux.yml
+++ b/.azure-pipelines/azure-pipelines-linux.yml
@@ -12,6 +12,14 @@ jobs:
CONFIG: linux_64_
UPLOAD_PACKAGES: 'True'
DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64
+ linux_aarch64_:
+ CONFIG: linux_aarch64_
+ UPLOAD_PACKAGES: 'True'
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64
+ linux_ppc64le_:
+ CONFIG: linux_ppc64le_
+ UPLOAD_PACKAGES: 'True'
+ DOCKER_IMAGE: quay.io/condaforge/linux-anvil-cos7-x86_64
timeoutInMinutes: 360
steps:
diff --git a/.azure-pipelines/azure-pipelines-osx.yml b/.azure-pipelines/azure-pipelines-osx.yml
index 9e4e167..8032e96 100755
--- a/.azure-pipelines/azure-pipelines-osx.yml
+++ b/.azure-pipelines/azure-pipelines-osx.yml
@@ -11,6 +11,9 @@ jobs:
osx_64_:
CONFIG: osx_64_
UPLOAD_PACKAGES: 'True'
+ osx_arm64_:
+ CONFIG: osx_arm64_
+ UPLOAD_PACKAGES: 'True'
timeoutInMinutes: 360
steps:
diff --git a/.ci_support/linux_aarch64_.yaml b/.ci_support/linux_aarch64_.yaml
new file mode 100644
index 0000000..26dfae8
--- /dev/null
+++ b/.ci_support/linux_aarch64_.yaml
@@ -0,0 +1,25 @@
+BUILD:
+- aarch64-conda_cos7-linux-gnu
+c_compiler:
+- gcc
+c_compiler_version:
+- '12'
+cdt_arch:
+- aarch64
+cdt_name:
+- cos7
+channel_sources:
+- conda-forge
+channel_targets:
+- conda-forge main
+cxx_compiler:
+- gxx
+cxx_compiler_version:
+- '12'
+docker_image:
+- quay.io/condaforge/linux-anvil-cos7-x86_64
+target_platform:
+- linux-aarch64
+zip_keys:
+- - c_compiler_version
+ - cxx_compiler_version
diff --git a/.ci_support/linux_ppc64le_.yaml b/.ci_support/linux_ppc64le_.yaml
new file mode 100644
index 0000000..ecaba1f
--- /dev/null
+++ b/.ci_support/linux_ppc64le_.yaml
@@ -0,0 +1,21 @@
+c_compiler:
+- gcc
+c_compiler_version:
+- '12'
+cdt_name:
+- cos7
+channel_sources:
+- conda-forge
+channel_targets:
+- conda-forge main
+cxx_compiler:
+- gxx
+cxx_compiler_version:
+- '12'
+docker_image:
+- quay.io/condaforge/linux-anvil-cos7-x86_64
+target_platform:
+- linux-ppc64le
+zip_keys:
+- - c_compiler_version
+ - cxx_compiler_version
diff --git a/.ci_support/osx_arm64_.yaml b/.ci_support/osx_arm64_.yaml
new file mode 100644
index 0000000..607fba4
--- /dev/null
+++ b/.ci_support/osx_arm64_.yaml
@@ -0,0 +1,23 @@
+MACOSX_DEPLOYMENT_TARGET:
+- '11.0'
+c_compiler:
+- clang
+c_compiler_version:
+- '16'
+channel_sources:
+- conda-forge
+channel_targets:
+- conda-forge main
+cxx_compiler:
+- clangxx
+cxx_compiler_version:
+- '16'
+llvm_openmp:
+- '16'
+macos_machine:
+- arm64-apple-darwin20.0.0
+target_platform:
+- osx-arm64
+zip_keys:
+- - c_compiler_version
+ - cxx_compiler_version
diff --git a/.scripts/build_steps.sh b/.scripts/build_steps.sh
index d20d8f4..bd9e671 100755
--- a/.scripts/build_steps.sh
+++ b/.scripts/build_steps.sh
@@ -44,6 +44,9 @@ 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
diff --git a/.scripts/run_osx_build.sh b/.scripts/run_osx_build.sh
index 4758f0d..870c49a 100755
--- a/.scripts/run_osx_build.sh
+++ b/.scripts/run_osx_build.sh
@@ -71,6 +71,10 @@ if [[ "${BUILD_WITH_CONDA_DEBUG:-0}" == 1 ]]; then
/bin/bash
else
+ if [[ "${HOST_PLATFORM}" != "${BUILD_PLATFORM}" ]]; then
+ EXTRA_CB_OPTIONS="${EXTRA_CB_OPTIONS:-} --no-test"
+ fi
+
conda mambabuild ./recipe -m ./.ci_support/${CONFIG}.yaml \
--suppress-variables ${EXTRA_CB_OPTIONS:-} \
--clobber-file ./.ci_support/clobber_${CONFIG}.yaml
diff --git a/.scripts/run_win_build.bat b/.scripts/run_win_build.bat
index c4486d9..07d3445 100755
--- a/.scripts/run_win_build.bat
+++ b/.scripts/run_win_build.bat
@@ -37,6 +37,9 @@ if EXIST LICENSE.txt (
echo Copying feedstock license
copy LICENSE.txt "recipe\\recipe-scripts-license.txt"
)
+if NOT [%HOST_PLATFORM%] == [%BUILD_PLATFORM%] (
+ set "EXTRA_CB_OPTIONS=%EXTRA_CB_OPTIONS% --no-test"
+)
call :end_group
diff --git a/README.md b/README.md
index c291cf4..5e24bf3 100644
--- a/README.md
+++ b/README.md
@@ -43,6 +43,20 @@ Current build status
+
+ linux_aarch64 |
+
+
+
+
+ |
+
+ linux_ppc64le |
+
+
+
+
+ |
osx_64 |
@@ -50,6 +64,13 @@ Current build status
|
+
+ osx_arm64 |
+
+
+
+
+ |
win_64 |
diff --git a/conda-forge.yml b/conda-forge.yml
index e30df6f..843da98 100644
--- a/conda-forge.yml
+++ b/conda-forge.yml
@@ -1,6 +1,16 @@
-github:
- branch_name: main
- tooling_branch_name: main
+build_platform:
+ linux_aarch64: linux_64
+ linux_ppc64le: linux_64
+ osx_arm64: osx_64
conda_build:
error_overlinking: true
+ pkg_format: '2'
conda_forge_output_validation: true
+github:
+ branch_name: main
+ tooling_branch_name: main
+provider:
+ linux_aarch64: default
+ linux_ppc64le: azure
+ win: azure
+test_on_native_only: true
diff --git a/recipe/3599.patch b/recipe/3599.patch
index 99bb65d..ecd3f9d 100644
--- a/recipe/3599.patch
+++ b/recipe/3599.patch
@@ -1,4 +1,4 @@
-From a1accf5a6ea7468f7e223c0305cdb13c70a34fc2 Mon Sep 17 00:00:00 2001
+From a553e39ef6b93c2e9a72de6b02b98ea21a4e56e3 Mon Sep 17 00:00:00 2001
From: Axel Huebl
Date: Wed, 18 Oct 2023 09:58:37 -0700
Subject: [PATCH] Install Move Tools to `shared/amrex`
@@ -11,11 +11,55 @@ This moves its content in both the build directory and the
install destination to `share/amrex/` and
`/AMReXCMakeModules/`, respectively.
---
+ Tools/CMake/AMReXBuildInfo.cmake | 29 +++++++++++++++++++------
Tools/CMake/AMReXInstallHelpers.cmake | 31 ++++++++++++++++++---------
- 1 file changed, 21 insertions(+), 10 deletions(-)
+ Tools/CMake/AMReXTypecheck.cmake | 8 +++++--
+ 3 files changed, 49 insertions(+), 19 deletions(-)
+diff --git a/Tools/CMake/AMReXBuildInfo.cmake b/Tools/CMake/AMReXBuildInfo.cmake
+index 36c7005787..77a90e4fd3 100644
+--- a/Tools/CMake/AMReXBuildInfo.cmake
++++ b/Tools/CMake/AMReXBuildInfo.cmake
+@@ -38,15 +38,30 @@ include(AMReXTargetHelpers)
+ #
+ # Set paths
+ #
+-string(REPLACE "/Tools/CMake" "" AMREX_TOP_DIR ${CMAKE_CURRENT_LIST_DIR})
+-set( AMREX_TOP_DIR ${AMREX_TOP_DIR} CACHE INTERNAL "Top level AMReX directory")
+-
+-set( AMREX_BUILDINFO_IFILE ${CMAKE_CURRENT_LIST_DIR}/AMReX_buildInfo.cpp.in
++if (AMReX_FOUND)
++ # AMReX is pre-installed and used as a library
++ string(REPLACE "/lib/cmake/AMReX/AMReXCMakeModules" "" AMREX_TOP_DIR_DEFAULT
++ ${CMAKE_CURRENT_LIST_DIR})
++else ()
++ # this is a superbuild
++ string(REPLACE "/Tools/CMake" "" AMREX_TOP_DIR_DEFAULT
++ ${CMAKE_CURRENT_LIST_DIR})
++endif ()
++set(AMREX_TOP_DIR "${AMREX_TOP_DIR_DEFAULT}" CACHE INTERNAL "Top level AMReX directory")
++
++if (AMReX_FOUND)
++ # AMReX is pre-installed and used as a library
++ set(AMREX_C_SCRIPTS_DIR "${AMREX_TOP_DIR}/share/amrex/C_scripts"
++ CACHE INTERNAL "Path to AMReX' C_scripts dir")
++else ()
++ # this is a superbuild
++ set(AMREX_C_SCRIPTS_DIR "${AMREX_TOP_DIR}/Tools/C_scripts"
++ CACHE INTERNAL "Path to AMReX' C_scripts dir")
++endif ()
++
++set(AMREX_BUILDINFO_IFILE ${CMAKE_CURRENT_LIST_DIR}/AMReX_buildInfo.cpp.in
+ CACHE INTERNAL "Full path and name of AMReX_buildInfo.cpp.in")
+
+-set( AMREX_C_SCRIPTS_DIR "${AMREX_TOP_DIR}/Tools/C_scripts"
+- CACHE INTERNAL "Path to AMReX' C_scripts dir")
+-
+ set(AMREX_BUILD_DATETIME "" CACHE STRING
+ "User defined build date and time. Set ONLY for reproducibly built binary distributions")
+
diff --git a/Tools/CMake/AMReXInstallHelpers.cmake b/Tools/CMake/AMReXInstallHelpers.cmake
-index 0720efb4cf9..a01cd63301d 100644
+index 0720efb4cf..a01cd63301 100644
--- a/Tools/CMake/AMReXInstallHelpers.cmake
+++ b/Tools/CMake/AMReXInstallHelpers.cmake
@@ -26,7 +26,7 @@ function (install_amrex_targets)
@@ -79,3 +123,23 @@ index 0720efb4cf9..a01cd63301d 100644
)
+diff --git a/Tools/CMake/AMReXTypecheck.cmake b/Tools/CMake/AMReXTypecheck.cmake
+index 0b68fb8c27..c569eb5d9b 100644
+--- a/Tools/CMake/AMReXTypecheck.cmake
++++ b/Tools/CMake/AMReXTypecheck.cmake
+@@ -296,9 +296,13 @@ function( add_typecheck_target _target)
+ #
+ set(_outfile "${_typecheck_dir}/${_target}_typecheck.ou" )
+
+- # Find typechecker
++ # Find typechecker
+ find_file(_typechecker "typechecker.py"
+- HINTS ${AMReX_SOURCE_DIR} ${AMReX_ROOT} ENV AMReX_ROOT PATH_SUFFIXES Tools/typechecker)
++ HINTS ${AMReX_SOURCE_DIR} ${AMReX_ROOT} ENV AMReX_ROOT
++ PATH_SUFFIXES
++ Tools/typechecker # in-source
++ share/amrex/typechecker # installed
++ )
+
+ add_custom_target( typecheck_${_target}
+ COMMAND python3 ${_typechecker}
diff --git a/recipe/build.sh b/recipe/build.sh
index 7b1aeb3..1c81bdc 100644
--- a/recipe/build.sh
+++ b/recipe/build.sh
@@ -49,7 +49,11 @@ cmake \
cmake --build build --parallel ${CPU_COUNT}
# test
-OMP_NUM_THREADS=2 ctest --test-dir build --output-on-failure
+if [[ "${CONDA_BUILD_CROSS_COMPILATION:-}" == "1" ]]; then
+ echo "Skipping runtime tests due to cross-compiled target..."
+else
+ OMP_NUM_THREADS=2 ctest --test-dir build --output-on-failure
+fi
# install
cmake --build build --target install
diff --git a/recipe/meta.yaml b/recipe/meta.yaml
index 2693338..c84cb17 100644
--- a/recipe/meta.yaml
+++ b/recipe/meta.yaml
@@ -14,7 +14,7 @@ source:
- 3599.patch
build:
- number: 0
+ number: 1
requirements:
build:
|