Commit Graph

242 Commits

Author SHA1 Message Date
Michael Niedermayer
706bd8ea19 Merge remote-tracking branch 'qatar/master'
* qatar/master: (35 commits)
  h264_idct_10bit: port x86 assembly to cpuflags.
  x86inc: clip num_args to 7 on x86-32.
  x86inc: sync to latest version from x264.
  fft: rename "z" to "zc" to prevent name collision.
  wv: return meaningful error codes.
  wv: return AVERROR_EOF on EOF, not EIO.
  mp3dec: forward errors for av_get_packet().
  mp3dec: remove a pointless local variable.
  mp3dec: remove commented out cruft.
  lavfi: bump minor to mark stabilizing the ABI.
  FATE: add tests for yadif.
  FATE: add a test for delogo video filter.
  FATE: add a test for amix audio filter.
  audiogen: allow specifying random seed as a commandline parameter.
  vc1dec: Override invalid macroblock quantizer
  vc1: avoid reading beyond the last line in vc1_draw_sprites()
  vc1dec: check that coded slice positions and interlacing match.
  vc1dec: Do not ignore ff_vc1_parse_frame_header_adv return value
  configure: Move parts that should not be user-selectable to CONFIG_EXTRA
  lavf: remove commented out cruft in avformat_find_stream_info()
  ...

Conflicts:
	Makefile
	configure
	libavcodec/vc1dec.c
	libavcodec/x86/h264_deblock.asm
	libavcodec/x86/h264_deblock_10bit.asm
	libavcodec/x86/h264dsp_mmx.c
	libavfilter/version.h
	libavformat/mp3dec.c
	libavformat/utils.c
	libavformat/wv.c
	libavutil/x86/x86inc.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-29 02:16:26 +02:00
Michael Niedermayer
c6963a220d Merge remote-tracking branch 'qatar/master'
* qatar/master:
  proresdsp: port x86 assembly to cpuflags.
  lavr: x86: improve non-SSE4 version of S16_TO_S32_SX macro
  lavfi: better channel layout negotiation
  alac: check for truncated packets
  alac: reverse lpc coeff order, simplify filter
  lavr: add x86-optimized mixing functions
  x86: add support for fmaddps fma4 instruction with abstraction to avx/sse
  tscc2: fix typo in array index
  build: use COMPILE template for HOSTOBJS
  build: do full flag handling for all compiler-type tools
  eval: fix printing of NaN in eval fate test.
  build: Rename aandct component to more descriptive aandcttables
  mpegaudio: bury inline asm under HAVE_INLINE_ASM.
  x86inc: automatically insert vzeroupper for YMM functions.
  rtmp: Check the buffer length of ping packets
  rtmp: Allow having more unknown data at the end of a chunk size packet without failing
  rtmp: Prevent reading outside of an allocate buffer when receiving server bandwidth packets

Conflicts:
	Makefile
	configure
	libavcodec/x86/proresdsp.asm
	libavutil/eval.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-27 23:42:19 +02:00
Mans Rullgard
b9d3c37848 build: use COMPILE template for HOSTOBJS
Signed-off-by: Mans Rullgard <mans@mansr.com>
2012-07-26 23:58:59 +01:00
Michael Niedermayer
88beb2df98 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  FATE: fix the asyncts test
  build: Drop gcc-specific warning flag from header compilation rule
  FATE: add a test for the asyncts audio filter.
  matroskadec: return more correct error code on read error.
  buffersrc: check ff_get_audio_buffer() for errors.
  lavfi: check all ff_get_video_buffer() calls for errors.
  lavfi: check all avfilter_ref_buffer() calls for errors.
  vf_select: avoid an unnecessary avfilter_ref_buffer().
  buffersrc: avoid creating unnecessary buffer reference
  lavfi: use avfilter_unref_bufferp() where appropriate.
  vf_fps: add more error checks.
  vf_fps: fix a memleak on malloc failure.
  lavfi: check all ff_start_frame/draw_slice/end_frame calls for errors
  lavfi: add error handling to end_frame().
  lavfi: add error handling to draw_slice().
  lavfi: add error handling to start_frame().

