[oe] [PATCH] upstart_0.3.11.bb: fix upstart sysvinit compat

Anatoly Shipitsin norguhtar at gmail.com
Wed Aug 25 11:13:42 UTC 2010


From: Anatoly Shipitsin <norguhtar at gmail.com>

* move shutdown to sysvinit package
* move killall5 to sysvinit-utils
* change PR = "r59"

Signed-off-by: Anatoly Shipitsin <norguhtar at gmail.com>

---
 recipes/upstart/upstart.inc       |  111 +++++++++++++++++++++++++++++++++++-
 recipes/upstart/upstart_0.3.11.bb |   15 ++++-
 recipes/upstart/upstart_0.3.8.bb  |   14 +++--
 3 files changed, 127 insertions(+), 13 deletions(-)


diff --git a/recipes/upstart/upstart.inc b/recipes/upstart/upstart.inc
index e67774a..7512133 100644
--- a/recipes/upstart/upstart.inc
+++ b/recipes/upstart/upstart.inc
@@ -4,7 +4,7 @@ DEPENDS = ""
 DESCRIPTION = "Event driven system init"
 LICENSE = "GPL"

-inherit autotools pkgconfig
+inherit autotools pkgconfig update-alternatives

 # --enable-compat builds halt, reboot, shutdown tools
 EXTRA_OECONF += "--enable-compat"
@@ -17,6 +17,109 @@ FILES_libupstart-dev += "${libdir}/libupstart.*
${includedir}/upstart/"

 # upstart-sysvcompat provides Sys V Init compatible tools: halt, reboot,
 # shutdown, telinit. These might be needed by other scripts.
