logo

oasis

Own branch of Oasis Linux (upstream: <https://git.sr.ht/~mcf/oasis/>) git clone https://anongit.hacktivis.me/git/oasis.git
commit: d4a2a386d5ca254e2ef624fb6eddf204ea84c787
parent a71f3be4f5d4ff078ff5674d6e5ab23faa56203f
Author: Michael Forney <mforney@mforney.org>
Date:   Mon, 16 Jan 2023 00:27:52 -0800

util-linux: Build libblkid

Diffstat:

Mpkg/util-linux/config.h2+-
Mpkg/util-linux/gen.lua121+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--
Mpkg/util-linux/patch/0005-Avoid-statement-expressions-min-max.patch93+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------
Mpkg/util-linux/ver2+-
4 files changed, 203 insertions(+), 15 deletions(-)

diff --git a/pkg/util-linux/config.h b/pkg/util-linux/config.h @@ -68,7 +68,7 @@ #define HAVE_LASTLOG_H 1 #define HAVE_LCHOWN 1 /* #undef HAVE_LIBAUDIT */ -/* #undef HAVE_LIBBLKID */ +#define HAVE_LIBBLKID 1 /* #undef HAVE_LIBCAP_NG */ /* #undef HAVE_LIBCRYPT */ /* #undef HAVE_LIBECONF */ diff --git a/pkg/util-linux/gen.lua b/pkg/util-linux/gen.lua @@ -3,6 +3,7 @@ cflags{ '-include $dir/config.h', '-I $outdir', '-I $srcdir/include', + '-I $srcdir/libblkid/src', '-I $srcdir/libuuid/src', '-isystem $builddir/pkg/linux-headers/include', } @@ -15,6 +16,12 @@ build('cat', '$outdir/config.h', { build('sed', '$outdir/libsmartcols.h', '$srcdir/libsmartcols/src/libsmartcols.h.in', { expr='s,@LIBSMARTCOLS_VERSION@,$version,', }) +build('sed', '$outdir/blkid.h', '$srcdir/libblkid/src/blkid.h.in', { + expr={ + '-e /@LIBBLKID_VERSION@/d', + '-e /@LIBBLKID_DATE@/d', + }, +}) build('sed', '$outdir/libfdisk.h', '$srcdir/libfdisk/src/libfdisk.h.in', { expr={ '-e s,@LIBFDISK_VERSION@,$version,', @@ -24,7 +31,10 @@ build('sed', '$outdir/libfdisk.h', '$srcdir/libfdisk/src/libfdisk.h.in', { }, }) -pkg.hdrs = copy('$outdir/include/uuid', '$srcdir/libuuid/src', {'uuid.h'}) +pkg.hdrs = { + copy('$outdir/include/uuid', '$srcdir/libuuid/src', {'uuid.h'}), + copy('$outdir/include/blkid', '$outdir', {'blkid.h'}), +} pkg.deps = { '$outdir/config.h', '$outdir/libsmartcols.h', @@ -69,6 +79,113 @@ lib('libcommon.a', [[ ) ]]) +lib('libblkid.a', [[ + libblkid/src/( + init.c + cache.c + config.c + dev.c + devname.c + devno.c + encode.c + evaluate.c + getsize.c + probe.c + read.c + resolve.c + save.c + tag.c + verify.c + version.c + partitions/( + aix.c + atari.c + bsd.c + dos.c + gpt.c + mac.c + minix.c + partitions.c + sgi.c + solaris_x86.c + sun.c + ultrix.c + unixware.c + ) + superblocks/( + adaptec_raid.c + apfs.c + bcache.c + befs.c + bfs.c + bitlocker.c + bluestore.c + btrfs.c + cramfs.c + ddf_raid.c + drbd.c + drbdproxy_datalog.c + drbdmanage.c + exfat.c + exfs.c + ext.c + f2fs.c + gfs.c + hfs.c + highpoint_raid.c + hpfs.c + iso9660.c + isw_raid.c + jfs.c + jmicron_raid.c + linux_raid.c + lsi_raid.c + luks.c + lvm.c + minix.c + mpool.c + netware.c + nilfs.c + ntfs.c + refs.c + nvidia_raid.c + ocfs.c + promise_raid.c + reiserfs.c + romfs.c + silicon_raid.c + squashfs.c + stratis.c + superblocks.c + swap.c + sysv.c + ubi.c + ubifs.c + udf.c + ufs.c + vdo.c + vfat.c + via_raid.c + vmfs.c + vxfs.c + xfs.c + zfs.c + zonefs.c + erofs.c + ) + topology/( + topology.c + dm.c + evms.c + ioctl.c + lvm.c + md.c + sysfs.c + ) + ) + libcommon.a +]]) + lib('libfdisk.a', [[ libfdisk/src/( init.c @@ -94,7 +211,7 @@ lib('libfdisk.a', [[ bsd.c gpt.c ) - libuuid.a libcommon.a + libuuid.a libblkid.a libcommon.a ]]) lib('libsmartcols.a', [[ diff --git a/pkg/util-linux/patch/0005-Avoid-statement-expressions-min-max.patch b/pkg/util-linux/patch/0005-Avoid-statement-expressions-min-max.patch @@ -1,18 +1,22 @@ -From 2cfdfe606f814c7672baede286c904c051b00e99 Mon Sep 17 00:00:00 2001 +From ad5d729e363236dbdcf15b82d8575bd5d9db77ea Mon Sep 17 00:00:00 2001 From: Michael Forney <mforney@mforney.org> Date: Tue, 12 Mar 2019 17:13:45 -0700 Subject: [PATCH] Avoid statement expressions min/max --- - include/c.h | 24 ++++++++++-------------- - include/strutils.h | 3 ++- - lib/mbsalign.c | 2 +- - libfdisk/src/alignment.c | 8 ++++---- - libfdisk/src/context.c | 4 ++-- - libfdisk/src/gpt.c | 4 ++-- - libsmartcols/src/calculate.c | 8 ++++---- - libsmartcols/src/column.c | 2 +- - 8 files changed, 26 insertions(+), 29 deletions(-) + include/c.h | 24 ++++++++++-------------- + include/strutils.h | 3 ++- + lib/mbsalign.c | 2 +- + libblkid/src/superblocks/befs.c | 6 +++--- + libblkid/src/superblocks/exfat.c | 2 +- + libblkid/src/superblocks/iso9660.c | 4 ++-- + libblkid/src/superblocks/minix.c | 4 ++-- + libfdisk/src/alignment.c | 8 ++++---- + libfdisk/src/context.c | 4 ++-- + libfdisk/src/gpt.c | 4 ++-- + libsmartcols/src/calculate.c | 8 ++++---- + libsmartcols/src/column.c | 2 +- + 12 files changed, 34 insertions(+), 37 deletions(-) diff --git a/include/c.h b/include/c.h index b420b5187..fe82a8847 100644 @@ -77,6 +81,73 @@ index e251202af..f3ea1a2df 100644 mbs_align_pad (dest, dest_end, end_spaces, padchar); } #ifdef HAVE_WIDECHAR +diff --git a/libblkid/src/superblocks/befs.c b/libblkid/src/superblocks/befs.c +index 211feae9f..35c2b19c4 100644 +--- a/libblkid/src/superblocks/befs.c ++++ b/libblkid/src/superblocks/befs.c +@@ -257,7 +257,7 @@ static int32_t compare_keys(const char keys1[], uint16_t keylengths1[], + + key1 = &keys1[keystart1]; + +- result = strncmp(key1, key2, min(keylength1, keylength2)); ++ result = strncmp(key1, key2, umin(keylength1, keylength2)); + + if (result == 0) + return keylength1 - keylength2; +@@ -386,8 +386,8 @@ static int get_uuid(blkid_probe pr, const struct befs_super_block *bs, + + bi_size = (uint64_t)FS16_TO_CPU(bs->root_dir.len, fs_le) << + FS32_TO_CPU(bs->block_shift, fs_le); +- sd_total_size = min(bi_size - sizeof(struct befs_inode), +- (uint64_t)FS32_TO_CPU(bi->inode_size, fs_le)); ++ sd_total_size = umin(bi_size - sizeof(struct befs_inode), ++ (uint64_t)FS32_TO_CPU(bi->inode_size, fs_le)); + + offset = 0; + +diff --git a/libblkid/src/superblocks/exfat.c b/libblkid/src/superblocks/exfat.c +index f586ec786..3c0448027 100644 +--- a/libblkid/src/superblocks/exfat.c ++++ b/libblkid/src/superblocks/exfat.c +@@ -126,7 +126,7 @@ static int probe_exfat(blkid_probe pr, const struct blkid_idmag *mag) + label = find_label(pr, sb); + if (label) + blkid_probe_set_utf8label(pr, label->name, +- min((size_t) label->length * 2, sizeof(label->name)), ++ umin((size_t) label->length * 2, sizeof(label->name)), + UL_ENCODE_UTF16LE); + else if (errno) + return -errno; +diff --git a/libblkid/src/superblocks/iso9660.c b/libblkid/src/superblocks/iso9660.c +index 289a325c8..ac4cc274f 100644 +--- a/libblkid/src/superblocks/iso9660.c ++++ b/libblkid/src/superblocks/iso9660.c +@@ -228,8 +228,8 @@ static int probe_iso9660(blkid_probe pr, const struct blkid_idmag *mag) + unsigned char *desc = + blkid_probe_get_buffer(pr, + off, +- max(sizeof(struct boot_record), +- sizeof(struct iso_volume_descriptor))); ++ umax(sizeof(struct boot_record), ++ sizeof(struct iso_volume_descriptor))); + + if (desc == NULL || desc[0] == ISO_VD_END) + break; +diff --git a/libblkid/src/superblocks/minix.c b/libblkid/src/superblocks/minix.c +index b521efb2b..d1fb64f64 100644 +--- a/libblkid/src/superblocks/minix.c ++++ b/libblkid/src/superblocks/minix.c +@@ -83,8 +83,8 @@ static int probe_minix(blkid_probe pr, + unsigned block_size; + + data = blkid_probe_get_buffer(pr, 1024, +- max(sizeof(struct minix_super_block), +- sizeof(struct minix3_super_block))); ++ umax(sizeof(struct minix_super_block), ++ sizeof(struct minix3_super_block))); + if (!data) + return errno ? -errno : 1; + version = get_minix_version(data, &swabme); diff --git a/libfdisk/src/alignment.c b/libfdisk/src/alignment.c index 3ae721913..a1a05f48a 100644 --- a/libfdisk/src/alignment.c @@ -210,5 +281,5 @@ index c11df69f5..1285d42e6 100644 } -- -2.31.1 +2.37.3 diff --git a/pkg/util-linux/ver b/pkg/util-linux/ver @@ -1 +1 @@ -2.37 r1 +2.37 r2