Conflicts:
	Makefile
	ffplay.c
	libavfilter/buffersrc.c
	libavfilter/vf_boxblur.c
	libavfilter/vf_drawtext.c
	libavfilter/vf_fade.c
	libavfilter/vf_frei0r.c
	libavfilter/vf_hflip.c
	libavfilter/vf_overlay.c
	libavfilter/vf_pad.c
	libavfilter/vf_scale.c
	libavfilter/video.c
	libavfilter/vsrc_color.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-07-22 23:56:21 +02:00
Michael Niedermayer
517dcc9b5f Merge remote-tracking branch 'qatar/master'
* qatar/master:
  tests: Refactor rotozoom/videogen common code into a separate file.
  tests: Mark some file-internal symbols as static.
  build: Drop leftover .exp pattern from LIBSUFFIXES list.
  vsrc_buffer: return EAGAIN if no frame is available.
  WMAL: Shift output samples by the specified number of padding zeroes.
  WMAL: Restore removed code in mclms_predict()
  rtpdec_h264: Remove a useless ifdef
  rtpdec_h264: Remove outdated/useless/incorrect comments
  rtpdec_h264: Remove useless memory corruption checks
  rtpdec_h264: Return proper error codes
  rtpdec_h264: Check the available data length before reading
  rtpdec_h264: Add input size checks
  png: check bit depth for PAL8/Y400A pixel formats.
  ea: check chunk_size for validity.
  celp filters: Do not read earlier than the start of the 'out' vector.

Conflicts:
	libavcodec/pngdec.c
	libavfilter/src_buffer.c
	tests/rotozoom.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-05-05 20:22:09 +02:00
Diego Biurrun
b5a3c6038d build: Drop leftover .exp pattern from LIBSUFFIXES list. 2012-05-05 16:32:56 +02:00
Michael Niedermayer
3ead79eaa3 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  FATE: use updated reference for aac-latm_stereo_to_51
  avconv: use libavresample
  Add libavresample
  FATE: avoid channel mixing in lavf-dv_fmt

Conflicts:
	Changelog
	Makefile
	cmdutils.c
	configure
	doc/APIchanges
	ffmpeg.c
	tests/lavf-regression.sh
	tests/ref/lavf/dv_fmt
	tests/ref/seek/lavf_dv

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-25 23:17:41 +02:00
Michael Niedermayer
ca19862d38 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  libxvid: remove disabled code
  qdm2: make a table static const
  qdm2: simplify bitstream reader setup for some subpacket types
  qdm2: use get_bits_left()
  build: Consistently handle conditional compilation for all optimization OBJS.
  avpacket, bfi, bgmc, rawenc: K&R prettyprinting cosmetics
  msrle: convert MS RLE decoding function to bytestream2.
  x86inc improvements for 64-bit

Conflicts:
	common.mak
	libavcodec/avpacket.c
	libavcodec/bfi.c
	libavcodec/msrledec.c
	libavcodec/qdm2.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2012-04-13 00:39:19 +02:00
Diego Biurrun
7bb3a302fe build: Consistently handle conditional compilation for all optimization OBJS. 2012-04-12 09:00:49 +02:00
Reimar Döffinger
840ecc9e07 Add coverage support.
Adds --enable-coverage to configure and a "coverage-html" make target.
The dependency stuff in the Makefile is a bit questionable, but the
best I could think of so far.

Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-12-05 20:04:48 +01:00
Mans Rullgard
22aebf1bfe Add rule for compiling to asm
This allows commands of the form "make foo.s", which is useful
for inspecting the compiler output for debugging purposes.

Signed-off-by: Mans Rullgard <mans@mansr.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-10-22 20:49:24 +02:00
Michael Niedermayer
b5875b9111 Add libswresample.
Similar to libswscale this does resampling and format convertion, just for audio
instead of video.
changing sampling rate, sample formats, channel layouts and sample packing all
in one with a very simple public interface.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-19 07:04:17 +02:00
Michael Niedermayer
15240feb99 Merge remote-tracking branch 'hexene/scratchpad'
* hexene/scratchpad:
  Move & Rename buildscript, remove tabs
  Fix regular build
  Support (H/W accelerated) H.264 decoding on Android via Stagefright
  Add build-script for Android
  C++ Support ;)

