Add ufsutils filesystem tools

This commit is contained in:
Mario Fetka
2026-06-30 07:57:40 +02:00
parent ae55ccb4c7
commit e99e7c6ee1
4 changed files with 161 additions and 0 deletions
+5
View File
@@ -0,0 +1,5 @@
AUX ufsutils-8.2_p3-linux-shared-libufs.patch 1308 BLAKE2B 0b1541bb1c76978deea29e36cbd9a4c55c9813b8ca2290bd34f62ca022ee1ea58893806d679f0104e30e8f4e4f0b231b8cd7510b6580b54a0a1ad61184d21ec8 SHA512 23485e6227cb6b60aa1fde58df3bef1c5a0e531f03253a094a48991ca96ea0377be92f3f6ca4a2b68bf482df3508c28e4bcb8bd8364ea40c117c7c688cf25a7f
DIST ufsutils-8.2_p3.orig.tar.gz 463499 BLAKE2B 94a02de50724e4a1f59a889dbb696a62c8bbbf0935537cff92cd0edb1c5a0e790be45bc1a9aa0a27a9443efe33ec081e5cb26465a3eeb5dbb7b176c91d3c66cc SHA512 f378372c2493c16fe8cb3977f4ed2d104e747895e97d7642d21b5e87a2a03ac696bbac093e534e13c2f1dc4638741edcbbb0ddec5abcbfa6b4f7401efbf7cf14
DIST ufsutils_8.2-3.drbl2.debian.tar.xz 20192 BLAKE2B 5f3fb3b61f7a20cea7b7cceb82206222cc73494fe9a8d227c5a50ac8b108afb68fa3376128b95c12cab80556639fd74c1f621659416ffbf15a4e941dee0730ff SHA512 817cbf744fb62f078db176b3e0d079b6934e4018dff0131de6ec595b62d80d2890fdf63ddbd5959083f2b67672a3212c8667bd33172bf5146d613daff8913379
EBUILD ufsutils-8.2_p3.ebuild 1817 BLAKE2B 9658d8cfca01fba807c2e6d0a7e540f9a15ce3c0fd91b47c520e4fcfddd65a4ef14be78fbc35b3153833dbf92d1ff07fa25d00a552f92a2c71759ab41988f12e SHA512 a0e91c6857c81c2c8278183cad9e1ae81caec87b2a74333ff68e9df75af1c1d77311b00309dd10f4bd56c9a0c486654dbd169d65393c8f01b0dbfcc0cdc740d6
MISC metadata.xml 229 BLAKE2B 788b41f65614429a4eda70781869125a02592839f229473bdb652739ae8ab95ed94747a5db004b2b3931e52d37b23ec6420d66a0500fdf6b16bdb4554ed1bfb4 SHA512 c54c4850f03fa9d9b064e4ea963faafb32642851fa40e8229a5cd1a11d312c67fa676a788d5ca597ea141cafffa7c7232f4b34b300f9d0ec1c9fbaffe9f3f202
@@ -0,0 +1,68 @@
--- a/lib/libufs/Makefile
+++ b/lib/libufs/Makefile
@@ -7,7 +7,7 @@ SHLIB_MAJOR= 2
LIBSRCS= block.c cgroup.c inode.c sblock.c type.c
INCS= libufs.h
-LIB_type = static
+LIB_type = shared
ALL_CFLAGS+= -D_LIBUFS
ifdef LIBUFS_DEBUG
ALL_CFLAGS+= -D_LIBUFS_DEBUGGING
--- /dev/null
+++ b/sys/sys/sysctl.h
@@ -0,0 +1,44 @@
+#ifndef _SYS_SYSCTL_H_
+#define _SYS_SYSCTL_H_
+
+#include <errno.h>
+#include <stddef.h>
+
+static inline int
+sysctl(const int *name, unsigned int namelen, void *oldp, size_t *oldlenp,
+ const void *newp, size_t newlen)
+{
+ (void)name;
+ (void)namelen;
+ (void)oldp;
+ (void)oldlenp;
+ (void)newp;
+ (void)newlen;
+ errno = ENOSYS;
+ return -1;
+}
+
+static inline int
+sysctlbyname(const char *name, void *oldp, size_t *oldlenp, const void *newp,
+ size_t newlen)
+{
+ (void)name;
+ (void)oldp;
+ (void)oldlenp;
+ (void)newp;
+ (void)newlen;
+ errno = ENOSYS;
+ return -1;
+}
+
+static inline int
+sysctlnametomib(const char *name, int *mibp, size_t *sizep)
+{
+ (void)name;
+ (void)mibp;
+ (void)sizep;
+ errno = ENOSYS;
+ return -1;
+}
+
+#endif
--- a/sbin/fsdb/fsdbutil.c
+++ b/sbin/fsdb/fsdbutil.c
@@ -32,6 +32,7 @@ static const char rcsid[] =
#endif /* not lint */
#include <sys/param.h>
+#include <sys/sysmacros.h>
#include <ctype.h>
#include <err.h>
#include <grp.h>
+7
View File
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>maintainer-needed@gentoo.org</email>
</maintainer>
</pkgmetadata>
+81
View File
@@ -0,0 +1,81 @@
# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit flag-o-matic toolchain-funcs
MY_PV="8.2-3.drbl2"
MY_P="${PN}_${PV%_p*}"
DESCRIPTION="UFS filesystem utilities and shared library"
HOMEPAGE="https://free.nchc.org.tw/drbl-core/pool/drbl/dev/ufsutils/"
SRC_URI="
https://free.nchc.org.tw/drbl-core/pool/drbl/dev/${PN}/${MY_P}.orig.tar.gz -> ${P}.orig.tar.gz
https://free.nchc.org.tw/drbl-core/pool/drbl/dev/${PN}/${PN}_${MY_PV}.debian.tar.xz
"
S="${WORKDIR}/${PN}-${PV%_p*}"
LICENSE="BSD"
SLOT="0"
KEYWORDS="~amd64 ~x86"
RDEPEND="
dev-libs/libbsd:=
sys-libs/libedit:=
"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${P}-linux-shared-libufs.patch
)
src_prepare() {
local patch
while read -r patch; do
[[ -z ${patch} || ${patch} == \#* ]] && continue
eapply "${WORKDIR}"/debian/patches/${patch}
done < "${WORKDIR}"/debian/patches/series
default
}
src_compile() {
append-cflags -fcommon
emake -j1 \
CC="$(tc-getCC)" \
CFLAGS="${CFLAGS}" \
LDFLAGS="${LDFLAGS}"
}
src_install() {
dodir /usr/sbin /usr/$(get_libdir) /usr/share/man/man8
emake -j1 \
DESTDIR="${D}" \
prefix="${EPREFIX}"/usr \
sbindir="${EPREFIX}"/usr/sbin \
libdir="${EPREFIX}"/usr/$(get_libdir) \
mandir="${EPREFIX}"/usr/share/man \
man8dir="${EPREFIX}"/usr/share/man/man8 \
install
rm -f "${ED}"/usr/$(get_libdir)/libport.a "${ED}"/usr/$(get_libdir)/libfsck.ufs.a || die
dosym libufs.so.2 /usr/$(get_libdir)/libufs.so
insinto /usr/include/ufs
doins lib/libufs/libufs.h
insinto /usr/include/ufs/ufs
doins sys/ufs/ufs/*.h
insinto /usr/include/ufs/ffs
doins sys/ufs/ffs/*.h
insinto /usr/include/ufs/sys
doins sys/sys/disklabel.h sys/sys/endian.h sys/sys/mount.h sys/sys/param.h sys/sys/sysctl.h sys/sys/ucred.h
einstalldocs
}