Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8045)

Unified Diff: chromium/patches/README.chromium

Issue 9290059: Initial commit of all previous Chrome build scripts. (Closed) Base URL: http://git.chromium.org/chromium/third_party/ffmpeg.git@master
Patch Set: Drop deprecated subfolder. Created 8 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chromium/patches/README.chromium
diff --git a/chromium/patches/README.chromium b/chromium/patches/README.chromium
new file mode 100644
index 0000000000000000000000000000000000000000..707683eb761b0981cc51a69c3f9cdc420f8d13e6
--- /dev/null
+++ b/chromium/patches/README.chromium
@@ -0,0 +1,362 @@
+Name: ffmpeg
+Version: 0.9.7
+
+Description:
+Contains the sources used to compile FFmpeg binaries used by Google Chrome and
+Chromium.
+
+The FFmpeg source is from ToT of the main ffmpeg branch:
+ http://git.videolan.org/?p=ffmpeg.git;a=commit;h=bb258fb995a42112d1fe14f53ec599b2cd19b707
+ Date: Tue, 12 Jul 2011 22:42:11
+ Commit: bb258fb995a42112d1fe14f53ec599b2cd19b707
+
+libvpx source
+ http://webm.googlecode.com/files/libvpx-v0.9.7-p1.zip
+ git://review.webmproject.org/libvpx.git
+ Date: Tuesday August 16 2011
+ Version: v0.9.7p1 (cayuga)
+ Commit: 20307c70ae96c45b9b00338989b952fb334e4fc9
+
+The following process is intended to run from msys
+
+Steps for extracting:
+
+AUTOMATIC:
+
+ 1) On linux, mac and windows/mingw run
+
+ rm -rf sources/patched-ffmpeg
+ ./make_src_tree.sh ffmpeg.tar.gz source/patched-ffmpeg patches
+
+MANUAL: This can be useful when having to adjust patches.
+
+ 1) Extract ffmpeg, which creates the directory ffmpeg:
+ cd /c/src/chrome/deps/third_party/ffmpeg
+ rm -rf ffmpeg
+ tar xf ffmpeg.tar.gz
+
+ 2) Apply patches (from within the source/ directory):
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/01_static_pthread_O2.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/05_respect_flac_dirac_configure.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/07_get_bits_overrun.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/08_enforce_theora_oob.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/09_enforce_vorbis_oob_divzero.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/10_aac_oob_read.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/11_mkv_buffer_overflow.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/12_ogg_seek_to_zero.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/13_remove_avcore.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/14_vp8_encode_options.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/15_webp_ffmpeg.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/25_ogg_index.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/30_enforce_mp3_oob.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/31_remove_attribute_deprecated.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/32_add_rawdec_for_mac_win.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/34_ogg_memcpy.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/35_oggdec_duration.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/from_upstream/36_theora_flush.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/37_VP8_armv6_optimizations.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/from_upstream/38_webm_cues_before_first_cluster.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/39_VP8_fix_oob_read_writes.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/40_MKV_fix_oob_write.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/41_matroska_cluster_incremental.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/42_vp8_fix_segmentation_maps.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/43_mkv_seekahead_revalidate.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/44_vorbis_oob_read.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/45_mkv_fix_segmap_cache_overflow.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/46_vp3_fix_double_free_invalid_read.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/47_vp3_fix_infloop_and_memleak.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/48_vorbis_residue_buffer.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/49_vorbis_buffer_defense.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/50_vp8_fix_frame_size_changes.patch
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/52_vorbis_fix_floor1_vector_int_overflow.patch
+ cd ..
+
+
+NOTE: Under Windows it is recommended to use Chromium's MinGW/MSYS environment
+or 7-Zip to extract the archives. We've experienced issues when using WinRAR.
+
+Since FFmpeg is sandboxed inside the render process, we're only interested in
+building the absolute minimum.
+
+Refer to build_ffmpeg.sh for configuration flags for Chromium and Google Chrome.
+
+To clean up patches so there is no fuzzing
+ 1) Extract ffmpeg, which creates the directory ffmpeg:
+ cd /c/src/chrome/deps/third_party/ffmpeg
+ rm -rf ffmpeg
+ tar xf ffmpeg.tar.gz
+
+ 2) Apply patches:
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/01_static_pthread_O2.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/01_static_pthread_O2.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/05_respect_flac_dirac_configure.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/05_respect_flac_dirac_configure.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/07_get_bits_overrun.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/ugly/07_get_bits_overrun.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/08_enforce_theora_oob.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/ugly/08_enforce_theora_oob.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/09_enforce_vorbis_oob_divzero.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/ugly/09_enforce_vorbis_oob_divzero.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/10_aac_oob_read.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/ugly/10_aac_oob_read.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/11_mkv_buffer_overflow.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/11_mkv_buffer_overflow.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/12_ogg_seek_to_zero.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/12_ogg_seek_to_zero.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/13_remove_avcore.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/ugly/13_remove_avcore.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/14_vp8_encode_options.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/14_vp8_encode_options.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/15_webp_ffmpeg.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/15_webp_ffmpeg.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/25_ogg_index.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/25_ogg_index.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/30_enforce_mp3_oob.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/ugly/30_enforce_mp3_oob.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/31_remove_attribute_deprecated.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/ugly/31_remove_attribute_deprecated.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/32_add_rawdec_to_Makefile.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/ugly/32_add_rawdec_to_Makefile.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/34_ogg_memcpy.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/34_ogg_memcpy.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/35_oggdec_duration.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/35_oggdec_duration.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/from_upstream/36_theora_flush.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/from_upstream/36_theora_flush.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/37_VP8_armv6_optimizations.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/37_VP8_armv6_optimizations.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/from_upstream/38_webm_cues_before_first_cluster.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/from_upstream/38_webm_cues_before_first_cluster.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/39_VP8_fix_oob_read_writes.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/39_VP8_fix_oob_read_writes.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/40_MKV_fix_oob_write.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/40_MKV_fix_oob_write.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/ugly/41_matroska_cluster_incremental.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/41_matroska_cluster_incremental.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/42_vp8_fix_segmentation_maps.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/42_vp8_fix_segmentation_maps.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/43_mkv_seekahead_revalidate.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/43_mkv_seekahead_revalidate.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/44_vorbis_oob_read.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/44_vorbis_oob_read.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/45_mkv_fix_segmap_cache_overflow.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/45_mkv_fix_segmap_cache_overflow.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/46_vp3_fix_double_free_invalid_read.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/46_vp3_fix_double_free_invalid_read.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/47_vp3_fix_infloop_and_memleak.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/47_vp3_fix_infloop_and_memleak.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/48_vorbis_residue_buffer.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/48_vorbis_residue_buffer.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/49_vorbis_buffer_defense.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/49_vorbis_buffer_defense.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/50_vp8_fix_frame_size_changes.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/50_vp8_fix_frame_size_changes.patch
+
+ rm -rf orig
+ cp -R ffmpeg orig
+ cd ffmpeg
+ patch -p1 --no-backup-if-mismatch < ../patches/to_upstream/52_vorbis_fix_floor1_vector_int_overflow.patch
+ cd ..
+ diff -wurp -N orig ffmpeg
+ diff -wurp -N orig ffmpeg >patches/to_upstream/52_vorbis_fix_floor1_vector_int_overflow.patch
+
+Testing
+ Updates should be tested against
+ a) http://wiki.xiph.org/TheoraTestsuite
+ b) WebKit Layout Tests
+ http://www.chromium.org/developers/testing/webkit-layout-tests
+ make -r test_shell BUILDTYPE=Debug -j16
+ make -r ImageDiff BUILDTYPE=Debug -j16
+ make -r DumpRenderTree BUILDTYPE=Debug -j16
+ ./webkit/tools/layout_tests/run_webkit_tests.sh --debug media/\*

Powered by Google App Engine
This is Rietveld 408576698