-
-
Notifications
You must be signed in to change notification settings - Fork 43
/
Copy pathmeta.yaml
125 lines (114 loc) · 3.65 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
119
120
121
122
123
124
125
{% set version = "4.9.2" %}
{% set build = 16 %}
# recipe-lint fails if mpi is undefined
{% set mpi = mpi or 'nompi' %}
{% if mpi == "nompi" %}
# prioritize nompi via build number
{% set build = build + 100 %}
{% endif %}
package:
name: libnetcdf
version: {{ version }}
source:
url: https://github.com/Unidata/netcdf-c/archive/refs/tags/v{{ version }}.tar.gz
sha256: bc104d101278c68b303359b3dc4192f81592ae8640f1aee486921138f7f88cb7
patches:
- patches/0004-Prefer-getenv-TOPSRCDIR-over-STRINGIFY-TOPSRCDIR.patch
- patches/0009-topsrcdir.patch
- patches/prevent_MS_runtime_libs_being_installed_again.patch # [win]
- patches/do_not_use_16_processes_in_tests.patch # [ppc64le]
- patches/0001-Fix-issue-2674.patch
- patches/0001-Switch-custom-Bzip2-cmake-module-to-standard.patch
# removeme once 4.9.3 is released
- patches/update_ftp_refs.patch
build:
number: {{ build }}
skip: true # [win and vc<14]
{% if mpi != "nompi" %}
{% set mpi_prefix = "mpi_" + mpi %}
{% else %}
{% set mpi_prefix = "nompi" %}
{% endif %}
# add build string so packages can depend on
# mpi or nompi variants
# dependencies:
# `PKG_NAME * mpi_mpich_*` for mpich
# `PKG_NAME * mpi_*` for any mpi
# `PKG_NAME * nompi_*` for no mpi
string: {{ mpi_prefix }}_h{{ PKG_HASH }}_{{ build }}
# mpi builds require the right mpi
# non-mpi builds *do not* appear to require non-mpi builds
# at least not always
{% if mpi != 'nompi' %}
{% set build_pin = mpi_prefix + '_*' %}
{% else %}
{% set build_pin = '' %}
{% endif %}
run_exports:
# https://abi-laboratory.pro/tracker/timeline/netcdf/
- {{ pin_subpackage('libnetcdf', max_pin='x.x.x') }} {{ build_pin }}
requirements:
build:
- cmake
- make # [not win]
- pkg-config # [not win]
- gnuconfig # [unix]
- {{ compiler('c') }}
- {{ stdlib('c') }}
- {{ compiler('cxx') }}
- {{ mpi }} # [mpi == 'openmpi' and build_platform != target_platform]
- unzip # [not win]
- m2-unzip # [win]
- m4 # [not win]
- m2-m4 # [win]
- wget # [not win]
host:
- {{ mpi }} # [mpi != 'nompi']
- blosc
- bzip2
- hdf4
# without this repeat reference, conda-smithy doesn't pin correctly
- hdf5
- hdf5 * {{ mpi_prefix }}_*
- libaec
- libcurl
- libpnetcdf # [mpi != 'nompi']
- libxml2
- libzip
# Openssl provides libcrypto which is needed via libcurl, but doesn't get
# to the run reqs through run_exports because it is twice removed
- openssl # [unix]
- zlib
- zstd
run:
# In principle, zlib should *not* be a run requirement since only libz.so.1
# is needed which is provided by libzlib, which in turn gets added to the
# run requirements as a run_export from zlib in the host requirements.
# However, the Cmake export target requires libz.so (likely a bug), which is
# provided by zlib, hence the run requirement here to make the export target
# usable. For more details, see
# https://github.com/conda-forge/libnetcdf-feedstock/issues/173
# https://github.com/Unidata/netcdf-c/issues/2713
- zlib
test:
commands:
- test ! -f ${PREFIX}/lib/libnetcdf.a # [not win]
- test -f ${PREFIX}/lib/libnetcdf${SHLIB_EXT} # [not win]
- nc-config --all # [not win]
about:
home: http://www.unidata.ucar.edu/software/netcdf/
license: MIT
license_file: COPYRIGHT
summary: Libraries and data formats that support array-oriented scientific data
dev_url: https://github.com/Unidata/netcdf-c
extra:
recipe-maintainers:
- WardF
- groutr
- kmuehlbauer
- ocefpaf
- mingwandroid
- msarahan
- xylar
- dopplershift
- zklaus