Conflicts:
	Changelog
	Makefile
	configure
	libavcodec/Makefile
	libavcodec/allcodecs.c
	libavcodec/version.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-14 01:23:16 +02:00
Michael Niedermayer
1a34478b71 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  Fix NASM include directive
  dsputil_mmx: Honor HAVE_AMD3DNOW
  lavf,lavd: remove all usage of AVFormatParameters from demuxers.
  jack: add 'channels' private option.
  VC-1: fix reading of custom PAR.
  Remove redundant and dubious video codec detection by its extradata
  mpeg12: remove repeat-field code disabled since May 2002
  patch checklist: suggest fate instead of regression tests
  Turn on resampling on sudden size change instead of bailing out during recode.
  avtools: reinitialise filter chain when input video stream changes dimensions

Conflicts:
	Makefile
	avconv.c
	doc/developer.texi
	ffplay.c
	libavcodec/x86/dsputil_mmx.c
	libavdevice/libdc1394.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-08-15 23:35:53 +02:00
Michael Niedermayer
f93f6963ba Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rv30: return AVERROR(EINVAL) instead of EINVAL
  build: add -L flags before existing LDFLAGS
  simple_idct: whitespace cosmetics
  simple_idct: make repeated code a macro
  dsputil: remove huge #if 0 block
  simple_idct: change 10-bit add/put stride from pixels to bytes
  dsputil: allow 9/10-bit functions for non-h264 codecs
  dnxhd: rename some data tables
  dnxhdenc: remove inline from function only called through pointer
  dnxhdenc: whitespace cosmetics
  swscale: mark YUV422P10(LE,BE) as supported for output
  configure: add -xc99 to LDFLAGS for Sun CC
  Remove unused and non-compiling vestigial g729 decoder
  Remove unused code under G729_BITEXACT #ifdef.
  mpegvideo: fix invalid picture unreferencing.
  dsputil: Remove extra blank line at end.
  dsputil: Replace a LONG_MAX check with HAVE_FAST_64BIT.
  simple_idct: add 10-bit version

Conflicts:
	Makefile
	libavcodec/g729data.h
	libavcodec/g729dec.c
	libavcodec/rv30.c
	tests/ref/lavfi/pixdesc
	tests/ref/lavfi/pixfmts_copy
	tests/ref/lavfi/pixfmts_null
	tests/ref/lavfi/pixfmts_scale
	tests/ref/lavfi/pixfmts_vflip

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-21 16:28:53 +02:00
Michael Niedermayer
e10979ff56 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  changelog: misc typo and wording fixes
  H.264: add filter_mb_fast support for >8-bit decoding
  doc: Remove outdated comments about gcc 2.95 and gcc 3.3 support.
  lls: use av_lfg instead of rand() in test program
  build: remove unnecessary dependency on libs from 'all' target
  H.264: avoid redundant alpha/beta calculations in loopfilter
  H.264: optimize intra/inter loopfilter decision
  mpegts: fix Continuity Counter error detection
  build: remove unnecessary FFLDFLAGS variable
  vp8/mt: flush worker thread, not application thread context, on seek.
  mt: proper locking around release_buffer calls.
  DxVA2: unbreak build after [657ccb5ac7]
  hwaccel: unbreak build
  Eliminate FF_COMMON_FRAME macro.

Conflicts:
	Changelog
	Makefile
	doc/developer.texi
	libavcodec/avcodec.h
	libavcodec/h264.c
	libavcodec/mpeg4videodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-12 01:42:32 +02:00
