Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#43224 - [hardening-wrapper] Incompatible with ccache
Attached to Project:
Community Packages
Opened by Evangelos Foutras (foutrelis) - Thursday, 25 December 2014, 16:35 GMT
Last edited by Daniel Micay (thestinger) - Thursday, 25 December 2014, 22:44 GMT
Opened by Evangelos Foutras (foutrelis) - Thursday, 25 December 2014, 16:35 GMT
Last edited by Daniel Micay (thestinger) - Thursday, 25 December 2014, 22:44 GMT
|
DetailsDescription:
The issue occurs when both /usr/lib/hardening-wrapper/bin and /usr/lib/ccache/bin appear before /usr/bin in $PATH. (Which is the usual case with the default profile.d/hardening-wrapper.sh and ccache enabled in BUILDENV in makepkg.conf.) 'strace -e execve cc' shows that hardening-wrapper and ccache keep calling each other: ============================== execve("/usr/lib/ccache/bin/cc", ["cc"], [/* 48 vars */]) = 0 execve("/usr/lib/hardening-wrapper/bin/cc", ["/usr/lib/hardening-wrapper/bin/c"...], [/* 49 vars */]) = 0 execve("/usr/lib/ccache/bin/cc", ["/usr/lib/ccache/bin/cc", "-B/usr/lib/hardening-wrapper/bin", "-fPIE", "-pie", "-fstack-protector-strong"], [/* 47 vars */]) = 0 execve("/usr/lib/hardening-wrapper/bin/cc", ["/usr/lib/hardening-wrapper/bin/c"..., "-B/usr/lib/hardening-wrapper/bin", "-fPIE", "-pie", "-fstack-protector-strong"], [/* 47 vars */]) = 0 (...) ============================== Additional info: * package version(s): hardening-wrapper 6-1 |
This task depends upon
It will now be compatible with wrappers preceding it in PATH like this case but wrappers succeeding it would need to perform the same workaround. In practice that won't be a problem because it ends up prepending itself to PATH before anything else and it's the fault of the other wrappers anyway :).