pentoo / pentoo-overlay

Gentoo overlay for security tools as well as the heart of the Pentoo Livecd
323 stars 92 forks source link

sys-fs/cramfsswap-1.4.2 calls cc directly #1260

Open asarubbo opened 2 years ago

asarubbo commented 2 years ago

https://blogs.gentoo.org/ago/2020/07/04/gentoo-tinderbox/

Issue: sys-fs/cramfsswap-1.4.2 calls cc directly. Discovered on: amd64 (internal ref: pentoo_tinderbox)

NOTE: This machine uses lto with CFLAGS=-flto -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing

Here is a bit of explanation:

-Werror=lto-type-mismatch: User to find possible runtime issues in packages. It likely means the package is unsafe to build & use with LTO. For projects using the same identifier but with different types across different files, they must be fixed to be consistent across the codebase.

-Werror=odr: Used to find possible runtime issues in packages. These bugs are a problem anyway but may be even worse when combined with LTO. C++ code must comply with the One Definition Rule (ODR) - see https://en.cppreference.com/w/cpp/language/definition#One_Definition_Rule.

-Werror=strict-aliasing: Used to find possible runtime issues in packages. These bugs are a problem anyway but may be even worse when combined with LTO.

Workarounds:

See also: https://marc.info/?l=gentoo-dev&m=165639574126280&w=2 As per QA policy, toolchain tools must not be called directly because they can cause issue in cross-compiling and because is not possible use a different CC implementation (like clang). To reproduce, please use sys-devel/gcc-config[-native-symlinks], sys-devel/binutils-config[-native-symlinks].

At the time of writing, github-cli does not support attachments. I'm using gists but they can be deleted at a certain point. If you want to save them, please create attachments on your own.

build log: https://gist.github.com/b143c48557d1b6fc6d12422ac93522b0 Context of error(s): https://gist.github.com/d4c9b605aa338c0b4e96af7d6ddfd3cb

alsotoes commented 2 years ago

Hi @asarubbo , this issue is related to the cramfsswap project itself as definitions like this exist on Makefiles from the beginning or a patch can introduce that line(s), I'll check with @ZeroChaos- but I believe it's out of the pentoo project scope.

Cheers.

ZeroChaos- commented 2 years ago

Hi, this is my bug tracker, please let me choose what is out of scope. Helping upstream make a better product for everyone is in scope.

alsotoes commented 2 years ago

you are right, my bad, I'll start reaching the cramfsswap community, to see how we can help to fix this.

ZeroChaos- commented 2 years ago

Most of these are simple enough to just open a PR. I would try that first if possible.