From 8adc595dd998f95563188ed72196daac2911951b Mon Sep 17 00:00:00 2001 From: Jesse Zhang Date: Wed, 18 Jul 2012 17:25:48 +0800 Subject: grub: fix grub-mkconfig_lib install dir The current fix_for_automake patch is not complete. It fixes the install dir of grub-mkconfig_lib but neglects to update its references in grub-mkconfig and the grub.d/* scripts. grub-mkconfig would complain: # grub-mkconfig /usr/sbin/grub-mkconfig: line 98: /usr/lib/grub/grub-mkconfig_lib: No such file or directory Backport upstream patch to fix all the references. [YOCTO #2777] (From OE-Core rev: 72a582874704838ddd19700bf7c300d7a7faaf9f) Signed-off-by: Jesse Zhang Signed-off-by: Richard Purdie --- .../files/grub-1.99_fix_for_automake_1.11.2.patch | 203 +++++++++++++++------ meta/recipes-bsp/grub/grub_1.99.bb | 2 +- 2 files changed, 152 insertions(+), 53 deletions(-) (limited to 'meta/recipes-bsp') diff --git a/meta/recipes-bsp/grub/files/grub-1.99_fix_for_automake_1.11.2.patch b/meta/recipes-bsp/grub/files/grub-1.99_fix_for_automake_1.11.2.patch index 4d729e5eee..459b4fc37b 100644 --- a/meta/recipes-bsp/grub/files/grub-1.99_fix_for_automake_1.11.2.patch +++ b/meta/recipes-bsp/grub/files/grub-1.99_fix_for_automake_1.11.2.patch @@ -1,37 +1,32 @@ -Upstream-Status: Pending +Upstream-Status: Backport -Fixes these errors observed with automake 1.11.2 -The useof pkglibhas become more strict compared to the earlier release of -automake resulting in these failures. -Fixed the files related to automake to avoid the issue. +http://bzr.savannah.gnu.org/lh/grub/trunk/grub/revision/3766 + Handle newer autotools. Add some missing quotes while on it. -| conf/Makefile.common:140: `pkglibdir' is not a legitimate directory for `DATA' -| grub-core/Makefile.am:5: `conf/Makefile.common' included from here -| conf/Makefile.common:140: `pkglibdir' is not a legitimate directory for `DATA' -| Makefile.am:6: `conf/Makefile.common' included from here -| autoreconf: automake failed with exit status: 1 -| ERROR: autoreconf execution failed. +http://bzr.savannah.gnu.org/lh/grub/trunk/grub/revision/3983 + gentpl.py: Remove obsolete pkglib_DATA handling. +Signed-off-by: Jesse Zhang - -| conf/Makefile.common:150: `pkglibdir' is not a legitimate directory for `SCRIPTS' -| grub-core/Makefile.am:5: `conf/Makefile.common' included from here -| conf/Makefile.common:140: `pkglibdir' is not a legitimate directory for `DATA' -| grub-core/Makefile.am:5: `conf/Makefile.common' included from here -| conf/Makefile.common:150: `pkglibdir' is not a legitimate directory for `SCRIPTS' -| Makefile.am:6: `conf/Makefile.common' included from here -| conf/Makefile.common:140: `pkglibdir' is not a legitimate directory for `DATA' -| Makefile.am:6: `conf/Makefile.common' included from here -| autoreconf: automake failed with exit status: 1 - -Signed-Off-By: Nitin A Kamble -2012/01/12 - - -Index: grub-1.99/conf/Makefile.common -=================================================================== ---- grub-1.99.orig/conf/Makefile.common -+++ grub-1.99/conf/Makefile.common +diff --git a/Makefile.am b/Makefile.am +index 9301c91..d706968 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -101,8 +101,8 @@ CLEANFILES += widthspec.h + # Install config.h into platformdir + platform_HEADERS = config.h + +-pkglib_DATA += grub-mkconfig_lib +-pkglib_DATA += update-grub_lib ++pkgdata_DATA += grub-mkconfig_lib ++pkgdata_DATA += update-grub_lib + + + if COND_i386_coreboot +diff --git a/conf/Makefile.common b/conf/Makefile.common +index 5aa13cd..2040a2e 100644 +--- a/conf/Makefile.common ++++ b/conf/Makefile.common @@ -137,7 +137,7 @@ KERNEL_HEADER_FILES = man_MANS = @@ -41,40 +36,144 @@ Index: grub-1.99/conf/Makefile.common bin_SCRIPTS = sbin_SCRIPTS = bin_PROGRAMS = -@@ -147,7 +147,7 @@ check_SCRIPTS = +@@ -147,7 +147,6 @@ check_SCRIPTS = grubconf_DATA = check_PROGRAMS = noinst_SCRIPTS = -pkglib_SCRIPTS = -+pkglibexec_SCRIPTS = noinst_PROGRAMS = grubconf_SCRIPTS = noinst_LIBRARIES = -Index: grub-1.99/Makefile.am -=================================================================== ---- grub-1.99.orig/Makefile.am -+++ grub-1.99/Makefile.am -@@ -101,8 +101,8 @@ CLEANFILES += widthspec.h - # Install config.h into platformdir - platform_HEADERS = config.h - --pkglib_DATA += grub-mkconfig_lib --pkglib_DATA += update-grub_lib -+pkgdata_DATA += grub-mkconfig_lib -+pkgdata_DATA += update-grub_lib - - - if COND_i386_coreboot -Index: grub-1.99/gentpl.py -=================================================================== ---- grub-1.99.orig/gentpl.py -+++ grub-1.99/gentpl.py +diff --git a/gentpl.py b/gentpl.py +index a42a606..7992376 100644 +--- a/gentpl.py ++++ b/gentpl.py @@ -440,7 +440,7 @@ def script(platform): r += "[+ ENDIF +]" r += rule("[+ name +]", platform_sources(platform) + " $(top_builddir)/config.status", """ -$(top_builddir)/config.status --file=-:$< | sed -e 's,@pkglib_DATA@,$(pkglib_DATA),g' > $@ -+$(top_builddir)/config.status --file=-:$< | sed -e 's,@pkgdata_DATA@,$(pkgdata_DATA),g' > $@ ++$(top_builddir)/config.status --file=$@:$< chmod a+x [+ name +] """) +diff --git a/util/grub-mkconfig.in b/util/grub-mkconfig.in +index afc66f8..0c81084 100644 +--- a/util/grub-mkconfig.in ++++ b/util/grub-mkconfig.in +@@ -95,7 +95,7 @@ do + esac + done + +-. ${libdir}/grub/grub-mkconfig_lib ++. ${datadir}/grub/grub-mkconfig_lib + + if [ "x$EUID" = "x" ] ; then + EUID=`id -u` +diff --git a/util/grub.d/00_header.in b/util/grub.d/00_header.in +index 9da1511..30d61f1 100644 +--- a/util/grub.d/00_header.in ++++ b/util/grub.d/00_header.in +@@ -25,7 +25,7 @@ libdir=@libdir@ + locale_dir=`echo ${GRUB_PREFIX}/locale | sed ${transform}` + grub_lang=`echo $LANG | cut -d . -f 1` + +-. ${libdir}/grub/grub-mkconfig_lib ++. @datadir@/grub/grub-mkconfig_lib + + # Do this as early as possible, since other commands might depend on it. + # (e.g. the `loadfont' command might need lvm or raid modules) +diff --git a/util/grub.d/10_hurd.in b/util/grub.d/10_hurd.in +index 8c54eab..d823ba3 100644 +--- a/util/grub.d/10_hurd.in ++++ b/util/grub.d/10_hurd.in +@@ -20,7 +20,7 @@ set -e + prefix=@prefix@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ +-. ${libdir}/grub/grub-mkconfig_lib ++. @datadir@/grub/grub-mkconfig_lib + + CLASS="--class gnu --class os" + +diff --git a/util/grub.d/10_kfreebsd.in b/util/grub.d/10_kfreebsd.in +index 3600c74..fd8399b 100644 +--- a/util/grub.d/10_kfreebsd.in ++++ b/util/grub.d/10_kfreebsd.in +@@ -21,7 +21,7 @@ prefix=@prefix@ + exec_prefix=@exec_prefix@ + bindir=@bindir@ + libdir=@libdir@ +-. ${libdir}/grub/grub-mkconfig_lib ++. @datadir@/grub/grub-mkconfig_lib + + export TEXTDOMAIN=@PACKAGE@ + export TEXTDOMAINDIR=@localedir@ +diff --git a/util/grub.d/10_linux.in b/util/grub.d/10_linux.in +index 1d1eb40..0977700 100644 +--- a/util/grub.d/10_linux.in ++++ b/util/grub.d/10_linux.in +@@ -21,7 +21,7 @@ prefix=@prefix@ + exec_prefix=@exec_prefix@ + bindir=@bindir@ + libdir=@libdir@ +-. ${libdir}/grub/grub-mkconfig_lib ++. @datadir@/grub/grub-mkconfig_lib + + export TEXTDOMAIN=@PACKAGE@ + export TEXTDOMAINDIR=@localedir@ +diff --git a/util/grub.d/10_netbsd.in b/util/grub.d/10_netbsd.in +index ffd31ad..ce77096 100644 +--- a/util/grub.d/10_netbsd.in ++++ b/util/grub.d/10_netbsd.in +@@ -21,7 +21,7 @@ prefix=@prefix@ + exec_prefix=@exec_prefix@ + bindir=@bindir@ + libdir=@libdir@ +-. ${libdir}/grub/grub-mkconfig_lib ++. @datadir@/grub/grub-mkconfig_lib + + export TEXTDOMAIN=@PACKAGE@ + export TEXTDOMAINDIR=@localedir@ +diff --git a/util/grub.d/10_windows.in b/util/grub.d/10_windows.in +index fd068dd..9b73dc6 100644 +--- a/util/grub.d/10_windows.in ++++ b/util/grub.d/10_windows.in +@@ -20,7 +20,7 @@ set -e + prefix=@prefix@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ +-. ${libdir}/grub/grub-mkconfig_lib ++. @datadir@/grub/grub-mkconfig_lib + + case "`uname 2>/dev/null`" in + CYGWIN*) ;; +diff --git a/util/grub.d/20_linux_xen.in b/util/grub.d/20_linux_xen.in +index a900760..aef5bea 100644 +--- a/util/grub.d/20_linux_xen.in ++++ b/util/grub.d/20_linux_xen.in +@@ -21,7 +21,7 @@ prefix=@prefix@ + exec_prefix=@exec_prefix@ + bindir=@bindir@ + libdir=@libdir@ +-. ${libdir}/grub/grub-mkconfig_lib ++. @datadir@/grub/grub-mkconfig_lib + + export TEXTDOMAIN=@PACKAGE@ + export TEXTDOMAINDIR=@localedir@ +diff --git a/util/grub.d/30_os-prober.in b/util/grub.d/30_os-prober.in +index d9d4b0a..485b224 100644 +--- a/util/grub.d/30_os-prober.in ++++ b/util/grub.d/30_os-prober.in +@@ -21,7 +21,7 @@ prefix=@prefix@ + exec_prefix=@exec_prefix@ + libdir=@libdir@ + +-. ${libdir}/grub/grub-mkconfig_lib ++. @datadir@/grub/grub-mkconfig_lib + + if [ "x${GRUB_DISABLE_OS_PROBER}" = "xtrue" ]; then + exit 0 +-- +1.7.7 + diff --git a/meta/recipes-bsp/grub/grub_1.99.bb b/meta/recipes-bsp/grub/grub_1.99.bb index 775c6aad88..1009ce899f 100644 --- a/meta/recipes-bsp/grub/grub_1.99.bb +++ b/meta/recipes-bsp/grub/grub_1.99.bb @@ -13,7 +13,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504" DEPENDS = "autogen-native" RDEPENDS_${PN} = "diffutils freetype" -PR = "r9" +PR = "r10" SRC_URI = "ftp://ftp.gnu.org/gnu/grub/grub-${PV}.tar.gz \ file://grub-install.in.patch \ -- cgit v1.2.3-54-g00ecf