diff options
Diffstat (limited to 'pcr/util-linux-nosystemd')
3 files changed, 110 insertions, 3 deletions
diff --git a/pcr/util-linux-nosystemd/0001-fstrim-cleanup-uncludes.patch b/pcr/util-linux-nosystemd/0001-fstrim-cleanup-uncludes.patch new file mode 100644 index 000000000..74078555f --- /dev/null +++ b/pcr/util-linux-nosystemd/0001-fstrim-cleanup-uncludes.patch @@ -0,0 +1,41 @@ +From 43abda66869e749044c6c4fd1d106d7df9484aca Mon Sep 17 00:00:00 2001 +From: Karel Zak <kzak@redhat.com> +Date: Thu, 22 Mar 2018 13:17:10 +0100 +Subject: fstrim: cleanup includes + +* HAVE_SYS_FS_H is incorrect (should be HAVE_LINUX_FS_H) + +* linux/fs.h cannot be included together with sys/mount.h as the both + files define MS_* constants. The libmount.h includes sys/mount.h now. + +Signed-off-by: Karel Zak <kzak@redhat.com> +--- + sys-utils/fstrim.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/sys-utils/fstrim.c b/sys-utils/fstrim.c +index ca8cf256d..53ac594c0 100644 +--- a/sys-utils/fstrim.c ++++ b/sys-utils/fstrim.c +@@ -36,10 +36,6 @@ + #include <sys/ioctl.h> + #include <sys/stat.h> + +-#ifdef HAVE_SYS_FS_H +-# include <linux/fs.h> +-#endif +- + #include "nls.h" + #include "strutils.h" + #include "c.h" +@@ -49,6 +45,10 @@ + + #include <libmount.h> + ++ ++/* We cannot include linux/fs.h due to MS_* constants collision with ++ * sys/mount.h (and libmount.h) ++ */ + #ifndef FITRIM + struct fstrim_range { + uint64_t start; diff --git a/pcr/util-linux-nosystemd/0002-libmount_include_sys_mount_h_only_if_necessary.patch b/pcr/util-linux-nosystemd/0002-libmount_include_sys_mount_h_only_if_necessary.patch new file mode 100644 index 000000000..0c478f622 --- /dev/null +++ b/pcr/util-linux-nosystemd/0002-libmount_include_sys_mount_h_only_if_necessary.patch @@ -0,0 +1,54 @@ +From 061d1a51097c3c025ff46173f10aa135f9a610d4 Mon Sep 17 00:00:00 2001 +From: Karel Zak <kzak@redhat.com> +Date: Thu, 22 Mar 2018 14:05:17 +0100 +Subject: libmount: include sys/mount.h only if necessary + +Addresses: https://github.com/systemd/systemd/issues/8507 +Signed-off-by: Karel Zak <kzak@redhat.com> +--- + libmount/src/libmount.h.in | 9 ++++++++- + sys-utils/fstrim.c | 4 +--- + 2 files changed, 9 insertions(+), 4 deletions(-) + +diff --git a/libmount/src/libmount.h.in b/libmount/src/libmount.h.in +index 8f323fcbf..11fd759fa 100644 +--- a/libmount/src/libmount.h.in ++++ b/libmount/src/libmount.h.in +@@ -28,7 +28,14 @@ extern "C" { + #include <stdio.h> + #include <mntent.h> + #include <sys/types.h> +-#include <sys/mount.h> ++ ++/* Make sure libc MS_* definitions are used by default. Note that MS_* flags ++ * may be already defined by linux/fs.h or another file -- in this case we ++ * don't want to include sys/mount.h at all to avoid collisions. ++ */ ++#ifndef MS_RDONLY ++# include <sys/mount.h> ++#endif + + #define LIBMOUNT_VERSION "@LIBMOUNT_VERSION@" + #define LIBMOUNT_MAJOR_VERSION @LIBMOUNT_MAJOR_VERSION@ +diff --git a/sys-utils/fstrim.c b/sys-utils/fstrim.c +index 53ac594c0..ce52063e1 100644 +--- a/sys-utils/fstrim.c ++++ b/sys-utils/fstrim.c +@@ -35,6 +35,7 @@ + + #include <sys/ioctl.h> + #include <sys/stat.h> ++#include <linux/fs.h> + + #include "nls.h" + #include "strutils.h" +@@ -46,9 +47,6 @@ + #include <libmount.h> + + +-/* We cannot include linux/fs.h due to MS_* constants collision with +- * sys/mount.h (and libmount.h) +- */ + #ifndef FITRIM + struct fstrim_range { + uint64_t start; diff --git a/pcr/util-linux-nosystemd/PKGBUILD b/pcr/util-linux-nosystemd/PKGBUILD index 0f4144ec2..117d1634a 100644 --- a/pcr/util-linux-nosystemd/PKGBUILD +++ b/pcr/util-linux-nosystemd/PKGBUILD @@ -3,11 +3,12 @@ # Maintainer (Arch): Dave Reisner <dreisner@archlinux.org> # Contributor (Arch): judd <jvinet@zeroflux.org> # Maintainer: Omar Vega Ramos <ovruni@gnu.org.pe> +# Maintainer: David P. <megver83@parabola.nu> pkgbase=util-linux-nosystemd pkgname=(util-linux-nosystemd libutil-linux-nosystemd) -_pkgmajor=2.31 -pkgver=${_pkgmajor}.1 +_pkgmajor=2.32 +pkgver=${_pkgmajor} pkgrel=1 pkgdesc="Miscellaneous system utilities for Linux" url="https://www.kernel.org/pub/linux/utils/util-linux/" @@ -17,17 +18,28 @@ license=('GPL2') options=('strip' 'debug') validpgpkeys=('B0C64D14301CC6EFAEDF60E4E4B71D5EEC39C284') # Karel Zak source=("https://www.kernel.org/pub/linux/utils/util-linux/v$_pkgmajor/${pkgbase%-nosystemd}-$pkgver.tar."{xz,sign} + '0001-fstrim-cleanup-uncludes.patch' + '0002-libmount_include_sys_mount_h_only_if_necessary.patch' pam-{login,common,su} 'util-linux.sysusers' '60-rfkill.rules') -sha256sums=('1a51b16fa9cd51d26ef9ab52d2f1de12403b810fc8252bf7d478df91b3cddf11' +sha256sums=('6c7397abc764e32e8159c2e96042874a190303e77adceb4ac5bd502a272a4734' 'SKIP' + 'b1c0db069f60c086351f7a6fb7ff1add1c41e9ed7c1b65bd67e6604943fc4c75' + 'c65d8354fc2773035be8ac071541f4709763366d22a8a8f1bc2cb3401dcfdf69' '993a3096c2b113e6800f2abbd5d4233ebf1a97eef423990d3187d665d3490b92' 'fc6807842f92e9d3f792d6b64a0d5aad87995a279153ab228b1b2a64d9f32f20' '51eac9c2a2f51ad3982bba35de9aac5510f1eeff432d2d63c6362e45d620afc0' 'a3980e33ef3a8d356379b4964c9730fd525d46e5b28cded5d0b50d6dc8a5563c' '7423aaaa09fee7f47baa83df9ea6fef525ff9aec395c8cbd9fe848ceb2643f37') +prepare() { + cd "${pkgbase%-nosystemd}-$pkgver" + + patch -Np1 -i ../0001-fstrim-cleanup-uncludes.patch + patch -Np1 -i ../0002-libmount_include_sys_mount_h_only_if_necessary.patch +} + build() { cd "${pkgbase%-nosystemd}-$pkgver" |