GNOME Bugzilla – Bug 515905
gst-error.m4 needs no%E_MACRO_REDEFINED on Solaris
Last modified: 2008-02-12 12:20:18 UTC
Please describe the problem: When building with the latest Sun development environment (Workshop 12), the build fails because it's using -errwarn, and no%E_MACRO_REDEFINED is not included in the -errwarn list. Whenever gst-libs/gst/gettext.h is included, each of the gettext-related functions results in a "macro redefined" warning, which becomes an error because of the -errwarn flag: /bin/bash ../../libtool --tag=CC --mode=compile cc -DHAVE_CONFIG_H -I. -I../.. -I/local/include/X11 -I/local/include -I/local/gnu/include/X11 -I/local/gnu/include -I../../gst-libs -D_REENTRANT -D_PTHREADS -I/local/gnu/include/gstreamer-0.10 -I/local/gnu/include/glib-2.0 -I/local/gnu/lib/64/glib-2.0/include -I/local/gnu/include/libxml2 -D_REENTRANT -D_PTHREADS -I/local/gnu/include/gstreamer-0.10 -I/local/gnu/include/glib-2.0 -I/local/gnu/lib/64/glib-2.0/include -I/local/gnu/include/libxml2 -I../../gst-libs -I../../gst-libs -D_REENTRANT -D_PTHREADS -I/local/gnu/include/gstreamer-0.10 -I/local/gnu/include/glib-2.0 -I/local/gnu/lib/64/glib-2.0/include -I/local/gnu/include/libxml2 -errwarn=%all,no%E_EMPTY_DECLARATION,no%E_STATEMENT_NOT_REACHED,no%E_ARGUEMENT_MISMATCH -g -I/local/include/X11 -I/local/include -I/local/gnu/include/X11 -I/local/gnu/include -Xa -xO2 -xstrconst -errtags=yes -KPIC -m64 -xtarget=native -xarch=native -c -o libgstapetag_la-gstapedemux.lo `test -f 'gstapedemux.c' || echo './'`gstapedemux.c mkdir .libs cc -DHAVE_CONFIG_H -I. -I../.. -I/local/include/X11 -I/local/include -I/local/gnu/include/X11 -I/local/gnu/include -I../../gst-libs -D_REENTRANT -D_PTHREADS -I/local/gnu/include/gstreamer-0.10 -I/local/gnu/include/glib-2.0 -I/local/gnu/lib/64/glib-2.0/include -I/local/gnu/include/libxml2 -D_REENTRANT -D_PTHREADS -I/local/gnu/include/gstreamer-0.10 -I/local/gnu/include/glib-2.0 -I/local/gnu/lib/64/glib-2.0/include -I/local/gnu/include/libxml2 -I../../gst-libs -I../../gst-libs -D_REENTRANT -D_PTHREADS -I/local/gnu/include/gstreamer-0.10 -I/local/gnu/include/glib-2.0 -I/local/gnu/lib/64/glib-2.0/include -I/local/gnu/include/libxml2 -errwarn=%all,no%E_EMPTY_DECLARATION,no%E_STATEMENT_NOT_REACHED,no%E_ARGUEMENT_MISMATCH -g -I/local/include/X11 -I/local/include -I/local/gnu/include/X11 -I/local/gnu/include -Xa -xO2 -xstrconst -errtags=yes -KPIC -m64 -xtarget=native -xarch=native -c gstapedemux.c -KPIC -DPIC -o .libs/libgstapetag_la-gstapedemux.o "../../gst-libs/gst/gettext.h", line 45: warning: macro redefined: gettext (E_MACRO_REDEFINED) "../../gst-libs/gst/gettext.h", line 46: warning: macro redefined: dgettext (E_MACRO_REDEFINED) "../../gst-libs/gst/gettext.h", line 47: warning: macro redefined: dcgettext (E_MACRO_REDEFINED) "../../gst-libs/gst/gettext.h", line 48: warning: macro redefined: ngettext (E_MACRO_REDEFINED) "../../gst-libs/gst/gettext.h", line 50: warning: macro redefined: dngettext (E_MACRO_REDEFINED) "../../gst-libs/gst/gettext.h", line 52: warning: macro redefined: dcngettext (E_MACRO_REDEFINED) "../../gst-libs/gst/gettext.h", line 54: warning: macro redefined: textdomain (E_MACRO_REDEFINED) "../../gst-libs/gst/gettext.h", line 55: warning: macro redefined: bindtextdomain (E_MACRO_REDEFINED) "../../gst-libs/gst/gettext.h", line 56: warning: macro redefined: bind_textdomain_codeset (E_MACRO_REDEFINED) "gstapedemux.c", line 87: warning: syntax error: empty declaration (E_EMPTY_DECLARATION) The best fix would probably be to fix up gst/gettext.h, but I went with the easy fix first -- just add no%E_MACRO_REDEFINED to -errwarn. Patch is attached. Steps to reproduce: Build on Solaris 10 with Workshop 12 Actual results: build fails Expected results: build succeeds Does this happen every time? yes Other information:
Created attachment 105002 [details] [review] add no%E_MACRO_REDEFINED
Looks good and should probably be included in the next release... marking as blocker.
2008-02-12 Sebastian Dröge <slomo@circular-chaos.org> Patch by: Tim Mooney <mooney at dogbert dot cc dot ndsu dot nodak dot edu> * m4/gst-error.m4: Use no%E_MACRO_REDEFINED on Solaris to prevent compiler warnings. Fixes bug #515905.