AcademySoftwareFoundation / aswf-docker

Common container configuration
Apache License 2.0
145 stars 35 forks source link

Create new ci-openvdb and ci-osl Clang variants #77

Closed danrbailey closed 3 years ago

danrbailey commented 3 years ago

The OpenVDB and OSL projects would like containers with different versions of LLVM/Clang installed than the default.

ci-openvdb would like LLVM 6 -> 10 and ci-osl would like LLVM 7 -> 10.

The pre-compiled binaries published by LLVM have GLIBCXX_USE_CXX11_ABI=1 which make them incompatible with other dependencies in the ASWF docker containers.

@aloysbaillet proposes the following for OpenVDB:

aswf/ci-openvdb:2018.clang6 aswf/ci-openvdb:2018.clang7 aswf/ci-openvdb:2018.clang8 aswf/ci-openvdb:2018.clang9 aswf/ci-openvdb:2019.clang6 aswf/ci-openvdb:2019.clang7 aswf/ci-openvdb:2019.clang8 aswf/ci-openvdb:2019.clang9

(@lgritz @Idclip)

aloysbaillet commented 3 years ago

Thanks @danrbailey and @lgritz , would you need every single VFX year for the dependencies, or can we elect 2019 and 2021 as a base for the matrix explosion? To simplify, if that's OK with you, I think the complete set of images could be the following:

aswf/ci-common:1.clang6
aswf/ci-common:1.clang7 (equivalent to aswf/ci-common:1)
aswf/ci-common:1.clang8
aswf/ci-common:1.clang9
aswf/ci-common:2.clang10 (equivalent to aswf/ci-common:2)

which would serve as bases for these:

aswf/ci-openvdb:2019.clang6
aswf/ci-openvdb:2019.clang7 (equivalent to aswf/ci-openvdb:2019 )
aswf/ci-openvdb:2019.clang8
aswf/ci-openvdb:2019.clang9
aswf/ci-openvdb:2020.clang10 (equivalent to aswf/ci-openvdb:2020 )

aswf/ci-osl:2019.clang7 (equivalent to aswf/ci-osl:2019 )
aswf/ci-osl:2019.clang8
aswf/ci-osl:2019.clang9
aswf/ci-osl:2020.clang10 (equivalent to aswf/ci-osl:2020 )
lgritz commented 3 years ago

I think something like that would be fine. As long as all the releases are available somewhere, roughly in the year that they were introduced or in common use, we'll be ok.

danrbailey commented 3 years ago

Yes, I think that would be fine for us too, we don't need every VFX year.

aloysbaillet commented 3 years ago

Thanks, I've started looking at how to make this happen, stay tuned.

Idclip commented 3 years ago

Linking PR https://github.com/AcademySoftwareFoundation/aswf-docker/pull/78 here. It would be great if we can bump the clang7 container to use 7.1.0 (https://github.com/AcademySoftwareFoundation/aswf-docker/pull/78#issuecomment-707061127).

Also, were you planning to add vfxall images with these clang variants? Thanks

aloysbaillet commented 3 years ago

I've built the following image with clang7.1: aswftesting/ci-openvdb:2019-clang7.6 (the last ".6" is optional). If it works well I'll put another PR out for the 7.0.1->7.1.0 upgrade!

Idclip commented 3 years ago

Looks like this passed!

https://github.com/Idclip/openvdb/runs/1258857215?check_suite_focus=true and on the aswftesting/ci-openvdb:2019 package too: https://github.com/Idclip/openvdb/runs/1258857186?check_suite_focus=true

Thanks a lot @aloysbaillet :)