-
Notifications
You must be signed in to change notification settings - Fork 60
/
Copy pathconda_build_config.yaml
122 lines (115 loc) · 4.24 KB
/
conda_build_config.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
# overriding conda-forge-pinnings defined in
# https://github.com/conda-forge/conda-forge-pinning-feedstock/blob/master/recipe/conda_build_config.yaml
# clangxx isn't standalone on linux, it depends on gcc
# Isuru from conda-forge reccomended explicitly adding clangxx
# but we could also add a clang_linux-64 metapackage so that
# clang could be listed in the compiler matrix
# https://gitter.im/conda-forge/conda-forge.github.io?at=5e5feaf7ec7f8746aab200c4
# is Isuru's reply to my question in:
# https://gitter.im/conda-forge/conda-forge.github.io?at=5e5f4ae2376d882250cd5d5c
# # conda-forge uses gcc on linux and clang on osx
# # we're only supporting clang on both platforms
# c_compiler:
# - clang
# c_compiler_version:
# - 9
# cxx_compiler:
# - clangxx
# cxx_compiler_version:
# - 9
# override macos APK min version.
# conda-forge supports from 10.9 but we
# have code that needs 10.13.
macos_machine: # [osx]
- arm64-apple-darwin20.0.0 # [osx and arm64]
MACOSX_DEPLOYMENT_TARGET: # [osx]
- 14.5 # [osx]
# linux_clang_version is not a part of zip_keys
# from conda-forge, if you want to, you can
# easily matrix the linux builds using the same
# backend from gcc but adding new clang versions
# here
linux_clang_version: # [linux]
- 15 # [linux]
# - 11 # [linux]
# limit ourselves to a single python version
# since numpy and python_impl are zipped with it, we
# must also override those to a single value
numpy:
- 1.21
python:
- 3.10.* *_cpython
python_impl:
- cpython
boost:
- 1.78
# The remainder of the file is an example of how you can
# specify multiple versions of compilers for each platform
#
# You have to be aware of everything that conda-forge puts
# into it's zip_keys configuration and make sure that you
# provide lists of the same size for all of the dimensions
# that are zipped on all platforms.
# c_compiler:
# - gcc # [linux]
# - clang # [osx]
# c_compiler_version: # [unix]
# - 13 # [osx]
# - 11 # [osx]
# - 11 # [linux]
# - 10 # [linux]
# cxx_compiler:
# - gxx # [linux]
# - clangxx # [osx]
# cxx_compiler_version: # [unix]
# - 13 # [osx]
# - 11 # [osx]
# - 11 # [linux]
# - 10 # [linux]
# # cf uses gfortran on both linux and osx
# # so we just need to provide two versions
# # so that the zip_keys will work and since
# # we don't use fortran, it doesn't matter
# # but I make the versions match gcc,g++ so
# # to be less confusing
# fortran_compiler_version:
# - 11
# - 10
# docker_image:
# - quay.io/condaforge/linux-anvil-cos7-x86_64
# - quay.io/condaforge/linux-anvil-cos7-x86_64
# cdt_name:
# - cos6
# - cos6
#
# conda-forge-pinnings-feedstock/recipe/conda_build_config.yaml
# uses c_compiler_version and cxx_compiler_version in a zip_keys
# https://docs.conda.io/projects/conda-build/en/latest/resources/variants.html#coupling-keys
# They typically only have a single version of the compilers that they
# are building packages with at a time. However, we want to regress
# across a few. That means we need to balance the size of the
# elements of the zip_keys. I'm going to override those here
# as well so that it is easier to see what we're doing.
# I dropped the cuda stuff out of conda-forge zip_keys because
# we don't care about CUDA as we aren't using it.
#
# I guess you can't override zip_keys, you can only add combinations to the
# list and keys can only be in one, so, we have to constrain fortran to be
# a matrix as well even though we don't use it.
#
# If we really want to define our own zip_keys, we can rerender with
# conda smithy rerender --exclusive-config <path to this file>
#
# and conda-smithy should just use our configuration
#
#zip_keys:
# -
# - c_compiler_version
# - cxx_compiler_version
# - linux_clang_version # [linux]
# - cdt_name # [linux]
# - docker_image # [linux]
# -
# - python
# - numpy
# - python_impl