www-client/chromium: fix build with bundled ffmpeg
authorPawel Hajdan, Jr <phajdan.jr@gentoo.org>
Wed, 29 Jun 2016 22:18:24 +0000 (00:18 +0200)
committerPawel Hajdan, Jr <phajdan.jr@gentoo.org>
Wed, 29 Jun 2016 22:18:24 +0000 (00:18 +0200)
This fixes bug #586544 reported by DJ Dunn

Backported upstream patch found by Kamil KamiƄski

Package-Manager: portage-2.2.28

www-client/chromium/chromium-52.0.2743.49.ebuild
www-client/chromium/chromium-53.0.2774.3.ebuild
www-client/chromium/files/chromium-ffmpeg-license-r0.patch [new file with mode: 0644]

index 1ac904be2e051df21fb8044018839f388193204b..695a89a0221550b41e9c5aaf7f64fc4057dfc299 100644 (file)
@@ -195,6 +195,7 @@ src_prepare() {
        epatch "${FILESDIR}/${PN}-pdfium-r0.patch"
        epatch "${FILESDIR}/${PN}-system-zlib-r0.patch"
        epatch "${FILESDIR}/${PN}-linker-warnings-r0.patch"
+       epatch "${FILESDIR}/${PN}-ffmpeg-license-r0.patch"
 
        epatch_user
 
index ac420547b65a4491593ce360625e716bd3418566..4c367efd9c585c2509c009195c100e4ad7232e03 100644 (file)
@@ -192,6 +192,7 @@ src_prepare() {
        epatch "${FILESDIR}/${PN}-last-commit-position-r0.patch"
        epatch "${FILESDIR}/${PN}-system-zlib-r0.patch"
        epatch "${FILESDIR}/${PN}-linker-warnings-r0.patch"
+       epatch "${FILESDIR}/${PN}-ffmpeg-license-r0.patch"
 
        epatch_user
 
diff --git a/www-client/chromium/files/chromium-ffmpeg-license-r0.patch b/www-client/chromium/files/chromium-ffmpeg-license-r0.patch
new file mode 100644 (file)
index 0000000..8e44cbd
--- /dev/null
@@ -0,0 +1,44 @@
+From 3c9d5afe45bf1c4656b8f630525433f29017cd08 Mon Sep 17 00:00:00 2001
+From: Chris Cunningham <chcunningham@chromium.org>
+Date: Tue, 21 Jun 2016 10:52:45 -0700
+Subject: [PATCH] Avoid ffmpeg licences/credits checking generated autorename_ files.
+
+We generated these renames as a fix for http://crbug.com/495833. The
+generated rename contains no license or credits info and should be
+skipped to avoid confusing license/credits scripts. Care must be
+taken to not also skip the underlying include file from upstream ffmpeg.
+
+Found by: Zoltan Kuscsik
+
+BUG=495833
+
+Change-Id: I3359f4de0281b5f057d4b109ab2a4f31895b5cb1
+---
+
+diff --git a/chromium/scripts/generate_gyp.py b/chromium/scripts/generate_gyp.py
+index c3fd3c0..94c2aad 100755
+--- a/third_party/ffmpeg/chromium/scripts/generate_gyp.py
++++ b/third_party/ffmpeg/chromium/scripts/generate_gyp.py
+@@ -790,6 +790,9 @@
+ # Prefix added to renamed files as part of
+ RENAME_PREFIX = 'autorename'
++# Match an absolute path to a generated auotorename_ file.
++RENAME_REGEX = re.compile('.*' + RENAME_PREFIX + '_.+');
++
+ # Content for the rename file. #includes the original file to ensure the two
+ # files stay in sync.
+ RENAME_CONTENT = """// File automatically generated. See crbug.com/495833.
+@@ -1020,6 +1023,12 @@
+     for source in source_set.sources:
+       GetIncludedSources(source, source_dir, sources_to_check)
++  # Remove autorename_ files now that we've grabbed their underlying includes.
++  # We generated autorename_ files above and should not consider them for
++  # licensing or credits.
++  sources_to_check = filter(lambda s: not RENAME_REGEX.search(s),
++                            sources_to_check)
++
+   if not CheckLicensesForStaticLinking(sources_to_check, source_dir,
+                                        options.print_licenses):
+     exit('GENERATE FAILED: invalid licenses detected.')