diff options
author | Laurentiu Palcu <laurentiu.palcu@intel.com> | 2013-05-23 11:03:56 +0300 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2013-06-11 15:38:04 +0100 |
commit | 76cd8a776b02385945ad13ce79bbe1c33d8bad9b (patch) | |
tree | 9dcab44beb956d59dad58696cdfffb7679d406af /meta/recipes-devtools/dpkg | |
parent | 98ce0b727baa359a1e6388dd570186099df3983a (diff) | |
download | poky-76cd8a776b02385945ad13ce79bbe1c33d8bad9b.tar.gz |
run-postinsts: make it generic
This recipe is used only when the package manager is not deployed on
target and there still are delayed postinstalls that need to be run on
target. At the moment, run-postinsts is targeted to dpkg/opkg. RPM uses another
recipe, called rpm-postinsts which, in turn, is used even when the rpm
package is deployed.
This patch intends to make run-postinsts generic and deprecate
rpm-postinsts. Here's why:
* when opkg/dpkg are not deplyed, the meta-data files are useless.
Hence, the awk script is not needed. The postinstall files are already
saved in /etc/(deb|ipk)-postinsts directory and we can use the same
procedure as in rpm's case;
Also, the recipe is moved out from meta/recipes-devel/dpkg to
meta/recipes-devel/run-postinsts.
(From OE-Core rev: 0222e6740ee4670bbf42d246ab3ecad415ffcdee)
Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/dpkg')
-rwxr-xr-x | meta/recipes-devtools/dpkg/run-postinsts/run-postinsts | 36 | ||||
-rw-r--r-- | meta/recipes-devtools/dpkg/run-postinsts/run-postinsts.awk | 30 | ||||
-rw-r--r-- | meta/recipes-devtools/dpkg/run-postinsts_1.0.bb | 29 |
3 files changed, 0 insertions, 95 deletions
diff --git a/meta/recipes-devtools/dpkg/run-postinsts/run-postinsts b/meta/recipes-devtools/dpkg/run-postinsts/run-postinsts deleted file mode 100755 index 5f6442cbe3..0000000000 --- a/meta/recipes-devtools/dpkg/run-postinsts/run-postinsts +++ /dev/null | |||
@@ -1,36 +0,0 @@ | |||
1 | #!/bin/sh | ||
2 | # | ||
3 | # Copyright 2007 Openedhand Ltd. | ||
4 | # | ||
5 | # Author: Richard Purdie <rpurdie@openedhand.com> | ||
6 | # | ||
7 | |||
8 | PKGSYSTEM=/var/lib/dpkg | ||
9 | |||
10 | if [ ! -e $PKGSYSTEM/status ]; then | ||
11 | if [ -e /var/lib/opkg/status ]; then | ||
12 | PKGSYSTEM=/var/lib/opkg | ||
13 | else | ||
14 | echo "No package system found" | ||
15 | exit 1 | ||
16 | fi | ||
17 | fi | ||
18 | |||
19 | STAMP=$PKGSYSTEM/postinsts-done | ||
20 | STATFILE=$PKGSYSTEM/status | ||
21 | STATFILE2=$PKGSYSTEM/status2 | ||
22 | |||
23 | if [ -e $STAMP ]; then | ||
24 | exit 0 | ||
25 | fi | ||
26 | |||
27 | awk -f /usr/share/run-postinsts/run-postinsts.awk $STATFILE > $STATFILE2 | ||
28 | if [ $? = 0 ]; then | ||
29 | mv $STATFILE2 $STATFILE | ||
30 | touch $STAMP | ||
31 | exit 0 | ||
32 | else | ||
33 | rm -f $STATFILE2 | ||
34 | rm -f $STAMP | ||
35 | exit 1 | ||
36 | fi | ||
diff --git a/meta/recipes-devtools/dpkg/run-postinsts/run-postinsts.awk b/meta/recipes-devtools/dpkg/run-postinsts/run-postinsts.awk deleted file mode 100644 index cbc8d1a109..0000000000 --- a/meta/recipes-devtools/dpkg/run-postinsts/run-postinsts.awk +++ /dev/null | |||
@@ -1,30 +0,0 @@ | |||
1 | # | ||
2 | # Copyright 2007 Openedhand Ltd. | ||
3 | # | ||
4 | # Author: Richard Purdie <rpurdie@openedhand.com> | ||
5 | # | ||
6 | # Rather hacky proof of concept | ||
7 | # | ||
8 | |||
9 | BEGIN { | ||
10 | rc=system("test -d /var/lib/dpkg/info/") | ||
11 | if (rc==0) | ||
12 | pkgdir="/var/lib/dpkg/info" | ||
13 | else | ||
14 | pkgdir="/var/lib/opkg/info" | ||
15 | package="" | ||
16 | } | ||
17 | /Package:.*/ { | ||
18 | package = substr($0, 10) | ||
19 | } | ||
20 | /Status:.*unpacked.*/ { | ||
21 | print "Configuring: " package > "/dev/stderr" | ||
22 | ret = system(pkgdir "/" package ".postinst 1>&2") | ||
23 | if (ret == 0) | ||
24 | $0 = gensub("unpacked", "installed", 1) | ||
25 | else | ||
26 | print "Postinstall failed for " package > "/dev/stderr" | ||
27 | } | ||
28 | { | ||
29 | print $0 | ||
30 | } | ||
diff --git a/meta/recipes-devtools/dpkg/run-postinsts_1.0.bb b/meta/recipes-devtools/dpkg/run-postinsts_1.0.bb deleted file mode 100644 index 4c9b2fd75a..0000000000 --- a/meta/recipes-devtools/dpkg/run-postinsts_1.0.bb +++ /dev/null | |||
@@ -1,29 +0,0 @@ | |||
1 | DESCRIPTION = "Run postinstall scripts on device using awk" | ||
2 | SECTION = "devel" | ||
3 | PR = "r9" | ||
4 | LICENSE = "MIT" | ||
5 | LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \ | ||
6 | file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420" | ||
7 | |||
8 | SRC_URI = "file://run-postinsts file://run-postinsts.awk" | ||
9 | |||
10 | INITSCRIPT_NAME = "run-postinsts" | ||
11 | INITSCRIPT_PARAMS = "start 98 S ." | ||
12 | |||
13 | inherit update-rc.d | ||
14 | |||
15 | do_configure() { | ||
16 | : | ||
17 | } | ||
18 | |||
19 | do_compile () { | ||
20 | : | ||
21 | } | ||
22 | |||
23 | do_install() { | ||
24 | install -d ${D}${sysconfdir}/init.d/ | ||
25 | install -m 0755 ${WORKDIR}/run-postinsts ${D}${sysconfdir}/init.d/ | ||
26 | |||
27 | install -d ${D}${datadir}/${BPN}/ | ||
28 | install -m 0644 ${WORKDIR}/run-postinsts.awk ${D}${datadir}/${BPN}/ | ||
29 | } | ||