[FFmpeg-devel] [PATCH] Add -fno-common to PE32 CFLAGS
Thu Apr 9 07:40:24 CEST 2009
On 04/08/09 06:42 pm, Ramiro Polla wrote:
> Some time ago Art Clarke sent a patch to unconditionally add
> -fno-common to mingw32 builds because of a bug in GCC. Instead of
> applying the patch, the documentation was updated to reflect this bug
> and the workaround.
> The bug details can be found here:
> I finally took some time to investigate what combination of
> gcc+binutils triggers the bug. Just like Brian Dessent mentions in
> comment #6, the bug appears with binutils starting November 2007. The
> gcc version doesn't matter as long as it puts data in .comm. binutils
> 2.18 doesn't show this bug, but it has other shortcomings which make
> it not fit for building FFmpeg.
> With current mingw32 binutils floating around the web, all builds will
> crash at some point in some optimizations (maybe Baptiste can give us
> a sample that really crashes, I haven't seen them yet, but there are
> lots of reports).
> So is it ok to unconditionally include this flag with attached patch
> (and a very descriptive log message) before binutils is fixed?
> @@ -1688,6 +1691,7 @@
> SLIB_INSTALL_EXTRA_CMD='install -m 644 $(SUBDIR)$(LIBPREF)$(NAME)_dll.a $(SUBDIR)$(LIBPREF)$(NAME)_dll.lib "$(LIBDIR)"'
> SLIB_UNINSTALL_EXTRA_CMD='rm -f "$(LIBDIR)"/$(LIBPREF)$(NAME)_dll.a "$(LIBDIR)"/$(LIBPREF)$(NAME)_dll.lib'
> enable dos_paths
> + check_cflags -fno-common
OS/2 doesn't need this as we aren't using the pe assembler, plus our
binutils are too old (2.16.1) though it doesn't seem to hurt.
More information about the ffmpeg-devel