X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=build-aux%2Flink-warning.h;h=84708ffdc613746c3623c0a792d4c9e247bdc16a;hb=fa43e0af674cf072f407fda6ec95cae536f4e4a0;hp=9ff7c175ae00620108cbb2fcfbe7a78f8a19f8cd;hpb=237d7dcd6b8b57f44731b28ab2e6e9a797a551a6;p=gnulib.git diff --git a/build-aux/link-warning.h b/build-aux/link-warning.h index 9ff7c175a..84708ffdc 100644 --- a/build-aux/link-warning.h +++ b/build-aux/link-warning.h @@ -1,5 +1,5 @@ /* A C macro for emitting link time warnings. - Copyright (C) 1995, 1997, 2000, 2002-2003, 2007, 2009 Free Software + Copyright (C) 1995, 1997, 2000, 2002-2003, 2007, 2009-2011 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it @@ -15,6 +15,10 @@ You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . */ +#if @HAVE_FEATURES_H@ +# include /* for __GLIBC__, __UCLIBC__ */ +#endif + /* GL_LINK_WARNING("literal string") arranges to emit the literal string as a linker warning on most glibc systems. We use a linker warning rather than a preprocessor warning, because @@ -24,7 +28,7 @@ Testing __GLIBC__ is sufficient for asserting that GNU ld is in use. Testing __ELF__ guarantees the ELF object format. Testing __GNUC__ is necessary for the compound expression syntax. */ -# if defined __GLIBC__ && defined __ELF__ && defined __GNUC__ +# if (defined __GLIBC__ || defined __UCLIBC__) && defined __ELF__ && defined __GNUC__ # define GL_LINK_WARNING(message) \ GL_LINK_WARNING1 (__FILE__, __LINE__, message) # define GL_LINK_WARNING1(file, line, message) \ @@ -32,12 +36,12 @@ # define GL_LINK_WARNING2(file, line, message) \ GL_LINK_WARNING3 (file ":" #line ": warning: " message) # define GL_LINK_WARNING3(message) \ - ({ static const char warning[sizeof (message)] \ - __attribute__ ((__unused__, \ - __section__ (".gnu.warning"), \ - __aligned__ (1))) \ - = message "\n"; \ - (void)0; \ + ({ static const char warning[sizeof (message)] \ + __attribute__ ((__unused__, \ + __section__ (".gnu.warning"), \ + __aligned__ (1))) \ + = message "\n"; \ + (void)0; \ }) # else # define GL_LINK_WARNING(message) ((void) 0)