Openembedded Core Discussions
 help / color / mirror / Atom feed
* [v2 1/4] eglibc: fix builds on fedora 17 alpha
  2012-04-14  8:59 [v2 0/4] grub & eglibc fixes for fedora 17 alpha nitin.a.kamble
@ 2012-04-14  8:59 ` nitin.a.kamble
  2012-04-14 10:14   ` Richard Purdie
  2012-04-14  8:59 ` [v2 2/4] grub-1.99: use gcc-cross for building the target binaries nitin.a.kamble
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 8+ messages in thread
From: nitin.a.kamble @ 2012-04-14  8:59 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

Generally distros keep perl at /sur/bin/perl
Fedora 17 alpha also has /bin/perl

this causes eglibc build on such distros to put perl interpreter path in
the perl scripts as /bin/perl

But we set perl location for target as /usr/bin/perl

This mismatch of perl path causes failure of rootfs image creation
like this:

| error: Failed dependencies:
|       /bin/perl is needed by eglibc-utils-2.13-r23+svnr15508.i586
NOTE: package core-image-sato-1.0-r0: task do_rootfs: Failed
ERROR: Task 8
(/home/nitin/prj/poky.git/meta/recipes-sato/images/core-image-sato.bb,
do_rootfs) failed with exit code '1'

This Fixes bug : [YOCTO #2286]

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 meta/recipes-core/eglibc/eglibc-package.inc |    5 +++++
 meta/recipes-core/eglibc/eglibc_2.13.bb     |    2 +-
 meta/recipes-core/eglibc/eglibc_2.15.bb     |    2 +-
 3 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/meta/recipes-core/eglibc/eglibc-package.inc b/meta/recipes-core/eglibc/eglibc-package.inc
index 9e45fc1..d13cb35 100644
--- a/meta/recipes-core/eglibc/eglibc-package.inc
+++ b/meta/recipes-core/eglibc/eglibc-package.inc
@@ -76,6 +76,11 @@ do_install_append () {
 	rm -f ${D}${sysconfdir}/localtime
 
 	oe_multilib_header bits/syscall.h
+	
+	if [ -f ${D}${bindir}/mtrace ]
+	then
+		sed -e "s# /bin/perl# ${bindir}/perl#" -i ${D}${bindir}/mtrace 
+	fi
 }
 
 do_install_locale () {
diff --git a/meta/recipes-core/eglibc/eglibc_2.13.bb b/meta/recipes-core/eglibc/eglibc_2.13.bb
index ec06261..d8a41dc 100644
--- a/meta/recipes-core/eglibc/eglibc_2.13.bb
+++ b/meta/recipes-core/eglibc/eglibc_2.13.bb
@@ -3,7 +3,7 @@ require eglibc.inc
 SRCREV = "15508"
 
 DEPENDS += "gperf-native"
-PR = "r25"
+PR = "r26"
 PR_append = "+svnr${SRCPV}"
 
 EGLIBC_BRANCH="eglibc-2_13"
diff --git a/meta/recipes-core/eglibc/eglibc_2.15.bb b/meta/recipes-core/eglibc/eglibc_2.15.bb
index caed9e9..713efc3 100644
--- a/meta/recipes-core/eglibc/eglibc_2.15.bb
+++ b/meta/recipes-core/eglibc/eglibc_2.15.bb
@@ -3,7 +3,7 @@ require eglibc.inc
 SRCREV = "17386"
 
 DEPENDS += "gperf-native"
-PR = "r5"
+PR = "r6"
 PR_append = "+svnr${SRCPV}"
 
 EGLIBC_BRANCH="eglibc-2_15"
-- 
1.7.7




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [v2 0/4] grub & eglibc fixes for fedora 17 alpha
@ 2012-04-14  8:59 nitin.a.kamble
  2012-04-14  8:59 ` [v2 1/4] eglibc: fix builds on " nitin.a.kamble
                   ` (4 more replies)
  0 siblings, 5 replies; 8+ messages in thread
From: nitin.a.kamble @ 2012-04-14  8:59 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

These are various grub fixes for correctly building grub recipes for various targets.
These are tested for emenlow, sugerbay, qemux86, qemux86-64 machines

The eglibc commits is thes same as in the v1 pull request.

Nitin

The following changes since commit ee71422b9893f9f77173fb2612d1ffbbc68643c3:

  linux-yocto: allow .cfg, .scc, .patch and defconfigs to be processed in order (2012-04-13 22:44:46 +0100)

are available in the git repository at:
  git://git.pokylinux.org/poky-contrib nitin/grub3
  http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=nitin/grub3

Nitin A Kamble (4):
  eglibc: fix builds on fedora 17 alpha
  grub-1.99: use gcc-cross for building the target binaries
  grub-efi-native, grub: fix build with gcc 4.7
  grub-1.99: fix configure error

 .../grub-1.99-fix-enable_execute_stack-check.patch |   27 ++++
 .../grub/files/grub-1.99-fpmath-sse-387-fix.patch  |   37 +++++
 ...rub-1.99-gcc-4.7.0-strict-aliasing-errors.patch |  147 ++++++++++++++++++++
 ...b-1.99-gcc-4.7.0-uninitialized-var-errors.patch |   41 ++++++
 .../grub/files/grub-1.99-gcc-4.7.0.patch           |   34 +++++
 meta/recipes-bsp/grub/grub-efi-native_1.99.bb      |   10 +-
 meta/recipes-bsp/grub/grub_1.99.bb                 |   10 +-
 meta/recipes-core/eglibc/eglibc-package.inc        |    5 +
 meta/recipes-core/eglibc/eglibc_2.13.bb            |    2 +-
 meta/recipes-core/eglibc/eglibc_2.15.bb            |    2 +-
 10 files changed, 309 insertions(+), 6 deletions(-)
 create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-fix-enable_execute_stack-check.patch
 create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-fpmath-sse-387-fix.patch
 create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-strict-aliasing-errors.patch
 create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-uninitialized-var-errors.patch
 create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0.patch

-- 
1.7.7




^ permalink raw reply	[flat|nested] 8+ messages in thread

* [v2 2/4] grub-1.99: use gcc-cross for building the target binaries
  2012-04-14  8:59 [v2 0/4] grub & eglibc fixes for fedora 17 alpha nitin.a.kamble
  2012-04-14  8:59 ` [v2 1/4] eglibc: fix builds on " nitin.a.kamble
