Brad Bishop | 1a4b7ee | 2018-12-16 17:11:34 -0800 | [diff] [blame^] | 1 | From 80628047a6cc83f82e0c410a82b8f7facd9d50f2 Mon Sep 17 00:00:00 2001 |
| 2 | From: Eric Blake <eblake@redhat.com> |
| 3 | Date: Wed, 14 Sep 2016 19:21:42 -0500 |
| 4 | Subject: [PATCH] mountlist: include sysmacros.h for glibc |
| 5 | |
| 6 | On Fedora rawhide (glibc 2.25), './gnulib-tool --test mountlist' |
| 7 | reports: |
| 8 | ../../gllib/mountlist.c: In function 'read_file_system_list': |
| 9 | ../../gllib/mountlist.c:534:13: warning: '__makedev_from_sys_types' is deprecated: |
| 10 | In the GNU C Library, `makedev' is defined by <sys/sysmacros.h>. |
| 11 | For historical compatibility, it is currently defined by |
| 12 | <sys/types.h> as well, but we plan to remove this soon. |
| 13 | To use `makedev', include <sys/sysmacros.h> directly. |
| 14 | If you did not intend to use a system-defined macro `makedev', |
| 15 | you should #undef it after including <sys/types.h>. |
| 16 | [-Wdeprecated-declarations] |
| 17 | me->me_dev = makedev (devmaj, devmin); |
| 18 | ^~ |
| 19 | In file included from /usr/include/features.h:397:0, |
| 20 | from /usr/include/sys/types.h:25, |
| 21 | from ./sys/types.h:28, |
| 22 | from ../../gllib/mountlist.h:23, |
| 23 | from ../../gllib/mountlist.c:20: |
| 24 | /usr/include/sys/sysmacros.h:89:1: note: declared here |
| 25 | __SYSMACROS_DEFINE_MAKEDEV (__SYSMACROS_FST_IMPL_TEMPL) |
| 26 | ^ |
| 27 | |
| 28 | Fix it by including the right headers. We also need a fix to |
| 29 | autoconf's AC_HEADER_MAJOR, but that's a separate patch. |
| 30 | |
| 31 | * m4/mountlist.m4 (gl_PREREQ_MOUTLIST_EXTRA): Include |
| 32 | AC_HEADER_MAJOR. |
| 33 | * lib/mountlist.c (includes): Use correct headers. |
| 34 | |
| 35 | Signed-off-by: Eric Blake <eblake@redhat.com> |
| 36 | |
| 37 | Upstream-commit: 4da63c5881f60f71999a943612da9112232b9161 |
| 38 | Signed-off-by: Kamil Dudka <kdudka@redhat.com> |
| 39 | Upstream-Status: Backport [4da63c5881f60f71999a943612da9112232b9161] |
| 40 | --- |
| 41 | gl/lib/mountlist.c | 6 ++++++ |
| 42 | gl/m4/mountlist.m4 | 3 ++- |
| 43 | 2 files changed, 8 insertions(+), 1 deletion(-) |
| 44 | |
| 45 | Index: findutils-4.6.0/gl/lib/mountlist.c |
| 46 | =================================================================== |
| 47 | --- findutils-4.6.0.orig/gl/lib/mountlist.c |
| 48 | +++ findutils-4.6.0/gl/lib/mountlist.c |
| 49 | @@ -37,6 +37,12 @@ |
| 50 | # include <sys/param.h> |
| 51 | #endif |
| 52 | |
| 53 | +#if MAJOR_IN_MKDEV |
| 54 | +# include <sys/mkdev.h> |
| 55 | +#elif MAJOR_IN_SYSMACROS |
| 56 | +# include <sys/sysmacros.h> |
| 57 | +#endif |
| 58 | + |
| 59 | #if defined MOUNTED_GETFSSTAT /* OSF_1 and Darwin1.3.x */ |
| 60 | # if HAVE_SYS_UCRED_H |
| 61 | # include <grp.h> /* needed on OSF V4.0 for definition of NGROUPS, |
| 62 | Index: findutils-4.6.0/gl/m4/mountlist.m4 |
| 63 | =================================================================== |
| 64 | --- findutils-4.6.0.orig/gl/m4/mountlist.m4 |
| 65 | +++ findutils-4.6.0/gl/m4/mountlist.m4 |
| 66 | @@ -1,4 +1,4 @@ |
| 67 | -# serial 11 |
| 68 | +# serial 12 |
| 69 | dnl Copyright (C) 2002-2006, 2009-2015 Free Software Foundation, Inc. |
| 70 | dnl This file is free software; the Free Software Foundation |
| 71 | dnl gives unlimited permission to copy and/or distribute it, |
| 72 | @@ -15,5 +15,6 @@ AC_DEFUN([gl_PREREQ_MOUNTLIST_EXTRA], |
| 73 | [ |
| 74 | dnl Note gl_LIST_MOUNTED_FILE_SYSTEMS checks for mntent.h, not sys/mntent.h. |
| 75 | AC_CHECK_HEADERS([sys/mntent.h]) |
| 76 | + AC_HEADER_MAJOR()dnl for use of makedev () |
| 77 | gl_FSTYPENAME |
| 78 | ]) |