Files
poky/meta/recipes-support/libcap/libcap_2.32.bb
Joshua Watt e92b9b6bf6 libcap: Use specific BSD license variant
Make the license more accurate by specifying the specific variant of BSD
license instead of the generic one. This helps with SPDX license
attribution as "BSD" is not a valid SPDX license.

(From OE-Core rev: 9e8b2bc55792932e23d3b053b393b7ff88bffd6b)

(From OE-Core rev: 8f374ea044d5c3d2ea81917b3480149ca036674c)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Nisha Parrakat <nisha.m.parrakat@bmw.de>
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2022-02-16 09:48:51 +00:00

80 lines
2.4 KiB
BlitzBasic

SUMMARY = "Library for getting/setting POSIX.1e capabilities"
DESCRIPTION = "A library providing the API to access POSIX capabilities. \
These allow giving various kinds of specific privileges to individual \
users, without giving them full root permissions."
HOMEPAGE = "http://sites.google.com/site/fullycapable/"
# no specific GPL version required
LICENSE = "BSD-3-Clause | GPLv2"
LIC_FILES_CHKSUM = "file://License;md5=3f84fd6f29d453a56514cb7e4ead25f1"
DEPENDS = "hostperl-runtime-native gperf-native"
SRC_URI = "${KERNELORG_MIRROR}/linux/libs/security/linux-privs/${BPN}2/${BPN}-${PV}.tar.xz \
file://0001-ensure-the-XATTR_NAME_CAPS-is-defined-when-it-is-use.patch \
file://0002-tests-do-not-run-target-executables.patch \
file://0001-tests-do-not-statically-link-a-test.patch \
"
SRC_URI[md5sum] = "7416119c9fdcfd0e8dd190a432c668e9"
SRC_URI[sha256sum] = "1005e3d227f2340ad1e3360ef8b69d15e3c72a29c09f4894d7aac038bd26e2be"
UPSTREAM_CHECK_URI = "https://www.kernel.org/pub/linux/libs/security/linux-privs/${BPN}2/"
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
}
PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'pam', d)}"
PACKAGECONFIG_class-native ??= ""
PACKAGECONFIG[pam] = "PAM_CAP=yes,PAM_CAP=no,libpam"
EXTRA_OEMAKE = " \
INDENT= \
lib='${baselib}' \
RAISE_SETFCAP=no \
DYNAMIC=yes \
BUILD_GPERF=yes \
"
EXTRA_OEMAKE_append_class-target = " SYSTEM_HEADERS=${STAGING_INCDIR}"
# these are present in the libcap defaults, so include in our CFLAGS too
CFLAGS += "-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64"
do_compile() {
oe_runmake ${PACKAGECONFIG_CONFARGS}
}
do_install() {
oe_runmake install \
${PACKAGECONFIG_CONFARGS} \
DESTDIR="${D}" \
prefix="${prefix}" \
SBINDIR="${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"
BBCLASSEXTEND = "native nativesdk"