@ 2012-04-14  8:59 ` nitin.a.kamble
  2012-04-14  8:59 ` [v2 3/4] grub-efi-native, grub: fix build with gcc 4.7 nitin.a.kamble
                   ` (2 subsequent siblings)
  4 siblings, 0 replies; 8+ messages in thread
From: nitin.a.kamble @ 2012-04-14  8:59 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

It was using distro gcc to build binaries for target. This got detected
on fedora 17 alpha, on which it hit an gcc-4.7 issue.

This Fixes Bug: [Yocto #2291]

More information in the patch header

Thanks to Saul Wold for suggesting to remove the --target parameter from
EXTRA_OECONF var.

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../grub/files/grub-1.99-fpmath-sse-387-fix.patch  |   37 ++++++++++++++++++++
 meta/recipes-bsp/grub/grub-efi-native_1.99.bb      |    5 ++-
 meta/recipes-bsp/grub/grub_1.99.bb                 |    5 ++-
 3 files changed, 43 insertions(+), 4 deletions(-)
 create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-fpmath-sse-387-fix.patch

diff --git a/meta/recipes-bsp/grub/files/grub-1.99-fpmath-sse-387-fix.patch b/meta/recipes-bsp/grub/files/grub-1.99-fpmath-sse-387-fix.patch
new file mode 100644
index 0000000..bea5944
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/grub-1.99-fpmath-sse-387-fix.patch
@@ -0,0 +1,37 @@
+Upstream-Status: pending
+
+This patch fixes this configure issue for grub when -mfpmath=sse is in the gcc parameters.
+
+configure:20574: i586-poky-linux-gcc  -m32    -march=core2 -msse3 -mtune=generic -mfpmath=sse --sysroot=/usr/local/dev/yocto/grubtest2/build/tmp/sysroots/emenlow -o conftest -O2 -pipe -g -feliminate-unused-debug-types -Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes -Wundef -Wstrict-prototypes -g -falign-jumps=1 -falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -mno-sse2 -mno-3dnow -fno-dwarf2-cfi-asm -m32 -fno-stack-protector -mno-stack-arg-probe -Werror -nostdlib -Wl,--defsym,___main=0x8100  -Wall -W -I$(top_srcdir)/include -I$(top_builddir)/include  -DGRUB_MACHINE_PCBIOS=1 -DGRUB_MACHINE=I386_PC -Wl,-O1 -Wl,--hash-style=gnu -Wl,--as-needed conftest.c  >&5
+conftest.c:1:0: error: SSE instruction set disabled, using 387 arithmetics [-Werror]
+cc1: all warnings being treated as errors
+
+Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
+2012/04/13
+
+Index: grub-1.99/configure.ac
+===================================================================
+--- grub-1.99.orig/configure.ac
++++ grub-1.99/configure.ac
+@@ -378,7 +378,7 @@ if test "x$target_cpu" = xi386; then
+ 
+   # Some toolchains enable these features by default, but they need
+   # registers that aren't set up properly in GRUB.
+-  TARGET_CFLAGS="$TARGET_CFLAGS -mno-mmx -mno-sse -mno-sse2 -mno-3dnow"
++  TARGET_CFLAGS="$TARGET_CFLAGS -mno-mmx -mno-sse -mno-sse2 -mno-3dnow -mfpmath=387"
+ fi
+ 
+ # By default, GCC 4.4 generates .eh_frame sections containing unwind
+Index: grub-1.99/configure
+===================================================================
+--- grub-1.99.orig/configure
++++ grub-1.99/configure
+@@ -19991,7 +19991,7 @@ $as_echo "$grub_cv_cc_falign_loop" >&6;
+ 
+   # Some toolchains enable these features by default, but they need
+   # registers that aren't set up properly in GRUB.
+-  TARGET_CFLAGS="$TARGET_CFLAGS -mno-mmx -mno-sse -mno-sse2 -mno-3dnow"
++  TARGET_CFLAGS="$TARGET_CFLAGS -mno-mmx -mno-sse -mno-sse2 -mno-3dnow -mfpmath=387"
+ fi
+ 
+ # By default, GCC 4.4 generates .eh_frame sections containing unwind
diff --git a/meta/recipes-bsp/grub/grub-efi-native_1.99.bb b/meta/recipes-bsp/grub/grub-efi-native_1.99.bb
index 93e9290..4f8a4bc 100644
--- a/meta/recipes-bsp/grub/grub-efi-native_1.99.bb
+++ b/meta/recipes-bsp/grub/grub-efi-native_1.99.bb
@@ -16,14 +16,15 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 # FIXME: We should be able to optionally drop freetype as a dependency
 DEPENDS = "help2man-native autogen-native"
 RDEPENDS_${PN} = "diffutils freetype"
-PR = "r6"
+PR = "r7"
 
 # Native packages do not normally rebuild when the target changes.
 # Ensure this is built once per HOST-TARGET pair.
 PN := "grub-efi-${TRANSLATED_TARGET_ARCH}-native"
 
 SRC_URI = "ftp://ftp.gnu.org/gnu/grub/grub-${PV}.tar.gz \
-	file://grub-1.99_fix_for_automake_1.11.2.patch"
+	file://grub-1.99_fix_for_automake_1.11.2.patch \
+	file://grub-1.99-fpmath-sse-387-fix.patch"
 
 SRC_URI[md5sum] = "ca9f2a2d571b57fc5c53212d1d22e2b5"
 SRC_URI[sha256sum] = "b91f420f2c51f6155e088e34ff99bea09cc1fb89585cf7c0179644e57abd28ff"
diff --git a/meta/recipes-bsp/grub/grub_1.99.bb b/meta/recipes-bsp/grub/grub_1.99.bb
index ac66e83..e61147f 100644
--- a/meta/recipes-bsp/grub/grub_1.99.bb
+++ b/meta/recipes-bsp/grub/grub_1.99.bb
@@ -12,10 +12,11 @@ LICENSE = "GPLv3"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
 RDEPENDS_${PN} = "diffutils freetype"
-PR = "r3"
+PR = "r5"
 
 SRC_URI = "ftp://ftp.gnu.org/gnu/grub/grub-${PV}.tar.gz \
           file://grub-install.in.patch \
+          file://grub-1.99-fpmath-sse-387-fix.patch \
           file://40_custom"
 
 SRC_URI[md5sum] = "ca9f2a2d571b57fc5c53212d1d22e2b5"
@@ -26,7 +27,7 @@ COMPATIBLE_HOST = '(x86_64.*|i.86.*)-(linux|freebsd.*)'
 inherit autotools
 inherit gettext
 
-EXTRA_OECONF = "--with-platform=pc --disable-grub-mkfont --target=${TARGET_ARCH} --program-prefix="""
+EXTRA_OECONF = "--with-platform=pc --disable-grub-mkfont --program-prefix="""
 
 do_configure() {
     oe_runconf
-- 
1.7.7




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [v2 3/4] grub-efi-native, grub: fix build with gcc 4.7
  2012-04-14  8:59 [v2 0/4] grub & eglibc fixes for fedora 17 alpha nitin.a.kamble
  2012-04-14  8:59 ` [v2 1/4] eglibc: fix builds on " nitin.a.kamble
  2012-04-14  8:59 ` [v2 2/4] grub-1.99: use gcc-cross for building the target binaries nitin.a.kamble
@ 2012-04-14  8:59 ` nitin.a.kamble
  2012-04-14  8:59 ` [v2 4/4] grub-1.99: fix configure error nitin.a.kamble
  2012-04-16 15:36 ` [v2 0/4] grub & eglibc fixes for fedora 17 alpha Saul Wold
  4 siblings, 0 replies; 8+ messages in thread
