Complete Yocto mirror with license table for TQMa6UL (2038-compliance)
- 264 license table entries with exact download URLs (224/264 resolved) - Complete sources/ directory with all BitBake recipes - Build configuration: tqma6ul-multi-mba6ulx, spaetzle (musl) - Full traceability for Softwarefreigabeantrag - GCC 13.4.0, Linux 6.6.102, U-Boot 2023.04, musl 1.2.4 - License distribution: GPL-2.0 (24), MIT (23), GPL-2.0+ (18), BSD-3 (16)
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
From 12ba95281d0bbea3576350d635b4dee0f953b94a Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Tue, 29 Nov 2022 18:38:07 -0800
|
||||
Subject: [PATCH] libau: Do not build LFS version of readdir
|
||||
|
||||
rdu64 is providing largefile supported version of readdir and readdir_r
|
||||
however, we enable largefile support unconditionally in OE therefore its
|
||||
not needed since readdir() and readdir_r() are already LFS capable
|
||||
|
||||
Upstream-Status: Inappropriate [OE-Specific]
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
libau/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/libau/Makefile b/libau/Makefile
|
||||
index 9ada831..1fd1ccc 100644
|
||||
--- a/libau/Makefile
|
||||
+++ b/libau/Makefile
|
||||
@@ -30,7 +30,7 @@ STRIP ?= strip
|
||||
all: ${LibSo}
|
||||
|
||||
ifeq (${Glibc},yes)
|
||||
-LibSoObj += rdu64.o
|
||||
+#LibSoObj += rdu64.o
|
||||
|
||||
# this is unnecessary on 64bit system?
|
||||
rdu64.c: rdu.c
|
||||
--
|
||||
2.38.1
|
||||
|
||||
@@ -0,0 +1,30 @@
|
||||
From 13a60c631d7cf6c7e1926473d8069795c0def9b6 Mon Sep 17 00:00:00 2001
|
||||
From: Chen Qi <Qi.Chen@windriver.com>
|
||||
Date: Thu, 19 Jun 2014 15:09:56 +0100
|
||||
Subject: [PATCH] aufs-util: add tool concept to Makefile for cross compiling
|
||||
purpose
|
||||
|
||||
In a cross compilation environment, c2sh, c2tmac and ver need to be created first.
|
||||
Add a tools target to Makefile to allow for this.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
|
||||
|
||||
---
|
||||
Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index dbbe43d..aff969e 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -152,7 +152,7 @@ aufs.5: aufs.in.5 c2tmac
|
||||
chmod a-w $@
|
||||
|
||||
c2sh c2tmac ver: CC = ${HOSTCC}
|
||||
-.INTERMEDIATE: c2sh c2tmac ver
|
||||
+tools: c2sh c2tmac ver
|
||||
|
||||
install_sbin: File = auibusy aumvdown auplink mount.aufs umount.aufs
|
||||
ifeq (${Glibc},no)
|
||||
@@ -0,0 +1,37 @@
|
||||
From 9d5e7eff4ae906f1ea6e6527080fded0b595fbd4 Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Ashfield <bruce.ashfield@windriver.com>
|
||||
Date: Tue, 9 Apr 2013 18:50:34 -0700
|
||||
Subject: [PATCH] aufs-util: don't strip executables
|
||||
|
||||
By default, aufs-util strips its binaries. This produces QA warnings
|
||||
as follows:
|
||||
|
||||
WARNING: File '/sbin/mount.aufs' from aufs-util was already stripped, this will prevent future debugging!
|
||||
WARNING: File '/sbin/auplink' from aufs-util was already stripped, this will prevent future debugging!
|
||||
WARNING: File '/sbin/umount.aufs' from aufs-util was already stripped, this will prevent future debugging!
|
||||
WARNING: File '/sbin/auibusy' from aufs-util was already stripped, this will prevent future debugging!
|
||||
WARNING: File '/usr/lib/libau.so.2.6' from aufs-util was already stripped, this will prevent future debugging!
|
||||
|
||||
To prevent this, we remove -s from LDFLAGS.
|
||||
|
||||
Upstream-Status: Inappropriate [oe specific]
|
||||
|
||||
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
|
||||
|
||||
---
|
||||
Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 54f8d97..dbbe43d 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -118,7 +118,7 @@ clean:
|
||||
ver_test: ver
|
||||
./ver
|
||||
|
||||
-${Bin}: override LDFLAGS += -static -s
|
||||
+${Bin}: override LDFLAGS += -static
|
||||
${Bin}: LDLIBS = -L. -lautil
|
||||
${BinObj}: %.o: %.c ${LibUtilHdr} ${LibUtil}
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
SUMMARY = "Tools for managing AUFS mounts"
|
||||
SECTION = "base"
|
||||
HOMEPAGE = "http://aufs.sourceforge.net/"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=892f569a555ba9c07a568a7c0c4fa63a"
|
||||
|
||||
DEPENDS = "coreutils-native aufs-util-native"
|
||||
DEPENDS:class-native = ""
|
||||
|
||||
SRCREV = "8f35db59ef83078f87879ec2828e0bb45719e0ef"
|
||||
SRC_URI = "git://git.code.sf.net/p/aufs/aufs-util;protocol=git;branch=aufs4.9 \
|
||||
https://raw.githubusercontent.com/sfjro/aufs4-linux/aufs4.9/include/uapi/linux/aufs_type.h;name=aufs_type \
|
||||
file://aufs-util-don-t-strip-executables.patch \
|
||||
file://aufs-util-add-tool-concept-to-Makefile-for-cross-com.patch \
|
||||
file://0001-libau-Do-not-build-LFS-version-of-readdir.patch \
|
||||
"
|
||||
SRC_URI[aufs_type.md5sum] = "b37129ef0703de72a852db7e48bdedc6"
|
||||
SRC_URI[aufs_type.sha256sum] = "7ff6566adb9c7a3b6862cdc85a690ab546f1d0bc81ddd595fd663c0a69031683"
|
||||
|
||||
UPSTREAM_CHECK_COMMITS = "1"
|
||||
|
||||
PV = "4.9+git"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
export HOSTCC = "${BUILD_CC}"
|
||||
do_configure:prepend() {
|
||||
# Replace sbin,bin paths with bitbake environment
|
||||
sed -i -e 's;install_sbin: Tgt = ${DESTDIR}/sbin;install_sbin: Tgt = ${DESTDIR}/${base_sbindir};' \
|
||||
-e 's;install_ubin: Tgt = ${DESTDIR}/usr/sbin;install_sbin: Tgt = ${DESTDIR}/${bindir};' \
|
||||
${S}/Makefile
|
||||
}
|
||||
|
||||
do_configure:append () {
|
||||
install -d ${S}/include/linux/
|
||||
cp ${WORKDIR}/aufs_type.h ${S}/include/linux/
|
||||
sed -i -e 's;__user;;' ${S}/include/linux/aufs_type.h
|
||||
}
|
||||
|
||||
do_configure:append:class-target () {
|
||||
for i in ver c2sh c2tmac; do
|
||||
cp ${STAGING_BINDIR_NATIVE}/aufs-util-${PV}/$i ${B}
|
||||
done
|
||||
}
|
||||
|
||||
do_compile () {
|
||||
oe_runmake CPPFLAGS="-I${S}/include -I${S}/libau"
|
||||
}
|
||||
|
||||
do_compile:class-native () {
|
||||
oe_runmake tools CPPFLAGS="-I${S}/include -I${S}/libau" CC="${BUILD_CC}"
|
||||
}
|
||||
|
||||
do_install () {
|
||||
oe_runmake 'DESTDIR=${D}' install_sbin install_ubin install_etc
|
||||
}
|
||||
|
||||
do_install:class-native () {
|
||||
install -d ${D}${bindir}/aufs-util-${PV}
|
||||
for i in ver c2sh c2tmac; do
|
||||
install -m 755 $i ${D}${bindir}/aufs-util-${PV}/$i
|
||||
done
|
||||
}
|
||||
|
||||
RRECOMMENDS:${PN}:class-target += "kernel-module-aufs"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
@@ -0,0 +1,15 @@
|
||||
SUMMARY = "A FUSE filesystem for mounting a directory to another location"
|
||||
DESCRIPTION = "bindfs is a FUSE filesystem for mounting a directory to another location, similarly to mount --bind."
|
||||
HOMEPAGE = "https://bindfs.org/"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f"
|
||||
|
||||
DEPENDS = "fuse"
|
||||
RDEPENDS:${PN} = "fuse"
|
||||
|
||||
SRC_URI = "git://github.com/mpartel/bindfs;protocol=https;branch=master"
|
||||
SRCREV = "3f5e3cb1fcac5fb8034fa4712764317fab51ebe0"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit autotools pkgconfig gettext
|
||||
@@ -0,0 +1,58 @@
|
||||
|
||||
SUMMARY = "Services for periodic btrfs maintenance tasks"
|
||||
DESCRIPTION = "A set of scripts supplementing the btrfs filesystem and aims \
|
||||
to automate a few maintenance tasks. This means the scrub, balance, trim \
|
||||
or defragmentation."
|
||||
HOMEPAGE = "https://github.com/kdave/btrfsmaintenance"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=892f569a555ba9c07a568a7c0c4fa63a"
|
||||
|
||||
SECTION = "base"
|
||||
|
||||
SRC_URI = "git://github.com/kdave/${BPN};branch=master;protocol=https \
|
||||
file://0001-change-sysconfig-path-to-etc-default.patch \
|
||||
file://0002-add-WantedBy-directive-to-btrfsmaintenance-refresh.s.patch \
|
||||
"
|
||||
SRCREV = "be42cb6267055d125994abd6927cf3a26deab74c"
|
||||
|
||||
UPSTREAM_CHECK_URI = "https://github.com/kdave/${BPN}/tags"
|
||||
UPSTREAM_CHECK_REGEX = "${BPN}/releases/tag/v(?P<pver>\d+(?:\.\d+)*)"
|
||||
|
||||
RDEPENDS:${PN} = "bash btrfs-tools"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
do_configure[noexec] = "1"
|
||||
do_compile[noexec] = "1"
|
||||
|
||||
do_install() {
|
||||
install -Dm0644 ${S}/btrfsmaintenance-refresh.path \
|
||||
${D}${systemd_system_unitdir}/btrfsmaintenance-refresh.path
|
||||
install -Dm0644 ${S}/*.timer \
|
||||
${D}${systemd_system_unitdir}
|
||||
install -Dm0644 ${S}/*.service \
|
||||
${D}${systemd_system_unitdir}
|
||||
|
||||
install -Dm0644 ${S}/btrfsmaintenance-functions \
|
||||
${D}${datadir}/${BPN}/btrfsmaintenance-functions
|
||||
install -Dm0755 ${S}/*.sh \
|
||||
${D}${datadir}/${BPN}
|
||||
|
||||
install -Dm0644 ${S}/sysconfig.btrfsmaintenance \
|
||||
${D}${sysconfdir}/default/btrfsmaintenance
|
||||
}
|
||||
|
||||
inherit systemd
|
||||
SYSTEMD_PACKAGES = "${PN}"
|
||||
SYSTEMD_SERVICE:${PN} = " \
|
||||
btrfs-scrub.timer \
|
||||
btrfs-scrub.service \
|
||||
btrfs-trim.timer \
|
||||
btrfs-trim.service \
|
||||
btrfs-balance.timer \
|
||||
btrfs-balance.service \
|
||||
btrfs-defrag.timer \
|
||||
btrfs-defrag.service \
|
||||
btrfsmaintenance-refresh.service \
|
||||
btrfsmaintenance-refresh.path \
|
||||
"
|
||||
@@ -0,0 +1,47 @@
|
||||
From b49dbe17e0d9ae463e5a34e6991aa2d3c70d2fb1 Mon Sep 17 00:00:00 2001
|
||||
From: Claudius Heine <ch@denx.de>
|
||||
Date: Wed, 11 May 2022 14:33:13 +0200
|
||||
Subject: [PATCH] change sysconfig path to /etc/default
|
||||
|
||||
OE uses /etc/default for service configuration, not /etc/sysconfig which
|
||||
is used by SUSE and RedHat based distributions.
|
||||
|
||||
Change the files accordingly
|
||||
|
||||
Upstream-Status: Inappropriate [OE specific]
|
||||
|
||||
Signed-off-by: Claudius Heine <ch@denx.de>
|
||||
---
|
||||
btrfsmaintenance-refresh.path | 4 ++--
|
||||
btrfsmaintenance-refresh.service | 2 +-
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/btrfsmaintenance-refresh.path b/btrfsmaintenance-refresh.path
|
||||
index d56ad11..f0b4132 100644
|
||||
--- a/btrfsmaintenance-refresh.path
|
||||
+++ b/btrfsmaintenance-refresh.path
|
||||
@@ -1,8 +1,8 @@
|
||||
[Unit]
|
||||
-Description=Watch /etc/sysconfig/btrfsmaintenance
|
||||
+Description=Watch /etc/default/btrfsmaintenance
|
||||
|
||||
[Path]
|
||||
-PathChanged=/etc/sysconfig/btrfsmaintenance
|
||||
+PathChanged=/etc/default/btrfsmaintenance
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
diff --git a/btrfsmaintenance-refresh.service b/btrfsmaintenance-refresh.service
|
||||
index 4ed1eb4..d6225a6 100644
|
||||
--- a/btrfsmaintenance-refresh.service
|
||||
+++ b/btrfsmaintenance-refresh.service
|
||||
@@ -1,5 +1,5 @@
|
||||
[Unit]
|
||||
-Description=Update cron periods from /etc/sysconfig/btrfsmaintenance
|
||||
+Description=Update cron periods from /etc/default/btrfsmaintenance
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/share/btrfsmaintenance/btrfsmaintenance-refresh-cron.sh systemd-timer
|
||||
--
|
||||
2.33.3
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
From 420ae0f395838b852ae8b8fe5528056c36dc0919 Mon Sep 17 00:00:00 2001
|
||||
From: Claudius Heine <ch@denx.de>
|
||||
Date: Wed, 11 May 2022 15:14:22 +0200
|
||||
Subject: [PATCH] add WantedBy directive to btrfsmaintenance-refresh.service
|
||||
|
||||
Just trigger the service on the first boot, to configure services to the
|
||||
configuration file deployed in the package, afterwards disable the
|
||||
service, so that is only triggered when the configuration file has
|
||||
changed.
|
||||
|
||||
Upstream-Status: Inappropriate [OE specific]
|
||||
|
||||
Signed-off-by: Claudius Heine <ch@denx.de>
|
||||
---
|
||||
btrfsmaintenance-refresh.service | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/btrfsmaintenance-refresh.service b/btrfsmaintenance-refresh.service
|
||||
index d6225a6..58d0e09 100644
|
||||
--- a/btrfsmaintenance-refresh.service
|
||||
+++ b/btrfsmaintenance-refresh.service
|
||||
@@ -3,4 +3,8 @@ Description=Update cron periods from /etc/default/btrfsmaintenance
|
||||
|
||||
[Service]
|
||||
ExecStart=/usr/share/btrfsmaintenance/btrfsmaintenance-refresh-cron.sh systemd-timer
|
||||
+ExecStart=systemctl disable btrfsmaintenance-refresh.service
|
||||
Type=oneshot
|
||||
+
|
||||
+[Install]
|
||||
+WantedBy=multi-user.target
|
||||
--
|
||||
2.33.3
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
SUMMARY = "Set of GPL'ed utilities to ext2/ext3 filesystem."
|
||||
DESCRIPTION = "e2tools is a simple set of GPL'ed utilities to read, write, \
|
||||
and manipulate files in an ext2/ext3 filesystem. These utilities access a \
|
||||
filesystem directly using the ext2fs library. Can also be used on a Linux \
|
||||
machine to read/write to disk images or floppies without having to mount \
|
||||
them or have root access."
|
||||
HOMEPAGE = "https://github.com/e2tools/e2tools"
|
||||
SECTION = "base"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
DEPENDS += "coreutils e2fsprogs"
|
||||
|
||||
PV = "0.1.0+git"
|
||||
|
||||
SRC_URI = " \
|
||||
git://github.com/e2tools/e2tools;protocol=https;branch=master \
|
||||
file://run-ptest \
|
||||
"
|
||||
|
||||
SRCREV = "fd092754a6b65c3a769f74f888668c066f09c36d"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit autotools pkgconfig ptest
|
||||
|
||||
do_configure:prepend() {
|
||||
git -C "${WORKDIR}/git" reset --hard HEAD
|
||||
|
||||
# To install ptest for this package, special configuration needs to be
|
||||
# done before do_configure(). So, do_configure_ptest() which is scheduled
|
||||
# after do_configure() cannot be used.
|
||||
|
||||
# We only do special configuration if we are installing ptest for this
|
||||
# package.
|
||||
if [ "${@d.getVar('PTEST_ENABLED')}" -eq "1" ]; then
|
||||
# Since we guarantee run-time dependency when installing the ptest for
|
||||
# this package, we do not need the check macros under section "checks
|
||||
# for programs" in "configure.ac". Plus, these check macros set the
|
||||
# ouput variables to incorrect values as these checks are performed on
|
||||
# the host environment. Still, we need these variables outputted from
|
||||
# these check macros. So, we insert the following lines to manually
|
||||
# set these output variables to the correct value in "configure.ac".
|
||||
|
||||
# Note that HAVE_DD_COMMAND and HAVE_MKE2FS_COMMAND are only ever used
|
||||
# in tests/Makefile-files which determines whether to include the test
|
||||
# cases. As for output variables CHMOD, DD, and MKE2FS, they only
|
||||
# point to the programs which test cases need to run. Since these
|
||||
# commands are guaranteed to be present due to RDEPENDS and are
|
||||
# guaranteed to be accessible under PATH environment variable on the
|
||||
# target, we only need to specify the name of these programs.
|
||||
|
||||
perl -i -0777 -pe 's/(^dnl\s*=+\s*^dnl\s*Checks for compiler flags\s*^dnl\s*=+)/
|
||||
AC_SUBST([CHMOD], 'chmod')
|
||||
AC_SUBST([DD], 'dd')
|
||||
AC_SUBST([MKE2FS], 'mke2fs')
|
||||
AM_CONDITIONAL([HAVE_DD_COMMAND], [true])
|
||||
AM_CONDITIONAL([HAVE_MKE2FS_COMMAND], [true])
|
||||
\1/ms' "${WORKDIR}/git/configure.ac"
|
||||
fi
|
||||
}
|
||||
|
||||
do_install_ptest() {
|
||||
rm -rf "${D}${PTEST_PATH}/*"
|
||||
cp -r ../build "${D}${PTEST_PATH}"
|
||||
cp -r "${S}/build-aux" "${D}${PTEST_PATH}/build"
|
||||
cp -r "${S}" "${D}${PTEST_PATH}"
|
||||
rm -rf ${D}${PTEST_PATH}/build/config.log ${D}${PTEST_PATH}/build/autom4te.cache \
|
||||
${D}${PTEST_PATH}/git/.git ${D}${PTEST_PATH}/git/autom4te.cache
|
||||
sed -i -e 's;${TMPDIR};;g' ${D}${PTEST_PATH}/build/config.status
|
||||
}
|
||||
|
||||
RDEPENDS:${PN}-ptest += "bash coreutils e2fsprogs e2tools gawk make perl"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
@@ -0,0 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -e
|
||||
|
||||
make -C build check
|
||||
@@ -0,0 +1,24 @@
|
||||
SUMMARY = "exFAT filesystem userspace utilities"
|
||||
DESCRIPTION = "\
|
||||
As new exfat filesystem is merged into linux-5.7 kernel, exfatprogs is \
|
||||
created as an official userspace utilities that contain all of the standard \
|
||||
utilities for creating and fixing and debugging exfat filesystem in linux \
|
||||
system. The goal of exfatprogs is to provide high performance and quality \
|
||||
at the level of exfat utilities in windows. And this software is licensed \
|
||||
under the GNU General Public License Version 2."
|
||||
HOMEPAGE = "https://github.com/${BPN}/${BPN}"
|
||||
SECTION = "universe/otherosfs"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
|
||||
|
||||
SRC_URI = "https://github.com/${BPN}/${BPN}/releases/download/${PV}/${BP}.tar.xz"
|
||||
SRC_URI[sha256sum] = "61d517231f8ec177eeb5955fd6edb89748d3f88ba412c48bcb32741b430e359a"
|
||||
|
||||
UPSTREAM_CHECK_URI = "https://github.com/${BPN}/${BPN}/releases"
|
||||
UPSTREAM_CHECK_REGEX = "${BPN}-(?P<pver>\d+(\.\d+)+)"
|
||||
|
||||
inherit autotools
|
||||
|
||||
RPROVIDES:${PN} = "exfat-utils"
|
||||
RCONFLICTS:${PN} = "exfat-utils"
|
||||
RREPLACES:${PN} = "exfat-utils"
|
||||
@@ -0,0 +1,183 @@
|
||||
From 3c0314e1820afc9a98e890cc5f7973c3c81877f8 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Wed, 21 Dec 2022 18:23:03 -0800
|
||||
Subject: [PATCH] f2fs_io: Define _FILE_OFFSET_BITS=64
|
||||
|
||||
Remove _LARGEFILE64_SOURCE, this is redundant when _FILE_OFFSET_BITS=64
|
||||
additionally it fixes build with musl because the detection logic for
|
||||
lseek64 fails because when using _LARGEFILE64_SOURCE musl also define's
|
||||
lseek64 as an alias to lseek
|
||||
|
||||
Upstream-Status: Submitted [https://lore.kernel.org/linux-f2fs-devel/20221222022830.976309-2-raj.khem@gmail.com/T/#u]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
lib/libf2fs_io.c | 4 +++-
|
||||
tools/f2fs_io/f2fs_io.c | 4 ++--
|
||||
2 files changed, 5 insertions(+), 3 deletions(-)
|
||||
|
||||
--- a/lib/libf2fs_io.c
|
||||
+++ b/lib/libf2fs_io.c
|
||||
@@ -11,7 +11,9 @@
|
||||
*
|
||||
* Dual licensed under the GPL or LGPL version 2 licenses.
|
||||
*/
|
||||
-#define _LARGEFILE64_SOURCE
|
||||
+#ifndef _FILE_OFFSET_BITS
|
||||
+#define _FILE_OFFSET_BITS 64
|
||||
+#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
@@ -67,22 +69,13 @@ static int __get_device_fd(__u64 *offset
|
||||
return -1;
|
||||
}
|
||||
|
||||
-#ifndef HAVE_LSEEK64
|
||||
-typedef off_t off64_t;
|
||||
-
|
||||
-static inline off64_t lseek64(int fd, __u64 offset, int set)
|
||||
-{
|
||||
- return lseek(fd, offset, set);
|
||||
-}
|
||||
-#endif
|
||||
-
|
||||
/* ---------- dev_cache, Least Used First (LUF) policy ------------------- */
|
||||
/*
|
||||
* Least used block will be the first victim to be replaced when max hash
|
||||
* collision exceeds
|
||||
*/
|
||||
static bool *dcache_valid; /* is the cached block valid? */
|
||||
-static off64_t *dcache_blk; /* which block it cached */
|
||||
+static off_t *dcache_blk; /* which block it cached */
|
||||
static uint64_t *dcache_lastused; /* last used ticks for cache entries */
|
||||
static char *dcache_buf; /* cached block data */
|
||||
static uint64_t dcache_usetick; /* current use tick */
|
||||
@@ -172,7 +165,7 @@ static int dcache_alloc_all(long n)
|
||||
{
|
||||
if (n <= 0)
|
||||
return -1;
|
||||
- if ((dcache_blk = (off64_t *) malloc(sizeof(off64_t) * n)) == NULL
|
||||
+ if ((dcache_blk = (off_t *) malloc(sizeof(off_t) * n)) == NULL
|
||||
|| (dcache_lastused = (uint64_t *)
|
||||
malloc(sizeof(uint64_t) * n)) == NULL
|
||||
|| (dcache_buf = (char *) malloc (F2FS_BLKSIZE * n)) == NULL
|
||||
@@ -257,7 +250,7 @@ static inline long dcache_relocate(long
|
||||
dcache_config.num_cache_entry;
|
||||
}
|
||||
|
||||
-static long dcache_find(off64_t blk)
|
||||
+static long dcache_find(off_t blk)
|
||||
{
|
||||
register long n = dcache_config.num_cache_entry;
|
||||
register unsigned m = dcache_config.max_hash_collision;
|
||||
@@ -278,10 +271,10 @@ static long dcache_find(off64_t blk)
|
||||
}
|
||||
|
||||
/* Physical read into cache */
|
||||
-static int dcache_io_read(int fd, long entry, off64_t offset, off64_t blk)
|
||||
+static int dcache_io_read(int fd, long entry, off_t offset, off_t blk)
|
||||
{
|
||||
- if (lseek64(fd, offset, SEEK_SET) < 0) {
|
||||
- MSG(0, "\n lseek64 fail.\n");
|
||||
+ if (lseek(fd, offset, SEEK_SET) < 0) {
|
||||
+ MSG(0, "\n lseek fail.\n");
|
||||
return -1;
|
||||
}
|
||||
if (read(fd, dcache_buf + entry * F2FS_BLKSIZE, F2FS_BLKSIZE) < 0) {
|
||||
@@ -308,12 +301,12 @@ static int dcache_io_read(int fd, long e
|
||||
* 1: cache not available (uninitialized)
|
||||
* -1: error
|
||||
*/
|
||||
-static int dcache_update_rw(int fd, void *buf, off64_t offset,
|
||||
+static int dcache_update_rw(int fd, void *buf, off_t offset,
|
||||
size_t byte_count, bool is_write)
|
||||
{
|
||||
- off64_t blk;
|
||||
+ off_t blk;
|
||||
int addr_in_blk;
|
||||
- off64_t start;
|
||||
+ off_t start;
|
||||
|
||||
if (!dcache_initialized)
|
||||
dcache_init(); /* auto initialize */
|
||||
@@ -377,13 +370,13 @@ static int dcache_update_rw(int fd, void
|
||||
* return value: 1: cache not available
|
||||
* 0: success, -1: I/O error
|
||||
*/
|
||||
-int dcache_update_cache(int fd, void *buf, off64_t offset, size_t count)
|
||||
+int dcache_update_cache(int fd, void *buf, off_t offset, size_t count)
|
||||
{
|
||||
return dcache_update_rw(fd, buf, offset, count, true);
|
||||
}
|
||||
|
||||
/* handles read into cache + read into buffer */
|
||||
-int dcache_read(int fd, void *buf, off64_t offset, size_t count)
|
||||
+int dcache_read(int fd, void *buf, off_t offset, size_t count)
|
||||
{
|
||||
return dcache_update_rw(fd, buf, offset, count, false);
|
||||
}
|
||||
@@ -395,7 +388,7 @@ int dev_read_version(void *buf, __u64 of
|
||||
{
|
||||
if (c.sparse_mode)
|
||||
return 0;
|
||||
- if (lseek64(c.kd, (off64_t)offset, SEEK_SET) < 0)
|
||||
+ if (lseek(c.kd, (off_t)offset, SEEK_SET) < 0)
|
||||
return -1;
|
||||
if (read(c.kd, buf, len) < 0)
|
||||
return -1;
|
||||
@@ -537,10 +530,10 @@ int dev_read(void *buf, __u64 offset, si
|
||||
|
||||
/* err = 1: cache not available, fall back to non-cache R/W */
|
||||
/* err = 0: success, err=-1: I/O error */
|
||||
- err = dcache_read(fd, buf, (off64_t)offset, len);
|
||||
+ err = dcache_read(fd, buf, (off_t)offset, len);
|
||||
if (err <= 0)
|
||||
return err;
|
||||
- if (lseek64(fd, (off64_t)offset, SEEK_SET) < 0)
|
||||
+ if (lseek(fd, (off_t)offset, SEEK_SET) < 0)
|
||||
return -1;
|
||||
if (read(fd, buf, len) < 0)
|
||||
return -1;
|
||||
@@ -586,9 +579,9 @@ int dev_write(void *buf, __u64 offset, s
|
||||
* dcache_update_cache() just update cache, won't do I/O.
|
||||
* Thus even no error, we need normal non-cache I/O for actual write
|
||||
*/
|
||||
- if (dcache_update_cache(fd, buf, (off64_t)offset, len) < 0)
|
||||
+ if (dcache_update_cache(fd, buf, (off_t)offset, len) < 0)
|
||||
return -1;
|
||||
- if (lseek64(fd, (off64_t)offset, SEEK_SET) < 0)
|
||||
+ if (lseek(fd, (off_t)offset, SEEK_SET) < 0)
|
||||
return -1;
|
||||
if (write(fd, buf, len) < 0)
|
||||
return -1;
|
||||
@@ -602,7 +595,7 @@ int dev_write_block(void *buf, __u64 blk
|
||||
|
||||
int dev_write_dump(void *buf, __u64 offset, size_t len)
|
||||
{
|
||||
- if (lseek64(c.dump_fd, (off64_t)offset, SEEK_SET) < 0)
|
||||
+ if (lseek(c.dump_fd, (off_t)offset, SEEK_SET) < 0)
|
||||
return -1;
|
||||
if (write(c.dump_fd, buf, len) < 0)
|
||||
return -1;
|
||||
@@ -627,7 +620,7 @@ int dev_fill(void *buf, __u64 offset, si
|
||||
/* Only allow fill to zero */
|
||||
if (*((__u8*)buf))
|
||||
return -1;
|
||||
- if (lseek64(fd, (off64_t)offset, SEEK_SET) < 0)
|
||||
+ if (lseek(fd, (off_t)offset, SEEK_SET) < 0)
|
||||
return -1;
|
||||
if (write(fd, buf, len) < 0)
|
||||
return -1;
|
||||
--- a/tools/f2fs_io/f2fs_io.c
|
||||
+++ b/tools/f2fs_io/f2fs_io.c
|
||||
@@ -12,8 +12,8 @@
|
||||
#ifndef _LARGEFILE_SOURCE
|
||||
#define _LARGEFILE_SOURCE
|
||||
#endif
|
||||
-#ifndef _LARGEFILE64_SOURCE
|
||||
-#define _LARGEFILE64_SOURCE
|
||||
+#ifndef _FILE_OFFSET_BITS
|
||||
+#define _FILE_OFFSET_BITS 64
|
||||
#endif
|
||||
#ifndef O_LARGEFILE
|
||||
#define O_LARGEFILE 0
|
||||
@@ -0,0 +1,20 @@
|
||||
SUMMARY = "Tools for Flash-Friendly File System (F2FS)"
|
||||
HOMEPAGE = "https://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git"
|
||||
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=362b4b2594cd362b874a97718faa51d3"
|
||||
|
||||
# to provide libuuid
|
||||
DEPENDS = "util-linux"
|
||||
|
||||
SRCREV = "06c027abc6153c4a97cba5317844e8dcaaee3cf7"
|
||||
SRC_URI = "git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs-tools.git;branch=master \
|
||||
file://0002-f2fs_io-Define-_FILE_OFFSET_BITS-64.patch \
|
||||
"
|
||||
UPSTREAM_CHECK_GITTAGREGEX = "v(?P<pver>\d+(\.\d+)+)"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit pkgconfig autotools
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
@@ -0,0 +1,48 @@
|
||||
From 455001cb0112f7324ab50f555aa5ed5eae1bb93b Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Mon, 16 Jan 2023 19:23:18 -0800
|
||||
Subject: [PATCH] Replace std::ptr_fun for c++17
|
||||
|
||||
std::ptr_fun was deprecated in C++11, and removed completely in C++17.
|
||||
Similarly, std::not1 is deprecated since C++17.
|
||||
|
||||
Modern compilers like clang >= 16 have started to notice it
|
||||
|
||||
src/FatUtils.h:41:46: error: use of undeclared identifier 'ptr_fun'
|
||||
| s.erase(find_if(s.rbegin(), s.rend(), not1(ptr_fun<int, int>(isspace))).base(), s.end());
|
||||
|
||||
Therefore replace ptr_fun with lambda
|
||||
|
||||
Also use 'unsigned char' parameter to std::isspace, for reason see [1]
|
||||
|
||||
[1] https://en.cppreference.com/w/cpp/string/byte/isspace#Notes
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/Gregwar/fatcat/pull/36]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/FatUtils.h | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/FatUtils.h b/src/FatUtils.h
|
||||
index 5080f2a..a8d69ee 100644
|
||||
--- a/src/FatUtils.h
|
||||
+++ b/src/FatUtils.h
|
||||
@@ -32,13 +32,13 @@ using namespace std;
|
||||
|
||||
// trim from start
|
||||
static inline string ltrim(string s) {
|
||||
- s.erase(s.begin(), find_if(s.begin(), s.end(), not1(ptr_fun<int, int>(isspace))));
|
||||
+ s.erase(s.begin(), find_if(s.begin(), s.end(), [](unsigned char c) {return !isspace(c);}));
|
||||
return s;
|
||||
}
|
||||
|
||||
// trim from end
|
||||
static inline string rtrim(string s) {
|
||||
- s.erase(find_if(s.rbegin(), s.rend(), not1(ptr_fun<int, int>(isspace))).base(), s.end());
|
||||
+ s.erase(find_if(s.rbegin(), s.rend(), [](unsigned char c) {return !isspace(c);}).base(), s.end());
|
||||
return s;
|
||||
}
|
||||
|
||||
--
|
||||
2.39.0
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
From 14ef83291096e019ebc48040cf63530a2574a26d Mon Sep 17 00:00:00 2001
|
||||
From: Alex Kiernan <alex.kiernan@gmail.com>
|
||||
Date: Sun, 19 Jan 2020 16:03:21 +0000
|
||||
Subject: [PATCH] Use unistd.h not argp.h for all POSIX systems
|
||||
|
||||
getopt(3) is found in unistd.h on all POSIX systems and we make no use
|
||||
of any of the GNU specific argp extensions. Include unistd.h directly to
|
||||
allow building with musl on linux, whilst retaining compatibility with
|
||||
glibc and other unices.
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/Gregwar/fatcat/pull/34]
|
||||
Signed-off-by: Alex Kiernan <alex.kiernan@gmail.com>
|
||||
---
|
||||
src/fatcat.cpp | 8 ++------
|
||||
1 file changed, 2 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/src/fatcat.cpp b/src/fatcat.cpp
|
||||
index ce23ca07bb99..b4427e465bde 100644
|
||||
--- a/src/fatcat.cpp
|
||||
+++ b/src/fatcat.cpp
|
||||
@@ -1,14 +1,10 @@
|
||||
#include <stdlib.h>
|
||||
-#include<string.h>
|
||||
-#ifdef __APPLE__
|
||||
-#include <unistd.h>
|
||||
-#else
|
||||
+#include <string.h>
|
||||
#ifdef __WIN__
|
||||
#include <ctype.h>
|
||||
#include "xgetopt/xgetopt.h"
|
||||
#else
|
||||
-#include <argp.h>
|
||||
-#endif
|
||||
+#include <unistd.h>
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
@@ -0,0 +1,71 @@
|
||||
From 0383fff94471278c92ef2ad5edc14abbb40a9acd Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 16 Dec 2022 18:54:55 -0800
|
||||
Subject: [PATCH] Enable 64bit off_t
|
||||
|
||||
Ensure that off_t is always 64-bit by specifying -D_LARGEFILE_SOURCE
|
||||
-D_FILE_OFFSET_BITS=64 this will ensure that normal lseek() function is
|
||||
same as lseek64
|
||||
|
||||
This helps compiling on latest musl where lseek64 and friends are not
|
||||
available
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/Gregwar/fatcat/pull/34]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
CMakeLists.txt | 2 ++
|
||||
src/core/FatSystem.cpp | 4 ++--
|
||||
src/core/FatSystem.h | 2 --
|
||||
3 files changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index d6a2649..4cdd1fb 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -34,6 +34,8 @@ IF(DEFINE_WIN)
|
||||
add_definitions(-D__WIN__)
|
||||
ENDIF(DEFINE_WIN)
|
||||
|
||||
+add_definitions(-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64)
|
||||
+
|
||||
include_directories("${CMAKE_SOURCE_DIR}/src")
|
||||
|
||||
add_executable(fatcat "src/fatcat.cpp" ${ALL_SOURCES})
|
||||
diff --git a/src/core/FatSystem.cpp b/src/core/FatSystem.cpp
|
||||
index 79cda8c..1f52e82 100644
|
||||
--- a/src/core/FatSystem.cpp
|
||||
+++ b/src/core/FatSystem.cpp
|
||||
@@ -90,7 +90,7 @@ int FatSystem::readData(unsigned long long address, char *buffer, int size)
|
||||
cerr << "! Trying to read outside the disk" << endl;
|
||||
}
|
||||
|
||||
- lseek64(fd, globalOffset+address, SEEK_SET);
|
||||
+ lseek(fd, globalOffset+address, SEEK_SET);
|
||||
|
||||
int n;
|
||||
int pos = 0;
|
||||
@@ -112,7 +112,7 @@ int FatSystem::writeData(unsigned long long address, const char *buffer, int siz
|
||||
throw string("Trying to write data while write mode is disabled");
|
||||
}
|
||||
|
||||
- lseek64(fd, globalOffset+address, SEEK_SET);
|
||||
+ lseek(fd, globalOffset+address, SEEK_SET);
|
||||
|
||||
int n;
|
||||
int pos = 0;
|
||||
diff --git a/src/core/FatSystem.h b/src/core/FatSystem.h
|
||||
index cd3c914..f9f2ca3 100644
|
||||
--- a/src/core/FatSystem.h
|
||||
+++ b/src/core/FatSystem.h
|
||||
@@ -11,11 +11,9 @@
|
||||
|
||||
#ifdef __APPLE__
|
||||
#define O_LARGEFILE 0
|
||||
-#define lseek64 lseek
|
||||
#endif
|
||||
#ifdef __WIN__
|
||||
#define O_LARGEFILE 0
|
||||
-#define lseek64 lseek
|
||||
#endif
|
||||
using namespace std;
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
SUMMARY = "FAT filesystems explore, extract, repair, and forensic tool"
|
||||
DESCRIPTION = "This tool is designed to manipulate FAT filesystems, in order to \
|
||||
explore, extract, repair, recover and forensic them. It currently supports \
|
||||
FAT12, FAT16 and FAT32."
|
||||
HOMEPAGE = "https://github.com/Gregwar/fatcat"
|
||||
|
||||
LICENSE = "MIT"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE;md5=57fbbfebd0dd1d6ff21b8cecb552a03f"
|
||||
|
||||
SRC_URI = "git://github.com/Gregwar/fatcat.git;branch=master;protocol=https \
|
||||
file://0001-Use-unistd.h-not-argp.h-for-all-POSIX-systems.patch \
|
||||
file://0002-Enable-64bit-off_t.patch \
|
||||
file://0001-Replace-std-ptr_fun-for-c-17.patch \
|
||||
"
|
||||
|
||||
SRCREV = "99cb99fc86eb1601ac7ae27f5bba23add04d2543"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
inherit cmake
|
||||
@@ -0,0 +1,27 @@
|
||||
From b16373da7e5a45cf92df83b39e2fdee939439c84 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sat, 17 Jul 2021 08:55:42 -0700
|
||||
Subject: [PATCH] build: Do not build .sgml file
|
||||
|
||||
It needs docbook-to-man tool which we do not have recipe for
|
||||
|
||||
Upstream-Status: Inappropriate [needs native docbook-to-man tool]
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
Makefile.am | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/Makefile.am b/Makefile.am
|
||||
index 2becb84..858df00 100644
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -14,4 +14,4 @@ SUFFIXES = .1
|
||||
CLEANFILES = $(man_MANS)
|
||||
|
||||
.sgml.1:
|
||||
- docbook-to-man $< > $@
|
||||
+ @echo "Needs docbook-to-man"
|
||||
--
|
||||
2.32.0
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
From 69647e5d393a52ed3892eccc172ee750d6aaa45d Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Fri, 30 Dec 2022 21:08:25 -0800
|
||||
Subject: [PATCH] configure: Do not add -D_FILE_OFFSET_BITS to CFLAGS
|
||||
|
||||
AC_SYS_LARGEFILE macro is in use and this will add a definition for
|
||||
_FILE_OFFSET_BITS in generated config.h which is already included as
|
||||
first include file in fatresize.c hence its not required to be added via
|
||||
CFLAGS, this also fixes a case when -D_FILE_OFFSET_BITS=64 is passed via
|
||||
CC from environment, where the autoconf macros set
|
||||
ac_cv_sys_file_offset_bits=no and that means we will have
|
||||
-D_FILE_OFFSET_BITS=no added to CFLAGS which messes up builds.
|
||||
|
||||
Upstream-Status: Submitted [https://salsa.debian.org/parted-team/fatresize/-/merge_requests/3]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
configure.ac | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index d6e6cb2..4dcec28 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -29,7 +29,6 @@ AC_CHECK_FUNCS([memset strtoll])
|
||||
|
||||
# Check for LFS
|
||||
AC_SYS_LARGEFILE
|
||||
-CFLAGS="$CFLAGS -D_FILE_OFFSET_BITS=${ac_cv_sys_file_offset_bits}"
|
||||
|
||||
dnl libparted
|
||||
# hack
|
||||
--
|
||||
2.39.0
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
SUMMARY = "Resize FAT partitions using libparted"
|
||||
SECTION = "console/tools"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
|
||||
|
||||
SRC_URI = "git://salsa.debian.org/parted-team/fatresize.git;protocol=https;branch=master \
|
||||
file://0001-build-Do-not-build-.sgml-file.patch \
|
||||
file://0001-configure-Do-not-add-D_FILE_OFFSET_BITS-to-CFLAGS.patch \
|
||||
"
|
||||
SRCREV = "12da22087de2ec43f0fe5af1237389e94619c483"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
DEPENDS = "parted"
|
||||
|
||||
inherit autotools pkgconfig
|
||||
@@ -0,0 +1,28 @@
|
||||
DESCRIPTION = "Maintenance tools for OverlayFS"
|
||||
HOMEPAGE = "https://github.com/kmxz/overlayfs-tools"
|
||||
LICENSE = "WTFPL"
|
||||
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=f312a7c4d02230e8f2b537295d375c69"
|
||||
|
||||
SRC_URI = "\
|
||||
git://github.com/kmxz/overlayfs-tools.git;protocol=https;branch=master \
|
||||
"
|
||||
|
||||
PV = "1.0+git"
|
||||
SRCREV = "b5e5a829895ac98ccfe4629fbfbd8b819262bd00"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
B = "${S}"
|
||||
|
||||
# Required to have the fts.h header for musl
|
||||
DEPENDS:append:libc-musl = " fts"
|
||||
|
||||
EXTRA_OEMAKE += "'CC=${CC} -O2'"
|
||||
# Fix the missing fts libs when using musl
|
||||
EXTRA_OEMAKE:append:libc-musl = " LDLIBS=-lfts"
|
||||
TARGET_CC_ARCH += "${LDFLAGS}"
|
||||
|
||||
do_install () {
|
||||
install -d ${D}${bindir}
|
||||
install -m 0755 ${B}/overlay ${D}${bindir}
|
||||
install -m 0755 ${B}/fsck.overlay ${D}${bindir}
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
Upstream-Status: Pending
|
||||
|
||||
Fix compilation with GCC6
|
||||
|
||||
--- a/src/device-info.c 2013-12-09 14:59:27.000000000 +0100
|
||||
+++ b/src/device-info.c 2017-03-13 07:06:25.506666680 +0100
|
||||
@@ -3,6 +3,7 @@
|
||||
* contains code excerpts from udisks v1.0.4
|
||||
************************************************************************** */
|
||||
|
||||
+#include <sys/stat.h>
|
||||
#include "device-info.h"
|
||||
|
||||
static char *
|
||||
@@ -0,0 +1,34 @@
|
||||
From 80b087193698632e525b90d45b4a49e61e343e1c Mon Sep 17 00:00:00 2001
|
||||
From: Krzysztof Kozlowski <krzk@kernel.org>
|
||||
Date: Thu, 13 Jul 2017 21:30:35 +0200
|
||||
Subject: [PATCH] etc: Makefile.am: Use systemd_unitdir instead of libdir
|
||||
|
||||
Proper directory for installing systemd services is systemd_unitdir, not
|
||||
libdir.
|
||||
|
||||
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
|
||||
---
|
||||
Upstream-Status: Pending
|
||||
|
||||
etc/Makefile.am | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/etc/Makefile.am b/etc/Makefile.am
|
||||
index 9b6e7522c20f..6d663241a72f 100644
|
||||
--- a/etc/Makefile.am
|
||||
+++ b/etc/Makefile.am
|
||||
@@ -16,8 +16,8 @@ if ADD_SYSTEMD
|
||||
test -f $(DESTDIR)/$(sysconfdir)/conf.d/devmon || $(INSTALL_DATA) \
|
||||
$(srcdir)/systemd/devmon \
|
||||
$(DESTDIR)/$(sysconfdir)/conf.d/devmon
|
||||
- test -d $(DESTDIR)/$(libdir)/systemd/system || \
|
||||
- mkdir -p -- $(DESTDIR)/$(libdir)/systemd/system
|
||||
+ test -d $(DESTDIR)/$(systemd_unitdir)/system || \
|
||||
+ mkdir -p -- $(DESTDIR)/$(systemd_unitdir)/system
|
||||
$(INSTALL_DATA) $(srcdir)/systemd/devmon@.service \
|
||||
- $(DESTDIR)/$(libdir)/systemd/system/devmon@.service
|
||||
+ $(DESTDIR)/$(systemd_unitdir)/system/devmon@.service
|
||||
endif
|
||||
--
|
||||
2.11.0
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
SUMMARY = "A command line Linux program which mounts and unmounts removable devices"
|
||||
HOMEPAGE = "http://ignorantguru.github.io/udevil/"
|
||||
|
||||
DEPENDS = "glib-2.0 \
|
||||
glib-2.0-native \
|
||||
intltool-native \
|
||||
udev \
|
||||
"
|
||||
RDEPENDS:${PN} = "udev bash"
|
||||
|
||||
LICENSE = "GPL-3.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
|
||||
|
||||
inherit autotools pkgconfig systemd
|
||||
|
||||
SRC_URI = "https://github.com/IgnorantGuru/udevil/raw/pkg/${PV}/udevil-${PV}.tar.xz \
|
||||
file://0001-udevil-0.4.3-fix-compile-with-gcc6.patch \
|
||||
file://0002-etc-Makefile.am-Use-systemd_unitdir-instead-of-libdi.patch \
|
||||
"
|
||||
|
||||
SRC_URI[md5sum] = "dc1c489b603a0500a04dc7e1805ac1d9"
|
||||
SRC_URI[sha256sum] = "ce8c51fd4d589cda7be56e75b42188deeb258c66fc911a9b3a70a3945c157739"
|
||||
|
||||
PACKAGECONFIG = "${@bb.utils.contains('DISTRO_FEATURES','systemd','systemd','',d)}"
|
||||
PACKAGECONFIG[systemd] = "--enable-systemd,--disable-systemd,systemd"
|
||||
|
||||
SYSTEMD_SERVICE:${PN} = "devmon@.service"
|
||||
SYSTEMD_AUTO_ENABLE = "disable"
|
||||
@@ -0,0 +1,31 @@
|
||||
SUMMARY = "Tool to access UFS (Universal Flash Storage) devices"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
|
||||
|
||||
BRANCH ?= "dev"
|
||||
|
||||
SRCREV = "18c0a8454ca1cf8969170049f8c628d88627beec"
|
||||
|
||||
SRC_URI = "git://github.com/westerndigitalcorporation/ufs-utils.git;protocol=https;branch=${BRANCH} \
|
||||
"
|
||||
|
||||
UPSTREAM_CHECK_COMMITS = "1"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
EXTRA_OEMAKE = "CROSS_COMPILE=${TARGET_PREFIX} CC="${CC}" CFLAGS="${CFLAGS}""
|
||||
|
||||
CFLAGS:append:mipsarchn64 = " -D__SANE_USERSPACE_TYPES__ -D_GNU_SOURCE"
|
||||
|
||||
do_configure() {
|
||||
sed -i -e "s|-static$||g" ${S}/Makefile
|
||||
}
|
||||
|
||||
do_install() {
|
||||
install -D -m 755 ${S}/ufs-utils ${D}${bindir}/ufs-utils
|
||||
}
|
||||
|
||||
PROVIDES += "ufs-tool"
|
||||
|
||||
RPROVIDES:${PN} += "ufs-tool"
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
From 45a532ad73b1ba27fc951657a33f39e8fa915765 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Mon, 25 Mar 2024 10:02:20 -0700
|
||||
Subject: [PATCH] include libgen.h for basename API prototype
|
||||
|
||||
basename prototype has been removed from string.h from latest musl [1]
|
||||
compilers e.g. clang-18 flags the absense of prototype as error. therefore
|
||||
include libgen.h for providing it.
|
||||
|
||||
[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
|
||||
|
||||
Upstream-Status: Submitted [https://lore.kernel.org/linux-xfs/20240325170941.3279129-1-raj.khem@gmail.com/T/#u]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
common/main.c | 1 +
|
||||
invutil/invidx.c | 1 +
|
||||
2 files changed, 2 insertions(+)
|
||||
|
||||
diff --git a/common/main.c b/common/main.c
|
||||
index 1db07d4..ca3b7d4 100644
|
||||
--- a/common/main.c
|
||||
+++ b/common/main.c
|
||||
@@ -16,6 +16,7 @@
|
||||
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
+#include <libgen.h>
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h>
|
||||
diff --git a/invutil/invidx.c b/invutil/invidx.c
|
||||
index 5874e8d..c4e2e21 100644
|
||||
--- a/invutil/invidx.c
|
||||
+++ b/invutil/invidx.c
|
||||
@@ -19,6 +19,7 @@
|
||||
#include <xfs/xfs.h>
|
||||
#include <xfs/jdm.h>
|
||||
|
||||
+#include <libgen.h>
|
||||
#include <stdio.h>
|
||||
#include <fcntl.h>
|
||||
#include <unistd.h>
|
||||
--
|
||||
2.44.0
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
From fea8c4634469784c16211e2597411c18c72dfa4a Mon Sep 17 00:00:00 2001
|
||||
From: Changqing Li <changqing.li@windriver.com>
|
||||
Date: Thu, 5 Mar 2020 14:36:14 +0800
|
||||
Subject: [PATCH] xfsdump: support usrmerge
|
||||
|
||||
Upstream-Status: Inappropriate [oe-specific]
|
||||
|
||||
Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
||||
---
|
||||
dump/Makefile | 6 +-----
|
||||
restore/Makefile | 6 +-----
|
||||
2 files changed, 2 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/dump/Makefile b/dump/Makefile
|
||||
index 66f00d3..cc2d973 100644
|
||||
--- a/dump/Makefile
|
||||
+++ b/dump/Makefile
|
||||
@@ -97,12 +97,8 @@ default: depend $(LTCOMMAND)
|
||||
include $(BUILDRULES)
|
||||
|
||||
install: default
|
||||
- $(INSTALL) -m 755 -d $(PKG_ROOT_SBIN_DIR)
|
||||
- $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_ROOT_SBIN_DIR)
|
||||
$(INSTALL) -m 755 -d $(PKG_SBIN_DIR)
|
||||
- # skip symlink when /sbin is alread symlinked to /usr/sbin, like on Fedora
|
||||
- test $(PKG_ROOT_SBIN_DIR) -ef $(PKG_SBIN_DIR) || \
|
||||
- $(INSTALL) -S $(PKG_ROOT_SBIN_DIR)/$(LTCOMMAND) $(PKG_SBIN_DIR)/$(LTCOMMAND)
|
||||
+ $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR)
|
||||
install-dev:
|
||||
|
||||
.dep: $(COMMINCL) $(COMMON) $(INVINCL) $(INVCOMMON)
|
||||
diff --git a/restore/Makefile b/restore/Makefile
|
||||
index ac3f8c8..3c46394 100644
|
||||
--- a/restore/Makefile
|
||||
+++ b/restore/Makefile
|
||||
@@ -111,12 +111,8 @@ default: depend $(LTCOMMAND)
|
||||
include $(BUILDRULES)
|
||||
|
||||
install: default
|
||||
- $(INSTALL) -m 755 -d $(PKG_ROOT_SBIN_DIR)
|
||||
- $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_ROOT_SBIN_DIR)
|
||||
$(INSTALL) -m 755 -d $(PKG_SBIN_DIR)
|
||||
- # skip symlink when /sbin is alread symlinked to /usr/sbin, like on Fedora
|
||||
- test $(PKG_ROOT_SBIN_DIR) -ef $(PKG_SBIN_DIR) || \
|
||||
- $(INSTALL) -S $(PKG_ROOT_SBIN_DIR)/$(LTCOMMAND) $(PKG_SBIN_DIR)/$(LTCOMMAND)
|
||||
+ $(LTINSTALL) -m 755 $(LTCOMMAND) $(PKG_SBIN_DIR)
|
||||
install-dev:
|
||||
|
||||
.dep: $(COMMINCL) $(COMMON) $(INVINCL) $(INVCOMMON)
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -0,0 +1,205 @@
|
||||
remove install as user
|
||||
|
||||
Upstream-Status: Inappropriate [configuration]
|
||||
|
||||
Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com>
|
||||
---
|
||||
include/buildmacros | 2 +-
|
||||
include/install-sh | 95 ++++++++---------------------------------------------
|
||||
2 files changed, 14 insertions(+), 83 deletions(-)
|
||||
|
||||
diff --git a/include/buildmacros b/include/buildmacros
|
||||
index 7a01880..0840d55 100644
|
||||
--- a/include/buildmacros
|
||||
+++ b/include/buildmacros
|
||||
@@ -30,7 +30,7 @@ OBJECTS = $(ASFILES:.s=.o) \
|
||||
$(LFILES:.l=.o) \
|
||||
$(YFILES:%.y=%.tab.o)
|
||||
|
||||
-INSTALL = $(TOPDIR)/install-sh -o $(PKG_USER) -g $(PKG_GROUP)
|
||||
+INSTALL = $(TOPDIR)/install-sh
|
||||
|
||||
IMAGES_DIR = $(TOPDIR)/all-images
|
||||
DIST_DIR = $(TOPDIR)/dist
|
||||
diff --git a/include/install-sh b/include/install-sh
|
||||
index c952a71..b9d66f7 100755
|
||||
--- a/include/install-sh
|
||||
+++ b/include/install-sh
|
||||
@@ -24,11 +24,11 @@
|
||||
# set set | yes yes
|
||||
#
|
||||
_usage() {
|
||||
- echo "Usage: $prog [-o owner] [-g group] [-m mode] -d directory"
|
||||
- echo "or $prog [-D] [-o owner] [-g group] [-m mode] file directory/file"
|
||||
- echo "or $prog [-o owner] [-g group] [-m mode] file [file ...] directory"
|
||||
+ echo "Usage: $prog [-m mode] -d directory"
|
||||
+ echo "or $prog [-m mode] file directory/file"
|
||||
+ echo "or $prog [-m mode] file [file ...] directory"
|
||||
echo "or $prog -S file target (creates \"target\" symlink)"
|
||||
- echo "or $prog -T lt_arg [-o owner] [-g group] [-m mode] libtool.lai directory"
|
||||
+ echo "or $prog -T lt_arg [-m mode] libtool.lai directory"
|
||||
echo ""
|
||||
echo "The \$DIST_MANIFEST and \$DIST_ROOT environment variables affect the"
|
||||
echo "behaviour of this command - see comments in the script."
|
||||
@@ -38,32 +38,6 @@ _usage() {
|
||||
exit 1
|
||||
}
|
||||
|
||||
-_chown ()
|
||||
-{
|
||||
- _st=255
|
||||
- if [ $# -eq 3 ] ; then
|
||||
- chown $1:$2 $3
|
||||
- _st=$?
|
||||
- if [ $_st -ne 0 ] ; then
|
||||
- if [ $REAL_UID != '0' ] ; then
|
||||
- if [ ! -f $DIST_ROOT/.chown.quiet ] ; then
|
||||
- echo '==============================================='
|
||||
- echo Ownership of files under ${DIST_ROOT:-/}
|
||||
- echo cannot be changed
|
||||
- echo '==============================================='
|
||||
- if [ -n "$DIST_ROOT" ] ; then
|
||||
- touch $DIST_ROOT/.chown.quiet
|
||||
- fi
|
||||
- fi
|
||||
- _st=0
|
||||
- fi
|
||||
- fi
|
||||
- fi
|
||||
-
|
||||
- return $_st
|
||||
-}
|
||||
-
|
||||
-
|
||||
_manifest ()
|
||||
{
|
||||
echo $* | sed -e 's/\/\//\//g' >>${DIST_MANIFEST:-/dev/null}
|
||||
@@ -77,9 +51,6 @@ Sflag=false
|
||||
Tflag=false
|
||||
DIRMODE=755
|
||||
FILEMODE=644
|
||||
-OWNER=`id -u`
|
||||
-GROUP=`id -g`
|
||||
-REAL_UID=$OWNER
|
||||
|
||||
# default is to install and don't append manifest
|
||||
INSTALL=true
|
||||
@@ -94,24 +65,16 @@ MANIFEST=:
|
||||
|
||||
if $INSTALL
|
||||
then
|
||||
- CP=cp; LN=ln; MKDIR=mkdir; CHMOD=chmod; CHOWN=_chown
|
||||
+ CP=cp; LN=ln; MKDIR=mkdir; CHMOD=chmod;
|
||||
else
|
||||
- CP=true; LN=true; MKDIR=true; CHMOD=true; CHOWN=true
|
||||
+ CP=true; LN=true; MKDIR=true; CHMOD=true;
|
||||
fi
|
||||
|
||||
-[ -n "$DIST_ROOT" -a $REAL_UID -ne 0 ] && CHOWN=true
|
||||
-
|
||||
-while getopts "Dcm:d:S:o:g:T:" c $*
|
||||
+while getopts "Dcm:d:S:T:" c $*
|
||||
do
|
||||
case $c in
|
||||
c)
|
||||
;;
|
||||
- g)
|
||||
- GROUP=$OPTARG
|
||||
- ;;
|
||||
- o)
|
||||
- OWNER=$OPTARG
|
||||
- ;;
|
||||
m)
|
||||
DIRMODE=`expr $OPTARG`
|
||||
FILEMODE=$DIRMODE
|
||||
@@ -146,18 +109,7 @@ then
|
||||
# first usage
|
||||
#
|
||||
$MKDIR -p $dir
|
||||
- status=$?
|
||||
- if [ $status -eq 0 ]
|
||||
- then
|
||||
- $CHMOD $DIRMODE $dir
|
||||
- status=$?
|
||||
- fi
|
||||
- if [ $status -eq 0 ]
|
||||
- then
|
||||
- $CHOWN $OWNER $GROUP $dir
|
||||
- status=$?
|
||||
- fi
|
||||
- $MANIFEST d $DIRMODE $OWNER $GROUP ${dir#$DIST_ROOT}
|
||||
+ $MANIFEST d $DIRMODE ${dir#$DIST_ROOT}
|
||||
elif $Sflag
|
||||
then
|
||||
#
|
||||
@@ -203,7 +155,7 @@ then
|
||||
install_name=$target/$solib
|
||||
$CP $solib $install_name
|
||||
status=$?
|
||||
- $MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$solib ${install_name#$DIST_ROOT}
|
||||
+ $MANIFEST f $FILEMODE $HERE/$solib ${install_name#$DIST_ROOT}
|
||||
break
|
||||
fi
|
||||
done
|
||||
@@ -254,7 +206,7 @@ then
|
||||
install_name=$target/$old_library
|
||||
$CP $old_library $install_name
|
||||
status=$?
|
||||
- $MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$old_library ${install_name#$DIST_ROOT}
|
||||
+ $MANIFEST f $FILEMODE $HERE/$old_library ${install_name#$DIST_ROOT}
|
||||
;;
|
||||
*)
|
||||
echo "$prog: -T $lt_install invalid"
|
||||
@@ -267,7 +219,6 @@ then
|
||||
if [ $status -eq 0 ]
|
||||
then
|
||||
$CHMOD $FILEMODE $install_name
|
||||
- $CHOWN $OWNER $GROUP $install_name
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
@@ -292,23 +243,10 @@ else
|
||||
then
|
||||
if [ -f $dir/$f ]
|
||||
then
|
||||
- $CHMOD $FILEMODE $dir/$f
|
||||
- status=$?
|
||||
- if [ $status -eq 0 ]
|
||||
- then
|
||||
- $CHOWN $OWNER $GROUP $dir/$f
|
||||
- status=$?
|
||||
- fi
|
||||
- $MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$f ${dir#$DIST_ROOT}/$f
|
||||
+ $MANIFEST f $FILEMODE $HERE/$f ${dir#$DIST_ROOT}/$f
|
||||
else
|
||||
$CHMOD $FILEMODE $dir
|
||||
- status=$?
|
||||
- if [ $status -eq 0 ]
|
||||
- then
|
||||
- $CHOWN $OWNER $GROUP $dir
|
||||
- status=$?
|
||||
- fi
|
||||
- $MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$dir ${dir#$DIST_ROOT}
|
||||
+ $MANIFEST f $FILEMODE $HERE/$dir ${dir#$DIST_ROOT}
|
||||
fi
|
||||
fi
|
||||
else
|
||||
@@ -334,14 +272,7 @@ else
|
||||
status=$?
|
||||
if [ $status -eq 0 ]
|
||||
then
|
||||
- $CHMOD $FILEMODE $dir/$f
|
||||
- status=$?
|
||||
- if [ $status -eq 0 ]
|
||||
- then
|
||||
- $CHOWN $OWNER $GROUP $dir/$f
|
||||
- status=$?
|
||||
- fi
|
||||
- $MANIFEST f $FILEMODE $OWNER $GROUP $HERE/$f ${dir#$DIST_ROOT}/$f
|
||||
+ $MANIFEST f $FILEMODE $HERE/$f ${dir#$DIST_ROOT}/$f
|
||||
fi
|
||||
[ $status -ne 0 ] && break
|
||||
done
|
||||
--
|
||||
1.8.1.2
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
SUMMARY = "XFS Filesystem Dump Utility"
|
||||
DESCRIPTION = "The xfsdump package contains xfsdump, xfsrestore and a \
|
||||
number of other utilities for administering XFS filesystems.\
|
||||
xfsdump examines files in a filesystem, determines which \
|
||||
need to be backed up, and copies those files to a \
|
||||
specified disk, tape or other storage medium."
|
||||
HOMEPAGE = "http://oss.sgi.com/projects/xfs"
|
||||
SECTION = "base"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://doc/COPYING;md5=15c832894d10ddd00dfcf57bee490ecc"
|
||||
DEPENDS = "xfsprogs attr"
|
||||
|
||||
SRC_URI = "https://www.kernel.org/pub/linux/utils/fs/xfs/xfsdump/${BP}.tar.xz \
|
||||
file://remove-install-as-user.patch \
|
||||
file://0001-include-libgen.h-for-basename-API-prototype.patch \
|
||||
${@bb.utils.contains('DISTRO_FEATURES','usrmerge','file://0001-xfsdump-support-usrmerge.patch','',d)} \
|
||||
"
|
||||
SRC_URI[sha256sum] = "f39c4c1b306b2dd7ec979c0e94d60fe69083d2ecf9af051cac5ef3bed772c74a"
|
||||
|
||||
inherit autotools-brokensep
|
||||
|
||||
PARALLEL_MAKE = ""
|
||||
PACKAGECONFIG ??= ""
|
||||
PACKAGECONFIG[gettext] = "--enable-gettext=yes,--enable-gettext=no,gettext"
|
||||
|
||||
CFLAGS += "-D_FILE_OFFSET_BITS=64"
|
||||
TARGET_CC_ARCH:append:libc-musl = " -D_LARGEFILE64_SOURCE"
|
||||
|
||||
do_configure () {
|
||||
export DEBUG="-DNDEBUG"
|
||||
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}
|
||||
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}
|
||||
oe_runconf
|
||||
}
|
||||
|
||||
do_install () {
|
||||
export DIST_ROOT=${D}
|
||||
oe_runmake install
|
||||
oe_runmake install-dev
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
From e81633a276dd6a9f919e5e5c15481ac50a8e485d Mon Sep 17 00:00:00 2001
|
||||
From: Changqing Li <changqing.li@windriver.com>
|
||||
Date: Fri, 30 Aug 2019 14:59:06 +0800
|
||||
Subject: [PATCH] support usrmerge
|
||||
|
||||
Upstream-Status: Inappropriate [oe-specific]
|
||||
|
||||
Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
||||
---
|
||||
configure.ac | 7 +++----
|
||||
1 file changed, 3 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 4b7e4c8..f1afbd6 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -110,8 +110,7 @@ AC_ARG_ENABLE(libicu,
|
||||
# If the user specified a libdir ending in lib64 do not append another
|
||||
# 64 to the library names.
|
||||
#
|
||||
-base_libdir=`basename "$libdir"`
|
||||
-case $base_libdir in
|
||||
+case `basename "$libdir"` in
|
||||
lib64)
|
||||
enable_lib64=no
|
||||
esac
|
||||
@@ -125,8 +124,8 @@ esac
|
||||
#
|
||||
case $exec_prefix:$prefix in
|
||||
NONE:NONE | NONE:/usr | /usr:*)
|
||||
- root_sbindir='/sbin'
|
||||
- root_libdir="/${base_libdir}"
|
||||
+ root_sbindir="${base_sbindir}"
|
||||
+ root_libdir="${base_libdir}"
|
||||
;;
|
||||
*)
|
||||
root_sbindir="${sbindir}"
|
||||
--
|
||||
2.7.4
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
From 11a42df394de3dc520e72a016296dcc6dea02a7a Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Thu, 23 Aug 2018 05:33:57 +0000
|
||||
Subject: [PATCH] include include/xfs/linux.h after <sys/mman.h>
|
||||
|
||||
This helps compiling with musl which goes ahead and undefines MAP_SYNC
|
||||
for mips and other architectures where its not wired in kernel
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
io/mmap.c | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/io/mmap.c b/io/mmap.c
|
||||
index dbfcca5..ca00df1 100644
|
||||
--- a/io/mmap.c
|
||||
+++ b/io/mmap.c
|
||||
@@ -4,10 +4,11 @@
|
||||
* All Rights Reserved.
|
||||
*/
|
||||
|
||||
-#include "command.h"
|
||||
-#include "input.h"
|
||||
#include <sys/mman.h>
|
||||
#include <signal.h>
|
||||
+
|
||||
+#include "command.h"
|
||||
+#include "input.h"
|
||||
#include "init.h"
|
||||
#include "io.h"
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
From f62d3e5cc1d4e416b97778059f0b3c20d777a4c2 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Wed, 21 Dec 2022 17:40:11 -0800
|
||||
Subject: [PATCH] configure: Use AC_SYS_LARGERFILE autoconf macro
|
||||
|
||||
Helps define largefile support on relevant platforms
|
||||
|
||||
Upstream-Status: Submitted [https://lore.kernel.org/linux-xfs/20221222015327.939932-1-raj.khem@gmail.com/T/#t]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
configure.ac | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 5a6bf185..a6f556ec 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -10,6 +10,9 @@ AC_PROG_INSTALL
|
||||
LT_INIT
|
||||
|
||||
AC_PROG_CC
|
||||
+
|
||||
+AC_SYS_LARGEFILE
|
||||
+
|
||||
AC_ARG_VAR(BUILD_CC, [C compiler for build tools])
|
||||
if test "${BUILD_CC+set}" != "set"; then
|
||||
if test $cross_compiling = no; then
|
||||
@@ -0,0 +1,724 @@
|
||||
From f260099fc45f0653aa4758d1d581e07f5b9c6a54 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Wed, 21 Dec 2022 17:43:07 -0800
|
||||
Subject: [PATCH] Replace off64_t/stat64 with off_t/stat
|
||||
|
||||
When using AC_SYS_LARGEFILE, it will automatically add
|
||||
-D_FILE_OFFSET_BITS=64 to enable 64bit off_t and all lfs64 support
|
||||
|
||||
helps compile on musl where off_t was always 64bit and lfs64 were never
|
||||
needed
|
||||
|
||||
Upstream-Status: Submitted [https://lore.kernel.org/linux-xfs/20221222015327.939932-1-raj.khem@gmail.com/T/#t]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
|
||||
---
|
||||
copy/xfs_copy.c | 2 +-
|
||||
fsr/xfs_fsr.c | 2 +-
|
||||
io/bmap.c | 6 +++---
|
||||
io/copy_file_range.c | 4 ++--
|
||||
io/cowextsize.c | 6 +++---
|
||||
io/fadvise.c | 2 +-
|
||||
io/fiemap.c | 6 +++---
|
||||
io/fsmap.c | 6 +++---
|
||||
io/io.h | 10 +++++-----
|
||||
io/madvise.c | 2 +-
|
||||
io/mincore.c | 2 +-
|
||||
io/mmap.c | 12 ++++++------
|
||||
io/pread.c | 22 +++++++++++-----------
|
||||
io/pwrite.c | 20 ++++++++++----------
|
||||
io/reflink.c | 4 ++--
|
||||
io/seek.c | 6 +++---
|
||||
io/sendfile.c | 6 +++---
|
||||
io/stat.c | 2 +-
|
||||
io/sync_file_range.c | 2 +-
|
||||
io/truncate.c | 2 +-
|
||||
libxfs/rdwr.c | 8 ++++----
|
||||
mdrestore/xfs_mdrestore.c | 2 +-
|
||||
repair/prefetch.c | 2 +-
|
||||
scrub/spacemap.c | 6 +++---
|
||||
spaceman/freesp.c | 4 ++--
|
||||
spaceman/trim.c | 2 +-
|
||||
26 files changed, 74 insertions(+), 74 deletions(-)
|
||||
|
||||
diff --git a/copy/xfs_copy.c b/copy/xfs_copy.c
|
||||
index 0420649..98a578a 100644
|
||||
--- a/copy/xfs_copy.c
|
||||
+++ b/copy/xfs_copy.c
|
||||
@@ -881,7 +881,7 @@ main(int argc, char **argv)
|
||||
}
|
||||
} else {
|
||||
char *lb = memalign(wbuf_align, XFS_MAX_SECTORSIZE);
|
||||
- off64_t off;
|
||||
+ off_t off;
|
||||
ssize_t len;
|
||||
|
||||
/* ensure device files are sufficiently large */
|
||||
diff --git a/fsr/xfs_fsr.c b/fsr/xfs_fsr.c
|
||||
index ba02506..12fffbd 100644
|
||||
--- a/fsr/xfs_fsr.c
|
||||
+++ b/fsr/xfs_fsr.c
|
||||
@@ -1148,7 +1148,7 @@ packfile(char *fname, char *tname, int fd,
|
||||
struct dioattr dio;
|
||||
static xfs_swapext_t sx;
|
||||
struct xfs_flock64 space;
|
||||
- off64_t cnt, pos;
|
||||
+ off_t cnt, pos;
|
||||
void *fbuf = NULL;
|
||||
int ct, wc, wc_b4;
|
||||
char ffname[SMBUFSZ];
|
||||
diff --git a/io/bmap.c b/io/bmap.c
|
||||
index 722a389..6182e1c 100644
|
||||
--- a/io/bmap.c
|
||||
+++ b/io/bmap.c
|
||||
@@ -257,7 +257,7 @@ bmap_f(
|
||||
#define FLG_BSW 0000010 /* Not on begin of stripe width */
|
||||
#define FLG_ESW 0000001 /* Not on end of stripe width */
|
||||
int agno;
|
||||
- off64_t agoff, bbperag;
|
||||
+ off_t agoff, bbperag;
|
||||
int foff_w, boff_w, aoff_w, tot_w, agno_w;
|
||||
char rbuf[32], bbuf[32], abuf[32];
|
||||
int sunit, swidth;
|
||||
@@ -267,8 +267,8 @@ bmap_f(
|
||||
if (is_rt)
|
||||
sunit = swidth = bbperag = 0;
|
||||
else {
|
||||
- bbperag = (off64_t)fsgeo.agblocks *
|
||||
- (off64_t)fsgeo.blocksize / BBSIZE;
|
||||
+ bbperag = (off_t)fsgeo.agblocks *
|
||||
+ (off_t)fsgeo.blocksize / BBSIZE;
|
||||
sunit = (fsgeo.sunit * fsgeo.blocksize) / BBSIZE;
|
||||
swidth = (fsgeo.swidth * fsgeo.blocksize) / BBSIZE;
|
||||
}
|
||||
diff --git a/io/copy_file_range.c b/io/copy_file_range.c
|
||||
index d154fa7..422e691 100644
|
||||
--- a/io/copy_file_range.c
|
||||
+++ b/io/copy_file_range.c
|
||||
@@ -54,7 +54,7 @@ copy_file_range_cmd(int fd, long long *src_off, long long *dst_off, size_t len)
|
||||
return 0;
|
||||
}
|
||||
|
||||
-static off64_t
|
||||
+static off_t
|
||||
copy_src_filesize(int fd)
|
||||
{
|
||||
struct stat st;
|
||||
@@ -154,7 +154,7 @@ copy_range_f(int argc, char **argv)
|
||||
}
|
||||
|
||||
if (!len_specified) {
|
||||
- off64_t sz;
|
||||
+ off_t sz;
|
||||
|
||||
sz = copy_src_filesize(fd);
|
||||
if (sz < 0 || (unsigned long long)sz > SIZE_MAX) {
|
||||
diff --git a/io/cowextsize.c b/io/cowextsize.c
|
||||
index f6b134d..00e40c6 100644
|
||||
--- a/io/cowextsize.c
|
||||
+++ b/io/cowextsize.c
|
||||
@@ -50,10 +50,10 @@ static int
|
||||
set_cowextsize(const char *path, int fd, long extsz)
|
||||
{
|
||||
struct fsxattr fsx;
|
||||
- struct stat64 stat;
|
||||
+ struct stat stat;
|
||||
|
||||
- if (fstat64(fd, &stat) < 0) {
|
||||
- perror("fstat64");
|
||||
+ if (fstat(fd, &stat) < 0) {
|
||||
+ perror("fstat");
|
||||
exitcode = 1;
|
||||
return 0;
|
||||
}
|
||||
diff --git a/io/fadvise.c b/io/fadvise.c
|
||||
index 60cc0f0..0966c41 100644
|
||||
--- a/io/fadvise.c
|
||||
+++ b/io/fadvise.c
|
||||
@@ -39,7 +39,7 @@ fadvise_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t offset = 0, length = 0;
|
||||
+ off_t offset = 0, length = 0;
|
||||
int c, range = 0, advise = POSIX_FADV_NORMAL;
|
||||
|
||||
while ((c = getopt(argc, argv, "dnrsw")) != EOF) {
|
||||
diff --git a/io/fiemap.c b/io/fiemap.c
|
||||
index f0c74df..b41f71b 100644
|
||||
--- a/io/fiemap.c
|
||||
+++ b/io/fiemap.c
|
||||
@@ -234,9 +234,9 @@ fiemap_f(
|
||||
int tot_w = 5; /* 5 since its just one number */
|
||||
int flg_w = 5;
|
||||
__u64 last_logical = 0; /* last extent offset handled */
|
||||
- off64_t start_offset = 0; /* mapping start */
|
||||
- off64_t length = -1LL; /* mapping length */
|
||||
- off64_t range_end = -1LL; /* mapping end*/
|
||||
+ off_t start_offset = 0; /* mapping start */
|
||||
+ off_t length = -1LL; /* mapping length */
|
||||
+ off_t range_end = -1LL; /* mapping end*/
|
||||
size_t fsblocksize, fssectsize;
|
||||
struct stat st;
|
||||
|
||||
diff --git a/io/fsmap.c b/io/fsmap.c
|
||||
index 7db5184..bf11963 100644
|
||||
--- a/io/fsmap.c
|
||||
+++ b/io/fsmap.c
|
||||
@@ -170,7 +170,7 @@ dump_map_verbose(
|
||||
unsigned long long i;
|
||||
struct fsmap *p;
|
||||
int agno;
|
||||
- off64_t agoff, bperag;
|
||||
+ off_t agoff, bperag;
|
||||
int foff_w, boff_w, aoff_w, tot_w, agno_w, own_w;
|
||||
int nr_w, dev_w;
|
||||
char rbuf[40], bbuf[40], abuf[40], obuf[40];
|
||||
@@ -183,8 +183,8 @@ dump_map_verbose(
|
||||
dev_w = 3;
|
||||
nr_w = 4;
|
||||
tot_w = MINTOT_WIDTH;
|
||||
- bperag = (off64_t)fsgeo->agblocks *
|
||||
- (off64_t)fsgeo->blocksize;
|
||||
+ bperag = (off_t)fsgeo->agblocks *
|
||||
+ (off_t)fsgeo->blocksize;
|
||||
sunit = (fsgeo->sunit * fsgeo->blocksize);
|
||||
swidth = (fsgeo->swidth * fsgeo->blocksize);
|
||||
|
||||
diff --git a/io/io.h b/io/io.h
|
||||
index fe474fa..68e5e48 100644
|
||||
--- a/io/io.h
|
||||
+++ b/io/io.h
|
||||
@@ -53,7 +53,7 @@ extern int stat_f(int argc, char **argv);
|
||||
typedef struct mmap_region {
|
||||
void *addr; /* address of start of mapping */
|
||||
size_t length; /* length of mapping */
|
||||
- off64_t offset; /* start offset into backing file */
|
||||
+ off_t offset; /* start offset into backing file */
|
||||
int prot; /* protection mode of the mapping */
|
||||
int flags; /* MAP_* flags passed to mmap() */
|
||||
char *name; /* name of backing file */
|
||||
@@ -63,13 +63,13 @@ extern mmap_region_t *maptable; /* mmap'd region array */
|
||||
extern int mapcount; /* #entries in the mapping table */
|
||||
extern mmap_region_t *mapping; /* active mapping table entry */
|
||||
extern int maplist_f(void);
|
||||
-extern void *check_mapping_range(mmap_region_t *, off64_t, size_t, int);
|
||||
+extern void *check_mapping_range(mmap_region_t *, off_t, size_t, int);
|
||||
|
||||
/*
|
||||
* Various xfs_io helper routines/globals
|
||||
*/
|
||||
|
||||
-extern off64_t filesize(void);
|
||||
+extern off_t filesize(void);
|
||||
extern int openfile(char *, struct xfs_fsop_geom *, int, mode_t,
|
||||
struct fs_path *);
|
||||
extern int addfile(char *, int , struct xfs_fsop_geom *, int,
|
||||
@@ -84,9 +84,9 @@ extern size_t io_buffersize;
|
||||
extern int vectors;
|
||||
extern struct iovec *iov;
|
||||
extern int alloc_buffer(size_t, int, unsigned int);
|
||||
-extern int read_buffer(int, off64_t, long long, long long *,
|
||||
+extern int read_buffer(int, off_t, long long, long long *,
|
||||
int, int);
|
||||
-extern void dump_buffer(off64_t, ssize_t);
|
||||
+extern void dump_buffer(off_t, ssize_t);
|
||||
|
||||
extern void attr_init(void);
|
||||
extern void bmap_init(void);
|
||||
diff --git a/io/madvise.c b/io/madvise.c
|
||||
index bde3153..6e9c5b1 100644
|
||||
--- a/io/madvise.c
|
||||
+++ b/io/madvise.c
|
||||
@@ -39,7 +39,7 @@ madvise_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t offset, llength;
|
||||
+ off_t offset, llength;
|
||||
size_t length;
|
||||
void *start;
|
||||
int advise = MADV_NORMAL, c;
|
||||
diff --git a/io/mincore.c b/io/mincore.c
|
||||
index 67f1d6c..24147ac 100644
|
||||
--- a/io/mincore.c
|
||||
+++ b/io/mincore.c
|
||||
@@ -17,7 +17,7 @@ mincore_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t offset, llength;
|
||||
+ off_t offset, llength;
|
||||
size_t length;
|
||||
size_t blocksize, sectsize;
|
||||
void *start;
|
||||
diff --git a/io/mmap.c b/io/mmap.c
|
||||
index 7114404..128a2c0 100644
|
||||
--- a/io/mmap.c
|
||||
+++ b/io/mmap.c
|
||||
@@ -64,11 +64,11 @@ print_mapping(
|
||||
void *
|
||||
check_mapping_range(
|
||||
mmap_region_t *map,
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
size_t length,
|
||||
int pagealign)
|
||||
{
|
||||
- off64_t relative;
|
||||
+ off_t relative;
|
||||
|
||||
if (offset < mapping->offset) {
|
||||
printf(_("offset (%lld) is before start of mapping (%lld)\n"),
|
||||
@@ -156,7 +156,7 @@ mmap_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t offset;
|
||||
+ off_t offset;
|
||||
ssize_t length = 0, length2 = 0;
|
||||
void *address = NULL;
|
||||
char *filename;
|
||||
@@ -309,7 +309,7 @@ msync_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t offset;
|
||||
+ off_t offset;
|
||||
ssize_t length;
|
||||
void *start;
|
||||
int c, flags = 0;
|
||||
@@ -402,7 +402,7 @@ mread_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t offset, tmp, dumpoffset, printoffset;
|
||||
+ off_t offset, tmp, dumpoffset, printoffset;
|
||||
ssize_t length;
|
||||
size_t dumplen, cnt = 0;
|
||||
char *bp;
|
||||
@@ -567,7 +567,7 @@ mwrite_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t offset, tmp;
|
||||
+ off_t offset, tmp;
|
||||
ssize_t length;
|
||||
void *start;
|
||||
char *sp;
|
||||
diff --git a/io/pread.c b/io/pread.c
|
||||
index 0f1d8b9..79990c6 100644
|
||||
--- a/io/pread.c
|
||||
+++ b/io/pread.c
|
||||
@@ -116,7 +116,7 @@ alloc_buffer(
|
||||
static void
|
||||
__dump_buffer(
|
||||
void *buf,
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
ssize_t len)
|
||||
{
|
||||
int i, j;
|
||||
@@ -141,7 +141,7 @@ __dump_buffer(
|
||||
|
||||
void
|
||||
dump_buffer(
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
ssize_t len)
|
||||
{
|
||||
int i, l;
|
||||
@@ -164,7 +164,7 @@ dump_buffer(
|
||||
static ssize_t
|
||||
do_preadv(
|
||||
int fd,
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
long long count)
|
||||
{
|
||||
int vecs = 0;
|
||||
@@ -199,7 +199,7 @@ do_preadv(
|
||||
static ssize_t
|
||||
do_pread(
|
||||
int fd,
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
long long count,
|
||||
size_t buffer_size)
|
||||
{
|
||||
@@ -212,13 +212,13 @@ do_pread(
|
||||
static int
|
||||
read_random(
|
||||
int fd,
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
long long count,
|
||||
long long *total,
|
||||
unsigned int seed,
|
||||
int eof)
|
||||
{
|
||||
- off64_t end, off, range;
|
||||
+ off_t end, off, range;
|
||||
ssize_t bytes;
|
||||
int ops = 0;
|
||||
|
||||
@@ -259,12 +259,12 @@ read_random(
|
||||
static int
|
||||
read_backward(
|
||||
int fd,
|
||||
- off64_t *offset,
|
||||
+ off_t *offset,
|
||||
long long *count,
|
||||
long long *total,
|
||||
int eof)
|
||||
{
|
||||
- off64_t end, off = *offset;
|
||||
+ off_t end, off = *offset;
|
||||
ssize_t bytes = 0, bytes_requested;
|
||||
long long cnt = *count;
|
||||
int ops = 0;
|
||||
@@ -319,7 +319,7 @@ read_backward(
|
||||
static int
|
||||
read_forward(
|
||||
int fd,
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
long long count,
|
||||
long long *total,
|
||||
int verbose,
|
||||
@@ -353,7 +353,7 @@ read_forward(
|
||||
int
|
||||
read_buffer(
|
||||
int fd,
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
long long count,
|
||||
long long *total,
|
||||
int verbose,
|
||||
@@ -368,7 +368,7 @@ pread_f(
|
||||
char **argv)
|
||||
{
|
||||
size_t bsize;
|
||||
- off64_t offset;
|
||||
+ off_t offset;
|
||||
unsigned int zeed = 0;
|
||||
long long count, total, tmp;
|
||||
size_t fsblocksize, fssectsize;
|
||||
diff --git a/io/pwrite.c b/io/pwrite.c
|
||||
index 467bfa9..8d134c5 100644
|
||||
--- a/io/pwrite.c
|
||||
+++ b/io/pwrite.c
|
||||
@@ -54,7 +54,7 @@ pwrite_help(void)
|
||||
static ssize_t
|
||||
do_pwritev(
|
||||
int fd,
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
long long count,
|
||||
int pwritev2_flags)
|
||||
{
|
||||
@@ -97,7 +97,7 @@ do_pwritev(
|
||||
static ssize_t
|
||||
do_pwrite(
|
||||
int fd,
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
long long count,
|
||||
size_t buffer_size,
|
||||
int pwritev2_flags)
|
||||
@@ -110,13 +110,13 @@ do_pwrite(
|
||||
|
||||
static int
|
||||
write_random(
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
long long count,
|
||||
unsigned int seed,
|
||||
long long *total,
|
||||
int pwritev2_flags)
|
||||
{
|
||||
- off64_t off, range;
|
||||
+ off_t off, range;
|
||||
ssize_t bytes;
|
||||
int ops = 0;
|
||||
|
||||
@@ -155,12 +155,12 @@ write_random(
|
||||
|
||||
static int
|
||||
write_backward(
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
long long *count,
|
||||
long long *total,
|
||||
int pwritev2_flags)
|
||||
{
|
||||
- off64_t end, off = offset;
|
||||
+ off_t end, off = offset;
|
||||
ssize_t bytes = 0, bytes_requested;
|
||||
long long cnt = *count;
|
||||
int ops = 0;
|
||||
@@ -214,11 +214,11 @@ write_backward(
|
||||
|
||||
static int
|
||||
write_buffer(
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
long long count,
|
||||
size_t bs,
|
||||
int fd,
|
||||
- off64_t skip,
|
||||
+ off_t skip,
|
||||
long long *total,
|
||||
int pwritev2_flags)
|
||||
{
|
||||
@@ -253,7 +253,7 @@ write_buffer(
|
||||
|
||||
static int
|
||||
write_once(
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
long long count,
|
||||
long long *total,
|
||||
int pwritev2_flags)
|
||||
@@ -275,7 +275,7 @@ pwrite_f(
|
||||
char **argv)
|
||||
{
|
||||
size_t bsize;
|
||||
- off64_t offset, skip = 0;
|
||||
+ off_t offset, skip = 0;
|
||||
long long count, total, tmp;
|
||||
unsigned int zeed = 0, seed = 0xcdcdcdcd;
|
||||
size_t fsblocksize, fssectsize;
|
||||
diff --git a/io/reflink.c b/io/reflink.c
|
||||
index 8e4f389..b6a3c05 100644
|
||||
--- a/io/reflink.c
|
||||
+++ b/io/reflink.c
|
||||
@@ -98,7 +98,7 @@ dedupe_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t soffset, doffset;
|
||||
+ off_t soffset, doffset;
|
||||
long long count, total;
|
||||
char *infile;
|
||||
int condensed, quiet_flag;
|
||||
@@ -226,7 +226,7 @@ reflink_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t soffset, doffset;
|
||||
+ off_t soffset, doffset;
|
||||
long long count = 0, total;
|
||||
char *infile = NULL;
|
||||
int condensed, quiet_flag;
|
||||
diff --git a/io/seek.c b/io/seek.c
|
||||
index 6734ecb..ffe7439 100644
|
||||
--- a/io/seek.c
|
||||
+++ b/io/seek.c
|
||||
@@ -63,8 +63,8 @@ static void
|
||||
seek_output(
|
||||
int startflag,
|
||||
char *type,
|
||||
- off64_t start,
|
||||
- off64_t offset)
|
||||
+ off_t start,
|
||||
+ off_t offset)
|
||||
{
|
||||
if (offset == -1) {
|
||||
if (errno == ENXIO) {
|
||||
@@ -92,7 +92,7 @@ seek_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t offset, start;
|
||||
+ off_t offset, start;
|
||||
size_t fsblocksize, fssectsize;
|
||||
int c;
|
||||
int current; /* specify data or hole */
|
||||
diff --git a/io/sendfile.c b/io/sendfile.c
|
||||
index a003bb5..2ce569c 100644
|
||||
--- a/io/sendfile.c
|
||||
+++ b/io/sendfile.c
|
||||
@@ -34,12 +34,12 @@ sendfile_help(void)
|
||||
|
||||
static int
|
||||
send_buffer(
|
||||
- off64_t offset,
|
||||
+ off_t offset,
|
||||
size_t count,
|
||||
int fd,
|
||||
long long *total)
|
||||
{
|
||||
- off64_t off = offset;
|
||||
+ off_t off = offset;
|
||||
ssize_t bytes, bytes_remaining = count;
|
||||
int ops = 0;
|
||||
|
||||
@@ -66,7 +66,7 @@ sendfile_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t offset = 0;
|
||||
+ off_t offset = 0;
|
||||
long long count, total;
|
||||
size_t blocksize, sectsize;
|
||||
struct timeval t1, t2;
|
||||
diff --git a/io/stat.c b/io/stat.c
|
||||
index b57f9ee..e8f68dc 100644
|
||||
--- a/io/stat.c
|
||||
+++ b/io/stat.c
|
||||
@@ -21,7 +21,7 @@ static cmdinfo_t stat_cmd;
|
||||
static cmdinfo_t statfs_cmd;
|
||||
static cmdinfo_t statx_cmd;
|
||||
|
||||
-off64_t
|
||||
+off_t
|
||||
filesize(void)
|
||||
{
|
||||
struct stat st;
|
||||
diff --git a/io/sync_file_range.c b/io/sync_file_range.c
|
||||
index 94285c2..2375a06 100644
|
||||
--- a/io/sync_file_range.c
|
||||
+++ b/io/sync_file_range.c
|
||||
@@ -30,7 +30,7 @@ sync_range_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t offset = 0, length = 0;
|
||||
+ off_t offset = 0, length = 0;
|
||||
int c, sync_mode = 0;
|
||||
size_t blocksize, sectsize;
|
||||
|
||||
diff --git a/io/truncate.c b/io/truncate.c
|
||||
index 1d04919..a74b613 100644
|
||||
--- a/io/truncate.c
|
||||
+++ b/io/truncate.c
|
||||
@@ -16,7 +16,7 @@ truncate_f(
|
||||
int argc,
|
||||
char **argv)
|
||||
{
|
||||
- off64_t offset;
|
||||
+ off_t offset;
|
||||
size_t blocksize, sectsize;
|
||||
|
||||
init_cvtnum(&blocksize, §size);
|
||||
diff --git a/libxfs/rdwr.c b/libxfs/rdwr.c
|
||||
index 0e33211..153007d 100644
|
||||
--- a/libxfs/rdwr.c
|
||||
+++ b/libxfs/rdwr.c
|
||||
@@ -576,7 +576,7 @@ libxfs_balloc(
|
||||
|
||||
|
||||
static int
|
||||
-__read_buf(int fd, void *buf, int len, off64_t offset, int flags)
|
||||
+__read_buf(int fd, void *buf, int len, off_t offset, int flags)
|
||||
{
|
||||
int sts;
|
||||
|
||||
@@ -638,7 +638,7 @@ libxfs_readbufr_map(struct xfs_buftarg *btp, struct xfs_buf *bp, int flags)
|
||||
|
||||
buf = bp->b_addr;
|
||||
for (i = 0; i < bp->b_nmaps; i++) {
|
||||
- off64_t offset = LIBXFS_BBTOOFF64(bp->b_maps[i].bm_bn);
|
||||
+ off_t offset = LIBXFS_BBTOOFF64(bp->b_maps[i].bm_bn);
|
||||
int len = BBTOB(bp->b_maps[i].bm_len);
|
||||
|
||||
error = __read_buf(fd, buf, len, offset, flags);
|
||||
@@ -797,7 +797,7 @@ err:
|
||||
}
|
||||
|
||||
static int
|
||||
-__write_buf(int fd, void *buf, int len, off64_t offset, int flags)
|
||||
+__write_buf(int fd, void *buf, int len, off_t offset, int flags)
|
||||
{
|
||||
int sts;
|
||||
|
||||
@@ -863,7 +863,7 @@ libxfs_bwrite(
|
||||
void *buf = bp->b_addr;
|
||||
|
||||
for (i = 0; i < bp->b_nmaps; i++) {
|
||||
- off64_t offset = LIBXFS_BBTOOFF64(bp->b_maps[i].bm_bn);
|
||||
+ off_t offset = LIBXFS_BBTOOFF64(bp->b_maps[i].bm_bn);
|
||||
int len = BBTOB(bp->b_maps[i].bm_len);
|
||||
|
||||
bp->b_error = __write_buf(fd, buf, len, offset,
|
||||
diff --git a/mdrestore/xfs_mdrestore.c b/mdrestore/xfs_mdrestore.c
|
||||
index 8e3998d..334bdd2 100644
|
||||
--- a/mdrestore/xfs_mdrestore.c
|
||||
+++ b/mdrestore/xfs_mdrestore.c
|
||||
@@ -160,7 +160,7 @@ verify_device_size(
|
||||
} else {
|
||||
/* ensure device is sufficiently large enough */
|
||||
char lb[XFS_MAX_SECTORSIZE] = { 0 };
|
||||
- off64_t off;
|
||||
+ off_t off;
|
||||
|
||||
off = nr_blocks * blocksize - sizeof(lb);
|
||||
if (pwrite(dev_fd, lb, sizeof(lb), off) < 0)
|
||||
diff --git a/repair/prefetch.c b/repair/prefetch.c
|
||||
index 78c1e39..b0dd197 100644
|
||||
--- a/repair/prefetch.c
|
||||
+++ b/repair/prefetch.c
|
||||
@@ -475,7 +475,7 @@ pf_batch_read(
|
||||
{
|
||||
struct xfs_buf *bplist[MAX_BUFS];
|
||||
unsigned int num;
|
||||
- off64_t first_off, last_off, next_off;
|
||||
+ off_t first_off, last_off, next_off;
|
||||
int len, size;
|
||||
int i;
|
||||
int inode_bufs;
|
||||
diff --git a/scrub/spacemap.c b/scrub/spacemap.c
|
||||
index b6fd411..9cefe07 100644
|
||||
--- a/scrub/spacemap.c
|
||||
+++ b/scrub/spacemap.c
|
||||
@@ -97,11 +97,11 @@ scan_ag_rmaps(
|
||||
struct scrub_ctx *ctx = (struct scrub_ctx *)wq->wq_ctx;
|
||||
struct scan_blocks *sbx = arg;
|
||||
struct fsmap keys[2];
|
||||
- off64_t bperag;
|
||||
+ off_t bperag;
|
||||
int ret;
|
||||
|
||||
- bperag = (off64_t)ctx->mnt.fsgeom.agblocks *
|
||||
- (off64_t)ctx->mnt.fsgeom.blocksize;
|
||||
+ bperag = (off_t)ctx->mnt.fsgeom.agblocks *
|
||||
+ (off_t)ctx->mnt.fsgeom.blocksize;
|
||||
|
||||
memset(keys, 0, sizeof(struct fsmap) * 2);
|
||||
keys->fmr_device = ctx->fsinfo.fs_datadev;
|
||||
diff --git a/spaceman/freesp.c b/spaceman/freesp.c
|
||||
index 70dcdb5..f5177cb 100644
|
||||
--- a/spaceman/freesp.c
|
||||
+++ b/spaceman/freesp.c
|
||||
@@ -62,7 +62,7 @@ static void
|
||||
addtohist(
|
||||
xfs_agnumber_t agno,
|
||||
xfs_agblock_t agbno,
|
||||
- off64_t len)
|
||||
+ off_t len)
|
||||
{
|
||||
long i;
|
||||
|
||||
@@ -152,7 +152,7 @@ scan_ag(
|
||||
struct fsmap *l, *h;
|
||||
struct fsmap *p;
|
||||
struct xfs_fd *xfd = &file->xfd;
|
||||
- off64_t aglen;
|
||||
+ off_t aglen;
|
||||
xfs_agblock_t agbno;
|
||||
unsigned long long freeblks = 0;
|
||||
unsigned long long freeexts = 0;
|
||||
diff --git a/spaceman/trim.c b/spaceman/trim.c
|
||||
index e9ed47e..727dd81 100644
|
||||
--- a/spaceman/trim.c
|
||||
+++ b/spaceman/trim.c
|
||||
@@ -26,7 +26,7 @@ trim_f(
|
||||
struct xfs_fd *xfd = &file->xfd;
|
||||
struct xfs_fsop_geom *fsgeom = &xfd->fsgeom;
|
||||
xfs_agnumber_t agno = 0;
|
||||
- off64_t offset = 0;
|
||||
+ off_t offset = 0;
|
||||
ssize_t length = 0;
|
||||
ssize_t minlen = 0;
|
||||
int aflag = 0;
|
||||
@@ -0,0 +1,15 @@
|
||||
Upstream-Status: Pending
|
||||
|
||||
Index: xfsprogs-4.14.0/include/builddefs.in
|
||||
===================================================================
|
||||
--- xfsprogs-4.14.0.orig/include/builddefs.in
|
||||
+++ xfsprogs-4.14.0/include/builddefs.in
|
||||
@@ -168,7 +168,7 @@ ifeq ($(ENABLE_GETTEXT),yes)
|
||||
GCFLAGS += -DENABLE_GETTEXT
|
||||
endif
|
||||
|
||||
-BUILD_CFLAGS += $(GCFLAGS) $(PCFLAGS)
|
||||
+BUILD_CFLAGS += $(GCFLAGS)
|
||||
# First, Sanitizer, Global, Platform, Local CFLAGS
|
||||
CFLAGS += $(FCFLAGS) $(SANITIZER_CFLAGS) $(OPTIMIZER) $(GCFLAGS) $(PCFLAGS) $(LCFLAGS)
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
SUMMARY = "XFS Filesystem Utilities"
|
||||
HOMEPAGE = "http://oss.sgi.com/projects/xfs"
|
||||
SECTION = "base"
|
||||
LICENSE = "GPL-2.0-only & LGPL-2.1-only"
|
||||
LICENSE:libhandle = "LGPL-2.1-only"
|
||||
LIC_FILES_CHKSUM = "file://LICENSES/GPL-2.0;md5=e6a75371ba4d16749254a51215d13f97 \
|
||||
file://LICENSES/LGPL-2.1;md5=b370887980db5dd40659b50909238dbd"
|
||||
DEPENDS = "util-linux util-linux-native"
|
||||
SRC_URI = "https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/${BP}.tar.xz \
|
||||
file://remove_flags_from_build_flags.patch \
|
||||
file://0002-include-include-xfs-linux.h-after-sys-mman.h.patch \
|
||||
file://0001-support-usrmerge.patch \
|
||||
file://0004-configure-Use-AC_SYS_LARGERFILE-autoconf-macro.patch \
|
||||
file://0005-Replace-off64_t-stat64-with-off_t-stat.patch \
|
||||
"
|
||||
SRC_URI[sha256sum] = "50ca2f4676df8fab4cb4c3ef3dd512d5551e6844d40a65a31d5b8e03593d22df"
|
||||
inherit autotools-brokensep pkgconfig
|
||||
|
||||
PACKAGES =+ "${PN}-fsck ${PN}-mkfs ${PN}-repair libhandle"
|
||||
|
||||
DEPENDS += "util-linux libinih liburcu"
|
||||
|
||||
RDEPENDS:${PN} = "${PN}-fsck ${PN}-mkfs ${PN}-repair"
|
||||
|
||||
FILES:${PN}-fsck = "${base_sbindir}/fsck.xfs"
|
||||
FILES:${PN}-mkfs = "${base_sbindir}/mkfs.xfs"
|
||||
FILES:${PN}-repair = "${base_sbindir}/xfs_repair"
|
||||
|
||||
FILES:libhandle = "${base_libdir}/libhandle${SOLIBS}"
|
||||
|
||||
EXTRA_OECONF = "--enable-gettext=no \
|
||||
--enable-scrub=no \
|
||||
INSTALL_USER=root \
|
||||
INSTALL_GROUP=root \
|
||||
ac_cv_header_aio_h=yes \
|
||||
ac_cv_lib_rt_lio_listio=yes \
|
||||
OPTIMIZER='${SELECTED_OPTIMIZATION}' \
|
||||
"
|
||||
|
||||
DISABLE_STATIC = ""
|
||||
EXTRA_AUTORECONF += "-I ${S}/m4 --exclude=autoheader"
|
||||
|
||||
PACKAGECONFIG ??= "blkid"
|
||||
|
||||
PACKAGECONFIG[blkid] = "--enable-blkid=yes,--enable-blkid=no,util-linux"
|
||||
|
||||
export DEBUG="-DNDEBUG"
|
||||
export BUILD_VERBOSE="1"
|
||||
export tagname="CC"
|
||||
|
||||
EXTRA_OEMAKE = "DIST_ROOT='${D}'"
|
||||
|
||||
do_configure () {
|
||||
export BUILD_CC="${BUILD_CC} ${BUILD_CFLAGS}"
|
||||
# Prevent Makefile from calling configure without arguments,
|
||||
# when do_configure gets called for a second time.
|
||||
rm -f ${B}/include/builddefs ${B}/include/platform_defs.h ${B}/configure
|
||||
# Recreate configure script.
|
||||
oe_runmake configure
|
||||
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}
|
||||
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}
|
||||
oe_runconf
|
||||
}
|
||||
|
||||
do_install:append() {
|
||||
oe_runmake 'DESTDIR=${D}' install-dev
|
||||
rm ${D}${libdir}/*.la
|
||||
rmdir --ignore-fail-on-non-empty ${D}${libdir}
|
||||
|
||||
if [ ${libdir} != ${base_libdir} ];then
|
||||
ln -sf -r ${D}${libdir}/libhandle.a ${D}${base_libdir}/libhandle.a
|
||||
ln -sf -r ${D}${base_libdir}/libhandle.so ${D}${libdir}/libhandle.so
|
||||
fi
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
From 5facddc332c5ff8330f93c0a7e1b7f6d7bbd24a3 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sun, 5 Nov 2023 08:31:21 -0800
|
||||
Subject: [PATCH] add missing FTW_ macros when not available in libc
|
||||
|
||||
Fixes build with musl
|
||||
|
||||
| xfsfind.c:176:13: error: use of undeclared identifier 'FTW_STOP'
|
||||
| 176 | retval = FTW_STOP;
|
||||
| | ^
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/global.h | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/src/global.h b/src/global.h
|
||||
index 49570ef1..1c247488 100644
|
||||
--- a/src/global.h
|
||||
+++ b/src/global.h
|
||||
@@ -190,4 +190,16 @@ roundup_64(unsigned long long x, unsigned int y)
|
||||
return rounddown_64(x + y - 1, y);
|
||||
}
|
||||
|
||||
+#ifndef FTW_ACTIONRETVAL
|
||||
+#define FTW_ACTIONRETVAL 16
|
||||
+#endif
|
||||
+
|
||||
+#ifndef FTW_CONTINUE
|
||||
+#define FTW_CONTINUE 0
|
||||
+#endif
|
||||
+
|
||||
+#ifndef FTW_STOP
|
||||
+#define FTW_STOP 1
|
||||
+#endif
|
||||
+
|
||||
#endif /* GLOBAL_H */
|
||||
--
|
||||
2.42.1
|
||||
|
||||
@@ -0,0 +1,84 @@
|
||||
From 37caab7a43da5ede0ff1eb700f0257a213ac4b18 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Mon, 25 Mar 2024 10:46:50 -0700
|
||||
Subject: [PATCH 1/2] include libgen.h for basename API prototype
|
||||
|
||||
basename prototype has been removed from string.h from latest musl [1]
|
||||
compilers e.g. clang-18 flags the absense of prototype as error. therefore
|
||||
include libgen.h for providing it.
|
||||
|
||||
[1] https://git.musl-libc.org/cgit/musl/commit/?id=725e17ed6dff4d0cd22487bb64470881e86a92e7
|
||||
|
||||
Upstream-Status: Submitted [https://lore.kernel.org/fstests/20240325175323.3450750-1-raj.khem@gmail.com/T/#t]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/splice-test.c | 1 +
|
||||
src/stat_test.c | 1 +
|
||||
src/t_ext4_dax_inline_corruption.c | 1 +
|
||||
src/t_ext4_dax_journal_corruption.c | 1 +
|
||||
src/t_mmap_collision.c | 1 +
|
||||
5 files changed, 5 insertions(+)
|
||||
|
||||
diff --git a/src/splice-test.c b/src/splice-test.c
|
||||
index eb863673..7b7094f5 100644
|
||||
--- a/src/splice-test.c
|
||||
+++ b/src/splice-test.c
|
||||
@@ -11,6 +11,7 @@
|
||||
#include <unistd.h>
|
||||
#include <fcntl.h>
|
||||
#include <err.h>
|
||||
+#include <libgen.h>
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
diff --git a/src/stat_test.c b/src/stat_test.c
|
||||
index 95cfdc4f..77e1acdd 100644
|
||||
--- a/src/stat_test.c
|
||||
+++ b/src/stat_test.c
|
||||
@@ -4,6 +4,7 @@
|
||||
* Written by David Howells (dhowells@redhat.com)
|
||||
*/
|
||||
|
||||
+#include <libgen.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
diff --git a/src/t_ext4_dax_inline_corruption.c b/src/t_ext4_dax_inline_corruption.c
|
||||
index e1a39a6c..a40c5df5 100644
|
||||
--- a/src/t_ext4_dax_inline_corruption.c
|
||||
+++ b/src/t_ext4_dax_inline_corruption.c
|
||||
@@ -2,6 +2,7 @@
|
||||
/* Copyright (c) 2018 Intel Corporation. */
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
+#include <libgen.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
diff --git a/src/t_ext4_dax_journal_corruption.c b/src/t_ext4_dax_journal_corruption.c
|
||||
index ba7a96e4..53be10c2 100644
|
||||
--- a/src/t_ext4_dax_journal_corruption.c
|
||||
+++ b/src/t_ext4_dax_journal_corruption.c
|
||||
@@ -2,6 +2,7 @@
|
||||
/* Copyright (c) 2018 Intel Corporation. */
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
+#include <libgen.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
diff --git a/src/t_mmap_collision.c b/src/t_mmap_collision.c
|
||||
index c872f4e2..d9315fcf 100644
|
||||
--- a/src/t_mmap_collision.c
|
||||
+++ b/src/t_mmap_collision.c
|
||||
@@ -15,6 +15,7 @@
|
||||
*/
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
+#include <libgen.h>
|
||||
#include <pthread.h>
|
||||
#include <stdbool.h>
|
||||
#include <stdio.h>
|
||||
--
|
||||
2.44.0
|
||||
|
||||
@@ -0,0 +1,42 @@
|
||||
From 052818e91314b797d96d87672c60f6784160f935 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Mon, 25 Mar 2024 10:50:59 -0700
|
||||
Subject: [PATCH 2/2] Add missing STATX_ATTR_* defines from musl sys/stat.h
|
||||
|
||||
These defines are not provided by sys/stat.h on musl but are
|
||||
in glibc's sys/stat.h, therefore to compile the tests on musl
|
||||
based systems add the missing defines from linux/stat.h
|
||||
if they are not provided
|
||||
|
||||
Upstream-Status: Submitted [https://lore.kernel.org/fstests/20240325175323.3450750-2-raj.khem@gmail.com/T/#u]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/statx.h | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/src/statx.h b/src/statx.h
|
||||
index 3f239d79..12599f5b 100644
|
||||
--- a/src/statx.h
|
||||
+++ b/src/statx.h
|
||||
@@ -12,6 +12,18 @@
|
||||
#define AT_STATX_DONT_SYNC 0x4000 /* - Don't sync attributes with the server */
|
||||
#endif
|
||||
|
||||
+#ifndef STATX_ATTR_COMPRESSED
|
||||
+#define STATX_ATTR_COMPRESSED 0x00000004 /* [I] File is compressed by the fs */
|
||||
+#define STATX_ATTR_IMMUTABLE 0x00000010 /* [I] File is marked immutable */
|
||||
+#define STATX_ATTR_APPEND 0x00000020 /* [I] File is append-only */
|
||||
+#define STATX_ATTR_NODUMP 0x00000040 /* [I] File is not to be dumped */
|
||||
+#define STATX_ATTR_ENCRYPTED 0x00000800 /* [I] File requires key to decrypt in fs */
|
||||
+#define STATX_ATTR_AUTOMOUNT 0x00001000 /* Dir: Automount trigger */
|
||||
+#define STATX_ATTR_MOUNT_ROOT 0x00002000 /* Root of a mount */
|
||||
+#define STATX_ATTR_VERITY 0x00100000 /* [I] Verity protected file */
|
||||
+#define STATX_ATTR_DAX 0x00200000 /* File is currently in DAX state */
|
||||
+#endif
|
||||
+
|
||||
#ifndef AT_NO_AUTOMOUNT
|
||||
#define AT_NO_AUTOMOUNT 0x800 /* Suppress terminal automount traversal */
|
||||
#endif
|
||||
--
|
||||
2.44.0
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
From 79c4715a46b80653eb98b61731c094c85e969220 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sun, 14 Aug 2022 13:33:05 -0700
|
||||
Subject: [PATCH] Drop detached_mounts_propagation and remove sys/mount.h from
|
||||
vfs/utils.c
|
||||
|
||||
with glibc 2.36+ sys/mount.h conflicts with linux/mount.h and here
|
||||
linux/mount.h is included via xfs/xfs.h header and we need sys/mount.h
|
||||
for the mount() API prototype. Until thats resolved lets not build this
|
||||
testcase
|
||||
|
||||
Upstream-Status: Inappropriate [Libc specific Workaround]
|
||||
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/Makefile | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/Makefile b/src/Makefile
|
||||
index e7442487..970f087a 100644
|
||||
--- a/src/Makefile
|
||||
+++ b/src/Makefile
|
||||
@@ -33,7 +33,7 @@ LINUX_TARGETS = xfsctl bstat t_mtab getdevicesize preallo_rw_pattern_reader \
|
||||
dio-invalidate-cache stat_test t_encrypted_d_revalidate \
|
||||
attr_replace_test swapon mkswap t_attr_corruption t_open_tmpfiles \
|
||||
fscrypt-crypt-util bulkstat_null_ocount splice-test chprojid_fail \
|
||||
- detached_mounts_propagation ext4_resize t_readdir_3 splice2pipe \
|
||||
+ ext4_resize t_readdir_3 splice2pipe \
|
||||
uuid_ioctl t_snapshot_deleted_subvolume
|
||||
|
||||
EXTRA_EXECS = dmerror fill2attr fill2fs fill2fs_check scaleread.sh \
|
||||
@@ -0,0 +1,67 @@
|
||||
SUMMARY = "File system QA test suite"
|
||||
LICENSE = "GPL-2.0-only"
|
||||
LIC_FILES_CHKSUM = "file://LICENSES/GPL-2.0;md5=74274e8a218423e49eefdea80bc55038"
|
||||
|
||||
SRCREV = "088e5bd4cb6d7295612430a56ae84ff5c8f54730"
|
||||
SRCREV_unionmount = "e3825b16b46f4c4574a1a69909944c059835f914"
|
||||
SRCREV_FORMAT = "default_unionmount"
|
||||
|
||||
SRC_URI = "git://git.kernel.org/pub/scm/fs/xfs/xfstests-dev.git;branch=master \
|
||||
git://github.com/amir73il/unionmount-testsuite.git;branch=master;protocol=https;name=unionmount;destsuffix=unionmount-testsuite \
|
||||
file://0001-add-missing-FTW_-macros-when-not-available-in-libc.patch \
|
||||
file://0002-Drop-detached_mounts_propagation-and-remove-sys-moun.patch \
|
||||
file://0001-include-libgen.h-for-basename-API-prototype.patch \
|
||||
file://0002-Add-missing-STATX_ATTR_-defines-from-musl-sys-stat.h.patch \
|
||||
"
|
||||
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
# brokensep because m4/package_globals.m4 calls ". ./VERSION" (and that's not the only issue)
|
||||
inherit autotools-brokensep useradd
|
||||
|
||||
DEPENDS += "xfsprogs acl"
|
||||
RDEPENDS:${PN} += "\
|
||||
bash \
|
||||
bc \
|
||||
coreutils \
|
||||
e2fsprogs \
|
||||
e2fsprogs-tune2fs \
|
||||
e2fsprogs-resize2fs \
|
||||
libaio \
|
||||
libcap-bin \
|
||||
overlayfs-tools \
|
||||
perl \
|
||||
python3 \
|
||||
python3-core \
|
||||
xfsprogs \
|
||||
acl \
|
||||
gawk \
|
||||
"
|
||||
|
||||
USERADD_PACKAGES = "${PN}"
|
||||
# these users are necessary to run the tests
|
||||
USERADD_PARAM:${PN} = "-U -m fsgqa; -N 123456-fsgqa; -N fsgqa2"
|
||||
|
||||
EXTRA_OECONF = "INSTALL_USER=root INSTALL_GROUP=root"
|
||||
|
||||
TARGET_CC_ARCH:append:libc-musl = " -D_LARGEFILE64_SOURCE"
|
||||
|
||||
do_configure:prepend() {
|
||||
# this is done by Makefile configure target, but we don't call it in do_configure
|
||||
cp -a ${S}/include/install-sh .
|
||||
}
|
||||
|
||||
do_install() {
|
||||
# otherwise install-sh duplicates DESTDIR prefix
|
||||
export DIST_ROOT="/" DIST_MANIFEST="" DESTDIR="${D}"
|
||||
oe_runmake install
|
||||
|
||||
unionmount_target_dir=${D}${prefix}/xfstests/unionmount-testsuite
|
||||
install -d $unionmount_target_dir/tests
|
||||
install ${WORKDIR}/unionmount-testsuite/tests/* -t $unionmount_target_dir/tests
|
||||
install ${WORKDIR}/unionmount-testsuite/*.py -t $unionmount_target_dir
|
||||
install ${WORKDIR}/unionmount-testsuite/run -t $unionmount_target_dir
|
||||
install ${WORKDIR}/unionmount-testsuite/README -t $unionmount_target_dir
|
||||
}
|
||||
|
||||
FILES:${PN} += "${prefix}/xfstests"
|
||||
Reference in New Issue
Block a user