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 <sen.zhang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Jesse Zhang 2012-07-18 17:25:48 +08:00 committed by Richard Purdie
parent 638cd1a7a6
commit 8adc595dd9
2 changed files with 157 additions and 58 deletions

View File

@ -1,59 +1,17 @@
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 <sen.zhang@windriver.com>
| 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 <nitin.a.kamble@intel.com>
2012/01/12
Index: grub-1.99/conf/Makefile.common
===================================================================
--- grub-1.99.orig/conf/Makefile.common
+++ grub-1.99/conf/Makefile.common
@@ -137,7 +137,7 @@ KERNEL_HEADER_FILES =
man_MANS =
noinst_DATA =
-pkglib_DATA =
+pkgdata_DATA =
bin_SCRIPTS =
sbin_SCRIPTS =
bin_PROGRAMS =
@@ -147,7 +147,7 @@ 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
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
@ -65,16 +23,157 @@ Index: grub-1.99/Makefile.am
if COND_i386_coreboot
Index: grub-1.99/gentpl.py
===================================================================
--- grub-1.99.orig/gentpl.py
+++ grub-1.99/gentpl.py
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 =
noinst_DATA =
-pkglib_DATA =
+pkgdata_DATA =
bin_SCRIPTS =
sbin_SCRIPTS =
bin_PROGRAMS =
@@ -147,7 +147,6 @@ check_SCRIPTS =
grubconf_DATA =
check_PROGRAMS =
noinst_SCRIPTS =
-pkglib_SCRIPTS =
noinst_PROGRAMS =
grubconf_SCRIPTS =
noinst_LIBRARIES =
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

View File

@ -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 \