From b53611d957d11f3255b89c7465bfd4a62ac5e0cc Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Thu, 12 Mar 2020 18:01:39 -0400 Subject: [PATCH 01/22] Add first version of recipe for triqs_cthyb quantum impurity solver --- recipes/triqs_cthyb/build.sh | 21 ++++++++++++ recipes/triqs_cthyb/meta.yaml | 43 ++++++++++++++++++++++++ recipes/triqs_cthyb/yum_requirements.txt | 1 + 3 files changed, 65 insertions(+) create mode 100644 recipes/triqs_cthyb/build.sh create mode 100644 recipes/triqs_cthyb/meta.yaml create mode 100644 recipes/triqs_cthyb/yum_requirements.txt diff --git a/recipes/triqs_cthyb/build.sh b/recipes/triqs_cthyb/build.sh new file mode 100644 index 0000000000000..995200276a3f6 --- /dev/null +++ b/recipes/triqs_cthyb/build.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env bash + +mkdir build +cd build + +# Openmpi Specific environment setup - Cf. https://github.com/conda-forge/libnetcdf-feedstock/pull/80 +export OMPI_MCA_btl=self,tcp +export OMPI_MCA_plm=isolated +export OMPI_MCA_rmaps_base_oversubscribe=yes +export OMPI_MCA_btl_vader_single_copy_mechanism=none +mpiexec="mpiexec --allow-run-as-root" + +source $PREFIX/share/triqsvars.sh + +cmake \ + -DCMAKE_INSTALL_PREFIX=$PREFIX \ + .. + +make -j${CPU_COUNT} VERBOSE=1 +CTEST_OUTPUT_ON_FAILURE=1 ctest +make install diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml new file mode 100644 index 0000000000000..ac9ad9b334d1b --- /dev/null +++ b/recipes/triqs_cthyb/meta.yaml @@ -0,0 +1,43 @@ +{% set version = "2.2.0" %} + +package: + name: triqs_cthyb + version: {{ version }} + +source: + url: https://github.com/TRIQS/cthyb/releases/download/{{ version }}/cthyb-{{ version }}.tar.gz + sha256: 89b572027f88c6b9afd176bd36023d646efba056ce90dea1af57b662fd713ad5 + +build: + number: 0 + skip: True # [win or py>30] + merge_build_host: True + +requirements: + build: + - cmake + - make + - clangxx >=8 # [osx] + - {{ compiler('c') }} + - {{ compiler('cxx') }} + host: + - triqs 2.2 + - nfft + run: + - triqs 2.2 + - nfft + +test: + imports: + - triqs_cthyb + +about: + home: https://triqs.github.io/cthyb + license: GPLv3 + license_file: LICENSE.txt + summary: 'A fast and generic hybridization-expansion impurity solver' + +extra: + recipe-maintainers: + - wentzell + - pgunn diff --git a/recipes/triqs_cthyb/yum_requirements.txt b/recipes/triqs_cthyb/yum_requirements.txt new file mode 100644 index 0000000000000..018785a151003 --- /dev/null +++ b/recipes/triqs_cthyb/yum_requirements.txt @@ -0,0 +1 @@ +xorg-x11-server-Xorg From c3aeea3c2000b4145574bc26183f5bbb3777e953 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Fri, 13 Mar 2020 19:42:55 -0400 Subject: [PATCH 02/22] Incorporate requested changes --- recipes/triqs_cthyb/meta.yaml | 2 +- recipes/triqs_cthyb/yum_requirements.txt | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) delete mode 100644 recipes/triqs_cthyb/yum_requirements.txt diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index ac9ad9b334d1b..657d74827cd56 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -11,7 +11,6 @@ source: build: number: 0 skip: True # [win or py>30] - merge_build_host: True requirements: build: @@ -34,6 +33,7 @@ test: about: home: https://triqs.github.io/cthyb license: GPLv3 + license_family: GPL license_file: LICENSE.txt summary: 'A fast and generic hybridization-expansion impurity solver' diff --git a/recipes/triqs_cthyb/yum_requirements.txt b/recipes/triqs_cthyb/yum_requirements.txt deleted file mode 100644 index 018785a151003..0000000000000 --- a/recipes/triqs_cthyb/yum_requirements.txt +++ /dev/null @@ -1 +0,0 @@ -xorg-x11-server-Xorg From 6c71be94073de52736d1dd1ad28c525a0822253e Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Fri, 13 Mar 2020 20:22:52 -0400 Subject: [PATCH 03/22] remove build requirement clangxx >=8 # [osx] --- recipes/triqs_cthyb/meta.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 657d74827cd56..4e03ddde0af5e 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -16,7 +16,6 @@ requirements: build: - cmake - make - - clangxx >=8 # [osx] - {{ compiler('c') }} - {{ compiler('cxx') }} host: From 7ffe0946d60fc8bd3eaa4a3b9089f41cf32222ba Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Mon, 16 Mar 2020 09:27:43 -0400 Subject: [PATCH 04/22] Explicitly specify Release build type --- recipes/triqs_cthyb/build.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/triqs_cthyb/build.sh b/recipes/triqs_cthyb/build.sh index 995200276a3f6..e3d1f540b56f1 100644 --- a/recipes/triqs_cthyb/build.sh +++ b/recipes/triqs_cthyb/build.sh @@ -14,6 +14,7 @@ source $PREFIX/share/triqsvars.sh cmake \ -DCMAKE_INSTALL_PREFIX=$PREFIX \ + -DCMAKE_BUILD_TYPE=Release \ .. make -j${CPU_COUNT} VERBOSE=1 From a95bebc8dceff6079a74f0d564740eefe4ccf763 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Tue, 17 Mar 2020 16:20:22 -0400 Subject: [PATCH 05/22] Fix build- and run-time deps to list dyn libs that are explicitly linked against --- recipes/triqs_cthyb/meta.yaml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 4e03ddde0af5e..42393e163393f 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -21,9 +21,15 @@ requirements: host: - triqs 2.2 - nfft + - hdf5 + - openmpi + - python run: - triqs 2.2 - nfft + - hdf5 + - openmpi + - python test: imports: From 7f176acc6a78b593f9420189c017febd51886f02 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Tue, 17 Mar 2020 16:46:03 -0400 Subject: [PATCH 06/22] Enforce identical build and host dir to fix compiler check against triqs --- recipes/triqs_cthyb/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 42393e163393f..61c776b2edfa2 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -11,6 +11,7 @@ source: build: number: 0 skip: True # [win or py>30] + merge_build_host: True requirements: build: From f762bef2a48940bc2b1bc85b53226e1087896f85 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Tue, 17 Mar 2020 17:05:22 -0400 Subject: [PATCH 07/22] Revert "Enforce identical build and host dir to fix compiler check against triqs" This reverts commit 7f176acc6a78b593f9420189c017febd51886f02. --- recipes/triqs_cthyb/meta.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 61c776b2edfa2..42393e163393f 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -11,7 +11,6 @@ source: build: number: 0 skip: True # [win or py>30] - merge_build_host: True requirements: build: From b872148c820228e68f158b7ae84b9357ea2e5e8d Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 13:57:25 -0400 Subject: [PATCH 08/22] trigger build From a1ae32c994701d5c162662ec9be1cbd05b67ddb9 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 17:21:21 -0400 Subject: [PATCH 09/22] Add boost-cpp build time dependency --- recipes/triqs_cthyb/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 42393e163393f..6acd93c16665c 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -20,6 +20,7 @@ requirements: - {{ compiler('cxx') }} host: - triqs 2.2 + - boost-cpp - nfft - hdf5 - openmpi From 5862c096648467eb981982930111f7609949f211 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 18:46:41 -0400 Subject: [PATCH 10/22] update version to 2.2.1 --- recipes/triqs_cthyb/meta.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 6acd93c16665c..f0a50faac7cde 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -1,4 +1,4 @@ -{% set version = "2.2.0" %} +{% set version = "2.2.1" %} package: name: triqs_cthyb @@ -6,7 +6,7 @@ package: source: url: https://github.com/TRIQS/cthyb/releases/download/{{ version }}/cthyb-{{ version }}.tar.gz - sha256: 89b572027f88c6b9afd176bd36023d646efba056ce90dea1af57b662fd713ad5 + sha256: de78b39a354c0e1344987c26403919c23611635ab3d75620aa01bd5b06431bdc build: number: 0 From 740df76344260f2d8272e187b4834f3b1046ac24 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 18:59:58 -0400 Subject: [PATCH 11/22] add libblas to run-time reqs --- recipes/triqs_cthyb/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index f0a50faac7cde..05e561be0a0e5 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -30,6 +30,7 @@ requirements: - nfft - hdf5 - openmpi + - libblas - python test: From 91ce8d3d9fcccfa901e2a2c3704a6a20c87d4319 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 19:11:25 -0400 Subject: [PATCH 12/22] Add libblas to host deps --- recipes/triqs_cthyb/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 05e561be0a0e5..c709bbfa1fce9 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -24,6 +24,7 @@ requirements: - nfft - hdf5 - openmpi + - libblas - python run: - triqs 2.2 From d9c32219179beaa4c901943df5a99b3f4cf96784 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 19:12:55 -0400 Subject: [PATCH 13/22] Add liblapack to run/host deps --- recipes/triqs_cthyb/meta.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index c709bbfa1fce9..b3ac2c818102c 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -25,6 +25,7 @@ requirements: - hdf5 - openmpi - libblas + - liblapack - python run: - triqs 2.2 @@ -32,6 +33,7 @@ requirements: - hdf5 - openmpi - libblas + - liblapack - python test: From abd3f369d989296108f5d6d7b072713636bd623a Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 20:13:09 -0400 Subject: [PATCH 14/22] Add mpi4py as run time dep --- recipes/triqs_cthyb/meta.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index b3ac2c818102c..6968cb175675a 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -32,6 +32,7 @@ requirements: - nfft - hdf5 - openmpi + - mpi4py - libblas - liblapack - python From 4c259409e79f70120fbe3d75cc7404338170fede Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 20:21:50 -0400 Subject: [PATCH 15/22] Revert "Add mpi4py as run time dep" This reverts commit abd3f369d989296108f5d6d7b072713636bd623a. --- recipes/triqs_cthyb/meta.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 6968cb175675a..b3ac2c818102c 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -32,7 +32,6 @@ requirements: - nfft - hdf5 - openmpi - - mpi4py - libblas - liblapack - python From 6dd4b1d946cfef7d704e5a2d4a6150dacde95bb0 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 20:28:34 -0400 Subject: [PATCH 16/22] Fix MPI env in final import test, c.f. github.com/conda-forge/libnetcdf-feedstock/pull/80 --- recipes/triqs_cthyb/meta.yaml | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index b3ac2c818102c..3b93802130e06 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -37,8 +37,9 @@ requirements: - python test: - imports: - - triqs_cthyb + commands: + - export OMPI_MCA_btl=self,tcp + - OMPI_MCA_plm=isolated OMPI_MCA_rmaps_base_oversubscribe=yes OMPI_MCA_btl_vader_single_copy_mechanism=none mpiexec="mpiexec --allow-run-as-root" python -c "import triqs_cthyb" about: home: https://triqs.github.io/cthyb From 3766fe04a207092cc68d35d9cca6a3b0370a27ef Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 20:36:50 -0400 Subject: [PATCH 17/22] Break environment vars in test commands into multiple lines --- recipes/triqs_cthyb/meta.yaml | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 3b93802130e06..3d0f04441517f 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -39,7 +39,11 @@ requirements: test: commands: - export OMPI_MCA_btl=self,tcp - - OMPI_MCA_plm=isolated OMPI_MCA_rmaps_base_oversubscribe=yes OMPI_MCA_btl_vader_single_copy_mechanism=none mpiexec="mpiexec --allow-run-as-root" python -c "import triqs_cthyb" + - export OMPI_MCA_plm=isolated + - export OMPI_MCA_rmaps_base_oversubscribe=yes + - export OMPI_MCA_btl_vader_single_copy_mechanism=none + - export mpiexec="mpiexec --allow-run-as-root" + - python -c "import triqs_cthyb" about: home: https://triqs.github.io/cthyb From eb887d9f9c6dec95c936e5a72c3955565614d7ae Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 21:00:10 -0400 Subject: [PATCH 18/22] Update recipes/triqs_cthyb/meta.yaml Lock version against triqs version Co-Authored-By: Isuru Fernando --- recipes/triqs_cthyb/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 3d0f04441517f..9e0322a77796d 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -28,7 +28,7 @@ requirements: - liblapack - python run: - - triqs 2.2 + - {{ pin_compatible("triqs", max_pin="x.x") }} - nfft - hdf5 - openmpi From a3806589a27a9b525ae68a7491664f49bd486f98 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Wed, 18 Mar 2020 21:03:48 -0400 Subject: [PATCH 19/22] Update recipes/triqs_cthyb/meta.yaml Lock triqs version in host version requirement Co-Authored-By: Isuru Fernando --- recipes/triqs_cthyb/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 9e0322a77796d..c37a6eacfc306 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -19,7 +19,7 @@ requirements: - {{ compiler('c') }} - {{ compiler('cxx') }} host: - - triqs 2.2 + - triqs {{ '.'.join(version.split('.')[:2]) }} - boost-cpp - nfft - hdf5 From a7f8748b8fec9e5d72e60a2bbf535d4c1024b179 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Thu, 19 Mar 2020 11:17:47 -0400 Subject: [PATCH 20/22] Build for both openmpi and mpich --- recipes/triqs_cthyb/conda_build_config.yaml | 3 +++ recipes/triqs_cthyb/meta.yaml | 4 ++-- 2 files changed, 5 insertions(+), 2 deletions(-) create mode 100644 recipes/triqs_cthyb/conda_build_config.yaml diff --git a/recipes/triqs_cthyb/conda_build_config.yaml b/recipes/triqs_cthyb/conda_build_config.yaml new file mode 100644 index 0000000000000..289631faf39ae --- /dev/null +++ b/recipes/triqs_cthyb/conda_build_config.yaml @@ -0,0 +1,3 @@ +mpi: + - mpich + - openmpi diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index c37a6eacfc306..6d212e63b7884 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -23,7 +23,7 @@ requirements: - boost-cpp - nfft - hdf5 - - openmpi + - {{ mpi }} - libblas - liblapack - python @@ -31,7 +31,7 @@ requirements: - {{ pin_compatible("triqs", max_pin="x.x") }} - nfft - hdf5 - - openmpi + - {{ mpi }} - libblas - liblapack - python From 0a593bcfcee2e85a2b885ed2cc97912af64e1b9f Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Thu, 19 Mar 2020 11:26:47 -0400 Subject: [PATCH 21/22] Use SPDX license identifier --- recipes/triqs_cthyb/meta.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/recipes/triqs_cthyb/meta.yaml b/recipes/triqs_cthyb/meta.yaml index 6d212e63b7884..182ec69adea2e 100644 --- a/recipes/triqs_cthyb/meta.yaml +++ b/recipes/triqs_cthyb/meta.yaml @@ -47,7 +47,7 @@ test: about: home: https://triqs.github.io/cthyb - license: GPLv3 + license: GPL-3.0-or-later license_family: GPL license_file: LICENSE.txt summary: 'A fast and generic hybridization-expansion impurity solver' From ac36897bc629e57060e25110f87363d4a78a16f7 Mon Sep 17 00:00:00 2001 From: Nils Wentzell Date: Thu, 19 Mar 2020 14:35:35 -0400 Subject: [PATCH 22/22] trigger build