blob: fdfe045749e6d372e20e7c88645a6cca6ec9e056 [file] [log] [blame]
Andrew Geissler517393d2023-01-13 08:55:19 -06001SUMMARY = "File system QA test suite"
2LICENSE = "GPL-2.0-only"
3LIC_FILES_CHKSUM = "file://LICENSES/GPL-2.0;md5=74274e8a218423e49eefdea80bc55038"
4
5SRCREV_FORMAT = "xfstests_unionmount"
6
7SRC_URI = "git://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git;branch=master;name=xfstests \
8 git://github.com/amir73il/unionmount-testsuite.git;branch=master;protocol=https;name=unionmount;destsuffix=unionmount-testsuite \
9 file://0001-Add-a-return-type-to-aio_rw.patch \
10 file://0002-Drop-detached_mounts_propagation-and-remove-sys-moun.patch \
Andrew Geisslerfc113ea2023-03-31 09:59:46 -050011 file://0001-m4-Check-for-FTW_ACTIONRETVAL-along-with-nftw.patch \
Andrew Geissler517393d2023-01-13 08:55:19 -060012 "
13
Andrew Geisslerfc113ea2023-03-31 09:59:46 -050014SRCREV_xfstests = "f7765774a1b5cb98c2f21a892e82b3421f40e791"
Andrew Geissler517393d2023-01-13 08:55:19 -060015SRCREV_unionmount = "e3825b16b46f4c4574a1a69909944c059835f914"
16
17S = "${WORKDIR}/git"
18
19inherit autotools-brokensep useradd
20
21DEPENDS += "xfsprogs acl"
22RDEPENDS:${PN} += "\
23 bash \
24 bc \
25 coreutils \
26 e2fsprogs \
27 e2fsprogs-tune2fs \
28 e2fsprogs-resize2fs \
29 libaio \
30 libcap-bin \
31 overlayfs-progs \
32 perl \
33 python3 \
34 python3-core \
35 xfsprogs \
36 acl \
37"
38
39USERADD_PACKAGES = "${PN}"
40# these users are necessary to run the tests
41USERADD_PARAM:${PN} = "-U -m fsgqa; -N 123456-fsgqa; -N fsgqa2"
42
43EXTRA_OECONF = "INSTALL_USER=root INSTALL_GROUP=root"
44
45TARGET_CC_ARCH:append:libc-musl = " -D_LARGEFILE64_SOURCE"
46# install-sh script in the project is outdated
47# we use the one from the latest libtool to solve installation issues
48# It looks like the upstream is not interested in having it fixed :(
49# https://www.spinics.net/lists/fstests/msg16981.html
50do_configure:prepend() {
51 cp ${STAGING_DIR_NATIVE}${datadir}/libtool/build-aux/install-sh ${B}
52}
53
54do_install:append() {
55 unionmount_target_dir=${D}/usr/xfstests/unionmount-testsuite
56 install -d ${D}/usr/xfstests/unionmount-testsuite/tests
57 install -D ${WORKDIR}/unionmount-testsuite/tests/* -t $unionmount_target_dir/tests
58 install ${WORKDIR}/unionmount-testsuite/*.py -t $unionmount_target_dir
59 install ${WORKDIR}/unionmount-testsuite/run -t $unionmount_target_dir
60 install ${WORKDIR}/unionmount-testsuite/README -t $unionmount_target_dir
61}
62
63FILES:${PN} += "\
64 /usr/xfstests \
65"