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

No ctng and build GCC 10, 11 #53

Merged
merged 54 commits into from
Jul 23, 2021
Merged

No ctng and build GCC 10, 11 #53

merged 54 commits into from
Jul 23, 2021

Conversation

isuruf
Copy link
Member

@isuruf isuruf commented Jul 15, 2021

cc @beckermr, @chenghlee, @katietz, @ocefpaf

This is the first to step to remove crosstool-ng and build gcc directly using ./configure && make.

The reason to remove crosstool-ng is it's hard to work with and building cross-native or canadian cross compilers is hard. (It's possible, but hard). It's also building the sysroot and binutils redundantly because we build them elsewhere.

I've only added the bare minimum to make this work. I intend to do some more refactoring like ctng_gcc->gcc_version , but
I've hold off on that to make the review easier. (I'll also add cross-native compilers in a separate PR)

I've also added conda-forge/label/gcc_dev so that these compilers are not uploaded to main right now, so that I can play with
them for a while. When this PR is ready to be merged, I'll make a gcc-feedstock through staged-recipes.

Closes #50
Fixes #55

@isuruf isuruf requested a review from beckermr as a code owner July 15, 2021 08:29
@conda-forge-linter
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) and found some lint.

Here's what I've got...

For recipe:

  • When defining a source/url please add a sha256, sha1 or md5 checksum (sha256 preferably).

Copy link
Member

@beckermr beckermr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great work!

My main concern here is that we will get a different layout of the files between the different split packages and that will break the compilers if we mix stuff built by crosstool-ng and the gcc build.

It looks like you beefed up the tests a bit to make sure each package has the files it is supposed to have. Should we do more of that?

@isuruf
Copy link
Member Author

isuruf commented Jul 15, 2021

My main concern here is that we will get a different layout of the files between the different split packages and that will break the compilers if we mix stuff built by crosstool-ng and the gcc build.

The differences are in gcc_impl, gxx_impl, libgcc_devel, libstdcxx_devel which pin each other exactly. So I don't think mixing is possible.
We'll be bumping the gcc minor versions 9.3.0->9.4.0 when publishing these and different versions cannot be mixed anyway. (Note that the channel_target is conda-forge/label/gcc_dev)

@beckermr
Copy link
Member

Ahhh great! Then as long as the compilers work, we should be good to go!

@conda-forge-linter
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.

recipe/meta.yaml Outdated Show resolved Hide resolved
Copy link
Member

@beckermr beckermr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we still want to keep the -ng in the package names? Maybe we remove once a new gcc feedstock is created?

@isuruf
Copy link
Member Author

isuruf commented Jul 18, 2021

I don't mind keeping it as it might be disruptive to remove. Besides I don't think -ng is about crosstool-ng, but just new generation.

@isuruf
Copy link
Member Author

isuruf commented Jul 22, 2021

Let me know if you think this is good to merge and I'll fix some things up and merge.

@beckermr
Copy link
Member

LGTM!

@isuruf isuruf changed the title No ctng No ctng and build GCC 10, 11 Jul 23, 2021
@isuruf isuruf merged commit 30f3cd4 into conda-forge:master Jul 23, 2021
@isuruf isuruf deleted the no-ctng branch January 30, 2022 20:56
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.

libstdcxx-ng needs to be updated (since it's breaking appimages that are being built using conda)
3 participants