summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2011-11-14 17:43:45 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-11-15 12:05:26 +0000
commit6c508124a1aa7a963f7c5cc627ef31b51927132c (patch)
tree08eeb6e44a1bbba1fe93f11ce06d1fa38687f8f1 /meta/recipes-devtools
parentd3c950e62254d5f1be0d591d858bde9a37dfabf3 (diff)
downloadpoky-6c508124a1aa7a963f7c5cc627ef31b51927132c.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')
-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
-rw-r--r--meta/recipes-devtools/update-alternatives/update-alternatives-dpkg.inc43
-rw-r--r--meta/recipes-devtools/update-alternatives/update-alternatives-dpkg_1.16.0.3.bb8
5 files changed, 57 insertions, 70 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."
2LICENSE = "GPL" 2LICENSE = "GPL"
3SECTION = "base" 3SECTION = "base"
4 4
5INC_PR = "r5" 5INC_PR = "r10"
6 6
7SRC_URI = "${DEBIAN_MIRROR}/main/d/dpkg/dpkg_${PV}.tar.bz2 \ 7SRC_URI = "${DEBIAN_MIRROR}/main/d/dpkg/dpkg_${PV}.tar.bz2 \
8 file://ignore_extra_fields.patch" 8 file://ignore_extra_fields.patch"
@@ -18,8 +18,24 @@ PARALLEL_MAKE = ""
18 18
19inherit autotools gettext perlnative 19inherit autotools gettext perlnative
20 20
21DPKG_INIT_POSITION = "98" 21export PERL_LIBDIR = "${libdir}/perl"
22 22
23EXTRA_OECONF = "--without-static-progs \
24 --without-dselect \
25 --with-start-stop-daemon \
26 --with-zlib \
27 --with-bz2lib \
28 --without-selinux \
29 --without-sgml-doc"
30
31do_configure () {
32 echo >> m4/compiler.m4
33 sed -i -e 's#PERL_LIBDIR=.*$#PERL_LIBDIR="${libdir}/perl"#' ${S}/configure
34 autotools_do_configure
35}
36
37
38DPKG_INIT_POSITION ?= "98"
23do_install_prepend () { 39do_install_prepend () {
24 install -d ${D}/${sysconfdir}/rcS.d 40 install -d ${D}/${sysconfdir}/rcS.d
25 # this happens at S98 where our good 'ole packages script used to run 41 # 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
30 chmod 0755 ${D}/${sysconfdir}/rcS.d/S${DPKG_INIT_POSITION}configure 46 chmod 0755 ${D}/${sysconfdir}/rcS.d/S${DPKG_INIT_POSITION}configure
31} 47}
32 48
33do_configure () { 49do_install_append () {
34 echo >> m4/compiler.m4 50 mv ${D}${bindir}/update-alternatives ${D}${sbindir}
35 autotools_do_configure
36} 51}
52
53PROVIDES += "virtual/update-alternatives"
54
55PACKAGES =+ "update-alternatives-dpkg"
56FILES_update-alternatives-dpkg = "${sbindir}/update-alternatives ${localstatedir}/lib/dpkg/alternatives ${sysconfdir}/alternatives"
57RPROVIDES_update-alternatives-dpkg += "update-alternatives"
58
59PACKAGES += "${PN}-perl"
60FILES_${PN}-perl = "${libdir}/perl"
61
62BBCLASSEXTEND = "native"
63
64
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 @@
1We want to be able to set PERL_LIBDIR from the environment. This
2hardcoded assignment prevents us from doing so and obtains an
3incorrect value.
4
5Upstream-Status: Inappropriate [in this form at least]
6
7RP 14/11/2011
8
9Index: dpkg-1.15.8.7/m4/dpkg-progs.m4
10===================================================================
11--- dpkg-1.15.8.7.orig/m4/dpkg-progs.m4 2011-11-14 17:32:21.252053239 +0000
12+++ dpkg-1.15.8.7/m4/dpkg-progs.m4 2011-11-14 17:32:55.180052455 +0000
13@@ -9,9 +9,6 @@
14 [AC_ARG_VAR([PERL], [Perl interpreter])dnl
15 AC_PATH_PROG([PERL], [perl], [/usr/bin/perl])dnl
16 AC_ARG_VAR([PERL_LIBDIR], [Perl library directory])dnl
17-PERL_LIBDIR=$($PERL -MConfig -e 'my $r = $Config{vendorlibexp};
18- $r =~ s/$Config{vendorprefixexp}/\$(prefix)/;
19- print $r')dnl
20 ])# DPKG_PROG_PERL
21
22 # 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"
3 3
4SRC_URI += "file://noman.patch \ 4SRC_URI += "file://noman.patch \
5 file://check_snprintf.patch \ 5 file://check_snprintf.patch \
6 file://check_version.patch" 6 file://check_version.patch \
7 file://perllibdir.patch"
7 8
8SRC_URI[md5sum] = "d1731d4147c1ea3b537a4d094519a6dc" 9SRC_URI[md5sum] = "d1731d4147c1ea3b537a4d094519a6dc"
9SRC_URI[sha256sum] = "1ec1376471b04717a4497e5d7a27cd545248c92116898ce0c53ced8ea94267b5" 10SRC_URI[sha256sum] = "1ec1376471b04717a4497e5d7a27cd545248c92116898ce0c53ced8ea94267b5"
10 11
11PR = "${INC_PR}.0" 12PR = "${INC_PR}.0"
12 13
13EXTRA_OECONF = "--without-static-progs \
14 --without-dselect \
15 --with-start-stop-daemon \
16 --with-zlib \
17 --with-bz2lib \
18 --without-selinux \
19 --without-sgml-doc"
20
21BBCLASSEXTEND = "native"
22
23do_install_append () {
24 rm ${D}${bindir}/update-alternatives
25}
diff --git a/meta/recipes-devtools/update-alternatives/update-alternatives-dpkg.inc b/meta/recipes-devtools/update-alternatives/update-alternatives-dpkg.inc
deleted file mode 100644
index c881ae0219..0000000000
--- a/meta/recipes-devtools/update-alternatives/update-alternatives-dpkg.inc
+++ /dev/null
@@ -1,43 +0,0 @@
1SUMMARY = "Manage alternatives"
2DESCRIPTION = "update-alternatives creates, removes, maintains and displays information about the symbolic links \
3comprising the Debian alternatives system. The Debian alternatives system attempts solve the problem of several \
4programs fulfilling the same or similar functions and how they can be installed onto a single system at the same \
5time."
6LICENSE = "GPL"
7SECTION = "base"
8SRC_URI = "${DEBIAN_MIRROR}/main/d/dpkg/dpkg_${PV}.tar.bz2"
9S = "${WORKDIR}/dpkg-${PV}"
10PACKAGE_ARCH = "all"
11INC_PR = "r3"
12
13inherit gettext
14
15do_patch () {
16 cat ${S}/scripts/update-alternatives.pl | \
17 sed -n -e '
18 /^\$admindir=.*staging/{
19 x
20 s/^.*$/$D=$ENV{"D"} || ""\;/;
21 p;
22 x;
23 s,^\$admindir=.*staging.*$,$admindir="$D${localstatedir}/lib/dpkg"\;,;
24 };
25 s,^\$altdir=.*$,$altdir="$D${sysconfdir}/alternatives"\;,;
26 p;' > ${S}/scripts/update-alternatives
27}
28
29do_install () {
30 install -d ${D}${sbindir} \
31 ${D}${localstatedir}/lib/dpkg/alternatives \
32 ${D}${sysconfdir}/alternatives
33
34 install -m 0755 scripts/update-alternatives ${D}${sbindir}/update-alternatives
35}
36
37PROVIDES += "virtual/update-alternatives"
38RPROVIDES_${PN} += "update-alternatives"
39EXTRA_RDEPENDS = "perl dpkg"
40EXTRA_RDEPENDS_virtclass-native = ""
41RDEPENDS_${PN} += "${EXTRA_RDEPENDS}"
42
43BBCLASSEXTEND = "native"
diff --git a/meta/recipes-devtools/update-alternatives/update-alternatives-dpkg_1.16.0.3.bb b/meta/recipes-devtools/update-alternatives/update-alternatives-dpkg_1.16.0.3.bb
deleted file mode 100644
index f2931773b7..0000000000
--- a/meta/recipes-devtools/update-alternatives/update-alternatives-dpkg_1.16.0.3.bb
+++ /dev/null
@@ -1,8 +0,0 @@
1require update-alternatives-dpkg.inc
2
3PR = "${INC_PR}.0"
4
5LIC_FILES_CHKSUM = "file://COPYING;md5=751419260aa954499f7abaabaa882bbe"
6
7SRC_URI[md5sum] = "0266b06ef9da8278cea008d21e17e5f6"
8SRC_URI[sha256sum] = "69669720020e67629d70aa5325e3c20c05cae7a9fc2d8abd442672c7b29e31d3"