[FFmpeg-cvslog] r18501 - trunk/configure

ramiro subversion
Tue Apr 14 00:54:21 CEST 2009


Author: ramiro
Date: Tue Apr 14 00:54:21 2009
New Revision: 18501

Log:
win32, dos: Work around a bug in the GNU toolchain.
The bug[1] is exposed when gcc decides to put some data in a common
section (i.e. data that will be used by more than one object). It will
suggest the data to be aligned, but binutils >= 2.19 will fail to
properly align it. Thus if the data requires any alignment greater
than 4, the application will crash.
The workaround prevents gcc from putting data in a common section,
instead putting it in a properly aligned section.

Modified:
   trunk/configure

Modified: trunk/configure
==============================================================================
--- trunk/configure	Mon Apr 13 23:22:19 2009	(r18500)
+++ trunk/configure	Tue Apr 14 00:54:21 2009	(r18501)
@@ -1634,6 +1634,7 @@ case $target_os in
         SHFLAGS='-shared -Wl,--output-def,$$(@:$(SLIBSUF)=.def) -Wl,--out-implib,$(SUBDIR)lib$(SLIBNAME:$(SLIBSUF)=.dll.a) -Wl,--enable-runtime-pseudo-reloc -Wl,--enable-auto-image-base'
         objformat="win32"
         enable dos_paths
+        check_cflags -fno-common
         if ! enabled x86_64; then
             check_cpp_condition _mingw.h "(__MINGW32_MAJOR_VERSION > 3) || (__MINGW32_MAJOR_VERSION == 3 && __MINGW32_MINOR_VERSION >= 15)" ||
                 die "ERROR: MinGW runtime version must be >= 3.15."
@@ -1652,6 +1653,7 @@ case $target_os in
         SHFLAGS='-shared -Wl,--enable-auto-image-base'
         objformat="win32"
         enable dos_paths
+        check_cflags -fno-common
         ;;
     *-dos|freedos|opendos)
         disable ffplay ffserver
@@ -1659,6 +1661,7 @@ case $target_os in
         network_extralibs="-lsocket"
         objformat="coff"
         enable dos_paths
+        check_cflags -fno-common
         ;;
     linux)
         enable dv1394



More information about the ffmpeg-cvslog mailing list