diff options
Diffstat (limited to 'contrib/Makefile.am')
-rw-r--r-- | contrib/Makefile.am | 87 |
1 files changed, 49 insertions, 38 deletions
diff --git a/contrib/Makefile.am b/contrib/Makefile.am index 8433d4ce8..6e019ba62 100644 --- a/contrib/Makefile.am +++ b/contrib/Makefile.am @@ -2,17 +2,15 @@ SUBDIRS = libmpcdec libxdg-basedir libdca srcdir = $(shell cd @srcdir@; pwd) -CC = @CC@ -CFLAGS = @CFLAGS@ -LDFLAGS = @LDFLAGS@ -VISIBILITY_FLAG = @VISIBILITY_FLAG@ +ffmpeg_builder = $(srcdir)/ffmpeg-universal.sh -if HAVE_DXR3 +if ENABLE_DXR3 dxr3encoder = --enable-encoder=mpeg1video endif if FFMPEG_DISABLE_UNCOMMON_CODECS -disable_uncommon_codecs=--disable-decoder=aasc --disable-decoder=asv1 --disable-decoder=asv2 --disable-decoder=avs \ +disable_uncommon_codecs = \ + --disable-decoder=aasc --disable-decoder=asv1 --disable-decoder=asv2 --disable-decoder=avs \ --disable-decoder=cscd --disable-decoder=cyuv --disable-decoder=dvvideo --disable-decoder=eightbps \ --disable-decoder=flic --disable-decoder=flv --disable-decoder=fourxm --disable-decoder=fraps \ --disable-decoder=huffyuv --disable-decoder=idcin --disable-decoder=interplay_video --disable-decoder=kmvc \ @@ -37,7 +35,8 @@ disable_uncommon_codecs=--disable-decoder=aasc --disable-decoder=asv1 --disable- endif if FFMPEG_DISABLE_POPULAR_CODECS -disable_popular_codecs=--disable-decoder=cinepak --disable-decoder=flashsv --disable-decoder=h261 --disable-decoder=h263 \ +disable_popular_codecs = \ + --disable-decoder=cinepak --disable-decoder=flashsv --disable-decoder=h261 --disable-decoder=h263 \ --disable-decoder=h263i --disable-decoder=h264 --disable-decoder=indeo2 --disable-decoder=indeo3 \ --disable-decoder=mjpeg --disable-decoder=mjpegb --disable-decoder=mpeg1video --disable-decoder=mpeg2video \ --disable-decoder=mpeg4 --disable-decoder=mpegvideo --disable-decoder=msmpeg4v1 --disable-decoder=msmpeg4v2 \ @@ -53,7 +52,26 @@ configure_options =\ --disable-shared --enable-static --disable-demuxers --disable-muxers --disable-strip \ --enable-gpl --enable-pthreads --disable-ffmpeg --disable-ffserver --disable-ffplay -disable_decoders =\ +if DEBUG_BUILD +configure_options += --enable-debug +else +configure_options += --disable-debug +endif +if PROFILING_BUILD +configure_options += --enable-gprof +endif +if DISABLE_OPTIMIZATIONS +configure_options += --disable-opts +endif +if HAVE_MLIB +configure_options += --enable-sunmlib +endif + +if !HOST_OS_DARWIN +FFMPEG_EXTRA_CFLAGS = -fPIC -DPIC +endif + +disable_decoders = \ --disable-decoder=bmp --disable-decoder=cavs --disable-decoder=cljr --disable-decoder=dsicinvideo \ --disable-decoder=ffv1 --disable-decoder=ffvhuff --disable-decoder=gif --disable-decoder=mdec \ --disable-decoder=mpeg_xvmc --disable-decoder=mszh --disable-decoder=png --disable-decoder=rawvideo \ @@ -64,31 +82,32 @@ disable_decoders =\ --disable-decoder=dvdsub --disable-decoder=theora --disable-decoder=aac --disable-decoder=mpeg4aac \ --disable-decoder=ac3 --disable-decoder=vorbis -all_configure_options = $(configure_options) \ - --disable-encoders $(dxr3encoder) \ - --enable-encoders $(disable_uncommon_codecs) $(disable_popular_codecs) \ - $(disable_decoders) \ - --make="$(MAKE)" \ - --cc="$(CC)" +all_configure_options = \ + $(configure_options) --make="$(MAKE)" --cc="$(CC)" \ + --disable-encoders $(dxr3encoder) $(disable_decoders) \ + $(disable_uncommon_codecs) $(disable_popular_codecs) -ffmpeg/config.mak: $(srcdir)/ffmpeg/configure Makefile +ffmpeg/config.mak: ffmpeg/configure Makefile $(ffmpeg_builder) if MACOSX_UNIVERSAL_BINARY - export CFLAGS="$(VISIBILITY_FLAG)"; \ - export FFMPEG_CONFIGURE_OPTIONS="$(all_configure_options)"; \ - $(srcdir)/ffmpeg-universal.sh -configure "$(srcdir)/ffmpeg" $(UNIVERSAL_ARCHES) + export CFLAGS="$(VISIBILITY_FLAG)"; \ + export FFMPEG_CONFIGURE_OPTIONS="$(all_configure_options)"; \ + $(ffmpeg_builder) -configure "$(srcdir)/ffmpeg" $(UNIVERSAL_ARCHES) else mkdir -p ffmpeg cd ffmpeg; \ $(srcdir)/ffmpeg/configure $(all_configure_options) \ - --extra-cflags="$(CFLAGS) $(VISIBILITY_FLAG) -fPIC -DPIC" \ - --extra-ldflags="$(LDFLAGS)"; \ + --extra-cflags="$(VISIBILITY_FLAG) $(FFMPEG_EXTRA_CFLAGS)"; \ cd .. +if HOST_OS_DARWIN + cat ffmpeg/config.mak | sed -e '/OPTFLAGS=/s/-mdynamic-no-pic//g' > ffmpeg/config.tmp + mv -f ffmpeg/config.tmp ffmpeg/config.mak +endif endif ffmpeg/libavutil/libavutil.a: ffmpeg/config.mak if MACOSX_UNIVERSAL_BINARY export MAKE="$(MAKE)"; \ - $(srcdir)/ffmpeg-universal.sh -avutil "$(srcdir)/ffmpeg" $(UNIVERSAL_ARCHES) + $(ffmpeg_builder) -avutil "$(srcdir)/ffmpeg" $(UNIVERSAL_ARCHES) else $(MAKE) -C ffmpeg/libavutil libavutil.a endif @@ -96,7 +115,7 @@ endif ffmpeg/libavcodec/libavcodec.a: ffmpeg/config.mak if MACOSX_UNIVERSAL_BINARY export MAKE="$(MAKE)"; \ - $(srcdir)/ffmpeg-universal.sh -avcodec "$(srcdir)/ffmpeg" $(UNIVERSAL_ARCHES) + $(ffmpeg_builder) -avcodec "$(srcdir)/ffmpeg" $(UNIVERSAL_ARCHES) else $(MAKE) -C ffmpeg/libavcodec libavcodec.a endif @@ -104,28 +123,23 @@ endif ffmpeg/libpostproc/libpostproc.a: ffmpeg/config.mak if MACOSX_UNIVERSAL_BINARY export MAKE="$(MAKE)"; \ - $(srcdir)/ffmpeg-universal.sh -postproc "$(srcdir)/ffmpeg" $(UNIVERSAL_ARCHES) + $(ffmpeg_builder) -postproc "$(srcdir)/ffmpeg" $(UNIVERSAL_ARCHES) else $(MAKE) -C ffmpeg/libpostproc libpostproc.a endif clean-local: if MACOSX_UNIVERSAL_BINARY - for arch in $(UNIVERSAL_ARCHES); do \ - $(MAKE) -C ffmpeg/$$arch clean; \ - done - rm -f ffmpeg/libavcodec/libavcodec.a ffmpeg/libavutil/libavutil.a ffmpeg/libpostproc/libpostproc.a + export MAKE="$(MAKE)"; \ + $(ffmpeg_builder) -clean "$(srcdir)/ffmpeg" $(UNIVERSAL_ARCHES) else -$(MAKE) -C ffmpeg clean endif distclean-local: if MACOSX_UNIVERSAL_BINARY - for arch in $(UNIVERSAL_ARCHES); do \ - $(MAKE) -C ffmpeg/$$arch distclean; \ - done - rm -f ffmpeg/config.mak ffmpeg/config.h - rm -f ffmpeg/libavcodec/libavcodec.a ffmpeg/libavutil/libavutil.a ffmpeg/libpostproc/libpostproc.a + export MAKE="$(MAKE)"; \ + $(ffmpeg_builder) -distclean "$(srcdir)/ffmpeg" $(UNIVERSAL_ARCHES) else -$(MAKE) -C ffmpeg distclean endif @@ -133,10 +147,7 @@ endif EXTRA_DIST = README.contrib ffmpeg-distfiles dist-hook: - while read entry; do \ - test -d $(srcdir)/$$entry && \ - mkdir -p $(distdir)/$$entry; \ - test -f $(srcdir)/$$entry && \ - cp -p $(srcdir)/$$entry $(distdir)/$$entry; \ + while read entry; do \ + test -d $(srcdir)/$$entry && mkdir -p $(distdir)/$$entry; \ + test -f $(srcdir)/$$entry && cp -p $(srcdir)/$$entry $(distdir)/$$entry; \ done < $(srcdir)/ffmpeg-distfiles - |