Mans Rullgard
ca9036155d build: remove unnecessary FFLDFLAGS variable
This variable is set to the same value for all directories.
Adding the -L flags directly to LDFLAGS is simpler and achieves
the same thing.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-11 11:39:04 +01:00
Michael Niedermayer
3602ad7ee6 Merge commit '142e76f1055de5dde44696e71a5f63f2cb11dedf'
* commit '142e76f1055de5dde44696e71a5f63f2cb11dedf':
  swscale: fix crash with dithering due incorrect offset calculation.
  matroskadec: fix stupid typo (!= -> ==)
  build: remove duplicates from order-only directory prerequisite list
  build: rework rules for things in the tools dir
  configure: fix --cpu=host with gcc 4.6
  ARM: use const macro to define constant data in asm
  bitdepth: simplify FUNC/FUNCC macros
  dsputil: remove ff_emulated_edge_mc macro used in one place
  9/10-bit: simplify clipping macros
  matroskadec: reindent
  matroskadec: defer parsing of cues element until we seek.
  lavc: add support for codec-specific defaults.
  lavc: make avcodec_alloc_context3 officially public.
  lavc: remove a half-working attempt at different defaults for audio/video codecs.
  ac3dec: add a drc_scale private option
  lavf: add avformat_find_stream_info()
  lavc: introduce avcodec_open2() as a replacement for avcodec_open().

Conflicts:
	Makefile
	libavcodec/utils.c
	libavformat/avformat.h
	libswscale/swscale_internal.h

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-07-11 04:23:25 +02:00
Diego Biurrun
3e5cce81e7 build: remove duplicates from order-only directory prerequisite list
This reduces startup latency for make invocations, which is especially
noticeable on systems that are slow or have slow I/O, like Windows.
2011-07-10 22:16:21 +02:00
Mans Rullgard
28e1c97916 build: rework rules for things in the tools dir
Declaring tools associated with each library in their respective
makefiles allows these tools to easily depend on the correct
prerequisites and link against the libs they need.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-10 21:13:38 +01:00
Michael Niedermayer
8c0cbb0848 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  rational-test: Add proper main() declaration to fix gcc warnings.
  configure: Add vdpau and dxva2 to configure results output.
  Remove unused, never built libavutil/pca.[ch]
  matroskadec: forward parsing errors to caller.
  av_find_stream_info: simplify EAGAIN handling.
  aacenc: Fix determination of Mid/Side Mode.
  psymodel: Remove the single channel analysis function
  aacenc: Implement dummy channel group analysis that just calls the single channel analysis for each channel.
  psymodel: Add channels and channel groups to the psymodel.
  ARM: remove check for PLD instruction
  fate: move amr[nw]b test rules into separate files
  ogg: fix double free when finding length of small chained oggs.
  swscale: implement >8bit scaling support.
  build: fix creation of tools dir with make 3.81
  build: Mark all-yes Makefile target as phony.
  pixfmt: fix YUV422/444 wrong endian comment
  build: create output directories as needed
  Add new yuv444 pixfmts to avcodec_align_dimensions2

Conflicts:
	Makefile
	configure
	libavutil/pca.c
	libavutil/pca.h
	libavutil/pixfmt.h
	libswscale/swscale.c
	libswscale/utils.c
	libswscale/x86/swscale_template.c
	tests/ref/lavfi/pixdesc
	tests/ref/lavfi/pixfmts_copy
	tests/ref/lavfi/pixfmts_null
	tests/ref/lavfi/pixfmts_scale
	tests/ref/lavfi/pixfmts_vflip

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-30 04:32:24 +02:00
Reimar Döffinger
e1a54304be Move SRC_PATH hack around to allow compilation from subdir again. 2011-06-30 00:02:09 +02:00
Mans Rullgard
5e27ec28f0 build: create output directories as needed
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-29 09:14:56 +01:00
Michael Niedermayer
bb9d5171a7 Merge remote-tracking branch 'qatar/master'
* qatar/master: (21 commits)
  swscale: Add Doxygen for hyscale_fast/hScale.
  fate: enable lavfi-pixmt tests on big endian systems
  PPC: swscale: disable altivec functions for unsupported formats
  fate: merge identical pixdesc_be/le tests
  swscale: Add Doxygen for yuv2planar*/yuv2packed* functions.
  build: call texi2pod.pl with full path instead of symlink
  build: include sub-makefiles using full path instead of symlinks
  swscale: update big endian reference values after dff5a835.
  wavpack: skip blocks with no samples
  cosmetics: remove outdated comment that is no longer true
  build: replace some addprefix/addsuffix with substitution refs
  avutil: Remove unused arbitrary precision integer code.
  configure: Drop check for availability of ten assembler operands.
  aacenc: Save channel configuration for later use.
  aacenc: Fix codebook trellising for zeroed bands.
  swscale: change prototypes of scaled YUV output functions.
  swscale: re-add support for non-native endianness.
  swscale: disentangle yuv2rgbX_c_full() into small functions.
  swscale: split yuv2packed[12X]_c() remainders into small functions.
  swscale: split yuv2packedX_altivec in smaller functions.
  ...

