mirror of
https://git.yoctoproject.org/poky
synced 2026-05-02 18:32:15 +02:00
ACL's ptest has a handful of failure modes which can be triggered by a restrictive or small system. First, the ptest requires that daemon be in the bin group, which run-ptest attempts to do using gpasswd, but gpasswd is part of shadow, and oe-core removes shadow when it doesn't think shadow will be needed. Even if, say, a package has RDEPENDS on it. Whoops. So we manually sed the group file. This will probably work. Second, the filesystem used for the test has to support ACLs, so we create a dummy ext3 filesystem and use that. Third, the root/permissions test relies on the assumption that "mkdir d" produces a directory which non-root users can access, but in a secure product which defaults to umask 077, this doesn't work. (That fix has been separately reported to upstream acl through their bug report form.) (This may prevent the test from running without mkfs.ext3, but it allows the test to run on targets where root doesn't have ACL support. Tradeoffs, tradeoffs everywhere.) (From OE-Core rev: 0f1054e7db74bb4a196e00773915d7997b55bdf2) Signed-off-by: Peter Seebach <peter.seebach@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
43 lines
1.4 KiB
PHP
43 lines
1.4 KiB
PHP
SUMMARY = "Utilities for managing POSIX Access Control Lists"
|
|
HOMEPAGE = "http://savannah.nongnu.org/projects/acl/"
|
|
SECTION = "libs"
|
|
|
|
LICENSE = "LGPLv2.1+ & GPLv2+"
|
|
LICENSE_${PN} = "GPLv2+"
|
|
LICENSE_lib${BPN} = "LGPLv2.1+"
|
|
LIC_FILES_CHKSUM = "file://doc/COPYING;md5=c781d70ed2b4d48995b790403217a249 \
|
|
file://doc/COPYING.LGPL;md5=9e9a206917f8af112da634ce3ab41764"
|
|
|
|
DEPENDS = "attr"
|
|
SRC_URI = "${SAVANNAH_GNU_MIRROR}/acl/${BP}.src.tar.gz \
|
|
file://run-ptest \
|
|
file://acl-fix-the-order-of-expected-output-of-getfacl.patch \
|
|
file://test-fix-insufficient-quoting-of.patch \
|
|
file://test-fixups-on-SELinux-machines-for-root-testcases.patch \
|
|
file://test-fix-directory-permissions.patch \
|
|
"
|
|
|
|
require ea-acl.inc
|
|
|
|
# avoid RPATH hardcode to staging dir
|
|
do_configure_append() {
|
|
sed -i ${S}/config.status -e s,^\\\(hardcode_into_libs=\\\).*$,\\1\'no\',
|
|
${S}/config.status
|
|
}
|
|
|
|
# libdir should point to .la
|
|
do_install_append() {
|
|
sed -i ${D}${libdir}/libacl.la -e \
|
|
s,^libdir=\'${base_libdir}\'$,libdir=\'${libdir}\',
|
|
}
|
|
|
|
inherit ptest
|
|
|
|
do_install_ptest() {
|
|
tar -cf - test/ --exclude nfs | ( cd ${D}${PTEST_PATH} && tar -xf - )
|
|
mkdir ${D}${PTEST_PATH}/include
|
|
cp ${S}/include/builddefs ${S}/include/buildmacros ${S}/include/buildrules ${D}${PTEST_PATH}/include/
|
|
}
|
|
|
|
RDEPENDS_${PN}-ptest = "acl bash coreutils perl perl-module-filehandle perl-module-getopt-std perl-module-posix shadow"
|