On 10.11.2013 08:35, Andrey Borzenkov wrote: > В Sun, 10 Nov 2013 09:39:06 +0400 > Andrey Borzenkov <arvidj...@gmail.com> пишет: > >> В Sat, 9 Nov 2013 23:09:35 -0600 >> Glenn Washburn <developm...@efficientek.com> пишет: >> >>> On Sat, 09 Nov 2013 12:37:08 +0100 >>> Vladimir 'φ-coder/phcoder' Serbinenko <phco...@gmail.com> wrote: >>> >>>> On 09.11.2013 05:11, Andrey Borzenkov wrote: >>>>> В Fri, 8 Nov 2013 14:42:43 -0600 >>>>> Glenn Washburn <developm...@efficientek.com> пишет: >>>>> >>>>>> On Fri, 08 Nov 2013 19:54:43 +0100 >>>>>> Vladimir 'φ-coder/phcoder' Serbinenko <phco...@gmail.com> wrote: >>>>>> >>>>>>> On 08.11.2013 19:42, Glenn Washburn wrote: >>>>>>>> Now, I'm getting this error while building. Bug in the awk >>>>>>>> script? >>>>>>>> >>>>>>>> cat syminfo.lst | sort | gawk >>>>>>>> -f ./grub.git/grub-core/genmoddep.awk >>>>>>>>> moddep.lst || (rm -f moddep.lst; exit 1) __stack_chk_fail in >>>>>>>>> regexp is >>>>>>>> not defined >>>>>>>> >>>>>>> What compiler do you use and which additional options did you >>>>>>> pass to it? It inserted this function call. We need either to >>>>>>> provide this function or inhibit compiler from emiting such calls. >>>>>> >>>>>> I'm using gcc 4.7 on Ubuntu from the ubuntu-toolchain-r/test ppa. >>>>>> I do see a reference to __stack_chk_fail at >>>>>> grub-core/efiemu/runtime/efiemu.c:192. It doesn't look like that >>>>>> file is generated. Perhaps that function was accidentally added >>>>>> to that file? >>>>> >>>>> It comes from using -fstack-protector GCC option. But configure >>>>> should have added -fno-stack-protector in this case. >>>>> >>>>> Could you check defaults using >>>>> >>>>> /path/to/your/gcc -Q --help=common >>>>> >>>>> whether it is active by default? Also whether -fno-stack-protector >>>>> was used during compilation? >>>>> >>>> You're right. >>>> @Glenn: can you tell us exact version of GRUB (e.g. git commit) and >>>> attach config.log? >>> >>> The commit for these logs is 9612ebc00ef5f186e9084b60ceeb1606d34f1d23. >>> >>> It looks like stack protector is disabled in gcc and I don't believe >>> that -fno-stack-protector is being used. >>> >> >> Check for -fstack-protector is broken (always fails). > > The problem is this commit: > > commit 24f4e57c4684471da088c504dec0380886eece0c > Author: Vladimir Serbinenko <phco...@gmail.com> > Date: Thu Nov 7 03:17:37 2013 +0100 > > * configure.ac: Prevent cflags leaking to subsequent tests by always > resetting cflags to target_cflags in target tests. > > It removed restoring of CFLAGS causing leakage of temporary CFLAGS into > subsequent tests that do not explicitly reset CFLAGS. This is also broke > efiemu tests: > > efiemu runtime: No (cannot compile with -m64 -mcmodel=large -mno-red-zone > -nostdlib) > > And reason why all tests fail > > gcc ... -march=i386 -m32 -mrtd -mregparm=3 -falign-jumps=1 > -falign-loops=1 -falign-functions=1 -freg-struct-return -mno-mmx -mno-sse > -mno-sse2 -mno-3dnow -fno-dwarf2-cfi-asm -fno-asynchronous-unwind-tables -m64 > -mcmodel=large -mno-red-zone -nostdlib -Wall -W '-I$(top_srcdir)/include' > '-I$(top_builddir)/include' -DGRUB_MACHINE_PCBIOS=1 -DGRUB_MACHINE=I386_PC > -DGRUB_TARGET_CPU_I386=1 conftest.c -S -fstack-protector -o conftest.s > conftest.c:1:0: error: CPU you selected does not support x86-64 instruction > set > conftest.c:1:0: error: CPU you selected does not support x86-64 instruction > set > conftest.c:1:0: warning: -mregparm is ignored in 64-bit mode [enabled by > default] > > CFLAGS need to be preserved and restored around all compiler flag tests; or > all tests need to explicitly set them. > Fixed, thanks for spotting those tests. > > > > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > https://lists.gnu.org/mailman/listinfo/grub-devel >
signature.asc
Description: OpenPGP digital signature
_______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel