summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/dpkg
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2011-11-14 17:43:45 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2012-01-30 16:39:03 +0000
commit467af9ae45ce54d6e50041d5134af889ac7cf4d2 (patch)
tree98f3b4148a3d866a375c8c454383b785da225edb /meta/recipes-devtools/dpkg
parentc26d37b65e0ad69a36e799c56f3c4426ea18f17e (diff)
downloadopenembedded-core-467af9ae45ce54d6e50041d5134af889ac7cf4d2.tar.gz
dpkg/update-alternatives: Fix dpkg version of update-alternatives to be usable
The version of dpkg the updates-alternatives-dpkg recipe pointed at no longer used a perl script but a compiled binary. This meant the "all" architecture field was invalid, as as the sed operation during do_patch. All things considered the separate recipe was pretty pointless. This patch moves update-alternatives back to being built as part of the dpkg recipe. It also moves various functionalty to the .inc file which it belongs and fixes building and packaging of the dpkg perl modules. (From OE-Core rev: fad496c759066d53bebf9b8cebc63e6478c91d19) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/dpkg')
-rw-r--r--meta/recipes-devtools/dpkg/dpkg.inc38
-rw-r--r--meta/recipes-devtools/dpkg/dpkg/perllibdir.patch22
-rw-r--r--meta/recipes-devtools/dpkg/dpkg_1.15.8.7.bb16
3 files changed, 57 insertions, 19 deletions
diff --git a/meta/recipes-devtools/dpkg/dpkg.inc b/meta/recipes-devtools/dpkg/dpkg.inc
index 8c2511dc43..a8486d9359 100644
--- a/meta/recipes-devtools/dpkg/dpkg.inc
+++ b/meta/recipes-devtools/dpkg/dpkg.inc
@@ -2,7 +2,7 @@ DESCRIPTION = "Package maintenance system for Debian."
LICENSE = "GPL"
SECTION = "base"
-INC_PR = "r5"
+INC_PR = "r10"
SRC_URI = "${DEBIAN_MIRROR}/main/d/dpkg/dpkg_${PV}.tar.bz2 \
file://ignore_extra_fields.patch"
@@ -18,8 +18,24 @@ PARALLEL_MAKE = ""
inherit autotools gettext perlnative
-DPKG_INIT_POSITION = "98"
+export PERL_LIBDIR = "${libdir}/perl"
+EXTRA_OECONF = "--without-static-progs \
+ --without-dselect \
+ --with-start-stop-daemon \
+ --with-zlib \
+ --with-bz2lib \
+ --without-selinux \
+ --without-sgml-doc"
+
+do_configure () {
+ echo >> m4/compiler.m4
+ sed -i -e 's#PERL_LIBDIR=.*$#PERL_LIBDIR="${libdir}/perl"#' ${S}/configure
+ autotools_do_configure
+}
+
+
+DPKG_INIT_POSITION ?= "98"
do_install_prepend () {
install -d ${D}/${sysconfdir}/rcS.d
# this happens at S98 where our good 'ole packages script used to run
@@ -30,7 +46,19 @@ rm -f ${sysconfdir}/rcS.d/S${DPKG_INIT_POSITION}configure
chmod 0755 ${D}/${sysconfdir}/rcS.d/S${DPKG_INIT_POSITION}configure
}
-do_configure () {
- echo >> m4/compiler.m4
- autotools_do_configure
+do_install_append () {
+ mv ${D}${bindir}/update-alternatives ${D}${sbindir}
}
+
+PROVIDES += "virtual/update-alternatives"
+
+PACKAGES =+ "update-alternatives-dpkg"
+FILES_update-alternatives-dpkg = "${sbindir}/update-alternatives ${localstatedir}/lib/dpkg/alternatives ${sysconfdir}/alternatives"
+RPROVIDES_update-alternatives-dpkg += "update-alternatives"
+
+PACKAGES += "${PN}-perl"
+FILES_${PN}-perl = "${libdir}/perl"
+
+BBCLASSEXTEND = "native"
+
+
diff --git a/meta/recipes-devtools/dpkg/dpkg/perllibdir.patch b/meta/recipes-devtools/dpkg/dpkg/perllibdir.patch
new file mode 100644
index 0000000000..45973f012d
--- /dev/null
+++ b/meta/recipes-devtools/dpkg/dpkg/perllibdir.patch
@@ -0,0 +1,22 @@
+We want to be able to set PERL_LIBDIR from the environment. This
+hardcoded assignment prevents us from doing so and obtains an
+incorrect value.
+
+Upstream-Status: Inappropriate [in this form at least]
+
+RP 14/11/2011
+
+Index: dpkg-1.15.8.7/m4/dpkg-progs.m4
+===================================================================
+--- dpkg-1.15.8.7.orig/m4/dpkg-progs.m4 2011-11-14 17:32:21.252053239 +0000
++++ dpkg-1.15.8.7/m4/dpkg-progs.m4 2011-11-14 17:32:55.180052455 +0000
+@@ -9,9 +9,6 @@
+ [AC_ARG_VAR([PERL], [Perl interpreter])dnl
+ AC_PATH_PROG([PERL], [perl], [/usr/bin/perl])dnl
+ AC_ARG_VAR([PERL_LIBDIR], [Perl library directory])dnl
+-PERL_LIBDIR=$($PERL -MConfig -e 'my $r = $Config{vendorlibexp};
+- $r =~ s/$Config{vendorprefixexp}/\$(prefix)/;
+- print $r')dnl
+ ])# DPKG_PROG_PERL
+
+ # DPKG_PROG_PO4A
diff --git a/meta/recipes-devtools/dpkg/dpkg_1.15.8.7.bb b/meta/recipes-devtools/dpkg/dpkg_1.15.8.7.bb
index 99197c0b7f..8b45a00a6a 100644
--- a/meta/recipes-devtools/dpkg/dpkg_1.15.8.7.bb
+++ b/meta/recipes-devtools/dpkg/dpkg_1.15.8.7.bb
@@ -3,23 +3,11 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
SRC_URI += "file://noman.patch \
file://check_snprintf.patch \
- file://check_version.patch"
+ file://check_version.patch \
+ file://perllibdir.patch"
SRC_URI[md5sum] = "d1731d4147c1ea3b537a4d094519a6dc"
SRC_URI[sha256sum] = "1ec1376471b04717a4497e5d7a27cd545248c92116898ce0c53ced8ea94267b5"
PR = "${INC_PR}.0"
-EXTRA_OECONF = "--without-static-progs \
- --without-dselect \
- --with-start-stop-daemon \
- --with-zlib \
- --with-bz2lib \
- --without-selinux \
- --without-sgml-doc"
-
-BBCLASSEXTEND = "native"
-
-do_install_append () {
- rm ${D}${bindir}/update-alternatives
-}