Conflicts:
	Makefile
	configure
	libavcodec/x86/dsputil_mmx.c
	libavfilter/Makefile
	libavformat/Makefile
	libavutil/integer.c
	libavutil/integer.h
	libswscale/swscale.c
	libswscale/swscale_internal.h
	libswscale/x86/swscale_template.c
	tests/ref/lavfi/pixdesc_le
	tests/ref/lavfi/pixfmts_scale

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-29 05:23:12 +02:00
Mans Rullgard
deb3ed01b5 build: replace some addprefix/addsuffix with substitution refs
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-28 15:59:27 +01:00
Michael Niedermayer
f211d9d839 Merge remote-tracking branch 'qatar/master'
* qatar/master:
  build: improve rules for test programs
  build: factor out the .c and .S compile commands as a macro
  swscale: remove unused xInc/srcW arguments from hScale().
  H.264: disable 2tap qpel with CODEC_FLAG2_FAST and >8-bit
  H.264: make filter_mb_fast support 4:4:4
  mpeg4videoenc: Remove disabled variant of mpeg4_encode_block().
  configure: allow post-fixed cpu strings for athlon64, k8, and opteron when setting the -march flag.
  Move some variable declarations below the proper #ifdefs.

Conflicts:
	Makefile
	ffplay.c
	libswscale/swscale.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
2011-06-27 03:32:45 +02:00
Reimar Döffinger
c5cf0f7a76 Fix compilation in subdir with NASM.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-06-25 19:15:39 +02:00
Reimar Döffinger
fe343286ec Restore some more rules to common.mak to improve building in subdirs.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-06-25 19:15:39 +02:00
Reimar Döffinger
5aa8b270db Restore accidentally removed parts of "BRIEF" list.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2011-06-24 20:26:08 +02:00
Reimar Döffinger
95dd1741af Allow running make in subdirs again. 2011-06-24 09:39:11 +02:00
Reimar Döffinger
2ec899222b Revert "build: move basic rules and variables to main Makefile"
This reverts commit bb5249244d.
This is necessary to allow running "make" in subdirs again.

Conflicts:

	Makefile
2011-06-24 09:09:55 +02:00
Mans Rullgard
bb5249244d build: move basic rules and variables to main Makefile
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-23 12:17:08 +01:00
Mans Rullgard
8d853efe53 build: move special targets to end of main Makefile
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-23 12:16:53 +01:00
Mans Rullgard
d530e57944 build: move vpath directives to main Makefile
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-14 19:53:53 +01:00
Mans Rullgard
cf53c48615 build: move ALLFFLIBS to a more logical place
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-14 10:59:56 +01:00
Mans Rullgard
b9c6c7cb25 build: remove empty $(OBJS) target
This target was added to prevent some files being deleted
by make when using chains of implicit rules.  This is no
longer required.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-07 01:28:40 +01:00
Mans Rullgard
0018b7f043 build: clean up .PHONY lists
This removes nonexisting targets from phony lists and puts them
all in one place.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 16:56:53 +01:00
Mans Rullgard
d7a72d250b build: move all (un)install* target aliases to toplevel Makefile
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 16:56:53 +01:00
Mans Rullgard
171ae1eb0d build: remove stale dependency
This dependency is implicitly covered elsewhere.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 15:52:23 +01:00
Mans Rullgard
5eaba041a0 build: do not add CFLAGS-yes to CFLAGS
CFLAGS-yes is never set so this serves no purpose.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-06-06 15:48:44 +01:00
Mans Rullgard
798b264678 build: remove BUILD_ROOT variable
This variable is unnecessary as absolute paths are not required.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-29 12:36:16 +01:00
Mans Rullgard
2f97b12eaf Include dependencies for test programs
This makes sure the various *-test programs are correctly rebuilt
when necessary.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-31 12:01:27 +01:00
Mans Rullgard
e0be794a71 Remove support for stripping executables
Stripping is generally best left to package management tools, and
since unstripped copies are kept in the build tree, any arguments
about saving space (no matter how insignificant) are void.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-03-29 22:05:04 +01:00
Reinhard Tartler
737eb5976f Merge libavcore into libavutil
It is pretty hopeless that other considerable projects will adopt
libavutil alone in other projects. Projects that need small footprint
are better off with more specialized libraries such as gnulib or rather
just copy the necessary parts that they need. With this in mind, nobody
is helped by having libavutil and libavcore split. In order to ease
maintenance inside and around FFmpeg and to reduce confusion where to
put common code, avcore's functionality is merged (back) to avutil.

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-02-15 16:18:21 +01:00
Måns Rullgård
55127e7b49 Create config.asm for use with yasm
Originally committed as revision 25039 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-09-03 21:27:19 +00:00
Diego Biurrun
6fa5a91b14 Remove dep/depend targets and related variables.
We no longer create dependency files directly, so the rules are now pointless.

