From 07270c9a8d57d90c32c6fd992a7fe614d7c7cd07 Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Mon, 29 Jun 2026 14:07:15 +0200 Subject: [PATCH 1/3] Strip -fno-merge-constants flag --- conda-recipe/build.sh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/conda-recipe/build.sh b/conda-recipe/build.sh index 9d280274c784..65dcf04182bb 100755 --- a/conda-recipe/build.sh +++ b/conda-recipe/build.sh @@ -22,6 +22,15 @@ fi export CC=icx export CXX=icpx +# conda-forge's gcc/g++ activation injects -fno-merge-constants into CFLAGS/CXXFLAGS +# when CONDA_BUILD==1. icx/icpx don't implement this GCC flag and emit warning #10430 +# (they have -fmerge-all-constants instead). Drop it to keep the build log clean; it +# is a no-op for the Intel compiler. See CMPLRLLVM-19167 / CMPLRLLVM-28729 and the +# conda-forge change that added the flag (later scoped to CONDA_BUILD only in #194): +# https://github.com/conda-forge/ctng-compiler-activation-feedstock/pull/193 +export CFLAGS="${CFLAGS//-fno-merge-constants/}" +export CXXFLAGS="${CXXFLAGS//-fno-merge-constants/}" + export CMAKE_GENERATOR=Ninja # Make CMake verbose export VERBOSE=1 From 4a06ae710a035fd84b0b6539983ef545dfef74be Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Mon, 29 Jun 2026 14:11:04 +0200 Subject: [PATCH 2/3] Update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 45a43370fafe..1a781484acb8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -57,6 +57,7 @@ This release is compatible with NumPy 2.5. * Fixed `dpnp.linalg.svd(..., hermitian=True)` returning a non-unitary `vh` for singular input arrays due to a zero sign appearing [#2954](https://github.com/IntelPython/dpnp/pull/2954) * Fixed scalar conversion of size-one `dpnp.tensor.usm_ndarray` (e.g. `int()`, `float()`, indexing) which failed with NumPy 2.5 after the in-place `ndarray.shape` assignment was deprecated [#2958](https://github.com/IntelPython/dpnp/pull/2958) * Fixed `dpnp.mgrid` and `dpnp.ogrid` to return consistent results between single-slice and tuple-of-slices syntax when the step is a complex number with a non-integer magnitude (e.g. `2.5j`) [#2971](https://github.com/IntelPython/dpnp/pull/2971) +* Fixed `icx`/`icpx` warning during `conda build` by stripping the GCC-only `-fno-merge-constants` flag injected by conda-forge into `CFLAGS`/`CXXFLAGS` [#2978](https://github.com/IntelPython/dpnp/pull/2978) ### Security From 8396408b11e9294b1aa4efb52cc90c16d00ee3c6 Mon Sep 17 00:00:00 2001 From: Anton Volkov Date: Wed, 1 Jul 2026 17:32:49 +0200 Subject: [PATCH 3/3] Reduced the comment to make it shorter but still informative --- conda-recipe/build.sh | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/conda-recipe/build.sh b/conda-recipe/build.sh index 65dcf04182bb..dedcbe37f0e5 100755 --- a/conda-recipe/build.sh +++ b/conda-recipe/build.sh @@ -23,10 +23,8 @@ export CC=icx export CXX=icpx # conda-forge's gcc/g++ activation injects -fno-merge-constants into CFLAGS/CXXFLAGS -# when CONDA_BUILD==1. icx/icpx don't implement this GCC flag and emit warning #10430 -# (they have -fmerge-all-constants instead). Drop it to keep the build log clean; it -# is a no-op for the Intel compiler. See CMPLRLLVM-19167 / CMPLRLLVM-28729 and the -# conda-forge change that added the flag (later scoped to CONDA_BUILD only in #194): +# when CONDA_BUILD==1, while icx/icpx doesn't support it and emit the warning. +# See CMPLRLLVM-19167 / CMPLRLLVM-28729 for more context and PR which added the flag: # https://github.com/conda-forge/ctng-compiler-activation-feedstock/pull/193 export CFLAGS="${CFLAGS//-fno-merge-constants/}" export CXXFLAGS="${CXXFLAGS//-fno-merge-constants/}"