Skip to content

Commit 03e4c6e

Browse files
authored
Merge pull request #2178 from h-vetinari/10.13
update macOS SDK baseline
2 parents a999bd8 + 8304364 commit 03e4c6e

File tree

1 file changed

+9
-9
lines changed

1 file changed

+9
-9
lines changed

docs/maintainer/knowledge_base.md

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1708,9 +1708,9 @@ You need to rerender the feedstock after this change.
17081708
17091709
## Requiring newer macOS SDKs
17101710
1711-
conda-forge uses macOS SDK 10.9 to build software so that they can be deployed to
1712-
all macOS versions newer than 10.9. Sometimes, some packages require a newer SDK
1713-
to build with. While the default version 10.9 can be overridden using the following
1711+
conda-forge uses macOS SDK 10.13 to build software so that they can be deployed to
1712+
all macOS versions newer than 10.13. Sometimes, some packages require a newer SDK
1713+
to build with. While the default version 10.13 can be overridden using the following
17141714
changes to the recipe, it should be done as a last resort. Please consult with
17151715
core team if this is something you think you need.
17161716
@@ -1719,13 +1719,13 @@ To use a new SDK, add the following in `recipe/conda_build_config.yaml`
17191719
```yaml
17201720
# Please consult conda-forge/core before doing this
17211721
MACOSX_SDK_VERSION: # [osx and x86_64]
1722-
- "10.12" # [osx and x86_64]
1722+
- "10.15" # [osx and x86_64]
17231723
```
17241724
17251725
Note that this should be done if the error you are getting says that a header is not
17261726
found or a macro is not defined. This will make your package compile with a newer SDK
1727-
but with `10.9` as the deployment target.
1728-
WARNING: some packages might use features from `10.12` if you do the above due to
1727+
but with `10.13` as the deployment target.
1728+
WARNING: some packages might use features from `10.15` if you do the above due to
17291729
buggy symbol availability checks. For example packages looking for `clock_gettime`
17301730
will see it as it will be a weak symbol, but the package might not have a codepath
17311731
to handle the weak symbol, in that case, you need to update the `c_stdlib_version`
@@ -1737,9 +1737,9 @@ is available only for macOS x.x, then do the following in `recipe/conda_build_co
17371737
```yaml
17381738
# Please consult conda-forge/core before doing this
17391739
c_stdlib_version: # [osx and x86_64]
1740-
- "10.12" # [osx and x86_64]
1740+
- "10.15" # [osx and x86_64]
17411741
MACOSX_SDK_VERSION: # [osx and x86_64]
1742-
- "10.12" # [osx and x86_64]
1742+
- "10.15" # [osx and x86_64]
17431743
```
17441744
17451745
In `recipe/meta.yaml`, add the following to ensure that the user's system is compatible.
@@ -1761,7 +1761,7 @@ The libc++ library uses Clang availability annotations to mark certain symbols a
17611761
unavailable when targeting versions of macOS that ship with a system libc++
17621762
that do not contain them. Clang always assumes that the system libc++ is used.
17631763

1764-
The conda-forge build infrastructure targets macOS 10.9 and some newer C++ features
1764+
The conda-forge build infrastructure targets macOS 10.13 and some newer C++ features
17651765
such as `fs::path` are marked as unavailable on that platform, so the build aborts:
17661766

17671767
```bash

0 commit comments

Comments
 (0)