Dear all,
Just a heads-up that Folly and packages built against it are mostly*
switched to build using Clang for the time being, when compiled on
Fedora 36 and above.
* the exception is watchman, which needs some work to get the latest
version to build because upstream started porting some functionality
to Rust, and wdt, which was archived externally, and now unarchived
so we need to sort through half a year's worth of internal changes
Internally, Meta uses Clang, so Fedora's GCC-built packages have been
useful for surfacing GCC-specific issues, and we still plan to switch
back to GCC in a future release once issues compiling it with GCC 11 and
12 are resolved.
(GCC 11 issue:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=104008 ;
GCC 12 issue will be filed soon now that I've managed to rebuild the
entire stack)
F37:
https://bodhi.fedoraproject.org/updates/FEDORA-2022-737d681400
F36:
https://bodhi.fedoraproject.org/updates/FEDORA-2022-5852540ea0
The specs of the packages switched to Clang can be used to easily
rebuild with GCC, per the packaging guidelines, using `--without
toolchain_clang`, and I plan on doing this to sort out issues.
As a bonus, Folly's test suite which we have had to disable when
building with GCC builds and runs fine with Clang on x86_64, and we're
using this opportunity to start fixing architecture-specific assumptions
causing test compile and runtime failures on non-Intel and non-64-bit architectures.
We've also onboarded Folly and fb303 in PackIt:
-
https://github.com/facebook/folly/blob/main/.packit.yaml
-
https://github.com/facebook/fb303/blob/main/.packit.yaml
so every tagged release will trigger CI and we get faster notice of any
regression, esp for non-x86_64 which we don't run in-house.
If there's any package I miss that also needs to be rebuilt, please let
me know, and if the switch triggers some issue, let me know too.
Thanks,
--
Michel Alexandre Salim
identities:
https://keyoxide.org/5dce2e7e9c3b1cffd335c1d78b229d2f7ccc04f2