xen 3.0 Devel does not compile with PIE and SSP enabled GCC. This is a know problem with xen 2.0, just have a look at the xen-2.0.7 ebuild. Reproducible: Always Steps to Reproduce: 1.echo "app-emulation/xen" >> /etc/portage/package.keywords 2.emerge xen 3. Actual Results: gcc -nostdinc -fno-builtin -fno-common -fno-strict-aliasing -iwithprefix include -Wall -Werror -Wno-pointer-arith -pipe -I/var/tmp/portage/xen-3.0.0_pre20051007/work/xen-unstable-20051007/xen/include -I/var/tmp/portage/xen-3.0.0_pre20051007/work/xen-unstable-20051007/xen/include/asm-x86/mach-generic -I/var/tmp/portage/xen-3.0.0_pre20051007/work/xen-unstable-20051007/xen/include/asm-x86/mach-default -O3 -fomit-frame-pointer -msoft-float -m32 -march=i686 -DNDEBUG -DVERBOSE -c acm_ops.c -o acm_ops.oIn file included from acm_ops.c:28:/var/tmp/portage/xen-3.0.0_pre20051007/work/xen-unstable-20051007/xen/include/asm/shadow.h: In function `update_hl2e':/var/tmp/portage/xen-3.0.0_pre20051007/work/xen-unstable-20051007/xen/include/asm/mm.h:206: error: can't find a register in class `BREG' while reloading `asm'make[1]: *** [acm_ops.o] Error 1make[1]: Leaving directory `/var/tmp/portage/xen-3.0.0_pre20051007/work/xen-unstable-20051007/xen/common'make: *** [/var/tmp/portage/xen-3.0.0_pre20051007/work/xen-unstable-20051007/xen/xen] Error 2make: Leaving directory `/var/tmp/portage/xen-3.0.0_pre20051007/work/xen-unstable-20051007/xen'!!! ERROR: app-emulation/xen-3.0.0_pre20051007 failed.!!! Function src_compile, Line 40, Exitcode 2!!! compiling xen failed Expected Results: working ebuild ;) Adding src_unpack() { unpack ${A} # hardened flags echo "CFLAGS += -nopie -fno-stack-protector -fno-stack-protector-all" \ >> ${S}/xen/arch/x86/Rules.mk } to xen-3.0.0_pre20051007.ebuild fixes the problem. the src_unpack part was taken from xen-2.0.7.ebuild. maybe there could be a note about the fact that PIE and SSP will be disabled for this ebuild while emerging? :)
Oops, the clags were there before.. re-added.