Merge remote-tracking branch 'qatar/master'
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 29 Aug 2012 16:13:00 +0000 (18:13 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 29 Aug 2012 16:13:00 +0000 (18:13 +0200)
* qatar/master:
  build: export filtered -lz flag in config.mak
  build: add separate setting for host linker
  configure: probe_cc: use separate variable for linker output flag
  x86: Always compile files with functions that are called unconditionally
  x86: mpegvideoenc: fix linking with --disable-mmx
  x86: mpegvideoenc: Do not abuse HAVE_ variables for template instantiation

Conflicts:
Makefile
configure
libavcodec/x86/Makefile

Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
Makefile
common.mak
configure
libavcodec/x86/Makefile
libavcodec/x86/mpegvideoenc.c
libavcodec/x86/mpegvideoenc_template.c

diff --cc Makefile
Simple merge
diff --cc common.mak
@@@ -5,77 -5,6 +5,77 @@@
  # first so "all" becomes default target
  all: all-yes
  
- BRIEF  = CC CXX HOSTCC AS YASM AR LD STRIP CP
 +ifndef SUBDIR
 +
 +ifndef V
 +Q      = @
 +ECHO   = printf "$(1)\t%s\n" $(2)
++BRIEF  = CC CXX HOSTCC HOSTLD AS YASM AR LD STRIP CP
 +SILENT = DEPCC DEPHOSTCC DEPAS DEPYASM RANLIB RM
 +
 +MSG    = $@
 +M      = @$(call ECHO,$(TAG),$@);
 +$(foreach VAR,$(BRIEF), \
 +    $(eval override $(VAR) = @$$(call ECHO,$(VAR),$$(MSG)); $($(VAR))))
 +$(foreach VAR,$(SILENT),$(eval override $(VAR) = @$($(VAR))))
 +$(eval INSTALL = @$(call ECHO,INSTALL,$$(^:$(SRC_DIR)/%=%)); $(INSTALL))
 +endif
 +
 +ALLFFLIBS = avcodec avdevice avfilter avformat avresample avutil postproc swscale swresample
 +
 +# NASM requires -I path terminated with /
 +IFLAGS     := -I. -I$(SRC_PATH)/
 +CPPFLAGS   := $(IFLAGS) $(CPPFLAGS)
 +CFLAGS     += $(ECFLAGS)
 +CCFLAGS     = $(CPPFLAGS) $(CFLAGS)
 +ASFLAGS    := $(CPPFLAGS) $(ASFLAGS)
 +CXXFLAGS   += $(CPPFLAGS) $(CFLAGS)
 +YASMFLAGS  += $(IFLAGS:%=%/) -I$(SRC_PATH)/libavutil/x86/ -Pconfig.asm
 +
 +HOSTCCFLAGS = $(IFLAGS) $(HOSTCFLAGS)
 +LDFLAGS    := $(ALLFFLIBS:%=-Llib%) $(LDFLAGS)
 +
 +define COMPILE
 +       $(call $(1)DEP,$(1))
 +       $($(1)) $($(1)FLAGS) $($(1)_DEPFLAGS) $($(1)_C) $($(1)_O) $<
 +endef
 +
 +COMPILE_C = $(call COMPILE,CC)
 +COMPILE_CXX = $(call COMPILE,CXX)
 +COMPILE_S = $(call COMPILE,AS)
 +
 +%.o: %.c
 +      $(COMPILE_C)
 +
 +%.o: %.cpp
 +      $(COMPILE_CXX)
 +
 +%.s: %.c
 +      $(CC) $(CPPFLAGS) $(CFLAGS) -S -o $@ $<
 +
 +%.o: %.S
 +      $(COMPILE_S)
 +
 +%.h.c:
 +      $(Q)echo '#include "$*.h"' >$@
 +
 +%.ver: %.v
 +      $(Q)sed 's/$$MAJOR/$($(basename $(@F))_VERSION_MAJOR)/' $^ > $@
 +
 +%.c %.h: TAG = GEN
 +
 +# Dummy rule to stop make trying to rebuild removed or renamed headers
 +%.h:
 +      @:
 +
 +# Disable suffix rules.  Most of the builtin rules are suffix rules,
 +# so this saves some time on slow systems.
 +.SUFFIXES:
 +
 +# Do not delete intermediate files from chains of implicit rules
 +$(OBJS):
 +endif
 +
  include $(SRC_PATH)/arch.mak
  
  OBJS      += $(OBJS-yes)
diff --cc configure
+++ b/configure
@@@ -232,16 -205,15 +232,17 @@@ Advanced options (experts only)
    --target-os=OS           compiler targets OS [$target_os]
    --target-exec=CMD        command to run executables on target
    --target-path=DIR        path to view of build directory on target
 -  --nm=NM                  use nm tool
 +  --nm=NM                  use nm tool NM [$nm_default]
    --ar=AR                  use archive tool AR [$ar_default]
    --as=AS                  use assembler AS [$as_default]
 +  --yasmexe=EXE            use yasm-compatible assembler EXE [$yasmexe_default]
    --cc=CC                  use C compiler CC [$cc_default]
 +  --cxx=CXX                use C compiler CXX [$cxx_default]
    --dep-cc=DEPCC           use dependency generator DEPCC [$cc_default]
 -  --ld=LD                  use linker LD
 +  --ld=LD                  use linker LD [$ld_default]
    --host-cc=HOSTCC         use host C compiler HOSTCC
    --host-cflags=HCFLAGS    use HCFLAGS when compiling for host
+   --host-ld=HOSTLD         use host linker HOSTLD
    --host-ldflags=HLDFLAGS  use HLDFLAGS when linking for host
    --host-libs=HLIBS        use libs HLIBS when linking for host
    --host-os=OS             compiler host OS [$target_os]
@@@ -2044,12 -1784,10 +2046,13 @@@ AS_O='-o $@
  CC_C='-c'
  CC_E='-E -o $@'
  CC_O='-o $@'
 +CXX_C='-c'
 +CXX_O='-o $@'
  LD_O='-o $@'
 +FORCE_INC="-include"
  HOSTCC_C='-c'
  HOSTCC_O='-o $@'
+ HOSTLD_O='-o $@'
  
  host_cflags='-D_ISOC99_SOURCE -D_XOPEN_SOURCE=600 -O3 -g'
  host_libs='-lm'
@@@ -4045,13 -3556,15 +4053,15 @@@ HOSTCCDEP_FLAGS=$HOSTCCDEP_FLAG
  HOSTCC_DEPFLAGS=$HOSTCC_DEPFLAGS
  HOSTCC_C=$HOSTCC_C
  HOSTCC_O=$HOSTCC_O
+ HOSTLD_O=$HOSTLD_O
  TARGET_EXEC=$target_exec
  TARGET_PATH=$target_path
 -LIBS-avplay=$sdl_libs
 -CFLAGS-avplay=$sdl_cflags
 +LIBS-ffplay=$sdl_libs
 +CFLAGS-ffplay=$sdl_cflags
+ ZLIB=$($ldflags_filter -lz)
  LIB_INSTALL_EXTRA_CMD=$LIB_INSTALL_EXTRA_CMD
  EXTRALIBS=$extralibs
 -INSTALL=install
 +INSTALL=$install
  LIBTARGET=${LIBTARGET}
  SLIBNAME=${SLIBNAME}
  SLIBNAME_WITH_VERSION=${SLIBNAME_WITH_VERSION}
@@@ -14,21 -17,15 +17,18 @@@ MMX-OBJS                               
  MMX-OBJS-$(CONFIG_AAC_DECODER)         += x86/sbrdsp_init.o
  MMX-OBJS-$(CONFIG_AC3DSP)              += x86/ac3dsp_init.o
  MMX-OBJS-$(CONFIG_CAVS_DECODER)        += x86/cavsdsp.o
- MMX-OBJS-$(CONFIG_DNXHD_ENCODER)       += x86/dnxhdenc.o
 -MMX-OBJS-$(CONFIG_DWT)                 += x86/snowdsp.o
 +MMX-OBJS-$(CONFIG_DWT)                 += x86/snowdsp.o \
 +                                          x86/dwt.o
  MMX-OBJS-$(CONFIG_ENCODERS)            += x86/dsputilenc_mmx.o
  MMX-OBJS-$(CONFIG_FFT)                 += x86/fft_init.o
 +MMX-OBJS-$(CONFIG_GPL)                 += x86/idct_mmx.o
  MMX-OBJS-$(CONFIG_H264DSP)             += x86/h264dsp_init.o
  MMX-OBJS-$(CONFIG_H264PRED)            += x86/h264_intrapred_init.o
  MMX-OBJS-$(CONFIG_LPC)                 += x86/lpc.o
  MMX-OBJS-$(CONFIG_MPEGAUDIODSP)        += x86/mpegaudiodec.o
- MMX-OBJS-$(CONFIG_MPEGVIDEO)           += x86/mpegvideo.o
- MMX-OBJS-$(CONFIG_MPEGVIDEOENC)        += x86/mpegvideoenc.o
  MMX-OBJS-$(CONFIG_PNG_DECODER)         += x86/pngdsp_init.o
  MMX-OBJS-$(CONFIG_PRORES_DECODER)      += x86/proresdsp_init.o
 +MMX-OBJS-$(CONFIG_PRORES_LGPL_DECODER) += x86/proresdsp_init.o
  MMX-OBJS-$(CONFIG_RV30_DECODER)        += x86/rv34dsp_init.o
  MMX-OBJS-$(CONFIG_RV40_DECODER)        += x86/rv34dsp_init.o            \
                                            x86/rv40dsp_init.o
Simple merge