-PACKAGES =+ "upstart-sysvcompat upstart-sysvtools-doc"
-FILES_upstart-sysvcompat += "${sbindir}/reboot ${sbindir}/halt
${sbindir}/shutdown ${sbindir}/telinit"
-FILES_upstart-sysvcompat-doc += "${mandir}/*/reboot.*
${mandir}/*/halt.* ${mandir}/*/shutdown.* ${mandir}/*/telinit.*"
+PACKAGES =+ "upstart-sysvcompat upstart-sysvcompat-doc"
+FILES_upstart-sysvcompat += " \
+    ${base_sbindir}/reboot.* ${base_sbindir}/halt.*
${base_sbindir}/poweroff.* \
+    ${base_sbindir}/shutdown.* ${base_sbindir}/telinit
${base_sbindir}/runlevel \
+    ${sysconfdir}/event.d/control-alt-delete \
+    ${sysconfdir}/event.d/rc* \
+    ${sysconfdir}/event.d/sulogin \
+    ${sysconfdir}/init.d \
+    ${sysconfdir}/default/rcS \
+"
+FILES_upstart-sysvcompat-doc += " \
+    ${mandir}/*/reboot.* ${mandir}/*/halt.* ${mandir}/*/poweroff.* \
+     ${mandir}/*/shutdown.* ${mandir}/*/telinit.* ${mandir}/*/runlevel.* \
+"
+
+ALTERNATIVE_NAME = "init"
+ALTERNATIVE_LINK = "${base_sbindir}/init"
+ALTERNATIVE_PATH = "${base_sbindir}/init.${PN}"
+ALTERNATIVE_PRIORITY = "60"
+

+EXTRA_OEMAKE += "'bindir=${base_bindir}' \
+                'sbindir=${base_sbindir}' \
+                'usrbindir=${bindir}' \
+                'usrsbindir=${sbindir}' \
+                'includedir=${includedir}' \
+                'mandir=${mandir}'"
+
+do_install () {
+       oe_runmake 'DESTDIR=${D}' install
+       install -d ${D}${sysconfdir}
+       install -d ${D}${sysconfdir}/default
+       install -d ${D}${sysconfdir}/init.d
+
+       install -m 0644 ${WORKDIR}/init/rcS-default
${D}${sysconfdir}/default/rcS
+       install -m 0755 ${WORKDIR}/init/rc              ${D}${sysconfdir}/init.d
+       install -m 0755 ${WORKDIR}/init/rcS             ${D}${sysconfdir}/init.d
+       install -m 0644 ${WORKDIR}/rc*
${D}${sysconfdir}/event.d
+       install -m 0644 ${WORKDIR}/control-alt-delete
${D}${sysconfdir}/event.d
+       install -m 0644 ${WORKDIR}/sulogin
${D}${sysconfdir}/event.d
+
+       if [ ! -z "${SERIAL_CONSOLE}" ]; then
+            cat <<EOF >> ${D}${sysconfdir}/event.d/tty-serial
+# tty-serial - getty
+#
+# This service maintains a getty on tty-serial from the point the system is
+# started until it is shut down again.
+
+start on runlevel 2
+start on runlevel 3
+start on runlevel 4
+start on runlevel 5
+
+stop on runlevel 0
+stop on runlevel 1
+stop on runlevel 6
+
+respawn
+exec ${base_sbindir}/getty ${SERIAL_CONSOLE}
+EOF
+       fi

+       if [ "${USE_VT}" = "1" ]; then
+           for n in ${SYSVINIT_ENABLED_GETTYS}
+           do
+            cat <<EOF >> ${D}${sysconfdir}/event.d/tty$n
+# tty$n - getty
+#
+# This service maintains a getty on tty$n from the point the system is
+# started until it is shut down again.
+
+start on runlevel 2
+start on runlevel 3
+start on runlevel 4
+start on runlevel 5
+
+stop on runlevel 0
+stop on runlevel 1
+stop on runlevel 6
+
+respawn
+exec ${base_sbindir}/getty 38400 tty$n
+EOF
+           done
+       fi
+
+       mv ${D}${base_sbindir}/init     ${D}${base_sbindir}/init.${PN}
+        mv ${D}${base_sbindir}/halt ${D}${base_sbindir}/halt.${PN}
+       mv ${D}${base_sbindir}/reboot ${D}${base_sbindir}/reboot.${PN}
+        mv ${D}${base_sbindir}/shutdown ${D}${base_sbindir}/shutdown.${PN}
+       mv ${D}${base_sbindir}/poweroff ${D}${base_sbindir}/poweroff.${PN}
+}
+
+pkg_postinst_${PN}-sysvcompat () {
+#!/bin/sh
+update-alternatives --install ${base_sbindir}/reboot reboot reboot.${PN} 200
+update-alternatives --install ${base_sbindir}/halt halt halt.${PN} 200
+update-alternatives --install ${base_sbindir}/poweroff poweroff
poweroff.${PN} 200
+update-alternatives --install ${base_sbindir}/shutdown shutdown
shutdown.${PN} 200
+}
+
+pkg_prerm_${PN}-sysvcompat () {

+#!/bin/sh
+update-alternatives --remove reboot reboot.${PN}
+update-alternatives --remove halt halt.${PN}
+update-alternatives --remove poweroff reboot.${PN}
+update-alternatives --remove shutdown shutdown.${PN}
+}
diff --git a/recipes/upstart/upstart_0.3.11.bb
b/recipes/upstart/upstart_0.3.11.bb
index c4db01b..a0bd17e 100644
--- a/recipes/upstart/upstart_0.3.11.bb
+++ b/recipes/upstart/upstart_0.3.11.bb
@@ -1,11 +1,18 @@
 require upstart.inc

-SRC_URI = "http://upstart.ubuntu.com/download/0.3/upstart-${PV}.tar.bz2 \
+SRC_URI = "http://upstart.ubuntu.com/download/0.3/upstart-${PV}.tar.bz2;name=upstart
\
+    http://upstart.ubuntu.com/download/example-jobs/0.3/example-jobs-${PV}.tar.gz;name=compat
\
+    file://init/rcS-default file://init/rc file://init/rcS \
 "

 RRECOMMENDS_${PN} = "libupstart upstart-sysvcompat"

-PR = "r1"
+PR = "r2"

-SRC_URI[md5sum] = "a9e475e1458c876add0441d9d4cfe9c0"
-SRC_URI[sha256sum] =
"d4f7fff9112049eab318518719735d0ac66ff558ed91c2d7c7c41124de2832b6"
+USE_VT ?= "1"
+SYSVINIT_ENABLED_GETTYS ?= "1"
+
+SRC_URI[upstart.md5sum] = "a9e475e1458c876add0441d9d4cfe9c0"
+SRC_URI[upstart.sha256sum] =
"d4f7fff9112049eab318518719735d0ac66ff558ed91c2d7c7c41124de2832b6"
+SRC_URI[compat.md5sum] = "22d66ef8bc9d167eb822bbfecb584107"
+SRC_URI[compat.sha256sum] =
"f53fae7258fcf67cb29d344e53e1548171e4781af11ff4ba92b8b81caab3c315"
diff --git a/recipes/upstart/upstart_0.3.8.bb b/recipes/upstart/upstart_0.3.8.bb
index 1b2cfb5..baf00d2 100644
--- a/recipes/upstart/upstart_0.3.8.bb
+++ b/recipes/upstart/upstart_0.3.8.bb
@@ -1,10 +1,14 @@
 require upstart.inc

-SRC_URI = "http://upstart.ubuntu.com/download/0.3/upstart-${PV}.tar.bz2 \
+SRC_URI = "http://upstart.ubuntu.com/download/0.3/upstart-${PV}.tar.bz2;name=upstart
\
+    http://upstart.ubuntu.com/download/example-jobs/0.3/example-jobs-${PV}.tar.gz;name=compat
\
+    file://init/rcS-default file://init/rc file://init/rcS \

+    file://autoconf_version.patch \
+"

 PR = "r1"

-
-SRC_URI[md5sum] = "5cdd2dc3a3f02089c9450edf4e8f4941"
-SRC_URI[sha256sum] =
"9a2a37455ad4e9dd2856b5a0f15adb1a3f84439f60d0f63b041584a2666e9835"
+SRC_URI[upstart.md5sum] = "5cdd2dc3a3f02089c9450edf4e8f4941"
+SRC_URI[upstart.sha256sum] =
"9a2a37455ad4e9dd2856b5a0f15adb1a3f84439f60d0f63b041584a2666e9835"
+SRC_URI[compat.md5sum] = "22d66ef8bc9d167eb822bbfecb584107"
+SRC_URI[compat.sha256sum] =
"f53fae7258fcf67cb29d344e53e1548171e4781af11ff4ba92b8b81caab3c315"




More information about the Openembedded-devel mailing list