Originally committed as revision 24807 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-08-17 15:02:33 +00:00
Stefano Sabatini
aac6ca6978 Add libavcore.
The new library is meant to contain the core multimedia utilities for
FFmpeg, to make them shareable between more libav* libraries.

See thread:
Subject: [FFmpeg-devel] [RFC] New library for shared non-generic libav* utils
Date: Fri, 9 Jul 2010 01:07:40 +0200

Originally committed as revision 24393 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-21 18:28:42 +00:00
Måns Rullgård
11d788cade Stop make complaining about moved/deleted headers
Originally committed as revision 24041 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-07-04 18:33:37 +00:00
Måns Rullgård
7f02d3570a Add -I flags to HOSTCFLAGS
Originally committed as revision 23805 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-26 20:28:40 +00:00
Måns Rullgård
bf9aa44bf4 Fix brief make messages when CC etc are specified on command line
Originally committed as revision 23792 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-06-26 10:03:30 +00:00
Måns Rullgård
de5aba8cca Make ranlib silent in brief output mode
Running ranlib is quick and uninteresting, no need to print it.

Originally committed as revision 22582 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-17 14:43:03 +00:00
Måns Rullgård
7732f641ff Fix brief make output for generated tables
Originally committed as revision 22526 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-14 19:48:09 +00:00
Måns Rullgård
0680c40a25 Remove .SECONDARY directive
The presence of the .SECONDARY directive caused thing to not always
be correctly rebuilt.  Mentioning the object files explicitly as
targets gives the desired result of make not deleting them without
unpleasant side-effects.

Originally committed as revision 22422 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-10 02:57:01 +00:00
Måns Rullgård
6a53fffd77 Improve version.h generation
Force version.sh to run whenever the version might have changed,
regardless of what is being built.  This is done by attaching the
dependencies to a dummy file (.version) which is included from the
makefile.  As make will always attempt to rebuild any included files
before considering other rules, this ensures that the real version.h
is (re-)created before it is required by any source file.

Originally committed as revision 22420 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-10 02:56:56 +00:00
Måns Rullgård
93bff1de77 Replace $(G) with more generic $(M) in silent make rules
Originally committed as revision 22419 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-10 02:56:52 +00:00
Måns Rullgård
86be2bc36f Prettify make output for documentation
Originally committed as revision 22418 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-10 02:56:50 +00:00
Måns Rullgård
a736e0e5c2 Prettify make output when generating headers
Originally committed as revision 22401 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 15:56:16 +00:00
Måns Rullgård
451db9832c Simplify static/shared build rules
Originally committed as revision 22394 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 14:58:18 +00:00
Måns Rullgård
7acc01042e Remove duplicates from OBJS
Originally committed as revision 22391 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-09 14:58:08 +00:00
Måns Rullgård
f89c14027a checkheaders: skip per-arch headers not meant for direct inclusion
Some of the per-arch headers are only meant to be used through
the parent header of the same name.  Testing these standalone
does not make sense.

