Skip to content

Conversation

@h-vetinari
Copy link
Member

No description provided.

@conda-forge-webservices
Copy link

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipe) and found it was in an excellent condition.

@github-actions
Copy link
Contributor

Hi! This is the friendly conda-forge automerge bot!

I considered the following status checks when analyzing this PR:

  • linter: passed
  • azure: failed

Thus the PR was not passing and not merged.

@h-vetinari h-vetinari added automerge Merge the PR when CI passes and removed automerge Merge the PR when CI passes labels Aug 10, 2023
@h-vetinari
Copy link
Member Author

It's a bit concerning that the bump in GCC minimum revealed that apparently we've been using GCC's libstdcxx that must be somewhere in the MacOS image (presumably in the SDK?). Not sure if this was a recent change in llvm, but the fact that 17.0.0.rc1 passed (before llvm/llvm-project@5ddfea3 arrived with rc2) and then rc2 failed based on the detected libstdcxx version means we don't immediately know how far back this goes.

Failure looks like:

-- Performing Test LLVM_LIBSTDCXX_MIN
-- Performing Test LLVM_LIBSTDCXX_MIN - Failed
CMake Error at $PREFIX/lib/cmake/llvm/CheckCompilerVersion.cmake:88 (message):
  libstdc++ version must be at least 7.4.

Comes from here.

CC @conda-forge/clangdev

@h-vetinari h-vetinari removed the automerge Merge the PR when CI passes label Aug 10, 2023
@h-vetinari
Copy link
Member Author

Another aspect of libcxx dropping support for MacOS<10.13: just running clang is not compatible with 10.9 anymore:

+ clang++ -v -c mytest.cxx
clang version 17.0.0
Target: x86_64-apple-darwin20.6.0
Thread model: posix
InstalledDir: $PREFIX/bin
 (in-process)
 "$PREFIX/bin/clang-17" -cc1 -triple x86_64-apple-macosx10.9.0 -Wundef-prefix=TARGET_OS_OSX -Werror=undef-prefix -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -emit-obj -mrelax-all -disable-free -clear-ast-before-backend -disable-llvm-verifier -discard-value-names -main-file-name mytest.cxx -mrelocation-model pic -pic-level 2 -mframe-pointer=all -ffp-contract=on -fno-rounding-math -funwind-tables=2 -faligned-alloc-unavailable -fcompatibility-qualified-id-block-type-checking -fvisibility-inlines-hidden-static-local-var -target-cpu core2 -tune-cpu generic -debugger-tuning=lldb -target-linker-version 609 -v -fcoverage-compilation-dir=/Users/runner/miniforge3/conda-bld/clang_packages_1691642825675/test_tmp -resource-dir $PREFIX/lib/clang/17 -isysroot /Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk -internal-isystem $PREFIX/include/c++/v1 -internal-isystem /Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/local/include -internal-isystem $PREFIX/lib/clang/17/include -internal-externc-isystem /Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include -fdeprecated-macro -fdebug-compilation-dir=/Users/runner/miniforge3/conda-bld/clang_packages_1691642825675/test_tmp -ferror-limit 19 -stack-protector 1 -fblocks -fencode-extended-block-signature -fregister-global-dtors-with-atexit -fgnuc-version=4.2.1 -fcxx-exceptions -fexceptions -fmax-type-align=16 -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o mytest.o -x c++ mytest.cxx
clang -cc1 version 17.0.0 based upon LLVM 17.0.0 default target x86_64-apple-darwin20.6.0
ignoring nonexistent directory "/Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/local/include"
ignoring nonexistent directory "/Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/Library/Frameworks"
#include "..." search starts here:
#include <...> search starts here:
 $PREFIX/include/c++/v1
 $PREFIX/lib/clang/17/include
 /Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include
 /Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/System/Library/Frameworks (framework directory)
End of search list.
In file included from mytest.cxx:1:
In file included from $PREFIX/include/c++/v1/iostream:43:
In file included from $PREFIX/include/c++/v1/ios:221:
In file included from $PREFIX/include/c++/v1/__ios/fpos.h:14:
In file included from $PREFIX/include/c++/v1/iosfwd:106:
In file included from $PREFIX/include/c++/v1/__std_mbstate_t.h:14:
In file included from $PREFIX/include/c++/v1/__mbstate_t.h:45:
/Applications/Xcode_13.2.1.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/sys/_types/_mbstate_t.h:31:9: error: unknown type name '__darwin_mbstate_t'
   31 | typedef __darwin_mbstate_t mbstate_t;
      |         ^
1 error generated.

This happens with libcxx 17 here, but I don't actually understand how that can get pulled into the test env at all, as it has an explicit constraint for >= 10.13, and we were running on 10.9 here so far.

@h-vetinari h-vetinari merged commit f4602f0 into conda-forge:rc Aug 11, 2023
@h-vetinari h-vetinari deleted the rc branch August 11, 2023 09:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant