* [PATCH 1/6] update-alternatives.bbclass: use absolute paths for link targets
2012-12-29 5:19 [PATCH 0/6] Add the ability to use chkconfig's update-alternatives Christopher Larson
@ 2012-12-29 5:19 ` Christopher Larson
2012-12-29 5:19 ` [PATCH 2/6] opkg-native: obey virtual/update-alternatives-native Christopher Larson
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Christopher Larson @ 2012-12-29 5:19 UTC (permalink / raw)
To: openembedded-core; +Cc: Christopher Larson
From: Christopher Larson <chris_larson@mentor.com>
This improves compatibility, as both the debian update-alternatives and the
chkconfig alternatives require absolute paths.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
---
meta/classes/update-alternatives.bbclass | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/meta/classes/update-alternatives.bbclass b/meta/classes/update-alternatives.bbclass
index a3631ec..556ee7c 100644
--- a/meta/classes/update-alternatives.bbclass
+++ b/meta/classes/update-alternatives.bbclass
@@ -298,7 +298,7 @@ python populate_packages_prepend () {
continue
# Default to generate shell script.. eventually we may want to change this...
- alt_target = os.path.relpath(alt_target, os.path.dirname(alt_link))
+ alt_target = os.path.normpath(alt_target)
alt_setup_links += '\tupdate-alternatives --install %s %s %s %s\n' % (alt_link, alt_name, alt_target, alt_priority)
alt_remove_links += '\tupdate-alternatives --remove %s %s\n' % (alt_name, alt_target)
--
1.8.0
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 2/6] opkg-native: obey virtual/update-alternatives-native
2012-12-29 5:19 [PATCH 0/6] Add the ability to use chkconfig's update-alternatives Christopher Larson
2012-12-29 5:19 ` [PATCH 1/6] update-alternatives.bbclass: use absolute paths for link targets Christopher Larson
@ 2012-12-29 5:19 ` Christopher Larson
2012-12-29 5:19 ` [PATCH 3/6] chkconfig: don't inherit autotools Christopher Larson
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Christopher Larson @ 2012-12-29 5:19 UTC (permalink / raw)
To: openembedded-core; +Cc: Christopher Larson
From: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
---
meta/recipes-devtools/opkg/opkg.inc | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/meta/recipes-devtools/opkg/opkg.inc b/meta/recipes-devtools/opkg/opkg.inc
index f157188..47458ff 100644
--- a/meta/recipes-devtools/opkg/opkg.inc
+++ b/meta/recipes-devtools/opkg/opkg.inc
@@ -9,7 +9,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f \
file://src/opkg-cl.c;beginline=1;endline=20;md5=321f658c3f6b6c832e25c8850b5dffba"
PE = "1"
-INC_PR = "r11"
+INC_PR = "r12"
# Werror gives all kinds bounds issuses with gcc 4.3.3
do_configure_prepend() {
@@ -43,11 +43,17 @@ FILES_libopkg-dev = "${libdir}/*.la ${libdir}/*.so"
FILES_libopkg-staticdev = "${libdir}/*.a"
FILES_libopkg = "${libdir}/*.so.* ${localstatedir}/lib/opkg/"
-# We need to create the lock directory
do_install_append() {
+ # We need to create the lock directory
install -d ${D}${localstatedir}/lib/opkg
}
+do_install_append_class-native() {
+ if [ "${PREFERRED_PROVIDER_virtual/update-alternatives-native}" != "${PN}" ]; then
+ rm ${D}${bindir}/update-alternatives
+ fi
+}
+
pkg_postinst_${PN} () {
#!/bin/sh
if [ "x$D" != "x" ]; then
--
1.8.0
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 3/6] chkconfig: don't inherit autotools
2012-12-29 5:19 [PATCH 0/6] Add the ability to use chkconfig's update-alternatives Christopher Larson
2012-12-29 5:19 ` [PATCH 1/6] update-alternatives.bbclass: use absolute paths for link targets Christopher Larson
2012-12-29 5:19 ` [PATCH 2/6] opkg-native: obey virtual/update-alternatives-native Christopher Larson
@ 2012-12-29 5:19 ` Christopher Larson
2012-12-29 5:19 ` [PATCH 4/6] chkconfig: obey sysconfdir, base_libdir Christopher Larson
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: Christopher Larson @ 2012-12-29 5:19 UTC (permalink / raw)
To: openembedded-core; +Cc: Christopher Larson
From: Christopher Larson <chris_larson@mentor.com>
This buildsystem is not autoconf/automake, but make.
While we're at it, also make the install not hardcode the path to
/usr/share/locale.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
---
.../recipes-extended/chkconfig/chkconfig_1.3.58.bb | 24 ++++++++++++++--------
1 file changed, 15 insertions(+), 9 deletions(-)
diff --git a/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb b/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb
index fd7bd1a..7915594 100644
--- a/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb
+++ b/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb
@@ -12,23 +12,29 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"
DEPENDS = "libnewt popt"
-PR = "r4"
+PR = "r5"
SRC_URI = "http://fedorahosted.org/releases/c/h/chkconfig/${BPN}-${PV}.tar.bz2"
SRC_URI[md5sum] = "c2039ca67f2749fe0c06ef7c6f8ee246"
SRC_URI[sha256sum] = "18b497d25b2cada955c72810e45fcad8280d105f17cf45e2970f18271211de68"
-inherit autotools gettext
+inherit gettext
-# Makefile uses RPM_OPT_fLAGS to construct CFLAGS
+# Makefile uses RPM_OPT_FLAGS to construct CFLAGS
#
-EXTRA_OEMAKE += 'RPM_OPT_FLAGS="${CFLAGS}" MANDIR="${mandir}" \
- BINDIR="${base_sbindir}" SBINDIR="${sbindir}"'
-
-do_install_append() {
- mkdir -p ${D}${sysconfdir}/chkconfig.d
- rm -f ${D}${sbindir}/update-alternatives
+EXTRA_OEMAKE = "\
+ 'RPM_OPT_FLAGS=${CFLAGS}' \
+ 'LDFLAGS=${LDFLAGS}' \
+ 'BINDIR=${base_sbindir}' \
+ 'SBINDIR=${sbindir}' \
+ 'MANDIR=${mandir}' \
+"
+
+do_install() {
+ oe_runmake 'DESTDIR=${D}' 'INSTALLNLSDIR=${D}${datadir}/locale' install
+ mkdir -p ${D}${sysconfdir}/chkconfig.d
+ rm -f ${D}${sbindir}/update-alternatives
}
do_install_append_linuxstdbase() {
--
1.8.0
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 4/6] chkconfig: obey sysconfdir, base_libdir
2012-12-29 5:19 [PATCH 0/6] Add the ability to use chkconfig's update-alternatives Christopher Larson
` (2 preceding siblings ...)
2012-12-29 5:19 ` [PATCH 3/6] chkconfig: don't inherit autotools Christopher Larson
@ 2012-12-29 5:19 ` Christopher Larson
2012-12-29 5:19 ` [PATCH 5/6] chkconfig: package the update-alternatives implementation Christopher Larson
2012-12-29 5:19 ` [PATCH 6/6] chkconfig-alternatives-native-1.3.59: add recipe Christopher Larson
5 siblings, 0 replies; 7+ messages in thread
From: Christopher Larson @ 2012-12-29 5:19 UTC (permalink / raw)
To: openembedded-core; +Cc: Christopher Larson
From: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
---
meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
diff --git a/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb b/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb
index 7915594..df9b193 100644
--- a/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb
+++ b/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb
@@ -12,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"
DEPENDS = "libnewt popt"
-PR = "r5"
+PR = "r6"
SRC_URI = "http://fedorahosted.org/releases/c/h/chkconfig/${BPN}-${PV}.tar.bz2"
@@ -31,6 +31,12 @@ EXTRA_OEMAKE = "\
'MANDIR=${mandir}' \
"
+do_unpack[postfuncs] += "obey_variables"
+do_unpack[vardeps] += "obey_variables"
+obey_variables () {
+ sed -i -e 's,/etc,${sysconfdir},; s,/lib/systemd,${base_libdir}/systemd,' leveldb.h
+}
+
do_install() {
oe_runmake 'DESTDIR=${D}' 'INSTALLNLSDIR=${D}${datadir}/locale' install
mkdir -p ${D}${sysconfdir}/chkconfig.d
--
1.8.0
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 5/6] chkconfig: package the update-alternatives implementation
2012-12-29 5:19 [PATCH 0/6] Add the ability to use chkconfig's update-alternatives Christopher Larson
` (3 preceding siblings ...)
2012-12-29 5:19 ` [PATCH 4/6] chkconfig: obey sysconfdir, base_libdir Christopher Larson
@ 2012-12-29 5:19 ` Christopher Larson
2012-12-29 5:19 ` [PATCH 6/6] chkconfig-alternatives-native-1.3.59: add recipe Christopher Larson
5 siblings, 0 replies; 7+ messages in thread
From: Christopher Larson @ 2012-12-29 5:19 UTC (permalink / raw)
To: openembedded-core; +Cc: Christopher Larson
From: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
---
.../recipes-extended/chkconfig/chkconfig_1.3.58.bb | 26 ++++++++++++++++++----
1 file changed, 22 insertions(+), 4 deletions(-)
diff --git a/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb b/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb
index df9b193..4c6985f 100644
--- a/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb
+++ b/meta/recipes-extended/chkconfig/chkconfig_1.3.58.bb
@@ -1,5 +1,4 @@
SUMMARY = "A system tool for maintaining the /etc/rc*.d hierarchy"
-
DESCRIPTION = "Chkconfig is a basic system utility. It updates and queries runlevel \
information for system services. Chkconfig manipulates the numerous \
symbolic links in /etc/rc.d, to relieve system administrators of some \
@@ -11,8 +10,9 @@ LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=5574c6965ae5f583e55880e397fbb018"
DEPENDS = "libnewt popt"
+PROVIDES += "virtual/update-alternatives"
-PR = "r6"
+PR = "r7"
SRC_URI = "http://fedorahosted.org/releases/c/h/chkconfig/${BPN}-${PV}.tar.bz2"
@@ -29,18 +29,22 @@ EXTRA_OEMAKE = "\
'BINDIR=${base_sbindir}' \
'SBINDIR=${sbindir}' \
'MANDIR=${mandir}' \
+ 'ALTDIR=${localstatedir}/lib/alternatives' \
+ 'ALTDATADIR=${sysconfdir}/alternatives' \
"
do_unpack[postfuncs] += "obey_variables"
do_unpack[vardeps] += "obey_variables"
obey_variables () {
sed -i -e 's,/etc,${sysconfdir},; s,/lib/systemd,${base_libdir}/systemd,' leveldb.h
+ sed -i -e 's,/etc/alternatives,${sysconfdir}/alternatives,' \
+ -e 's,/var/lib/alternatives,${localstatedir}/lib/alternatives,' \
+ -e 's,/usr/share/locale,${datadir}/locale,' alternatives.c
}
do_install() {
oe_runmake 'DESTDIR=${D}' 'INSTALLNLSDIR=${D}${datadir}/locale' install
- mkdir -p ${D}${sysconfdir}/chkconfig.d
- rm -f ${D}${sbindir}/update-alternatives
+ install -d ${D}${sysconfdir}/chkconfig.d
}
do_install_append_linuxstdbase() {
@@ -49,4 +53,18 @@ do_install_append_linuxstdbase() {
ln -sf ${base_sbindir}/chkconfig ${D}/${libdir}/lsb/remove_initd
}
+PACKAGES =+ "${PN}-alternatives ${PN}-alternatives-doc"
+SUMMARY_${PN}-alternatives = "Maintain symbolic links determining default commands"
+DESCRIPTION_${PN}-alternatives = "alternatives creates, removes, maintains and displays \
+information about the symbolic links comprising the alternatives system."
+SUMMARY_${PN}-alternatives-doc = "${SUMMARY_${PN}-alternatives} - Documentation files"
+DESCRIPTION_${PN}-alternatives-doc = "${DESCRIPTION_${PN}-alternatives} \
+This package contains documentation."
+RPROVIDES_${PN}-alternatives += "update-alternatives"
+RCONFLICTS_${PN}-alternatives = "update-alternatives-cworth update-alternatives-dpkg"
+FILES_${PN}-alternatives = "${sbindir}/alternatives ${sbindir}/update-alternatives \
+ ${sysconfdir}/alternatives ${localstatedir}/lib/alternatives"
+FILES_${PN}-alternatives-doc = "${mandir}/man8/alternatives.8 \
+ ${mandir}/man8/update-alternatives.8"
+
FILES_${PN}_append_linuxstdbase += "${libdir}/lsb"
--
1.8.0
^ permalink raw reply related [flat|nested] 7+ messages in thread* [PATCH 6/6] chkconfig-alternatives-native-1.3.59: add recipe
2012-12-29 5:19 [PATCH 0/6] Add the ability to use chkconfig's update-alternatives Christopher Larson
` (4 preceding siblings ...)
2012-12-29 5:19 ` [PATCH 5/6] chkconfig: package the update-alternatives implementation Christopher Larson
@ 2012-12-29 5:19 ` Christopher Larson
5 siblings, 0 replies; 7+ messages in thread
From: Christopher Larson @ 2012-12-29 5:19 UTC (permalink / raw)
To: openembedded-core; +Cc: Christopher Larson
From: Christopher Larson <chris_larson@mentor.com>
This only builds alternatives, so avoids the libnewt and libpopt dependencies.
This uses 1.3.59 sources from git, with a couple commits of mine to add
--sysroot (and OPKG_OFFLINE_ROOT) support.
LIC_FILES_CHKSUM changed from 1.3.58 to 1.3.59, but only due to minor
formatting differences, not content/terms.
Signed-off-by: Christopher Larson <chris_larson@mentor.com>
---
.../chkconfig-alternatives-native_1.3.59.bb | 43 ++++++++++++++++++++++
1 file changed, 43 insertions(+)
create mode 100644 meta/recipes-extended/chkconfig/chkconfig-alternatives-native_1.3.59.bb
diff --git a/meta/recipes-extended/chkconfig/chkconfig-alternatives-native_1.3.59.bb b/meta/recipes-extended/chkconfig/chkconfig-alternatives-native_1.3.59.bb
new file mode 100644
index 0000000..4c72410
--- /dev/null
+++ b/meta/recipes-extended/chkconfig/chkconfig-alternatives-native_1.3.59.bb
@@ -0,0 +1,43 @@
+require recipes-extended/chkconfig/chkconfig_1.3.58.bb
+
+SUMMARY = "${SUMMARY_chkconfig-alternatives}"
+DESCRIPTION = "${DESCRIPTION_chkconfig-alternatives}"
+DEPENDS = ""
+PROVIDES = "${PN} virtual/update-alternatives-native"
+LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
+
+# The sysroot branch is 1.3.59 + some git commits from master + --sysroot
+# support for alternatives.
+SRC_URI = "git://github.com/kergoth/chkconfig;branch=sysroot"
+S = "${WORKDIR}/git"
+
+SRCREV = "cd437ecbd8986c894442f8fce1e0061e20f04dee"
+PV = "1.3.59+${SRCPV}"
+
+inherit native
+
+# We want our native recipes to build using the target paths rather than paths
+# into the sysroot, as we may use them to construct the rootfs. As such, we
+# only adjust the paths to match the metadata for the target, not native.
+obey_variables () {
+ sed -i 's,ALTERNATIVES_ROOT,OPKG_OFFLINE_ROOT,' alternatives.c
+}
+
+do_compile () {
+ oe_runmake alternatives
+}
+
+do_install () {
+ install -d ${D}${sysconfdir}/alternatives \
+ ${D}${localstatedir}/lib/alternatives
+
+ install -D -m 0755 alternatives ${D}${bindir}/alternatives
+ install -D -m 0644 alternatives.8 ${D}${mandir}/man8/alternatives.8
+
+ ln -s alternatives ${D}${bindir}/update-alternatives
+ ln -s alternatives.8 ${D}${mandir}/man8/update-alternatives.8
+}
+
+do_install_append_linuxstdbase() {
+ rm -rf ${D}${libdir}/lsb
+}
--
1.8.0
^ permalink raw reply related [flat|nested] 7+ messages in thread