From 8efc5780d6a45ecce57e03975324744b5301c646 Mon Sep 17 00:00:00 2001 From: Daniel P. Berrangé Date: May 03 2019 14:22:36 +0000 Subject: gnulib: fix getopt build with glibc From gnulib commit commit e3461d1c21a99bcef1b8826f710434e0ffb5adea Author: Paul Eggert Date: Sun Jun 11 15:53:09 2017 -0700 getopt-posix: port to glibc 2.25.90 Problem reported by Daniel P. Berrange in: http://lists.gnu.org/archive/html/bug-gnulib/2017-06/msg00003.html * lib/getopt-pfx-core.h (_GETOPT_CORE_H): * lib/getopt-pfx-ext.h (_GETOPT_EXT_H): #undef if __GETOPT_PREFIX is defined. Signed-off-by: Daniel P. Berrangé --- diff --git a/gnulib/local/getopt-pfx-core.h.diff b/gnulib/local/getopt-pfx-core.h.diff new file mode 100644 index 0000000..ce138bf --- /dev/null +++ b/gnulib/local/getopt-pfx-core.h.diff @@ -0,0 +1,16 @@ +diff --git a/lib/getopt-pfx-core.h b/lib/getopt-pfx-core.h +index 155c11612..6ad0da683 100644 +--- a/lib/getopt-pfx-core.h ++++ b/lib/getopt-pfx-core.h +@@ -47,6 +47,11 @@ + # define opterr __GETOPT_ID (opterr) + # define optind __GETOPT_ID (optind) + # define optopt __GETOPT_ID (optopt) ++ ++/* The system's getopt.h may have already included getopt-core.h to ++ declare the unprefixed identifiers. Undef _GETOPT_CORE_H so that ++ getopt-core.h declares them with prefixes. */ ++# undef _GETOPT_CORE_H + #endif + + #include diff --git a/gnulib/local/getopt-pfx-ext.h.diff b/gnulib/local/getopt-pfx-ext.h.diff new file mode 100644 index 0000000..582b310 --- /dev/null +++ b/gnulib/local/getopt-pfx-ext.h.diff @@ -0,0 +1,16 @@ +diff --git a/lib/getopt-pfx-ext.h b/lib/getopt-pfx-ext.h +index d960bb34e..c5ac52202 100644 +--- a/lib/getopt-pfx-ext.h ++++ b/lib/getopt-pfx-ext.h +@@ -45,6 +45,11 @@ + # define getopt_long_only __GETOPT_ID (getopt_long_only) + # define option __GETOPT_ID (option) + # define _getopt_internal __GETOPT_ID (getopt_internal) ++ ++/* The system's getopt.h may have already included getopt-ext.h to ++ declare the unprefixed identifiers. Undef _GETOPT_EXT_H so that ++ getopt-ext.h declares them with prefixes. */ ++# undef _GETOPT_EXT_H + #endif + + /* Standalone applications get correct prototypes for getopt_long and