From 73f2b69b17e5364388faf0f31275c3c69fb31030 Mon Sep 17 00:00:00 2001 From: Saul Wold Date: Thu, 6 Nov 2014 16:19:26 -0800 Subject: libcap: Upgrade to 2.24 Tarballs moved to kernel.org Deleted upstream'ed patch merged minimal .bb with .inc Check for security dir before moving it when pam is enabled. Signed-off-by: Saul Wold Signed-off-by: Richard Purdie --- meta/recipes-support/libcap/libcap.inc | 70 --------------------- .../libcap/libcap/fix-CAP_LAST_CAP.patch | 39 ------------ meta/recipes-support/libcap/libcap_2.22.bb | 6 -- meta/recipes-support/libcap/libcap_2.24.bb | 72 ++++++++++++++++++++++ 4 files changed, 72 insertions(+), 115 deletions(-) delete mode 100644 meta/recipes-support/libcap/libcap.inc delete mode 100644 meta/recipes-support/libcap/libcap/fix-CAP_LAST_CAP.patch delete mode 100644 meta/recipes-support/libcap/libcap_2.22.bb create mode 100644 meta/recipes-support/libcap/libcap_2.24.bb (limited to 'meta/recipes-support/libcap') diff --git a/meta/recipes-support/libcap/libcap.inc b/meta/recipes-support/libcap/libcap.inc deleted file mode 100644 index 0e28ea04a9..0000000000 --- a/meta/recipes-support/libcap/libcap.inc +++ /dev/null @@ -1,70 +0,0 @@ -SUMMARY = "Library for getting/setting POSIX.1e capabilities" -HOMEPAGE = "http://sites.google.com/site/fullycapable/" - -# no specific GPL version required -LICENSE = "BSD | GPLv2" -LIC_FILES_CHKSUM = "file://License;md5=3f84fd6f29d453a56514cb7e4ead25f1" - -DEPENDS = "perl-native-runtime" - -SRC_URI = "${DEBIAN_MIRROR}/main/libc/libcap2/${BPN}2_${PV}.orig.tar.gz \ - file://fix-CAP_LAST_CAP.patch" - -PR = "r1" - -inherit lib_package - -# do NOT pass target cflags to host compilations -# -do_configure() { - # libcap uses := for compilers, fortunately, it gives us a hint - # on what should be replaced with ?= - sed -e 's,:=,?=,g' -i Make.Rules - sed -e 's,^BUILD_CFLAGS ?= $(.*CFLAGS),BUILD_CFLAGS := $(BUILD_CFLAGS),' -i Make.Rules - - # disable gperf detection - sed -e '/shell gperf/cifeq (,yes)' -i libcap/Makefile -} - -PACKAGECONFIG ??= "attr ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)}" -PACKAGECONFIG_class-native ??= "" - -PACKAGECONFIG[attr] = "LIBATTR=yes,LIBATTR=no,attr" -PACKAGECONFIG[pam] = "PAM_CAP=yes,PAM_CAP=no,libpam" - -EXTRA_OEMAKE += " \ - INDENT= \ - lib=${@os.path.basename('${libdir}')} \ - RAISE_SETFCAP=no \ -" - -EXTRA_OEMAKE_append_class-target = " SYSTEM_HEADERS=${STAGING_INCDIR}" - -do_compile() { - oe_runmake ${EXTRA_OECONF} -} - -do_install() { - oe_runmake install \ - ${EXTRA_OECONF} \ - DESTDIR="${D}" \ - prefix="${prefix}" \ - SBINDIR="${D}${sbindir}" -} - -do_install_append() { - # Move the library to base_libdir - install -d ${D}${base_libdir} - if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then - mv ${D}${libdir}/* ${D}${base_libdir} - rmdir ${D}${libdir} - fi -} - -FILES_${PN}-dev += "${base_libdir}/*.so" - -# pam files -FILES_${PN} += "${base_libdir}/security/*.so" -FILES_${PN}-dbg += "${base_libdir}/security/.debug/*.so" - -BBCLASSEXTEND = "native nativesdk" diff --git a/meta/recipes-support/libcap/libcap/fix-CAP_LAST_CAP.patch b/meta/recipes-support/libcap/libcap/fix-CAP_LAST_CAP.patch deleted file mode 100644 index a5571883d3..0000000000 --- a/meta/recipes-support/libcap/libcap/fix-CAP_LAST_CAP.patch +++ /dev/null @@ -1,39 +0,0 @@ -fix CAP_LAST_CAP - -Upstream-Status: pending - -Two new capability CAP_BLOCK_SUSPEND and CAP_WAKE_ALARM have been added into -kernel, but libcap did not update them. -Once libcap uses its capability.h (the default value of KERNEL_HEADERS), and -application always use capability.h from kernel, that will make cap_get_flag -return wrong value. - -Signed-off-by: Roy Li ---- - libcap/include/linux/capability.h | 10 +++++++++- - 1 file changed, 9 insertions(+), 1 deletion(-) - -diff --git a/libcap/include/linux/capability.h b/libcap/include/linux/capability.h -index 4924f2a..57026be 100644 ---- a/libcap/include/linux/capability.h -+++ b/libcap/include/linux/capability.h -@@ -360,7 +360,15 @@ struct cpu_vfs_cap_data { - CAP_SYS_ADMIN is not acceptable anymore. */ - #define CAP_SYSLOG 34 - --#define CAP_LAST_CAP CAP_SYSLOG -+/* Allow triggering something that will wake the system */ -+ -+#define CAP_WAKE_ALARM 35 -+ -+/* Allow preventing system suspends */ -+ -+#define CAP_BLOCK_SUSPEND 36 -+ -+#define CAP_LAST_CAP CAP_BLOCK_SUSPEND - - #define cap_valid(x) ((x) >= 0 && (x) <= CAP_LAST_CAP) - --- -1.7.10.4 - diff --git a/meta/recipes-support/libcap/libcap_2.22.bb b/meta/recipes-support/libcap/libcap_2.22.bb deleted file mode 100644 index a989bb6a6b..0000000000 --- a/meta/recipes-support/libcap/libcap_2.22.bb +++ /dev/null @@ -1,6 +0,0 @@ -require libcap.inc - -PR = "r6" - -SRC_URI[md5sum] = "b4896816b626bea445f0b3849bdd4077" -SRC_URI[sha256sum] = "e1cae65d8febf2579be37c255d2e058715785ead481a4e6a4357a06aff84721f" diff --git a/meta/recipes-support/libcap/libcap_2.24.bb b/meta/recipes-support/libcap/libcap_2.24.bb new file mode 100644 index 0000000000..75cf5d415d --- /dev/null +++ b/meta/recipes-support/libcap/libcap_2.24.bb @@ -0,0 +1,72 @@ +SUMMARY = "Library for getting/setting POSIX.1e capabilities" +HOMEPAGE = "http://sites.google.com/site/fullycapable/" + +# no specific GPL version required +LICENSE = "BSD | GPLv2" +LIC_FILES_CHKSUM = "file://License;md5=3f84fd6f29d453a56514cb7e4ead25f1" + +DEPENDS = "perl-native-runtime" + +SRC_URI = "${KERNELORG_MIRROR}/linux/libs/security/linux-privs/${BPN}2/${BPN}-${PV}.tar.xz" + +SRC_URI[md5sum] = "d43ab9f680435a7fff35b4ace8d45b80" +SRC_URI[sha256sum] = "cee4568f78dc851d726fc93f25f4ed91cc223b1fe8259daa4a77158d174e6c65" + +inherit lib_package + +# do NOT pass target cflags to host compilations +# +do_configure() { + # libcap uses := for compilers, fortunately, it gives us a hint + # on what should be replaced with ?= + sed -e 's,:=,?=,g' -i Make.Rules + sed -e 's,^BUILD_CFLAGS ?= $(.*CFLAGS),BUILD_CFLAGS := $(BUILD_CFLAGS),' -i Make.Rules + + # disable gperf detection + sed -e '/shell gperf/cifeq (,yes)' -i libcap/Makefile +} + +PACKAGECONFIG ??= "attr ${@bb.utils.contains('DISTRO_FEATURES', 'pam', 'pam', '', d)}" +PACKAGECONFIG_class-native ??= "" + +PACKAGECONFIG[attr] = "LIBATTR=yes,LIBATTR=no,attr" +PACKAGECONFIG[pam] = "PAM_CAP=yes,PAM_CAP=no,libpam" + +EXTRA_OEMAKE += " \ + INDENT= \ + lib=${@os.path.basename('${libdir}')} \ + RAISE_SETFCAP=no \ +" + +EXTRA_OEMAKE_append_class-target = " SYSTEM_HEADERS=${STAGING_INCDIR}" + +do_compile() { + oe_runmake ${EXTRA_OECONF} +} + +do_install() { + oe_runmake install \ + ${EXTRA_OECONF} \ + DESTDIR="${D}" \ + prefix="${prefix}" \ + SBINDIR="${D}${sbindir}" +} + +do_install_append() { + # Move the library to base_libdir + install -d ${D}${base_libdir} + if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then + mv ${D}${libdir}/libcap* ${D}${base_libdir} + if [ -d ${D}${libdir}/security ]; then + mv ${D}${libdir}/security ${D}${base_libdir} + fi + fi +} + +FILES_${PN}-dev += "${base_libdir}/*.so" + +# pam files +FILES_${PN} += "${base_libdir}/security/*.so" +FILES_${PN}-dbg += "${base_libdir}/security/.debug/*.so" + +BBCLASSEXTEND = "native nativesdk" -- cgit 1.2.3-korg