[arch-commits] Commit in util-linux/trunk (3 files)

Christian Hesse eworm at archlinux.org
Tue Mar 27 09:44:13 UTC 2018


    Date: Tuesday, March 27, 2018 @ 09:44:12
  Author: eworm
Revision: 320373

upgpkg: util-linux 2.32-2

add fixes for header files

Added:
  util-linux/trunk/0001-fstrim-cleanup-uncludes.patch
  util-linux/trunk/0002-libmount_include_sys_mount_h_only_if_necessary.patch
Modified:
  util-linux/trunk/PKGBUILD

-----------------------------------------------------------+
 0001-fstrim-cleanup-uncludes.patch                        |   41 +++++++++
 0002-libmount_include_sys_mount_h_only_if_necessary.patch |   54 ++++++++++++
 PKGBUILD                                                  |   13 ++
 3 files changed, 107 insertions(+), 1 deletion(-)

Added: 0001-fstrim-cleanup-uncludes.patch
===================================================================
--- 0001-fstrim-cleanup-uncludes.patch	                        (rev 0)
+++ 0001-fstrim-cleanup-uncludes.patch	2018-03-27 09:44:12 UTC (rev 320373)
@@ -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;

Added: 0002-libmount_include_sys_mount_h_only_if_necessary.patch
===================================================================
--- 0002-libmount_include_sys_mount_h_only_if_necessary.patch	                        (rev 0)
+++ 0002-libmount_include_sys_mount_h_only_if_necessary.patch	2018-03-27 09:44:12 UTC (rev 320373)
@@ -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;

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2018-03-27 09:28:17 UTC (rev 320372)
+++ PKGBUILD	2018-03-27 09:44:12 UTC (rev 320373)
@@ -7,7 +7,7 @@
 pkgname=(util-linux libutil-linux)
 _pkgmajor=2.32
 pkgver=${_pkgmajor}
-pkgrel=1
+pkgrel=2
 pkgdesc="Miscellaneous system utilities for Linux"
 url="https://www.kernel.org/pub/linux/utils/util-linux/"
 arch=('x86_64')
@@ -16,6 +16,8 @@
 options=('strip' 'debug')
 validpgpkeys=('B0C64D14301CC6EFAEDF60E4E4B71D5EEC39C284')  # Karel Zak
 source=("https://www.kernel.org/pub/linux/utils/util-linux/v$_pkgmajor/$pkgbase-$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'
@@ -23,6 +25,8 @@
         'rfkill-block_.service')
 sha256sums=('6c7397abc764e32e8159c2e96042874a190303e77adceb4ac5bd502a272a4734'
             'SKIP'
+            'b1c0db069f60c086351f7a6fb7ff1add1c41e9ed7c1b65bd67e6604943fc4c75'
+            'c65d8354fc2773035be8ac071541f4709763366d22a8a8f1bc2cb3401dcfdf69'
             '993a3096c2b113e6800f2abbd5d4233ebf1a97eef423990d3187d665d3490b92'
             'fc6807842f92e9d3f792d6b64a0d5aad87995a279153ab228b1b2a64d9f32f20'
             '51eac9c2a2f51ad3982bba35de9aac5510f1eeff432d2d63c6362e45d620afc0'
@@ -31,6 +35,13 @@
             '8ccec10a22523f6b9d55e0d6cbf91905a39881446710aa083e935e8073323376'
             'a22e0a037e702170c7d88460cc9c9c2ab1d3e5c54a6985cd4a164ea7beff1b36')
 
+prepare() {
+  cd "$pkgbase-$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-$pkgver"
 



More information about the arch-commits mailing list