From: nitin.a.kamble @ 2012-04-14  8:59 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

This fixes bug [YOCTO #2293]

These build failure caused by gcc4.7 is fixed with a backport of a
grub-1.99 patch from fedora 17 alpha plus two more new patches

| gcc -DHAVE_CONFIG_H -I. -I..  -Wall -W -I../include -I../include
-DGRUB_MACHINE_EFI=1 -DGRUB_MACHINE=I386_EFI -nostdinc -isystem
/usr/lib/gcc/x86_64-redhat-linux/4.7.0/include
-DGRUB_FILE=\"commands/efi/acpi.c\" -I. -I. -I.. -I.. -I../include
-I../include
-isystem/home/nitin/builds/build0/tmp/sysroots/x86_64-linux/usr/include
-O2 -pipe -g -feliminate-unused-debug-types -Wall -W -Wshadow
-Wpointer-arith -Wmissing-prototypes -Wundef -Wstrict-prototypes -g
-falign-jumps=1 -falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse
-mno-sse2 -mno-3dnow -fno-dwarf2-cfi-asm -m32 -fno-stack-protector
-mno-stack-arg-probe -Werror -Wno-trampolines          -ffreestanding
-isystem/home/nitin/builds/build0/tmp/sysroots/x86_64-linux/usr/include
-O2 -pipe -c -o commands/efi/acpi_module-acpi.o `test -f
'commands/efi/acpi.c' || echo './'`commands/efi/acpi.c
| gcc: error: unrecognized command line option '-melf_i386'
| make[3]: *** [trig.module] Error 1

| make[3]: Entering directory
`/home/nitin/builds/build0/tmp/work/x86_64-linux/grub-efi-i586-native-1.99-r7/grub-1.99/grub-core'
| gcc -DHAVE_CONFIG_H -I. -I..  -Wall -W -I../include -I../include
-DGRUB_MACHINE_EFI=1 -DGRUB_MACHINE=I386_EFI -nostdinc -isystem
/usr/lib/gcc/x86_64-redhat-linux/4.7.0/include
-DGRUB_FILE=\"fs/btrfs.c\" -I.
-I. -I.. -I.. -I../include -I../include
-isystem/home/nitin/builds/build0/tmp/sysroots/x86_64-linux/usr/include
-O2
-pipe -g -feliminate-unused-debug-types -Wall -W -Wshadow
-Wpointer-arith
-Wmissing-prototypes -Wundef -Wstrict-prototypes -g -falign-jumps=1
-falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -mno-sse2
-mno-3dnow
-fno-dwarf2-cfi-asm -m32 -fno-stack-protector -mno-stack-arg-probe
-Werror
-Wno-trampolines          -ffreestanding
-isystem/home/nitin/builds/build0/tmp/sysroots/x86_64-linux/usr/include
-O2
-pipe -c -o fs/btrfs_module-btrfs.o `test -f 'fs/btrfs.c' || echo
'./'`fs/btrfs.c
| fs/btrfs.c: In function 'grub_btrfs_read_logical':
| fs/btrfs.c:791:5: error: 'err' may be used uninitialized in this
function
[-Werror=maybe-uninitialized]
| fs/btrfs.c:592:18: note: 'err' was declared here
| cc1: all warnings being treated as errors
| make[3]: *** [fs/btrfs_module-btrfs.o] Error 1

| gcc -DHAVE_CONFIG_H -I. -I..  -Wall -W -I../include -I../include
-DGRUB_MACHINE_EFI=1 -DGRUB_MACHINE=I386_EFI -nostdinc -isystem
/usr/lib/gcc/x86_64-redhat-linux/4.7.0/include
-DGRUB_FILE=\"fs/zfs/zfs.c\" -I. -I. -I.. -I.. -I../include -I../include
-isystem/home/nitin/builds/build0/tmp/sysroots/x86_64-linux/usr/include
-O2 -pipe -g -feliminate-unused-debug-types -Wall -W -Wshadow
-Wpointer-arith -Wmissing-prototypes -Wundef -Wstrict-prototypes -g
-falign-jumps=1 -falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse
-mno-sse2 -mno-3dnow -fno-dwarf2-cfi-asm -m32 -fno-stack-protector
-mno-stack-arg-probe -Werror -Wno-trampolines          -ffreestanding
-isystem/home/nitin/builds/build0/tmp/sysroots/x86_64-linux/usr/include
-O2 -pipe -c -o fs/zfs/zfs_module-zfs.o `test -f 'fs/zfs/zfs.c' || echo
'./'`fs/zfs/zfs.c
| fs/zfs/zfs.c: In function 'get_filesystem_dnode':
| fs/zfs/zfs.c:1449:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:1449:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c: In function 'make_mdn':
| fs/zfs/zfs.c:1478:3: error: dereferencing type-punned pointer will
break strict-alERROR: Function failed: do_compile (see
/home/nitin/builds/build0/tmp/work/x86_64-linux/grub-efi-i586-native-1.99-r7/temp/log.do_compile.9293
for further information)
| iasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c: In function 'dnode_get_fullpath':
| fs/zfs/zfs.c:1554:3: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:1554:3: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:1571:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:1571:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c: In function 'grub_zfs_open':
| fs/zfs/zfs.c:2234:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:2234:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c: In function 'fill_fs_info':
| fs/zfs/zfs.c:2362:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:2362:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:2395:3: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:2395:3: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c: In function 'iterate_zap':
| fs/zfs/zfs.c:2420:5: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:2420:5: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c: In function 'grub_zfs_dir':
| fs/zfs/zfs.c:2483:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:2483:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:2484:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:2484:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:2502:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| fs/zfs/zfs.c:2502:7: error: dereferencing type-punned pointer will
break strict-aliasing rules [-Werror=strict-aliasing]
| cc1: all warnings being treated as errors
| make[3]: *** [fs/zfs/zfs_module-zfs.o] Error 1

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 ...rub-1.99-gcc-4.7.0-strict-aliasing-errors.patch |  147 ++++++++++++++++++++
 ...b-1.99-gcc-4.7.0-uninitialized-var-errors.patch |   41 ++++++
 .../grub/files/grub-1.99-gcc-4.7.0.patch           |   34 +++++
 meta/recipes-bsp/grub/grub-efi-native_1.99.bb      |    8 +-
 meta/recipes-bsp/grub/grub_1.99.bb                 |    5 +-
 5 files changed, 232 insertions(+), 3 deletions(-)
 create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-strict-aliasing-errors.patch
 create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-uninitialized-var-errors.patch
 create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0.patch

diff --git a/meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-strict-aliasing-errors.patch b/meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-strict-aliasing-errors.patch
new file mode 100644
index 0000000..9d81050
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-strict-aliasing-errors.patch
@@ -0,0 +1,147 @@
+Upstream-Status: Pending
+
+This patch fixes these strick-aliasing errors with gcc 4.7
+
+
+| gcc -DHAVE_CONFIG_H -I. -I..  -Wall -W -I../include -I../include  -DGRUB_MACHINE_EFI=1 -DGRUB_MACHINE=I386_EFI -nostdinc -isystem /usr/lib/gcc/x86_64-redhat-linux/4.7.0/include -DGRUB_FILE=\"fs/zfs/zfs.c\" -I. -I. -I.. -I.. -I../include -I../include    -isystem/home/nitin/builds/build0/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe -g -feliminate-unused-debug-types -Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes -Wundef -Wstrict-prototypes -g -falign-jumps=1 -falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -mno-sse2 -mno-3dnow -fno-dwarf2-cfi-asm -m32 -fno-stack-protector -mno-stack-arg-probe -Werror -Wno-trampolines          -ffreestanding  -isystem/home/nitin/builds/build0/tmp/sysroots/x86_64-linux/usr/include -O2 -pipe -c -o fs/zfs/zfs_module-zfs.o `test -f 'fs/zfs/zfs.c' || echo './'`fs/zfs/zfs.c
+| fs/zfs/zfs.c: In function 'get_filesystem_dnode':
+| fs/zfs/zfs.c:1449:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:1449:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c: In function 'make_mdn':
+| fs/zfs/zfs.c:1478:3: error: dereferencing type-punned pointer will break strict-alERROR: Function failed: do_compile (see /home/nitin/builds/build0/tmp/work/x86_64-linux/grub-efi-i586-native-1.99-r7/temp/log.do_compile.9293 for further information)
+| iasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c: In function 'dnode_get_fullpath':
+| fs/zfs/zfs.c:1554:3: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:1554:3: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:1571:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:1571:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c: In function 'grub_zfs_open':
+| fs/zfs/zfs.c:2234:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:2234:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c: In function 'fill_fs_info':
+| fs/zfs/zfs.c:2362:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:2362:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:2395:3: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:2395:3: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c: In function 'iterate_zap':
+| fs/zfs/zfs.c:2420:5: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:2420:5: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c: In function 'grub_zfs_dir':
+| fs/zfs/zfs.c:2483:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:2483:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:2484:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:2484:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:2502:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| fs/zfs/zfs.c:2502:7: error: dereferencing type-punned pointer will break strict-aliasing rules [-Werror=strict-aliasing]
+| cc1: all warnings being treated as errors
+| make[3]: *** [fs/zfs/zfs_module-zfs.o] Error 1
+
+Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
+2012/04/13
+
+Index: grub-1.99/grub-core/fs/zfs/zfs.c
+===================================================================
+--- grub-1.99.orig/grub-core/fs/zfs/zfs.c
++++ grub-1.99/grub-core/fs/zfs/zfs.c
+@@ -1446,7 +1446,8 @@ get_filesystem_dnode (dnode_end_t * mosm
+       ch = *fsname;
+       *fsname = 0;
+ 
+-      childobj = grub_zfs_to_cpu64 ((((dsl_dir_phys_t *) DN_BONUS (&mdn->dn)))->dd_child_dir_zapobj, mdn->endian);
++      dsl_dir_phys_t * tmp =  DN_BONUS (&mdn->dn);
++      childobj = grub_zfs_to_cpu64 (tmp->dd_child_dir_zapobj, mdn->endian);
+       err = dnode_get (mosmdn, childobj,
+ 		       DMU_OT_DSL_DIR_CHILD_MAP, mdn, data);
+       if (err)
+@@ -1475,7 +1476,8 @@ make_mdn (dnode_end_t * mdn, struct grub
+ 
+   grub_dprintf ("zfs", "endian = %d\n", mdn->endian);
+ 
+-  bp = &(((dsl_dataset_phys_t *) DN_BONUS (&mdn->dn))->ds_bp);
++  dsl_dataset_phys_t * tmp = DN_BONUS(&mdn->dn);
++  bp = &(tmp->ds_bp);
+   err = zio_read (bp, mdn->endian, &osp, &ospsize, data);
+   if (err)
+     return err;
+@@ -1551,7 +1553,8 @@ dnode_get_fullpath (const char *fullpath
+ 
+   grub_dprintf ("zfs", "alive\n");
+ 
+-  headobj = grub_zfs_to_cpu64 (((dsl_dir_phys_t *) DN_BONUS (&dn->dn))->dd_head_dataset_obj, dn->endian);
++  dsl_dir_phys_t * tmp1 = DN_BONUS (&dn->dn);
++  headobj = grub_zfs_to_cpu64 (tmp1->dd_head_dataset_obj, dn->endian);
+ 
+   grub_dprintf ("zfs", "endian = %d\n", mdn->endian);
+ 
+@@ -1568,7 +1571,8 @@ dnode_get_fullpath (const char *fullpath
+     {
+       grub_uint64_t snapobj;
+ 
+-      snapobj = grub_zfs_to_cpu64 (((dsl_dataset_phys_t *) DN_BONUS (&mdn->dn))->ds_snapnames_zapobj, mdn->endian);
++      dsl_dataset_phys_t * tmp2 = DN_BONUS (&mdn->dn);
++      snapobj = grub_zfs_to_cpu64 (tmp2->ds_snapnames_zapobj, mdn->endian);
+ 
+       err = dnode_get (&(data->mos), snapobj, 
+ 		       DMU_OT_DSL_DS_SNAP_MAP, mdn, data);
+@@ -2231,7 +2235,8 @@ grub_zfs_open (struct grub_file *file, c
+     }
+   else
+     {
+-      file->size = grub_zfs_to_cpu64 (((znode_phys_t *) DN_BONUS (&data->dnode.dn))->zp_size, data->dnode.endian);
++      znode_phys_t * tmp =  DN_BONUS (&data->dnode.dn);
++      file->size = grub_zfs_to_cpu64 (tmp->zp_size, data->dnode.endian);
+     }
+ 
+   file->data = data;
+@@ -2359,7 +2364,8 @@ fill_fs_info (struct grub_dirhook_info *
+   
+   if (mdn.dn.dn_type == DMU_OT_DSL_DIR)
+     {
+-      headobj = grub_zfs_to_cpu64 (((dsl_dir_phys_t *) DN_BONUS (&mdn.dn))->dd_head_dataset_obj, mdn.endian);
++      dsl_dir_phys_t * tmp1 = DN_BONUS (&mdn.dn);
++      headobj = grub_zfs_to_cpu64 (tmp1->dd_head_dataset_obj, mdn.endian);
+ 
+       err = dnode_get (&(data->mos), headobj, DMU_OT_DSL_DATASET, &mdn, data);
+       if (err)
+@@ -2392,7 +2398,8 @@ fill_fs_info (struct grub_dirhook_info *
+     }
+   
+   info->mtimeset = 1;
+-  info->mtime = grub_zfs_to_cpu64 (((znode_phys_t *) DN_BONUS (&dn.dn))->zp_mtime[0], dn.endian);
++  znode_phys_t * tmp2 = DN_BONUS (&dn.dn);
++  info->mtime = grub_zfs_to_cpu64 (tmp2->zp_mtime[0], dn.endian);
+   return;
+ }
+ 
+@@ -2417,7 +2424,8 @@ grub_zfs_dir (grub_device_t device, cons
+ 
+     dnode_get (&(data->mdn), val, 0, &dn, data);
+     info.mtimeset = 1;
+-    info.mtime = grub_zfs_to_cpu64 (((znode_phys_t *) DN_BONUS (&dn.dn))->zp_mtime[0], dn.endian);
++    znode_phys_t * tmp1 = DN_BONUS (&dn.dn);
++    info.mtime = grub_zfs_to_cpu64 (tmp1->zp_mtime[0], dn.endian);
+     info.dir = (dn.dn.dn_type == DMU_OT_DIRECTORY_CONTENTS);
+     grub_dprintf ("zfs", "type=%d, name=%s\n", 
+ 		  (int)dn.dn.dn_type, (char *)name);
+@@ -2480,8 +2488,9 @@ grub_zfs_dir (grub_device_t device, cons
+       fill_fs_info (&info, data->dnode, data);
+       hook ("@", &info);
+       
+-      childobj = grub_zfs_to_cpu64 (((dsl_dir_phys_t *) DN_BONUS (&data->dnode.dn))->dd_child_dir_zapobj, data->dnode.endian);
+-      headobj = grub_zfs_to_cpu64 (((dsl_dir_phys_t *) DN_BONUS (&data->dnode.dn))->dd_head_dataset_obj, data->dnode.endian);
++      dsl_dir_phys_t * tmp2 = DN_BONUS (&data->dnode.dn);
++      childobj = grub_zfs_to_cpu64 (tmp2->dd_child_dir_zapobj, data->dnode.endian);
++      headobj = grub_zfs_to_cpu64 (tmp2->dd_head_dataset_obj, data->dnode.endian);
+       err = dnode_get (&(data->mos), childobj,
+ 		       DMU_OT_DSL_DIR_CHILD_MAP, &dn, data);
+       if (err)
+@@ -2499,7 +2508,8 @@ grub_zfs_dir (grub_device_t device, cons
+ 	  return err;
+ 	}
+ 
+-      snapobj = grub_zfs_to_cpu64 (((dsl_dataset_phys_t *) DN_BONUS (&dn.dn))->ds_snapnames_zapobj, dn.endian);
++      dsl_dataset_phys_t * tmp3 = DN_BONUS (&dn.dn);
++      snapobj = grub_zfs_to_cpu64 (tmp3->ds_snapnames_zapobj, dn.endian);
+ 
+       err = dnode_get (&(data->mos), snapobj,
+ 		       DMU_OT_DSL_DS_SNAP_MAP, &dn, data);
diff --git a/meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-uninitialized-var-errors.patch b/meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-uninitialized-var-errors.patch
new file mode 100644
index 0000000..397d11f
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-uninitialized-var-errors.patch
@@ -0,0 +1,41 @@
+UpstreamStatus: Pending
+
+This patch quitens this error:
+
+| make[3]: Entering directory
+`/home/nitin/builds/build0/tmp/work/x86_64-linux/grub-efi-i586-native-1.99-r7/grub-1.99/grub-core'
+| gcc -DHAVE_CONFIG_H -I. -I..  -Wall -W -I../include -I../include 
+-DGRUB_MACHINE_EFI=1 -DGRUB_MACHINE=I386_EFI -nostdinc -isystem
+/usr/lib/gcc/x86_64-redhat-linux/4.7.0/include -DGRUB_FILE=\"fs/btrfs.c\" -I.
+-I. -I.. -I.. -I../include -I../include   
+-isystem/home/nitin/builds/build0/tmp/sysroots/x86_64-linux/usr/include -O2
+-pipe -g -feliminate-unused-debug-types -Wall -W -Wshadow -Wpointer-arith
+-Wmissing-prototypes -Wundef -Wstrict-prototypes -g -falign-jumps=1
+-falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -mno-sse2 -mno-3dnow
+-fno-dwarf2-cfi-asm -m32 -fno-stack-protector -mno-stack-arg-probe -Werror
+-Wno-trampolines          -ffreestanding 
+-isystem/home/nitin/builds/build0/tmp/sysroots/x86_64-linux/usr/include -O2
+-pipe -c -o fs/btrfs_module-btrfs.o `test -f 'fs/btrfs.c' || echo
+'./'`fs/btrfs.c
+| fs/btrfs.c: In function 'grub_btrfs_read_logical':
+| fs/btrfs.c:791:5: error: 'err' may be used uninitialized in this function
+[-Werror=maybe-uninitialized]
+| fs/btrfs.c:592:18: note: 'err' was declared here
+| cc1: all warnings being treated as errors
+| make[3]: *** [fs/btrfs_module-btrfs.o] Error 1
+
+Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
+2012/04/13
+Index: grub-1.99/grub-core/fs/btrfs.c
+===================================================================
+--- grub-1.99.orig/grub-core/fs/btrfs.c
++++ grub-1.99/grub-core/fs/btrfs.c
+@@ -589,7 +589,7 @@ grub_btrfs_read_logical (struct grub_btr
+       struct grub_btrfs_key *key;
+       struct grub_btrfs_chunk_item *chunk;  
+       grub_uint64_t csize;
+-      grub_err_t err; 
++      grub_err_t err = 0; 
+       struct grub_btrfs_key key_out;
+       int challoc = 0;
+       grub_device_t dev;
diff --git a/meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0.patch b/meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0.patch
new file mode 100644
index 0000000..545954a
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0.patch
@@ -0,0 +1,34 @@
+Upstream-Status: backport from fedora 
+
+2012/04/13
+Signed-Off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
+
+From b0f4ef523b69a497d69820c09bbb07484a6b09cc Mon Sep 17 00:00:00 2001
+From: Peter Jones <pjones@redhat.com>
+Date: Wed, 7 Mar 2012 09:53:50 -0500
+Subject: [PATCH] Fix gcc error that kills build.
+
+---
+ conf/Makefile.common         |    4 ++--
+ 1 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/conf/Makefile.common b/conf/Makefile.common
+index 2040a2e..b3ba765 100644
+--- a/conf/Makefile.common
++++ b/conf/Makefile.common
+@@ -11,10 +11,10 @@ if COND_i386_pc
+   CFLAGS_PLATFORM += -mrtd -mregparm=3
+ endif
+ if COND_i386_efi
+-  LDFLAGS_PLATFORM = -melf_i386
++  LDFLAGS_PLATFORM = -m32
+ endif
+ if COND_x86_64_efi
+-  LDFLAGS_PLATFORM = -melf_x86_64
++  LDFLAGS_PLATFORM = -m64
+ endif
+ if COND_i386_qemu
+   CFLAGS_PLATFORM += -mrtd -mregparm=3
+-- 
+1.7.7.6
+
diff --git a/meta/recipes-bsp/grub/grub-efi-native_1.99.bb b/meta/recipes-bsp/grub/grub-efi-native_1.99.bb
index 4f8a4bc..30e9c74 100644
--- a/meta/recipes-bsp/grub/grub-efi-native_1.99.bb
+++ b/meta/recipes-bsp/grub/grub-efi-native_1.99.bb
@@ -16,7 +16,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 # FIXME: We should be able to optionally drop freetype as a dependency
 DEPENDS = "help2man-native autogen-native"
 RDEPENDS_${PN} = "diffutils freetype"
-PR = "r7"
+PR = "r8"
 
 # Native packages do not normally rebuild when the target changes.
 # Ensure this is built once per HOST-TARGET pair.
@@ -24,7 +24,11 @@ PN := "grub-efi-${TRANSLATED_TARGET_ARCH}-native"
 
 SRC_URI = "ftp://ftp.gnu.org/gnu/grub/grub-${PV}.tar.gz \
 	file://grub-1.99_fix_for_automake_1.11.2.patch \
-	file://grub-1.99-fpmath-sse-387-fix.patch"
+	file://grub-1.99-fpmath-sse-387-fix.patch \
+	file://grub-1.99-gcc-4.7.0.patch \
+	file://grub-1.99-gcc-4.7.0-uninitialized-var-errors.patch \
+	file://grub-1.99-gcc-4.7.0-strict-aliasing-errors.patch \
+	"
 
 SRC_URI[md5sum] = "ca9f2a2d571b57fc5c53212d1d22e2b5"
 SRC_URI[sha256sum] = "b91f420f2c51f6155e088e34ff99bea09cc1fb89585cf7c0179644e57abd28ff"
diff --git a/meta/recipes-bsp/grub/grub_1.99.bb b/meta/recipes-bsp/grub/grub_1.99.bb
index e61147f..b08fa56 100644
--- a/meta/recipes-bsp/grub/grub_1.99.bb
+++ b/meta/recipes-bsp/grub/grub_1.99.bb
@@ -12,11 +12,14 @@ LICENSE = "GPLv3"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
 RDEPENDS_${PN} = "diffutils freetype"
-PR = "r5"
+PR = "r6"
 
 SRC_URI = "ftp://ftp.gnu.org/gnu/grub/grub-${PV}.tar.gz \
           file://grub-install.in.patch \
           file://grub-1.99-fpmath-sse-387-fix.patch \
+          file://grub-1.99-gcc-4.7.0.patch \
+          file://grub-1.99-gcc-4.7.0-uninitialized-var-errors.patch \
+          file://grub-1.99-gcc-4.7.0-strict-aliasing-errors.patch \
           file://40_custom"
 
 SRC_URI[md5sum] = "ca9f2a2d571b57fc5c53212d1d22e2b5"
-- 
1.7.7




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* [v2 4/4] grub-1.99: fix configure error
  2012-04-14  8:59 [v2 0/4] grub & eglibc fixes for fedora 17 alpha nitin.a.kamble
                   ` (2 preceding siblings ...)
  2012-04-14  8:59 ` [v2 3/4] grub-efi-native, grub: fix build with gcc 4.7 nitin.a.kamble
@ 2012-04-14  8:59 ` nitin.a.kamble
  2012-04-16 15:36 ` [v2 0/4] grub & eglibc fixes for fedora 17 alpha Saul Wold
  4 siblings, 0 replies; 8+ messages in thread
From: nitin.a.kamble @ 2012-04-14  8:59 UTC (permalink / raw)
  To: openembedded-core

From: Nitin A Kamble <nitin.a.kamble@intel.com>

This commit deals with this configure error.

configure:20306: checking whether `ccache i586-poky-linux-gcc  -m32
-march=core2 -msse3 -mtune=generic -mfpmath=sse
--sysroot=/builddisk/build/build0/tmp/sysroots/emenlow' generates calls
to `__enable_execute_stack()'
configure:20320: ccache i586-poky-linux-gcc  -m32    -march=core2 -msse3
-mtune=generic -mfpmath=sse
--sysroot=/builddisk/build/build0/tmp/sysroots/emenlow -O2 -pipe -g
-feliminate-unused-debug-types -Wall -W -Wshadow -Wpointer-arith
-Wmissing-prototypes -Wundef -Wstrict-prototypes -g -falign-jumps=1
-falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -mno-sse2
-mno-3dnow -mfpmath=387 -fno-dwarf2-cfi-asm -m32 -fno-stack-protector
-mno-stack-arg-probe -Werror -Wno-trampolines -falign-loops=1 -S
conftest.c
conftest.c:308:6: error: no previous prototype for 'g'
[-Werror=missing-prototypes]
cc1: all warnings being treated as errors
configure:20323: $? = 1
configure:20327: error: ccache i586-poky-linux-gcc  -m32    -march=core2
-msse3 -mtune=generic -mfpmath=sse
--sysroot=/builddisk/build/build0/tmp/sysroots/emenlow failed to produce
assembly code

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
---
 .../grub-1.99-fix-enable_execute_stack-check.patch |   27 ++++++++++++++++++++
 meta/recipes-bsp/grub/grub-efi-native_1.99.bb      |    3 +-
 meta/recipes-bsp/grub/grub_1.99.bb                 |    4 ++-
 3 files changed, 32 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-fix-enable_execute_stack-check.patch

diff --git a/meta/recipes-bsp/grub/files/grub-1.99-fix-enable_execute_stack-check.patch b/meta/recipes-bsp/grub/files/grub-1.99-fix-enable_execute_stack-check.patch
new file mode 100644
index 0000000..9d7272b
--- /dev/null
+++ b/meta/recipes-bsp/grub/files/grub-1.99-fix-enable_execute_stack-check.patch
@@ -0,0 +1,27 @@
+Upstream-Status: Pending
+
+
+This patch avoids this configure failure
+
+configure:20306: checking whether `ccache i586-poky-linux-gcc  -m32    -march=core2 -msse3 -mtune=generic -mfpmath=sse --sysroot=/builddisk/build/build0/tmp/sysroots/emenlow' generates calls to `__enable_execute_stack()'
+configure:20320: ccache i586-poky-linux-gcc  -m32    -march=core2 -msse3 -mtune=generic -mfpmath=sse --sysroot=/builddisk/build/build0/tmp/sysroots/emenlow -O2 -pipe -g -feliminate-unused-debug-types -Wall -W -Wshadow -Wpointer-arith -Wmissing-prototypes -Wundef -Wstrict-prototypes -g -falign-jumps=1 -falign-loops=1 -falign-functions=1 -mno-mmx -mno-sse -mno-sse2 -mno-3dnow -mfpmath=387 -fno-dwarf2-cfi-asm -m32 -fno-stack-protector -mno-stack-arg-probe -Werror -Wno-trampolines -falign-loops=1 -S conftest.c
+conftest.c:308:6: error: no previous prototype for 'g' [-Werror=missing-prototypes]
+cc1: all warnings being treated as errors
+configure:20323: $? = 1
+configure:20327: error: ccache i586-poky-linux-gcc  -m32    -march=core2 -msse3 -mtune=generic -mfpmath=sse --sysroot=/builddisk/build/build0/tmp/sysroots/emenlow failed to produce assembly code
+
+Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
+2012/04/13
+
+Index: grub-1.99/acinclude.m4
+===================================================================
+--- grub-1.99.orig/acinclude.m4
++++ grub-1.99/acinclude.m4
+@@ -317,6 +317,7 @@ dnl Check if the C compiler generates ca
+ AC_DEFUN([grub_CHECK_ENABLE_EXECUTE_STACK],[
+ AC_MSG_CHECKING([whether `$CC' generates calls to `__enable_execute_stack()'])
+ AC_LANG_CONFTEST([[
++void g (int);
+ void f (int (*p) (void));
+ void g (int i)
+ {
diff --git a/meta/recipes-bsp/grub/grub-efi-native_1.99.bb b/meta/recipes-bsp/grub/grub-efi-native_1.99.bb
index 30e9c74..20dcdb9 100644
--- a/meta/recipes-bsp/grub/grub-efi-native_1.99.bb
+++ b/meta/recipes-bsp/grub/grub-efi-native_1.99.bb
@@ -16,7 +16,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 # FIXME: We should be able to optionally drop freetype as a dependency
 DEPENDS = "help2man-native autogen-native"
 RDEPENDS_${PN} = "diffutils freetype"
-PR = "r8"
+PR = "r9"
 
 # Native packages do not normally rebuild when the target changes.
 # Ensure this is built once per HOST-TARGET pair.
@@ -28,6 +28,7 @@ SRC_URI = "ftp://ftp.gnu.org/gnu/grub/grub-${PV}.tar.gz \
 	file://grub-1.99-gcc-4.7.0.patch \
 	file://grub-1.99-gcc-4.7.0-uninitialized-var-errors.patch \
 	file://grub-1.99-gcc-4.7.0-strict-aliasing-errors.patch \
+        file://grub-1.99-fix-enable_execute_stack-check.patch \
 	"
 
 SRC_URI[md5sum] = "ca9f2a2d571b57fc5c53212d1d22e2b5"
diff --git a/meta/recipes-bsp/grub/grub_1.99.bb b/meta/recipes-bsp/grub/grub_1.99.bb
index b08fa56..143b1e8 100644
--- a/meta/recipes-bsp/grub/grub_1.99.bb
+++ b/meta/recipes-bsp/grub/grub_1.99.bb
@@ -12,14 +12,16 @@ LICENSE = "GPLv3"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
 RDEPENDS_${PN} = "diffutils freetype"
-PR = "r6"
+PR = "r7"
 
 SRC_URI = "ftp://ftp.gnu.org/gnu/grub/grub-${PV}.tar.gz \
           file://grub-install.in.patch \
+          file://grub-1.99_fix_for_automake_1.11.2.patch \
           file://grub-1.99-fpmath-sse-387-fix.patch \
           file://grub-1.99-gcc-4.7.0.patch \
           file://grub-1.99-gcc-4.7.0-uninitialized-var-errors.patch \
           file://grub-1.99-gcc-4.7.0-strict-aliasing-errors.patch \
+          file://grub-1.99-fix-enable_execute_stack-check.patch \
           file://40_custom"
 
 SRC_URI[md5sum] = "ca9f2a2d571b57fc5c53212d1d22e2b5"
-- 
1.7.7




^ permalink raw reply related	[flat|nested] 8+ messages in thread

* Re: [v2 1/4] eglibc: fix builds on fedora 17 alpha
  2012-04-14  8:59 ` [v2 1/4] eglibc: fix builds on " nitin.a.kamble
@ 2012-04-14 10:14   ` Richard Purdie
  2012-04-14 12:27     ` Richard Purdie
  0 siblings, 1 reply; 8+ messages in thread
From: Richard Purdie @ 2012-04-14 10:14 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On Sat, 2012-04-14 at 01:59 -0700, nitin.a.kamble@intel.com wrote:
> From: Nitin A Kamble <nitin.a.kamble@intel.com>
> 
> Generally distros keep perl at /sur/bin/perl
> Fedora 17 alpha also has /bin/perl
> 
> this causes eglibc build on such distros to put perl interpreter path in
> the perl scripts as /bin/perl
> 
> But we set perl location for target as /usr/bin/perl
> 
> This mismatch of perl path causes failure of rootfs image creation
> like this:
> 
> | error: Failed dependencies:
> |       /bin/perl is needed by eglibc-utils-2.13-r23+svnr15508.i586
> NOTE: package core-image-sato-1.0-r0: task do_rootfs: Failed
> ERROR: Task 8
> (/home/nitin/prj/poky.git/meta/recipes-sato/images/core-image-sato.bb,
> do_rootfs) failed with exit code '1'
> 
> This Fixes bug : [YOCTO #2286]
> 
> Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
> ---
>  meta/recipes-core/eglibc/eglibc-package.inc |    5 +++++
>  meta/recipes-core/eglibc/eglibc_2.13.bb     |    2 +-
>  meta/recipes-core/eglibc/eglibc_2.15.bb     |    2 +-
>  3 files changed, 7 insertions(+), 2 deletions(-)
> 
> diff --git a/meta/recipes-core/eglibc/eglibc-package.inc b/meta/recipes-core/eglibc/eglibc-package.inc
> index 9e45fc1..d13cb35 100644
> --- a/meta/recipes-core/eglibc/eglibc-package.inc
> +++ b/meta/recipes-core/eglibc/eglibc-package.inc
> @@ -76,6 +76,11 @@ do_install_append () {
>  	rm -f ${D}${sysconfdir}/localtime
>  
>  	oe_multilib_header bits/syscall.h
> +	
> +	if [ -f ${D}${bindir}/mtrace ]
> +	then
> +		sed -e "s# /bin/perl# ${bindir}/perl#" -i ${D}${bindir}/mtrace 
> +	fi
>  }

I'd recommend something like:

sed -i -e '1s,#!.*perl,#! ${bindir}/perl,' ${D}${bindir}/mtrace 

which will only match on the first line and matches .*perl rather
than /bin/perl.

Cheers,

Richard






^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [v2 1/4] eglibc: fix builds on fedora 17 alpha
  2012-04-14 10:14   ` Richard Purdie
@ 2012-04-14 12:27     ` Richard Purdie
  0 siblings, 0 replies; 8+ messages in thread
From: Richard Purdie @ 2012-04-14 12:27 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On Sat, 2012-04-14 at 11:14 +0100, Richard Purdie wrote:
> On Sat, 2012-04-14 at 01:59 -0700, nitin.a.kamble@intel.com wrote:
> > From: Nitin A Kamble <nitin.a.kamble@intel.com>
> > 
> > Generally distros keep perl at /sur/bin/perl
> > Fedora 17 alpha also has /bin/perl
> > 
> > this causes eglibc build on such distros to put perl interpreter path in
> > the perl scripts as /bin/perl
> > 
> > But we set perl location for target as /usr/bin/perl
> > 
> > This mismatch of perl path causes failure of rootfs image creation
> > like this:
> > 
> > | error: Failed dependencies:
> > |       /bin/perl is needed by eglibc-utils-2.13-r23+svnr15508.i586
> > NOTE: package core-image-sato-1.0-r0: task do_rootfs: Failed
> > ERROR: Task 8
> > (/home/nitin/prj/poky.git/meta/recipes-sato/images/core-image-sato.bb,
> > do_rootfs) failed with exit code '1'
> > 
> > This Fixes bug : [YOCTO #2286]
> > 
> > Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
> > ---
> >  meta/recipes-core/eglibc/eglibc-package.inc |    5 +++++
> >  meta/recipes-core/eglibc/eglibc_2.13.bb     |    2 +-
> >  meta/recipes-core/eglibc/eglibc_2.15.bb     |    2 +-
> >  3 files changed, 7 insertions(+), 2 deletions(-)
> > 
> > diff --git a/meta/recipes-core/eglibc/eglibc-package.inc b/meta/recipes-core/eglibc/eglibc-package.inc
> > index 9e45fc1..d13cb35 100644
> > --- a/meta/recipes-core/eglibc/eglibc-package.inc
> > +++ b/meta/recipes-core/eglibc/eglibc-package.inc
> > @@ -76,6 +76,11 @@ do_install_append () {
> >  	rm -f ${D}${sysconfdir}/localtime
> >  
> >  	oe_multilib_header bits/syscall.h
> > +	
> > +	if [ -f ${D}${bindir}/mtrace ]
> > +	then
> > +		sed -e "s# /bin/perl# ${bindir}/perl#" -i ${D}${bindir}/mtrace 
> > +	fi
> >  }
> 
> I'd recommend something like:
> 
> sed -i -e '1s,#!.*perl,#! ${bindir}/perl,' ${D}${bindir}/mtrace 
> 
> which will only match on the first line and matches .*perl rather
> than /bin/perl.

I found some other issues with this and the contents of the -nativesdk
eglibc-utils package. I've merged an updated version which uses
${bindir}/env perl and hardcodes /usr/bin/env in the -nativesdk case
(which is an assumption nativesdk makes in general).

Cheers,

Richard




^ permalink raw reply	[flat|nested] 8+ messages in thread

* Re: [v2 0/4] grub & eglibc fixes for fedora 17 alpha
  2012-04-14  8:59 [v2 0/4] grub & eglibc fixes for fedora 17 alpha nitin.a.kamble
                   ` (3 preceding siblings ...)
  2012-04-14  8:59 ` [v2 4/4] grub-1.99: fix configure error nitin.a.kamble
@ 2012-04-16 15:36 ` Saul Wold
  4 siblings, 0 replies; 8+ messages in thread
From: Saul Wold @ 2012-04-16 15:36 UTC (permalink / raw)
  To: Patches and discussions about the oe-core layer

On 04/14/2012 01:59 AM, nitin.a.kamble@intel.com wrote:
> From: Nitin A Kamble<nitin.a.kamble@intel.com>
>
> These are various grub fixes for correctly building grub recipes for various targets.
> These are tested for emenlow, sugerbay, qemux86, qemux86-64 machines
>
> The eglibc commits is thes same as in the v1 pull request.
>
> Nitin
>
> The following changes since commit ee71422b9893f9f77173fb2612d1ffbbc68643c3:
>
>    linux-yocto: allow .cfg, .scc, .patch and defconfigs to be processed in order (2012-04-13 22:44:46 +0100)
>
> are available in the git repository at:
>    git://git.pokylinux.org/poky-contrib nitin/grub3
>    http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=nitin/grub3
>
> Nitin A Kamble (4):
>    eglibc: fix builds on fedora 17 alpha
>    grub-1.99: use gcc-cross for building the target binaries
>    grub-efi-native, grub: fix build with gcc 4.7
>    grub-1.99: fix configure error
>
>   .../grub-1.99-fix-enable_execute_stack-check.patch |   27 ++++
>   .../grub/files/grub-1.99-fpmath-sse-387-fix.patch  |   37 +++++
>   ...rub-1.99-gcc-4.7.0-strict-aliasing-errors.patch |  147 ++++++++++++++++++++
>   ...b-1.99-gcc-4.7.0-uninitialized-var-errors.patch |   41 ++++++
>   .../grub/files/grub-1.99-gcc-4.7.0.patch           |   34 +++++
>   meta/recipes-bsp/grub/grub-efi-native_1.99.bb      |   10 +-
>   meta/recipes-bsp/grub/grub_1.99.bb                 |   10 +-
>   meta/recipes-core/eglibc/eglibc-package.inc        |    5 +
>   meta/recipes-core/eglibc/eglibc_2.13.bb            |    2 +-
>   meta/recipes-core/eglibc/eglibc_2.15.bb            |    2 +-
>   10 files changed, 309 insertions(+), 6 deletions(-)
>   create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-fix-enable_execute_stack-check.patch
>   create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-fpmath-sse-387-fix.patch
>   create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-strict-aliasing-errors.patch
>   create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0-uninitialized-var-errors.patch
>   create mode 100644 meta/recipes-bsp/grub/files/grub-1.99-gcc-4.7.0.patch
>

Merged into OE-Core with tweaks by RP to the eglibc patch.

Thanks
	Sau!



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2012-04-16 15:46 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-04-14  8:59 [v2 0/4] grub & eglibc fixes for fedora 17 alpha nitin.a.kamble
2012-04-14  8:59 ` [v2 1/4] eglibc: fix builds on " nitin.a.kamble
2012-04-14 10:14   ` Richard Purdie
2012-04-14 12:27     ` Richard Purdie
2012-04-14  8:59 ` [v2 2/4] grub-1.99: use gcc-cross for building the target binaries nitin.a.kamble
2012-04-14  8:59 ` [v2 3/4] grub-efi-native, grub: fix build with gcc 4.7 nitin.a.kamble
2012-04-14  8:59 ` [v2 4/4] grub-1.99: fix configure error nitin.a.kamble
2012-04-16 15:36 ` [v2 0/4] grub & eglibc fixes for fedora 17 alpha Saul Wold

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox