diff --git a/.github/workflows/conda-package-cf.yml b/.github/workflows/conda-package-cf.yml
index 524136f..382feb8 100644
--- a/.github/workflows/conda-package-cf.yml
+++ b/.github/workflows/conda-package-cf.yml
@@ -88,7 +88,7 @@ jobs:
strategy:
matrix:
- python_ver: ["3.10", "3.11", "3.12", "3.13", "3.14"]
+ python: ["3.10", "3.11", "3.12", "3.13", "3.14"]
numpy: ['numpy">=2"']
experimental: [false]
runner: [ubuntu-latest]
@@ -100,7 +100,7 @@ jobs:
- name: Download artifact
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # v8.0.0
with:
- name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python_ver }}
+ name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
- name: Add conda to system path
run: echo "$CONDA"/bin >> "$GITHUB_PATH"
@@ -119,7 +119,7 @@ jobs:
- name: Collect dependencies
run: |
CHANNELS=(-c "$GITHUB_WORKSPACE"/channel ${{ env.CHANNELS }})
- conda create -n ${{ env.TEST_ENV_NAME }} "$PACKAGE_NAME" python=${{ matrix.python_ver }} ${{ matrix.numpy }} "${CHANNELS[@]}" --only-deps --dry-run > lockfile
+ conda create -n ${{ env.TEST_ENV_NAME }} "$PACKAGE_NAME" python=${{ matrix.python }} ${{ matrix.numpy }} "${CHANNELS[@]}" --only-deps --dry-run > lockfile
- name: Display lockfile
run: cat lockfile
@@ -135,15 +135,15 @@ jobs:
with:
path: ~/.conda/pkgs
key:
- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_ver }}-${{hashFiles('lockfile') }}
+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('lockfile') }}
restore-keys: |
- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_ver }}-
+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
- name: Install mkl_fft
run: |
CHANNELS=(-c "$GITHUB_WORKSPACE"/channel ${{ env.CHANNELS }})
- conda create -n ${{ env.TEST_ENV_NAME }} python=${{ matrix.python_ver }} ${{ matrix.numpy }} "$PACKAGE_NAME" pytest scipy "${CHANNELS[@]}"
+ conda create -n ${{ env.TEST_ENV_NAME }} python=${{ matrix.python }} ${{ matrix.numpy }} "$PACKAGE_NAME" pytest scipy "${CHANNELS[@]}"
# Test installed packages
conda list -n ${{ env.TEST_ENV_NAME }}
@@ -155,7 +155,9 @@ jobs:
build_windows:
runs-on: windows-latest
-
+ defaults:
+ run:
+ shell: cmd /C CALL {0}
strategy:
matrix:
include:
@@ -184,12 +186,13 @@ jobs:
with:
miniforge-version: latest
activate-environment: build
- python-version: ${{ matrix.python }}
channels: conda-forge
- conda-remove-defaults: 'true'
+ python-version: ${{ matrix.python }}
- name: Install conda-build
- run: conda install -n base conda-build
+ run: |
+ conda install -n base -y conda-build
+ conda list -n base
- name: Cache conda packages
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
@@ -203,12 +206,8 @@ jobs:
${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
- - name: Setup MSVC
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
-
- name: Build conda package with NumPy 2.x
run: |
- conda activate
conda build --no-test --python ${{ matrix.python }} --numpy ${{ matrix.numpy }} -c conda-forge --override-channels conda-recipe-cf
- name: Store conda paths as envs
@@ -231,7 +230,7 @@ jobs:
strategy:
matrix:
- python_ver: ["3.10", "3.11", "3.12", "3.13", "3.14"]
+ python: ["3.10", "3.11", "3.12", "3.13", "3.14"]
numpy: ['numpy">=2"']
experimental: [false]
runner: [windows-latest]
@@ -244,15 +243,14 @@ jobs:
- name: Download artifact
uses: actions/download-artifact@70fc10c6e5e1ce46ad2ea6f2b72d43f7d47b13c3 # v8.0.0
with:
- name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python_ver }}
+ name: ${{ env.PACKAGE_NAME }} ${{ runner.os }} Python ${{ matrix.python }}
- uses: conda-incubator/setup-miniconda@fc2d68f6413eb2d87b895e92f8584b5b94a10167 # v3.3.0
with:
miniforge-version: latest
- activate-environment: ${{ env.TEST_ENV_NAME }}
- python-version: ${{ matrix.python_ver }}
channels: conda-forge
- conda-remove-defaults: 'true'
+ activate-environment: ${{ env.TEST_ENV_NAME }}
+ python-version: ${{ matrix.python }}
- name: Create conda channel with the artifact bit
shell: cmd /C CALL {0}
@@ -291,7 +289,7 @@ jobs:
FOR /F "tokens=* USEBACKQ" %%F IN (`python -c "%SCRIPT%"`) DO (
SET PACKAGE_VERSION=%%F
)
- conda install -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% python=${{ matrix.python_ver }} ${{ matrix.numpy }} -c ${{ env.workdir }}/channel ${{ env.CHANNELS }} --only-deps --dry-run > lockfile
+ conda install -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% python=${{ matrix.python }} ${{ matrix.numpy }} -c ${{ env.workdir }}/channel ${{ env.CHANNELS }} --only-deps --dry-run > lockfile
- name: Display lockfile content
shell: pwsh
@@ -304,9 +302,9 @@ jobs:
with:
path: /home/runner/conda_pkgs_dir
key:
- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_ver }}-${{hashFiles('lockfile') }}
+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-${{hashFiles('lockfile') }}
restore-keys: |
- ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python_ver }}-
+ ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
- name: Install mkl_fft
@@ -321,7 +319,7 @@ jobs:
SET PACKAGE_VERSION=%%F
)
SET "TEST_DEPENDENCIES=pytest scipy"
- conda install -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% %TEST_DEPENDENCIES% python=${{ matrix.python_ver }} ${{ matrix.numpy }} -c ${{ env.workdir }}/channel ${{ env.CHANNELS }}
+ conda install -n ${{ env.TEST_ENV_NAME }} ${{ env.PACKAGE_NAME }}=%PACKAGE_VERSION% %TEST_DEPENDENCIES% python=${{ matrix.python }} ${{ matrix.numpy }} -c ${{ env.workdir }}/channel ${{ env.CHANNELS }}
- name: Report content of test environment
shell: cmd /C CALL {0}
diff --git a/.github/workflows/conda-package.yml b/.github/workflows/conda-package.yml
index 8f64dda..696aa2d 100644
--- a/.github/workflows/conda-package.yml
+++ b/.github/workflows/conda-package.yml
@@ -155,7 +155,9 @@ jobs:
build_windows:
runs-on: windows-latest
-
+ defaults:
+ run:
+ shell: cmd /C CALL {0}
strategy:
matrix:
python: ["3.10", "3.11", "3.12", "3.13", "3.14"]
@@ -173,14 +175,13 @@ jobs:
with:
miniforge-version: latest
activate-environment: build
- python-version: ${{ matrix.python }}
channels: conda-forge
- conda-remove-defaults: 'true'
+ python-version: ${{ matrix.python }}
- name: Install conda-build
run: |
- conda activate
- conda install -n base conda-build
+ conda install -n base -y conda-build
+ conda list -n base
- name: Cache conda packages
uses: actions/cache@cdf6c1fa76f9f475f3d7449005a359c84ca0f306 # v5.0.3
@@ -194,12 +195,8 @@ jobs:
${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-python-${{ matrix.python }}-
${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-
- - name: Setup MSVC
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
-
- name: Build conda package
run: |
- conda activate
conda build --no-test --python ${{ matrix.python }} -c https://software.repos.intel.com/python/conda -c conda-forge --override-channels conda-recipe
- name: Store conda paths as envs
@@ -239,10 +236,9 @@ jobs:
- uses: conda-incubator/setup-miniconda@fc2d68f6413eb2d87b895e92f8584b5b94a10167 # v3.3.0
with:
miniforge-version: latest
+ channels: conda-forge
activate-environment: ${{ env.TEST_ENV_NAME }}
python-version: ${{ matrix.python }}
- channels: conda-forge
- conda-remove-defaults: 'true'
- name: Create conda channel with the artifact bit
shell: cmd /C CALL {0}
diff --git a/conda-recipe-cf/bld.bat b/conda-recipe-cf/bld.bat
index becc8af..d93a0cd 100644
--- a/conda-recipe-cf/bld.bat
+++ b/conda-recipe-cf/bld.bat
@@ -1,3 +1,3 @@
set MKLROOT=%PREFIX%
-%PYTHON% -m pip install --no-build-isolation --no-deps .
+%PYTHON% setup.py build --force install --old-and-unmanageable
if errorlevel 1 exit 1
diff --git a/conda-recipe-cf/build.sh b/conda-recipe-cf/build.sh
index d2a9c69..6a8fc6d 100644
--- a/conda-recipe-cf/build.sh
+++ b/conda-recipe-cf/build.sh
@@ -1,5 +1,6 @@
#!/bin/bash -x
-export MKLROOT=$PREFIX
-export CFLAGS="-I$PREFIX/include $CFLAGS"
-$PYTHON -m pip install --no-build-isolation --no-deps .
+# make sure that compiler has been sourced, if necessary
+
+export MKLROOT=${PREFIX}
+$PYTHON setup.py build --force install --old-and-unmanageable
diff --git a/conda-recipe-cf/conda_build_config.yaml b/conda-recipe-cf/conda_build_config.yaml
new file mode 100644
index 0000000..822fd77
--- /dev/null
+++ b/conda-recipe-cf/conda_build_config.yaml
@@ -0,0 +1,16 @@
+c_compiler: # [linux]
+ - gcc # [linux]
+cxx_compiler: # [linux]
+ - gxx # [linux]
+cxx_compiler_version: # [linux]
+ - '14' # [linux]
+c_stdlib: # [linux]
+ - sysroot # [linux]
+c_stdlib_version: # [linux]
+ - '2.28' # [linux]
+c_stdlib: # [win]
+ - vs # [win]
+cxx_compiler: # [win]
+ - vs2022 # [win]
+c_compiler: # [win]
+ - vs2022 # [win]
diff --git a/conda-recipe-cf/meta.yaml b/conda-recipe-cf/meta.yaml
index 5943880..9e2602c 100644
--- a/conda-recipe-cf/meta.yaml
+++ b/conda-recipe-cf/meta.yaml
@@ -1,29 +1,33 @@
-{% set version = "2.2.0dev1" %}
-{% set buildnumber = 0 %}
-
package:
name: mkl_fft
- version: {{ version }}
+ version: {{ GIT_DESCRIBE_TAG }}
source:
path: ../
build:
- number: {{ buildnumber }}
+ number: {{ GIT_DESCRIBE_NUMBER }}
+ script_env:
+ - WHEELS_OUTPUT_FOLDER
ignore_run_exports:
- blas
requirements:
build:
- {{ compiler('c') }}
+ - {{ stdlib('c') }}
host:
- python
+ - python-gil # [py>=314]
+ - pip
- setuptools >=77
- mkl-devel
- cython
- numpy
+ - wheel >=0.41.3
run:
- python
+ - python-gil # [py>=314]
- mkl-service
- numpy
@@ -36,11 +40,18 @@ test:
imports:
- mkl_fft
- mkl_fft.interfaces
- - mkl_fft.interfaces.numpy_fft
- - mkl_fft.interfaces.scipy_fft
about:
home: http://github.com/IntelPython/mkl_fft
license: BSD-3-Clause
license_file: LICENSE.txt
- summary: NumPy-based implementation of Fast Fourier Transform using IntelĀ® oneAPI Math Kernel Library (OneMKL)
+ summary: NumPy-based implementation of Fast Fourier Transform using IntelĀ® oneAPI Math Kernel Library (oneMKL)
+ description: |
+ LEGAL NOTICE: Use of this software package is subject to the
+ software license agreement (as set forth above, in the license section of
+ the installed Conda package and/or the README file) and all notices,
+ disclaimers or license terms for third party or open source software
+ included in or with the software.
+
+ EULA: BSD-3-Clause
+
diff --git a/conda-recipe/conda_build_config.yaml b/conda-recipe/conda_build_config.yaml
index d6b54bb..822fd77 100644
--- a/conda-recipe/conda_build_config.yaml
+++ b/conda-recipe/conda_build_config.yaml
@@ -11,6 +11,6 @@ c_stdlib_version: # [linux]
c_stdlib: # [win]
- vs # [win]
cxx_compiler: # [win]
- - vs2017 # [win]
+ - vs2022 # [win]
c_compiler: # [win]
- - vs2017 # [win]
+ - vs2022 # [win]