With USE flag "hardened" set and gcc-3.3.3-r1 installed, sys-boot/lilo-22.5.8-r1 does not compile. Patch to add knowledge of USE flag "hardened" is added. Reproducible: Always Steps to Reproduce: 1. set USE flag "hardened" in /etc/make.conf 2. ebuild /usr/portage/sys-devel/gcc/gcc-3.3.3-r1.ebuild merge 3. ACCEPT_KEYWORDS="~x86" /usr/bin/emerge =sys-boot/lilo-22.5.8-r1 Actual Results: Compile fails with error like: error: can't find a register in class `BREG' while reloading `asm' Expected Results: Compiled successfully.
Created attachment 26550 [details, diff] patch to add "hardened" to lilo-22.5.8-r1.ebuild This proposed patch adds knowledge of the USE flag "hardened" to the file /usr/portage/sys-boot/lilo/lilo-22.5.8-r1.ebuild
I have learnt that USE flag "hardened" is intended to be internal to the gcc ebuild. Instead USE flags "pic", "pie" and "ssp" should be used where appropriate. I will change the title of this bug report for accuracy.
can you try building lilo with CFLAGS="-static" just a question
recent versions honour SSP and PIE building