Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-rendering 13.x #300

Open
wants to merge 11 commits into
base: 13.x
Choose a base branch
from
Open

Conversation

vepadulano
Copy link
Contributor

Opening this PR as a check against #299 .

@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.

I do have some suggestions for making it better though...

For recipe:

@h-vetinari
Copy link
Member

Interestingly, we're missing the path for the C++ stdlib here:

clang -cc1 version 13.0.1 based upon LLVM 13.0.1 default target x86_64-unknown-linux-gnu
ignoring nonexistent directory "$PREFIX/x86_64-conda-linux-gnu/sysroot/usr/local/include"
ignoring nonexistent directory "$PREFIX/x86_64-conda-linux-gnu/include"
ignoring nonexistent directory "$PREFIX/x86_64-conda-linux-gnu/sysroot/include"
#include "..." search starts here:
#include <...> search starts here:
 $PREFIX/lib/clang/13.0.1/include
 $PREFIX/x86_64-conda-linux-gnu/sysroot/usr/include
End of search list.

whereas the path we'd need is:

$PREFIX/lib/gcc/x86_64-conda-linux-gnu/12.3.0/include

I think you might want to try backporting #231

@vepadulano
Copy link
Contributor Author

So I backported commits from #231 (except I didn't remove 0001-Find-conda-gcc-installation.patch) and #252 . On my machine this is still not enough to fix the issue with the path

@h-vetinari
Copy link
Member

At first, I was also wondering why the PPC builds are passing here, but as it turns out, this is because we still have an old pin set for these

# linking error with gcc 9
- 8 # [linux and ppc64le]

This results in

Found candidate GCC installation: $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0
Selected GCC installation: $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0
Candidate multilib: .;@m64
Selected multilib: .;@m64
 (in-process)
 "$PREFIX/bin/clang-13" -cc1 -triple powerpc64le-unknown-linux-gnu -emit-obj -mrelax-all --mrelax-relocations -disable-free -disable-llvm-verifier -discard-value-names -main-file-name mytest.cxx -mrelocation-model static -mframe-pointer=all -fmath-errno -fno-rounding-math -mconstructor-aliases -munwind-tables -target-cpu ppc64le -mfloat-abi hard -target-abi elfv2 -debugger-tuning=gdb -v -fcoverage-compilation-dir=/home/conda/feedstock_root/build_artifacts/clang_packages_1720469311741/test_tmp -resource-dir $PREFIX/lib/clang/13.0.1 -internal-isystem $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/include/c++/8.5.0 -internal-isystem $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/include/c++/8.5.0/powerpc64le-conda-linux-gnu -internal-isystem $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/include/c++/8.5.0/backward -internal-isystem $PREFIX/lib/clang/13.0.1/include/ppc_wrappers -internal-isystem $PREFIX/lib/clang/13.0.1/include -internal-isystem $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/sysroot/usr/local/include -internal-isystem $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/include -internal-externc-isystem $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/sysroot/include -internal-externc-isystem $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/sysroot/usr/include -fdeprecated-macro -fdebug-compilation-dir=/home/conda/feedstock_root/build_artifacts/clang_packages_1720469311741/test_tmp -ferror-limit 19 -fno-signed-char -fgnuc-version=4.2.1 -fcxx-exceptions -fexceptions -faddrsig -D__GCC_HAVE_DWARF2_CFI_ASM=1 -o mytest.o -x c++ mytest.cxx
clang -cc1 version 13.0.1 based upon LLVM 13.0.1 default target powerpc64le-unknown-linux-gnu
ignoring nonexistent directory "$PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/sysroot/usr/local/include"
ignoring nonexistent directory "$PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/sysroot/include"
#include "..." search starts here:
#include <...> search starts here:
 $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/include/c++/8.5.0
 $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/include/c++/8.5.0/powerpc64le-conda-linux-gnu
 $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/include/c++/8.5.0/backward
 $PREFIX/lib/clang/13.0.1/include/ppc_wrappers
 $PREFIX/lib/clang/13.0.1/include
 $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/include
 $PREFIX/bin/../lib/gcc/powerpc64le-conda-linux-gnu/8.5.0/../../../../powerpc64le-conda-linux-gnu/sysroot/usr/include
End of search list.
+ exit 0

Coming back to linux-64, things look exactly the same

Found candidate GCC installation: $PREFIX/bin/../lib/gcc/x86_64-conda-linux-gnu/12.3.0
Selected GCC installation: $PREFIX/bin/../lib/gcc/x86_64-conda-linux-gnu/12.3.0

but then we get

ignoring nonexistent directory "$PREFIX/bin/../lib/gcc/x86_64-conda-linux-gnu/12.3.0/../../../../x86_64-conda-linux-gnu/include"

This just doesn't make sense to me, because this path (which boils down to $PREFIX/x86_64-conda-linux-gnu/include) definitely exists if libstdcxx-devel_{{ target_platform }} is in the environment.

@vepadulano
Copy link
Contributor Author

This is very interesting! For some reason, by forcing the cxx_compiler_version to 8 also for other linux platforms the build ends without errors on my machine.

@conda-forge-webservices
Copy link

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

I wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found some lint.

Here's what I've got...

For recipe/meta.yaml:

@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/meta.yaml) and found it was in an excellent condition.

@h-vetinari
Copy link
Member

@conda-forge-admin, please rerender

@h-vetinari
Copy link
Member

This is very interesting! For some reason, by forcing the cxx_compiler_version to 8 also for other linux platforms the build ends without errors on my machine.

Sorry for the long delays here; since clang 13.x is basically completely out of support, it's probably not a good use of our time to dig too deeply what's going on exactly. If things build fine with GCC 8, that's good enough for me for now!

Copy link
Contributor

Hi! This is the friendly automated conda-forge-webservice.

I tried to rerender for you, but it looks like I wasn't able to push to the 13.x-rerender branch of vepadulano/clangdev-feedstock. Did you check the "Allow edits from maintainers" box?

NOTE: Our webservices cannot push to PRs from organization accounts or PRs from forks made from organization forks because of GitHub permissions. Please fork the feedstock directly from conda-forge into your personal GitHub account.

This message was generated by GitHub actions workflow run https://github.com/conda-forge/clangdev-feedstock/actions/runs/10346884883.

@h-vetinari h-vetinari mentioned this pull request Aug 12, 2024
@h-vetinari
Copy link
Member

OK, I've merged an update to the 13.x branch in #307; you can rebase this PR to migrate root, or whatever it is you were after. I didn't optimize the compiler versions - you'll probably be able to bump GCC a bit further (if you backport 8d12866), and libcxx 17 should also still roughly work with clang 13. In any case, both versions are just a simple change in conda_build_config.yaml (+ a rerender) away.

saraedum added a commit to saraedum/clangdev-feedstock that referenced this pull request Aug 23, 2024
since
conda-forge/conda-forge-pinning-feedstock@408e182
forces a more modern libcxx on macOS, pinning here to libcxx breaks
downstream packages such as cppyy, see conda-forge/cppyy-cling-feedstock#62 (comment)

As indicated in
conda-forge#300 (comment)
there should be no problem using libcxx 17 here as well.
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.

3 participants