[arch-commits] Commit in lib32-util-linux/repos (4 files)

Christian Hesse eworm at archlinux.org
Tue Nov 6 12:39:21 UTC 2018


    Date: Tuesday, November 6, 2018 @ 12:39:21
  Author: eworm
Revision: 401690

archrelease: copy trunk to multilib-testing-x86_64

Added:
  lib32-util-linux/repos/multilib-testing-x86_64/
  lib32-util-linux/repos/multilib-testing-x86_64/0001-fstrim-cleanup-uncludes.patch
    (from rev 401689, lib32-util-linux/trunk/0001-fstrim-cleanup-uncludes.patch)
  lib32-util-linux/repos/multilib-testing-x86_64/0002-libmount_include_sys_mount_h_only_if_necessary.patch
    (from rev 401689, lib32-util-linux/trunk/0002-libmount_include_sys_mount_h_only_if_necessary.patch)
  lib32-util-linux/repos/multilib-testing-x86_64/PKGBUILD
    (from rev 401689, lib32-util-linux/trunk/PKGBUILD)

-----------------------------------------------------------+
 0001-fstrim-cleanup-uncludes.patch                        |   41 +++++++++
 0002-libmount_include_sys_mount_h_only_if_necessary.patch |   54 ++++++++++++
 PKGBUILD                                                  |   38 ++++++++
 3 files changed, 133 insertions(+)

Copied: lib32-util-linux/repos/multilib-testing-x86_64/0001-fstrim-cleanup-uncludes.patch (from rev 401689, lib32-util-linux/trunk/0001-fstrim-cleanup-uncludes.patch)
===================================================================
--- multilib-testing-x86_64/0001-fstrim-cleanup-uncludes.patch	                        (rev 0)
+++ multilib-testing-x86_64/0001-fstrim-cleanup-uncludes.patch	2018-11-06 12:39:21 UTC (rev 401690)
@@ -0,0 +1,41 @@
+From 43abda66869e749044c6c4fd1d106d7df9484aca Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak at 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 at 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;

Copied: lib32-util-linux/repos/multilib-testing-x86_64/0002-libmount_include_sys_mount_h_only_if_necessary.patch (from rev 401689, lib32-util-linux/trunk/0002-libmount_include_sys_mount_h_only_if_necessary.patch)
===================================================================
--- multilib-testing-x86_64/0002-libmount_include_sys_mount_h_only_if_necessary.patch	                        (rev 0)
+++ multilib-testing-x86_64/0002-libmount_include_sys_mount_h_only_if_necessary.patch	2018-11-06 12:39:21 UTC (rev 401690)
@@ -0,0 +1,54 @@
+From 061d1a51097c3c025ff46173f10aa135f9a610d4 Mon Sep 17 00:00:00 2001
+From: Karel Zak <kzak at 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 at 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;

Copied: lib32-util-linux/repos/multilib-testing-x86_64/PKGBUILD (from rev 401689, lib32-util-linux/trunk/PKGBUILD)
===================================================================
--- multilib-testing-x86_64/PKGBUILD	                        (rev 0)
+++ multilib-testing-x86_64/PKGBUILD	2018-11-06 12:39:21 UTC (rev 401690)
@@ -0,0 +1,38 @@
+# Maintainer: Dave Reisner <dreisner at archlinux.org>
+# Contributor: judd <jvinet at zeroflux.org>
+
+_pkgbasename=util-linux
+pkgname=lib32-$_pkgbasename
+_pkgmajor=2.33
+pkgver=${_pkgmajor}
+pkgrel=1
+pkgdesc="Miscellaneous system utilities for Linux (32-bit)"
+url='http://www.kernel.org/pub/linux/utils/util-linux/'
+arch=('x86_64')
+depends=('lib32-glibc' "$_pkgbasename")
+provides=('libuuid.so' 'libblkid.so' 'libfdisk.so' 'libmount.so' 'libsmartcols.so')
+makedepends=('gcc-multilib')
+license=('GPL2')
+options=('!emptydirs')
+validpgpkeys=('B0C64D14301CC6EFAEDF60E4E4B71D5EEC39C284')  # Karel Zak
+source=("https://www.kernel.org/pub/linux/utils/util-linux/v$_pkgmajor/$_pkgbasename-$pkgver.tar."{xz,sign})
+sha256sums=('f261b9d73c35bfeeea04d26941ac47ee1df937bd3b0583e748217c1ea423658a'
+            'SKIP')
+
+build() {
+  cd "$_pkgbasename-$pkgver"
+
+  ./configure \
+      CC="${CC:-cc} -m32" \
+      PKG_CONFIG_PATH="/usr/lib32/pkgconfig" \
+      --libdir=/usr/lib32
+
+  make lib{uuid,blkid,fdisk,mount,smartcols}.la
+}
+
+package() {
+  make -C "$_pkgbasename-$pkgver" \
+    DESTDIR="$pkgdir" \
+    install-usrlib_execLTLIBRARIES \
+    install-pkgconfigDATA
+}


More information about the arch-commits mailing list