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

cos7 CDTs and new compilers #1085

Closed
12 of 13 tasks
beckermr opened this issue Jun 16, 2020 · 19 comments
Closed
12 of 13 tasks

cos7 CDTs and new compilers #1085

beckermr opened this issue Jun 16, 2020 · 19 comments

Comments

@beckermr
Copy link
Member

beckermr commented Jun 16, 2020

As part of our effort to add support for cos7 to linux-64, we'd like to do some refactoring of the structure of our CDTs. We (@isuruf and myself) are looking for community help in this work.

To do:

  1. make sure old CDTs are mutually exclusive with the new ones
  1. build CDTS
  • setup one-off CDT builds on conda-forge (ENH CI setup and an example cdt-builds#2)
  • build all of the old-style CDTs
  • build all of the new-style ones too
  • make all CDTs use no_hoist: true in the source sections
  • new-style CDTs should use the new conda sysroot (i.e., {{ arch }}-conda-linux-gnu) sysroot
  • new-style CDTs should depend on the correct version of the sysroot package (i.e., cos6 depends on 2.12 and cos7 depends on 2.17)
  • old-style CDTs need to have the proper run_constrained
  • see https://hackmd.io/T5q0GPa1QfKfQ6irNWAe5Q?edit for notes from the CDT discussion
  1. move to only conda-forge CDTs
  1. turn on new compilers

cc @isuruf @jakirkham @kkraus14 @nehaljwani @mingwandroid @jjhelmus

xref: #900
closes conda-forge/ctng-compilers-feedstock#28

@beckermr
Copy link
Member Author

cc @brianv0 too

@kkraus14
Copy link
Contributor

cc @mike-wendt

@mingwandroid
Copy link

I need to rebuild all the COS6 CDTs (I did this a while back, those are on anaconda.org/rdonnelly) due to a bug (missing feature kinda really) in the construction of the old ones (to do with conda-build not having any way to be told not to 'hoist' the top level dir from archives it unpacks).

This is fixed now. Please make sure your CDT meta.yamls have:

source:
  - url: http://mirror.centos.org/centos/6.10/os/x86_64/Packages/mesa-libEGL-11.0.7-4.el6.x86_64.rpm
    sha256: 1b5638595636d26590e1a2140c9d64a452b63d985a507197206d0e85b7796753
    no_hoist: true

@beckermr
Copy link
Member Author

thanks @mingwandroid!

@beckermr
Copy link
Member Author

Hi all. We need a plan to break this work up and get it done. Can you all join the next core meeting? We’ll have an extra one next week at the usual time.

@beckermr
Copy link
Member Author

I've made a few PRs with a pretty hacky script.

conda-forge/staged-recipes#12014
conda-forge/staged-recipes#12015
conda-forge/staged-recipes#12016

I'd be great if you all can look them over!

@jakirkham
Copy link
Member

Those all appear to be closed. Is that expected or am I looking in the wrong place?

@beckermr
Copy link
Member Author

I made some improvements and so closed them. Sorry!

The recipe for zip 3 on x86_64 was just merged. You can check that one out.

@isuruf
Copy link
Member

isuruf commented Jun 26, 2020

Should we be moving everything from defaults or just ones that we actually use in conda-forge? I don't think it makes sense to move everything and increase the maintenance burden.

@jakirkham
Copy link
Member

Either way seems fine to me. The maintenance burden here is pretty low. These are typically built once and that's it.

@jakirkham
Copy link
Member

So what other CDTs do we still need @beckermr? Do you also have a link to the script somewhere?

@beckermr
Copy link
Member Author

I will push the script later. There are ~250 cdts in defaults. Idk which ones we use

@beckermr
Copy link
Member Author

Here is the CDT list: https://github.com/beckermr/misc/blob/master/work/conda_forge_cdt_scripts/cdt_list.yaml

I made this list by grabbing all CDTs in the aggregate repo from anaconda.

Here is the script: https://github.com/beckermr/misc/blob/master/work/conda_forge_cdt_scripts/make_cdt_pr.py

Pls do not make PRs with it yet or push to my fork.

@jakirkham
Copy link
Member

Ok should we find some time to align next week? Either at the core meeting or separately?

@beckermr
Copy link
Member Author

I planned to do this at the core meeting

@beckermr
Copy link
Member Author

I’ve archived the zip feedstock so nobody has to maintain it.

@isuruf can you send a list of cdts we need?

@beckermr
Copy link
Member Author

@beckermr
Copy link
Member Author

draft of the CDT builds is here: conda-forge/cdt-builds#2

@beckermr
Copy link
Member Author

I have made the last PR needed here. it may or may not be merged and is not strictly needed. closing this issue!

timsnyder added a commit to sparcians/map that referenced this issue Sep 2, 2020
conda-forge changed the sysroot for the crosstool-ng built gcc in conda-forge/conda-forge.github.io#1085
They didn't rebuild clang-9 because they've moved on to using clang-10.
Until we're ready to move forward, pin the gcc to the build from the old sysroot.
timsnyder added a commit to sparcians/map that referenced this issue Sep 3, 2020
conda-forge changed the sysroot for the crosstool-ng built gcc in conda-forge/conda-forge.github.io#1085
They didn't rebuild clang-9 because they've moved on to using clang-10.
Until we're ready to move forward, pin the gcc to the build from the old sysroot.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

5 participants