aboutsummaryrefslogtreecommitdiff
path: root/mach
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>1999-10-05 18:31:06 +0000
committerRoland McGrath <roland@gnu.org>1999-10-05 18:31:06 +0000
commit6c7b18958bb173f76049cf3a3f553e6b173c8fd3 (patch)
tree872d54cad9028f415e892eef1aad407cac3b504d /mach
parenta2d63612259fb70828b95b982ba21f1d01abe802 (diff)
downloadglibc-6c7b18958bb173f76049cf3a3f553e6b173c8fd3.tar
glibc-6c7b18958bb173f76049cf3a3f553e6b173c8fd3.tar.gz
glibc-6c7b18958bb173f76049cf3a3f553e6b173c8fd3.tar.bz2
glibc-6c7b18958bb173f76049cf3a3f553e6b173c8fd3.zip
1999-10-05 Roland McGrath <roland@baalperazim.frob.com>
* mach/mach/mig_support.h [! __USE_GNU]: Use #error to insist that _GNU_SOURCE be defined.
Diffstat (limited to 'mach')
-rw-r--r--mach/mach/mig_support.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/mach/mach/mig_support.h b/mach/mach/mig_support.h
index 8fe443157a..bd01fd328f 100644
--- a/mach/mach/mig_support.h
+++ b/mach/mach/mig_support.h
@@ -1,4 +1,4 @@
-/* Copyright (C) 1993, 1994, 1997 Free Software Foundation, Inc.
+/* Copyright (C) 1993, 1994, 1997, 1999 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -27,6 +27,19 @@
#include <sys/types.h>
#include <string.h>
+#ifndef __USE_GNU
+/* The only problem that has come up so far is __stpncpy being undeclared
+ below because <string.h> doesn't declare it without __USE_GNU. We could
+ work around that problem by just adding the declaration there, or by
+ eliding the inline functions in the absence of __USE_GNU. But either of
+ these would result in unoptimized calls (because no inline version of
+ __stpncpy will have been defined), and there may be other niggling
+ problems lurking. Instead we simply insist on _GNU_SOURCE for
+ compiling mig output; anyway, that better reflects the fact that mig
+ output requires nonstandard special support code not found elsewhere. */
+# error mig stubs must be compiled with -D_GNU_SOURCE
+#endif
+
/* MiG initialization. */
extern void __mig_init (void *__first);
extern void mig_init (void *__first);