Originally committed as revision 22341 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 20:17:47 +00:00
Måns Rullgård
2a5500b13e Add TESTOBJS make variable for extra objects used by test apps
Originally committed as revision 22335 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 18:43:44 +00:00
Måns Rullgård
9b55e2e727 Skip cmdutils_common_opts.h fragment in checkheaders
Originally committed as revision 22333 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-08 18:43:38 +00:00
Måns Rullgård
72c2bdebcf Define HAVE_AV_CONFIG_H only when building libraries
Originally committed as revision 22294 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-07 22:18:33 +00:00
Måns Rullgård
a0ac950109 Fix build with compilers using a separate dependency command
Originally committed as revision 22249 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 19:29:29 +00:00
Måns Rullgård
63611f31e8 Prettify make output
This gives brief messages from make by default.  For full command
echoing, add V=1 to make command line.

Originally committed as revision 22244 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-03-06 17:14:19 +00:00
Måns Rullgård
1d53620311 Stop make deleting intermediate files (ffmpeg.o and friends)
Originally committed as revision 22094 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-27 15:25:28 +00:00
Måns Rullgård
f3a572ca14 Disable suffix rules
Most of the make builtin rules, which we do not need, are suffix rules,
and we use only new-style pattern rules.  Disabling suffix rules saves
some time when building on slow systems.

Originally committed as revision 22064 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-02-25 23:27:54 +00:00
Måns Rullgård
8be0a5c384 Move ECFLAGS so it doesn't get added multiple times
Originally committed as revision 21520 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 23:30:24 +00:00
Måns Rullgård
604b2f5276 Append ECFLAGS to CFLAGS
This makes it easy to supply extra flags on the make command line
for testing purposes.

Originally committed as revision 21515 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-28 20:13:46 +00:00
Ramiro Polla
d3cb93b374 Revert r21226, it was a joke:
Get one step closer to world domination.
Remove "make uninstall".

Originally committed as revision 21466 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-26 22:23:12 +00:00
Måns Rullgård
a482e61bd6 Add symbol versioning for shared libraries
Based on patch by Reinhard Tartler <siretart tauware de>

Originally committed as revision 21236 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-16 04:49:02 +00:00
Ramiro Polla
93fe7eb68d Get one step closer to world domination.
Remove "make uninstall".

Originally committed as revision 21226 to svn://svn.ffmpeg.org/ffmpeg/trunk
2010-01-15 19:16:28 +00:00
Måns Rullgård
79de9c83e0 Delete *.d files with make clean
Originally committed as revision 20577 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-11-22 14:22:13 +00:00
Måns Rullgård
de4070b520 Add generic rules for building helpers with HOSTCC
Originally committed as revision 20412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-10-29 00:55:35 +00:00
Måns Rullgård
bce7b696a2 Add PIC flags early so tests they affect give correct results
This is mainly the checks for ebx on x86, but possibly others too.

Originally committed as revision 19687 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-23 13:46:07 +00:00
Måns Rullgård
95f2c769c3 Skip headers requiring external libs not present in checkheaders
Originally committed as revision 19685 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-23 11:02:37 +00:00
Måns Rullgård
07dec06e6a Generate dependencies while compiling if supported by compiler
Originally committed as revision 19609 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-08 18:27:27 +00:00
Måns Rullgård
c1c3933a98 Generate dependencies when object files are built
Originally committed as revision 19608 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-08-08 18:27:22 +00:00
Måns Rullgård
bea81a52c9 Replace BUILD_{SHARED,STATIC} with CONFIG_ counterparts
Originally committed as revision 19527 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-28 08:58:48 +00:00
Måns Rullgård
adcb219081 Move output redirection of deps generation from make rule to DEPEND_CMD
Originally committed as revision 19493 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-22 22:30:20 +00:00
Stefano Sabatini
04a803bef4 Append the user CPPFLAGS value to the CPPFLAGS used for compilation,
rather than prepend it.

