-
-
Notifications
You must be signed in to change notification settings - Fork 20
/
meta.yaml
118 lines (107 loc) · 3.79 KB
/
meta.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
{% set version = "8.6.1" %}
{% set build = 0 %}
# ensure mpi is defined (needed for conda-smithy recipe-lint)
{% set mpi = mpi or 'nompi' %}
{% if mpi == 'mpich' %}
# prioritize mpich variant, which was previously the only option, via build number
{% set build = build + 100 %}
{% endif %}
package:
name: esmf
version: {{ version }}
source:
url: https://github.com/esmf-org/esmf/archive/refs/tags/v{{ version }}.tar.gz
sha256: dc270dcba1c0b317f5c9c6a32ab334cb79468dda283d1e395d98ed2a22866364
patches:
# remove these very long running tests only for aarch64 nompi (which is hanging)
- remove-long-running-tests.patch # [aarch64 and mpi == 'nompi']
# Sequence of Windows targeting patches; should be unix compatible
- 0001-Add-x86_64-machine-id-for-MinGW.gfortran.patch
- 0002-Change-long-int-to-long-long-for-Windows-compatibili.patch
- 0003-Deal-with-command-line-length-limitations.patch
- 0004-Deactivate-ESMF_NETCDF-way-of-specifying-nc-config.patch
- 0005-Replace-flaky-abspath-script-with-make-s-abspath-fun.patch
- 0006-Make-pathtype-recognize-Windows-style-absolute-paths.patch
- 0007-Hack-in-windows-naming-conventions.patch
- windows-exports.patch
build:
number: {{ build }}
# add build string so packages can depend on
# mpi or nompi variants explicitly:
# `esmf * mpi_mpich_*` for mpich
# `esmf * mpi_*` for any mpi
# `esmf * nompi_*` for no mpi
{% if mpi != 'nompi' %}
{% set mpi_prefix = "mpi_" + mpi %}
{% else %}
{% set mpi_prefix = "nompi" %}
{% endif %}
string: {{ mpi_prefix }}_h{{ PKG_HASH }}_{{ build }}
# There is a compiler error in the current Windows version of gcc, see
# https://github.com/conda-forge/esmf-feedstock/pull/109#issuecomment-1795477835
skip: true # [win]
requirements:
build:
# General
- perl
- {{ mpi }} # [mpi == 'openmpi' and build_platform != target_platform]
- cmake
- gnuconfig
- netcdf-fortran * {{ mpi_prefix }}_* # [build_platform != target_platform and mpi == 'openmpi']
- hdf5 * {{ mpi_prefix }}_* # [build_platform != target_platform and mpi == 'openmpi']
- libnetcdf * {{ mpi_prefix }}_* # [build_platform != target_platform and mpi == 'openmpi']
# Unix
- {{ compiler('c') }} # [unix]
- {{ compiler('cxx') }} # [unix]
- {{ compiler('fortran') }} # [unix]
- make # [unix]
- pkg-config # [unix]
# Win
- {{ compiler('m2w64_c') }} # [win]
- {{ compiler('m2w64_cxx') }} # [win]
- {{ compiler('m2w64_fortran') }} # [win]
- m2-autoconf # [win]
- m2-grep # [win]
- m2-make # [win]
- m2-sed # [win]
- m2-which # [win]
- m2w64-pkg-config # [win]
- m2w64-dlfcn # [win]
host:
# need to list netcdf-fortran, hdf5 and libnetcdf twice to get version
# pinning from conda_build_config and build pinning from {{ mpi_prefix }}
- netcdf-fortran
- netcdf-fortran * {{ mpi_prefix }}_*
- libnetcdf
- libnetcdf * {{ mpi_prefix }}_*
- hdf5
- hdf5 * {{ mpi_prefix }}_*
- {{ mpi }} # [mpi != 'nompi']
- parallelio >=2.5.9 # [mpi != 'nompi']
run:
- netcdf-fortran * {{ mpi_prefix }}_*
- libnetcdf * {{ mpi_prefix }}_*
- hdf5 * {{ mpi_prefix }}_*
- {{ mpi }} # [mpi != 'nompi']
- openssh # [mpi == 'openmpi']
test:
commands:
- ESMF_PrintInfo
- ESMF_RegridWeightGen --help
- test -f ${ESMFMKFILE} # [unix]
- if not exist %ESMFMKFILE% exit 1 # [win]
about:
home: http://earthsystemmodeling.org/
license: NCSA
license_file: LICENSE
summary: |
The Earth System Modeling Framework (ESMF) is software for building and
coupling weather, climate, and related models.
dev_url: https://github.com/esmf-org/esmf
doc_url: https://earthsystemmodeling.org/doc/
extra:
recipe-maintainers:
- zklaus
- ocefpaf
- rokuingh
- xylar