File mcpp-c99.patch of Package mcpp

Do not define and undefine _*_SOURCE macros.  These have special
semantics to glibc.  <limits.h> may include <features.h>, and which
point the feature configuration gets frozen.  Without this change,
when system.c includes <unistd.h>, the feature macros are hard-coded
as baseline POSIX, which does not include readlink.  This will lead to
compilation errors with future compilers.

Submitted upstream: <https://sourceforge.net/p/mcpp/patches/7/>

diff --git a/src/configed.H b/src/configed.H
index b4d1ebf3a6bfa280..bde16fc8db38a2c4 100644
--- a/src/configed.H
+++ b/src/configed.H
@@ -295,20 +295,7 @@
  * ULONGMAX     should be defined to the ULONG_MAX in <limits.h>.
  */
 
-/* _POSIX_* only to get PATH_MAX    */
-#define _POSIX_             1
-#define _POSIX_SOURCE       1
-#ifndef _POSIX_C_SOURCE
-#define _POSIX_C_SOURCE     1
-#define _POSIX_C_SOURCE_defined     1
-#endif
 #include    "limits.h"
-#undef  _POSIX_
-#undef  _POSIX_SOURCE
-#ifdef  _POSIX_C_SOURCE_defined
-#undef  _POSIX_C_SOURCE
-#undef  _POSIX_C_SOURCE_defined
-#endif
 #define CHARBIT             CHAR_BIT
 #define UCHARMAX            UCHAR_MAX
 #define USHRTMAX            USHRT_MAX
diff --git a/src/noconfig.H b/src/noconfig.H
index 6b634fe0b32ff67c..7c923c900c8865dd 100644
--- a/src/noconfig.H
+++ b/src/noconfig.H
@@ -570,20 +570,7 @@
 #include    "stdio.h"
 
 /* PATHMAX is the maximum length of path-list on the host system.   */
-/* _POSIX_* only to get PATH_MAX    */
-#define _POSIX_             1
-#define _POSIX_SOURCE       1
-#ifndef _POSIX_C_SOURCE
-#define _POSIX_C_SOURCE     1
-#define _POSIX_C_SOURCE_defined     1
-#endif
 #include    "limits.h"
-#undef  _POSIX_
-#undef  _POSIX_SOURCE
-#ifdef  _POSIX_C_SOURCE_defined
-#undef  _POSIX_C_SOURCE
-#undef  _POSIX_C_SOURCE_defined
-#endif
 #ifdef  PATH_MAX
 #define PATHMAX     PATH_MAX        /* Posix macro  */
 #else
openSUSE Build Service is sponsored by