xfstests_2025.04.27.bb 2.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. SUMMARY = "File system QA test suite"
  2. LICENSE = "GPL-2.0-only"
  3. LIC_FILES_CHKSUM = "file://LICENSES/GPL-2.0;md5=74274e8a218423e49eefdea80bc55038"
  4. SRCREV = "92c428db1fe3fa4f7bd2593788bc9b71403d59ae"
  5. SRCREV_unionmount = "c6ab621ac19f2b96d34cd98f244e611750e2bb23"
  6. SRCREV_FORMAT = "default_unionmount"
  7. SRC_URI = "git://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git;branch=master;tag=v${PV} \
  8. git://github.com/amir73il/unionmount-testsuite.git;branch=master;protocol=https;name=unionmount;destsuffix=unionmount-testsuite \
  9. file://0001-add-missing-FTW_-macros-when-not-available-in-libc.patch \
  10. file://0002-Drop-detached_mounts_propagation-and-remove-sys-moun.patch \
  11. file://0001-include-libgen.h-for-basename-API-prototype.patch \
  12. file://0002-Add-missing-STATX_ATTR_-defines-from-musl-sys-stat.h.patch \
  13. file://0001-bstat-use-uint32_t-instead-of-__uint32_t-to-fix-buil.patch \
  14. "
  15. S = "${WORKDIR}/git"
  16. # brokensep because m4/package_globals.m4 calls ". ./VERSION" (and that's not the only issue)
  17. inherit autotools-brokensep useradd pkgconfig
  18. DEPENDS += "xfsprogs acl"
  19. RDEPENDS:${PN} += "\
  20. bash \
  21. bc \
  22. coreutils \
  23. e2fsprogs \
  24. e2fsprogs-tune2fs \
  25. e2fsprogs-resize2fs \
  26. libaio \
  27. libcap-bin \
  28. overlayfs-tools \
  29. perl \
  30. python3 \
  31. python3-core \
  32. xfsprogs \
  33. acl \
  34. gawk \
  35. util-linux-mkfs \
  36. util-linux-mount \
  37. util-linux-findmnt \
  38. inetutils-hostname \
  39. grep \
  40. "
  41. USERADD_PACKAGES = "${PN}"
  42. # these users are necessary to run the tests
  43. USERADD_PARAM:${PN} = "-U -m fsgqa; -N 123456-fsgqa; -N fsgqa2"
  44. EXTRA_OECONF = "INSTALL_USER=root INSTALL_GROUP=root"
  45. TARGET_CC_ARCH:append:libc-musl = " -D_LARGEFILE64_SOURCE"
  46. do_configure:prepend() {
  47. # this is done by Makefile configure target, but we don't call it in do_configure
  48. cp -a ${S}/include/install-sh .
  49. }
  50. do_install() {
  51. # otherwise install-sh duplicates DESTDIR prefix
  52. export DIST_ROOT="/" DIST_MANIFEST="" DESTDIR="${D}"
  53. oe_runmake install
  54. unionmount_target_dir=${D}${prefix}/xfstests/unionmount-testsuite
  55. install -d $unionmount_target_dir/tests
  56. install ${UNPACKDIR}/unionmount-testsuite/tests/* -t $unionmount_target_dir/tests
  57. install ${UNPACKDIR}/unionmount-testsuite/*.py -t $unionmount_target_dir
  58. install ${UNPACKDIR}/unionmount-testsuite/run -t $unionmount_target_dir
  59. install ${UNPACKDIR}/unionmount-testsuite/README -t $unionmount_target_dir
  60. }
  61. FILES:${PN} += "${prefix}/xfstests"
  62. # This one is reproducible only on 32bit MACHINEs
  63. # http://errors.yoctoproject.org/Errors/Details/766963/
  64. # lstat64.c:65:14: error: passing argument 1 of 'time' from incompatible pointer type [-Wincompatible-pointer-types]
  65. # bstat.c:18:19: error: passing argument 1 of 'ctime' from incompatible pointer type [-Wincompatible-pointer-types]
  66. CFLAGS += "-Wno-error=incompatible-pointer-types"