diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index e4e63e7..a0da4a0 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -70,6 +70,9 @@ jobs: export OMP_NUM_THREADS=2 && export MPI_DISABLE=1 && export CI=1 && + python3 -c 'import scipy; import toast' && + python3 -c 'import so3g; from spt3g import core' && + python3 -c 'from sotodlib import core' && python3 -c 'import toast.tests; toast.tests.run()' && git clone --depth=1 --single-branch --branch=master https://github.com/simonsobs/sotodlib.git && pushd sotodlib && diff --git a/config/common.txt b/config/common.txt index 296623c..2f1bf59 100644 --- a/config/common.txt +++ b/config/common.txt @@ -13,12 +13,8 @@ packaging # # Require the OpenBLAS + OpenMP flavor of linear algebra packages # -openblas=*=openmp_* libopenblas=*=openmp_* libblas=*=*openblas -libcblas=*=*openblas -liblapack=*=*openblas -liblapacke=*=*openblas # # Install requirements of our local and pip packages # diff --git a/pkgs/libactpol/build.sh b/pkgs/libactpol/build.sh index ed4e199..4078c59 100755 --- a/pkgs/libactpol/build.sh +++ b/pkgs/libactpol/build.sh @@ -11,3 +11,5 @@ CFLAGS="-O3 -g -fPIC" \ make make install +rm -f "${PREFIX}/lib/libactpol_deps*.la" +rm -f "${PREFIX}/lib/libarcher.so" diff --git a/pkgs/libactpol/meta.yaml b/pkgs/libactpol/meta.yaml index e7aea91..fe0f13f 100644 --- a/pkgs/libactpol/meta.yaml +++ b/pkgs/libactpol/meta.yaml @@ -14,8 +14,6 @@ source: build: number: {{ build }} skip: true # [win] - run_exports: - - libactpol requirements: build: @@ -27,13 +25,11 @@ requirements: - m4 - libtool host: - - llvm-openmp - - _openmp_mutex * *_llvm - - libopenblas * openmp_* - - openblas * openmp_* - # This constraint is to force compatibility with the healpy package. - # remove once healpy is building with cfitsio-4.4.x. - - cfitsio <4.4.0 + - llvm-openmp # [osx] + - libgomp # [linux] + - libopenblas * *openmp* + - libblas * *openblas + - cfitsio - wcslib - libactpol_deps # Remove until this perl bug is fixed @@ -41,9 +37,11 @@ requirements: - libxcrypt1 # [linux] run: - llvm-openmp # [osx] - - openblas * openmp_* - - libopenblas * openmp_* + - libopenblas * *openmp* + - libblas * *openblas - {{ pin_compatible("cfitsio") }} + - {{ pin_compatible("libopenblas") }} + - {{ pin_compatible("libblas") }} - {{ pin_compatible("libactpol_deps") }} - {{ pin_compatible("wcslib") }} diff --git a/pkgs/libactpol_deps/build.sh b/pkgs/libactpol_deps/build.sh index a662d86..da242c2 100755 --- a/pkgs/libactpol_deps/build.sh +++ b/pkgs/libactpol_deps/build.sh @@ -18,4 +18,5 @@ CXXFLAGS="-O3 -g -fPIC" \ ./configure --prefix="${PREFIX}" --with-zzip make make install +rm -f "${PREFIX}/lib/libactpol_deps*.la" popd diff --git a/pkgs/libactpol_deps/meta.yaml b/pkgs/libactpol_deps/meta.yaml index 98da880..d3b6f8c 100644 --- a/pkgs/libactpol_deps/meta.yaml +++ b/pkgs/libactpol_deps/meta.yaml @@ -14,8 +14,6 @@ source: build: number: {{ build }} skip: true # [win] - run_exports: - - libactpol_deps requirements: build: @@ -30,9 +28,8 @@ requirements: host: - llvm-openmp # [osx] - libgomp # [linux] - - openblas * openmp_* - - libopenblas * openmp_* - - liblapack + - libopenblas * *openmp* + - libblas * *openblas - zziplib run: diff --git a/pkgs/moby2/dep_names.patch b/pkgs/moby2/dep_names.patch deleted file mode 100644 index 3cdfbb3..0000000 --- a/pkgs/moby2/dep_names.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -urN moby2-fd360a7352c88d3eb5195f5f0ea331ddc24e5e09/setup.py moby2_openblas/setup.py ---- moby2-fd360a7352c88d3eb5195f5f0ea331ddc24e5e09/setup.py 2021-09-09 07:55:34.000000000 -0700 -+++ moby2_openblas/setup.py 2022-03-25 19:10:38.758241651 -0700 -@@ -10,7 +10,7 @@ - import numpy - includes = [numpy.get_include()] - libdirs = [] --library = ['fftw3f', 'gslcblas', 'gsl', 'lapack', 'actpol'] -+library = ['fftw3f', 'gslcblas', 'gsl', 'openblas', 'actpol'] - - sources = glob.glob('src/*.c') - headers = glob.glob('src/*.h') diff --git a/pkgs/moby2/meta.yaml b/pkgs/moby2/meta.yaml index 61c3821..cd53fb5 100644 --- a/pkgs/moby2/meta.yaml +++ b/pkgs/moby2/meta.yaml @@ -11,7 +11,6 @@ source: url: https://github.com/ACTCollaboration/moby2/archive/{{ version }}.tar.gz sha256: {{ sha256 }} patches: - - dep_names.patch - np_bool.patch build: @@ -25,9 +24,8 @@ requirements: host: - llvm-openmp # [osx] - libgomp # [linux] - - openblas * openmp_* - - libopenblas * openmp_* - - liblapack + - libopenblas * *openmp* + - libblas * *openblas - python - fftw - gsl @@ -40,16 +38,16 @@ requirements: - numba run: - llvm-openmp # [osx] - - openblas * openmp_* - - libopenblas * openmp_* + - libopenblas * *openmp* + - libblas * *openblas - {{ pin_compatible("numpy") }} + - {{ pin_compatible("scipy") }} - {{ pin_compatible("fftw") }} - - {{ pin_compatible("liblapack") }} + - {{ pin_compatible("libopenblas") }} + - {{ pin_compatible("libblas") }} - {{ pin_compatible("gsl") }} - {{ pin_compatible("libactpol") }} - python - - numpy - - scipy - future - matplotlib - astropy diff --git a/pkgs/pixell/meta.yaml b/pkgs/pixell/meta.yaml index a0aa11a..1b64ee0 100644 --- a/pkgs/pixell/meta.yaml +++ b/pkgs/pixell/meta.yaml @@ -1,5 +1,5 @@ {% set version = "0.23.8" %} -{% set sha256 = "1f9f89193550892e8e90b95d7fccfaf57d47ff5e99b45854e95231eb5a919a4f" %} +{% set sha256 = "b50dbc38b26543a36e8ab0f62876fcd25d573c2b78ea58e9e16b51f61ae50107" %} {% set build = 0 %} @@ -29,9 +29,8 @@ requirements: host: - llvm-openmp # [osx] - libgomp # [linux] - - openblas * openmp_* - - libopenblas * openmp_* - - liblapack + - libopenblas * *openmp* + - libblas * *openblas - python - cython - numpy >=1.26 @@ -48,13 +47,13 @@ requirements: - libxcrypt1 # [linux] run: - llvm-openmp # [osx] - - openblas * openmp_* - - libopenblas * openmp_* + - libopenblas * *openmp* + - libblas * *openblas - {{ pin_compatible("numpy") }} - - {{ pin_compatible("liblapack") }} + - {{ pin_compatible("scipy") }} + - {{ pin_compatible("libopenblas") }} + - {{ pin_compatible("libblas") }} - python - - numpy - - scipy - astropy - healpy - matplotlib diff --git a/pkgs/qpoint/meta.yaml b/pkgs/qpoint/meta.yaml index 8bbcd65..6efc0ea 100644 --- a/pkgs/qpoint/meta.yaml +++ b/pkgs/qpoint/meta.yaml @@ -24,9 +24,8 @@ requirements: host: - llvm-openmp # [osx] - libgomp # [linux] - - openblas * openmp_* - - libopenblas * openmp_* - - liblapack + - libopenblas * *openmp* + - libblas * *openblas - python - setuptools - numpy >=1.26 @@ -39,13 +38,13 @@ requirements: - astropy run: - llvm-openmp # [osx] - - openblas * openmp_* - - libopenblas * openmp_* + - libopenblas * *openmp* + - libblas * *openblas - {{ pin_compatible("numpy") }} - - {{ pin_compatible("liblapack") }} + - {{ pin_compatible("scipy") }} + - {{ pin_compatible("libopenblas") }} + - {{ pin_compatible("libblas") }} - python - - numpy - - scipy - astropy test: diff --git a/pkgs/so3g/build.sh b/pkgs/so3g/build.sh index f51159f..632bb41 100755 --- a/pkgs/so3g/build.sh +++ b/pkgs/so3g/build.sh @@ -2,8 +2,8 @@ set -e set -x -CFLAGS="-O3 -g -fPIC" \ -CXXFLAGS='-O3 -g -fPIC -std=c++14' \ +CFLAGS="-Wno-error -O3 -g -fPIC -I${PREFIX}/include" \ +CXXFLAGS="-Wno-error -O3 -g -fPIC -std=c++14 -I${PREFIX}/include" \ BOOST_ROOT="${PREFIX}" \ FLAC_ROOT="${PREFIX}" \ python -m pip install -vvv --ignore-installed --no-deps --prefix "${PREFIX}" . diff --git a/pkgs/so3g/meta.yaml b/pkgs/so3g/meta.yaml index c83c850..20d1900 100644 --- a/pkgs/so3g/meta.yaml +++ b/pkgs/so3g/meta.yaml @@ -1,5 +1,5 @@ -{% set version = "0.1.12" %} -{% set sha256 = "7028a87fc6b4b85b1c18bc7cfbb24da90506e84c7a13186fa4d32b93855d6b41" %} +{% set version = "0.1.13" %} +{% set sha256 = "468b1a813fa1baf1134f7041898380b0552fe3a02f0fdbe450ac1e452bbae349" %} {% set build = 0 %} @@ -13,13 +13,11 @@ source: patches: - setup_requires.patch - cxx_werror.patch + - parallel.patch build: number: {{ build }} skip: true # [win] - script_env: - - CFLAGS=-Wno-error -O3 -g -fPIC - - CXXFLAGS=-Wno-error -O3 -g -fPIC -std=c++14 requirements: build: @@ -31,9 +29,9 @@ requirements: host: - llvm-openmp # [osx] - libgomp # [linux] - - openblas * openmp_* - - libopenblas * openmp_* - - liblapack + - libopenblas * *openmp* + - libblas * *openblas + - openblas * *openmp* - python - numpy >=1.26 - scipy @@ -47,16 +45,16 @@ requirements: - numba run: - llvm-openmp # [osx] - - openblas * openmp_* - - libopenblas * openmp_* + - libopenblas * *openmp* + - libblas * *openblas - {{ pin_compatible("numpy") }} - - {{ pin_compatible("liblapack") }} + - {{ pin_compatible("scipy") }} + - {{ pin_compatible("libopenblas") }} + - {{ pin_compatible("libblas") }} - {{ pin_compatible("libboost-python") }} - {{ pin_compatible("libboost") }} - {{ pin_compatible("libflac") }} - python - - numpy - - scipy - astropy - qpoint - matplotlib diff --git a/pkgs/so3g/parallel.patch b/pkgs/so3g/parallel.patch new file mode 100644 index 0000000..edf3f49 --- /dev/null +++ b/pkgs/so3g/parallel.patch @@ -0,0 +1,17 @@ +diff -urN so3g-0.1.13_orig/setup.py so3g-0.1.13/setup.py +--- so3g-0.1.13_orig/setup.py 2024-03-29 08:40:04.000000000 -0700 ++++ so3g-0.1.13/setup.py 2024-04-02 22:41:13.998376523 -0700 +@@ -152,7 +152,12 @@ + sp.check_call(["cmake", cmake_list_dir] + cmake_args, cwd=build_dir, env=env) + + print("-" * 10, "Building {}".format(pkg), "-" * 40) +- cmake_cmd = ["cmake", "--build", "."] + build_args + ["--", "-j2"] ++ if "CPU_COUNT" in os.environ: ++ # Running in conda-build ++ parallel_args = ["--parallel", os.environ["CPU_COUNT"]] ++ else: ++ parallel_args = ["--parallel", "2"] ++ cmake_cmd = ["cmake", "--build", "."] + build_args + parallel_args + sp.check_call(cmake_cmd, cwd=build_dir) + cmake_cmd = ["cmake", "--install", "."] + build_args + sp.check_call(cmake_cmd, cwd=build_dir) diff --git a/pkgs/toast/meta.yaml b/pkgs/toast/meta.yaml index 75ba162..70eed78 100644 --- a/pkgs/toast/meta.yaml +++ b/pkgs/toast/meta.yaml @@ -11,8 +11,8 @@ package: source: url: https://github.com/hpc4cmb/toast/archive/refs/tags/{{ version }}.tar.gz sha256: {{ sha256 }} - patches: - - openmp_linking.patch + #patches: + # - openmp_linking.patch # - debug_lapack.patch build: @@ -31,10 +31,8 @@ requirements: host: - llvm-openmp # [osx] - libgomp # [linux] - - openblas * openmp_* - - libopenblas * openmp_* - - libblas - - liblapack + - libopenblas * *openmp* + - libblas * *openblas - python - numpy >=1.26 - scipy @@ -44,18 +42,17 @@ requirements: - libflac run: - llvm-openmp # [osx] - - openblas * openmp_* - - libopenblas * openmp_* + - libopenblas * *openmp* + - libblas * *openblas - {{ pin_compatible("numpy") }} + - {{ pin_compatible("scipy") }} - {{ pin_compatible("fftw") }} + - {{ pin_compatible("libopenblas") }} - {{ pin_compatible("libblas") }} - - {{ pin_compatible("liblapack") }} - {{ pin_compatible("suitesparse") }} - {{ pin_compatible("libaatm") }} - {{ pin_compatible("libflac") }} - python - - numpy - - scipy - ruamel.yaml - matplotlib - astropy @@ -65,7 +62,7 @@ requirements: - tomlkit - traitlets>=5.0 - psutil - - pshmem>=1.0.4 + - pshmem>=1.1.0 test: imports: