+Fri Mar 5 01:13:45 1999 H.J. Lu (hjl@gnu.org)
+
+ * config/linuxlibc1.mt (MT_CFLAGS): Add -D_G_STDIO_USES_LIBIO
+ -D_G_HAVE_WEAK_SYMBOL.
+
+ * genops.c: Add the proper weak alias if _G_STDIO_USES_LIBIO
+ and _G_HAVE_WEAK_SYMBOL are defined.
+ * iofclose.c: Likewise.
+ * iofeof.c: Likewise.
+ * ioferror.c: Likewise.
+ * iogetc.c: Likewise.
+ * ioputc.c: Likewise.
+ * iovsprintf.c: Likewise.
+ * iovsscanf.c: Likewise.
+
Mon Nov 23 09:44:26 1998 Richard Henderson <rth@cygnus.com>
* configure.in: Append mh-ppcpic and mh-elfalphapic as appropriate.
streambuf.h strfile.h strstream.h libio.h
# A bad kludge
-MT_CFLAGS=-D_G_HAVE_MMAP
+MT_CFLAGS=-D_G_HAVE_MMAP -D_G_STDIO_USES_LIBIO -D_G_HAVE_WEAK_SYMBOL
#ifdef weak_alias
weak_alias (_IO_cleanup, _cleanup)
+#elif defined(_G_STDIO_USES_LIBIO) && defined(_G_HAVE_WEAK_SYMBOL)
+void _cleanup () __attribute__ ((weak, alias ("_IO_cleanup")));
#endif
#ifdef text_set_element
#ifdef weak_alias
weak_alias (_IO_fclose, fclose)
-#else
-#ifdef __linux__
-#pragma weak fclose = _IO_fclose
-#endif
+#elif defined(_G_STDIO_USES_LIBIO) && defined(_G_HAVE_WEAK_SYMBOL)
+int fclose (_IO_FILE *) __attribute__ ((weak, alias("_IO_fclose")));
#endif
#ifdef weak_alias
weak_alias (_IO_feof, feof)
+#elif defined(_G_STDIO_USES_LIBIO) && defined(_G_HAVE_WEAK_SYMBOL)
+int feof (_IO_FILE *) __attribute__ ((weak, alias("_IO_feof")));
#endif
#ifdef weak_alias
weak_alias (_IO_ferror, ferror)
+#elif defined(_G_STDIO_USES_LIBIO) && defined(_G_HAVE_WEAK_SYMBOL)
+int ferror (_IO_FILE *) __attribute__ ((weak, alias("_IO_ferror")));
#endif
#ifdef weak_alias
weak_alias (_IO_getc, getc)
+#elif defined(_G_STDIO_USES_LIBIO) && defined(_G_HAVE_WEAK_SYMBOL)
+int getc (_IO_FILE *) __attribute__ ((weak, alias("_IO_getc")));
#endif
#ifdef weak_alias
weak_alias (_IO_putc, putc)
+#elif defined(_G_STDIO_USES_LIBIO) && defined(_G_HAVE_WEAK_SYMBOL)
+int putc (int, _IO_FILE *) __attribute__ ((weak, alias("_IO_putc")));
#endif
#ifdef weak_alias
weak_alias (_IO_vsprintf, vsprintf)
-#else
-#ifdef __linux__
-#pragma weak vsprintf = _IO_vsprintf
-#endif
+#elif defined(_G_STDIO_USES_LIBIO) && defined(_G_HAVE_WEAK_SYMBOL)
+int vsprintf (char *, const char *, _IO_va_list)
+ __attribute__ ((weak, alias("_IO_vsprintf")));
#endif
#ifdef weak_alias
weak_alias (_IO_vsscanf, __vsscanf)
weak_alias (_IO_vsscanf, vsscanf)
-#else
-#ifdef __linux__
-#pragma weak vsscanf = _IO_vsscanf
-#endif
+#elif defined(_G_STDIO_USES_LIBIO) && defined(_G_HAVE_WEAK_SYMBOL)
+int __vsscanf (const char *, const char *, _IO_va_list)
+ __attribute__ ((weak, alias("_IO_vsscanf")));
+int vsscanf (const char *, const char *, _IO_va_list)
+ __attribute__ ((weak, alias("_IO_vsscanf")));
#endif