This way there is the guarantee that the included headers are those in
the FFmpeg sources, rather than pre-installed headers referenced by
the user CPPFLAGS.

Originally committed as revision 19416 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-12 15:50:25 +00:00
Måns Rullgård
2f2e6c7ce1 Pass ASFLAGS to assembler instead of CFLAGS
Originally committed as revision 19412 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-12 13:29:53 +00:00
Måns Rullgård
7e6c86e65d Allow unusual ways of specifying compiler output file
Some compilers do not use the typical -c -o foo.o style.
This allows compiler-specific equivalents to be set by the
configure script.

Originally committed as revision 19409 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-12 13:29:46 +00:00
Måns Rullgård
3198f6187a Set CFLAGS directly in config.mak instead of using OPTFLAGS
Originally committed as revision 19406 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-12 13:29:38 +00:00
Måns Rullgård
50a334e426 Separate C preprocessor flags into CPPFLAGS variable
Originally committed as revision 19404 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-07-12 13:29:32 +00:00
Dave Yeo
8e8a67faec Move *.map from LIBSUFFIXES to CLEANSUFFIXES, executables on OS/2 have
generated map files as well, so map files need to be removed in all
places where executables are removed.
patch by Dave Yeo, daveryeo telus net

Originally committed as revision 18981 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-29 11:56:54 +00:00
Måns Rullgård
b4c80b649e Fix building from within subdirs
Originally committed as revision 18881 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-05-20 10:24:59 +00:00
Diego Biurrun
c5662879ff Move addition of MMX-OBJS to OBJS into common.mak instead of duplicating it.
Originally committed as revision 18478 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-12 22:48:44 +00:00
Måns Rullgård
bdc2cc16eb Always use -L flags for all subdirs
Originally committed as revision 18295 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-01 00:53:25 +00:00
Måns Rullgård
3fd422ff77 Move make rules applicable only to subdirs into subdir.mak
Originally committed as revision 18294 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-04-01 00:53:22 +00:00
Diego Biurrun
43a0cb7ca2 Generalize example target rule in common.mak so that it sets a -example$(EXESUF)
suffix for all example files instead of doing this in individual Makefiles.

Originally committed as revision 18217 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-29 14:35:20 +00:00
Diego Biurrun
3344cf851c Use a wildcard match instead of a list to remove test programs.
This is robust against renames and also removes test programs not
(yet) hooked up in the main Makefiles.

Originally committed as revision 18193 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-26 10:12:21 +00:00
Diego Biurrun
7304c2c4ce Move adding the '-test$(EXESUF)' suffix to test programs into common.mak.
Originally committed as revision 18189 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-25 18:19:20 +00:00
Diego Biurrun
6ccf540fa5 prettyprinting cosmetics
Originally committed as revision 18188 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-25 18:14:28 +00:00
Diego Biurrun
661ce28996 Rename 'tests' target to 'testprogs'. It is too easily confused with the
'test' target and a directory named tests exists.

Originally committed as revision 18165 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-22 23:13:21 +00:00
Diego Biurrun
6708cfc4d3 Add rule for building API example programs.
Originally committed as revision 18161 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-22 22:33:41 +00:00
Diego Biurrun
0cc647cbfb Mark all clean targets as phony.
Originally committed as revision 17950 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-13 15:55:16 +00:00
Måns Rullgård
313c46a610 Compile .S files with $(AS), set it in configure
Assembler files using the GNU syntax need to be processed by gcc,
whichever compiler is used for C files.

Originally committed as revision 17827 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-05 21:20:01 +00:00
Diego Biurrun
9d821fc2d2 Do not add -D_FILE_OFFSET_BITS=64 and -D_LARGEFILE_SOURCE unconditionally to
CFLAGS.  Apparently there are some systems that do not like these definitions.

Originally committed as revision 17755 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-03 12:52:12 +00:00
Diego Biurrun
873b092353 version.h should depend on config.mak.
The extra version string that is passed to configure is recorded in config.mak
and changes to config.mak can therefore make version.h rebuilds necessary.

Originally committed as revision 17730 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-02 09:33:57 +00:00