www-client/chromium: bump to 56.0.2924.67
authorMike Gilbert <floppym@gentoo.org>
Sun, 22 Jan 2017 05:22:50 +0000 (00:22 -0500)
committerMike Gilbert <floppym@gentoo.org>
Sun, 22 Jan 2017 05:23:33 +0000 (00:23 -0500)
Fix build with gcc 4.9.

Bug: https://bugs.gentoo.org/600288
Package-Manager: Portage-2.3.3_p32, Repoman-2.3.1_p25

www-client/chromium/Manifest
www-client/chromium/chromium-56.0.2924.67.ebuild [moved from www-client/chromium/chromium-56.0.2924.21.ebuild with 98% similarity]
www-client/chromium/files/chromium-56-gcc4.patch [new file with mode: 0644]

index a1dfd6fb85f77840a1024656ec6bedaf488138a0..3fc7a7f3970b598508a0b1f615e27acd5b461155 100644 (file)
@@ -1,5 +1,5 @@
 DIST chromium-55.0.2883.75.tar.xz 511256096 SHA256 5bcf7180935bebc7648f7e2577f612da681f7846127f79dac22630ded9984e55 SHA512 9830b02e05ebaf120b02b11114c67196ba5c7f2d5aa917b9e5f8516b1f0cce1abd8e752c379e8ac1f16c7b7e451341486d9356d47a1b77b72ab5117390ce16b9 WHIRLPOOL ab752b9e9a6c7a536424ac1384d9f0ad0f23dd40bbf6784e4185554602628e8e1f45acbb264fff33f7f00c8ee14f293bfaf23259d2db4f785c9c9c49e72b28eb
-DIST chromium-56.0.2924.21.tar.xz 513324284 SHA256 08330d147a9340c593ac0255adac30e189e1e9ed99c43d148891058365b4182a SHA512 acfc81177e5fdacc954cdc94b705079b8fdf19a7d90573b38b9a297eeb2d169325f460ce1ec14ea52cfa57782f818d733ece62c8ff313610730881efeba5afb7 WHIRLPOOL cc2ed9362aa5f88d05e884e46897b919020044d7556c5c4217ddd527cf198d84c87d9d48281aa4d4dae94dc06490657fdcf2d9c5653f9eea3a33767e5383eac6
 DIST chromium-56.0.2924.59.tar.xz 513389580 SHA256 3b34c4cef3a5017556064d246b14b69a8bd2277d8908a6e8b63c014d501ebac2 SHA512 3ef43728e7ca9d5c1eb4b808bd8c0dbf37a3ee387c57d2826e39fed47ab6316e636b96fd2787c140601e87bd084df61093a85c5014e6151ca70c2e9619a1d52c WHIRLPOOL 4d2f8ee6e7c5b1f3455ba9c25518178990e725dafcc75a3049a6fd5ddb17dfdf3b325c78478b7b3ca62fe7712e8e58e0f5f0f0944d32d99dc0819f99293268c0
+DIST chromium-56.0.2924.67.tar.xz 513502788 SHA256 564444bcdff78b3361c361d5c32ec4344be6acde58570e6739401395b6e42594 SHA512 a93d3cc343bf6b87aa222920e44485e43eaeb4cecf31999ab96113886432e986b530f929c8032e648938aeac5a957991995c795bc6760ce105a4419bb649961c WHIRLPOOL 18dc7b69a15bfb2fc0e990f4e07aa2e8e09d3f847b89b2e468a7752a40ded1e9095869cab913e39c0e363a1f1af1ec401c6fe1aa12cca71b66ab68c37e0ac746
 DIST chromium-57.0.2979.0.tar.xz 523638884 SHA256 b4ae30097c9fa52c366618e611ee2ee0dae35b742abbf9384099131b48357682 SHA512 cbf14fceacc5c559c27d2b8f22c2f1bc02207de0156b54b090f6f08106771349b5dcc04e3cd80021318098b5a9e7b00cf8a5f11414e97ee1e8a0c07da10c494f WHIRLPOOL 42f62f2d6de4cccdcad81370b545022daec08b9dd163639d81571e1c07f50e5f46e628e8194a8c51493ce416c1cdd0a572bf1f469d0089f612c3a22b33e2abe7
 DIST chromium-57.0.2986.0.tar.xz 524087844 SHA256 3d6db744a750c0bffeda6f00aa1d2fd27efa6e0a44354a5d6be5fa2414095897 SHA512 1737c0e626d38277176f96cc3314c2b44226f020d1387ed6a31362763e37b13312a112af16c876fa99546f20f8649f0076dfe3280895272fd0f2dd9d57ae8deb WHIRLPOOL 988cf3f656082efbe6b78a74b7f9060d1f0e436dae72f250a0751eaeab2cd654c25d83c5b84fd1bd726346ce6bdbf1db98cdba69c1cab0c200d84c339685fc1f
similarity index 98%
rename from www-client/chromium/chromium-56.0.2924.21.ebuild
rename to www-client/chromium/chromium-56.0.2924.67.ebuild
index 17cd0d0fc0e64db560c18bb1a25b55bb29cfcdb1..15e309bd3bcf0989788a1f42363842be73d3063d 100644 (file)
@@ -33,7 +33,7 @@ COMMON_DEPEND="
        cups? ( >=net-print/cups-1.3.11:= )
        >=dev-libs/elfutils-0.149
        dev-libs/expat:=
-       dev-libs/glib:=
+       dev-libs/glib:2
        dev-libs/icu:=
        >=dev-libs/jsoncpp-0.5.0-r1:=
        dev-libs/nspr:=
@@ -56,7 +56,7 @@ COMMON_DEPEND="
        >=sys-libs/libcap-2.22:=
        virtual/udev
        x11-libs/cairo:=
-       x11-libs/gdk-pixbuf:=
+       x11-libs/gdk-pixbuf:2
        x11-libs/libdrm
        x11-libs/libX11:=
        x11-libs/libXcomposite:=
@@ -114,8 +114,6 @@ DEPEND="${COMMON_DEPEND}
                dev-python/beautifulsoup:python-2[${PYTHON_USEDEP}]
                >=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]
                dev-python/html5lib[${PYTHON_USEDEP}]
-               dev-python/jinja[${PYTHON_USEDEP}]
-               dev-python/ply[${PYTHON_USEDEP}]
                dev-python/simplejson[${PYTHON_USEDEP}]
        ')
 "
@@ -125,8 +123,6 @@ python_check_deps() {
        has_version --host-root "dev-python/beautifulsoup:python-2[${PYTHON_USEDEP}]" &&
        has_version --host-root ">=dev-python/beautifulsoup-4.3.2:4[${PYTHON_USEDEP}]" &&
        has_version --host-root "dev-python/html5lib[${PYTHON_USEDEP}]" &&
-       has_version --host-root "dev-python/jinja[${PYTHON_USEDEP}]" &&
-       has_version --host-root "dev-python/ply[${PYTHON_USEDEP}]" &&
        has_version --host-root "dev-python/simplejson[${PYTHON_USEDEP}]"
 }
 
@@ -161,9 +157,9 @@ For other desktop environments, try one of the following:
 
 PATCHES=(
        "${FILESDIR}/${PN}-system-ffmpeg-r4.patch"
-       "${FILESDIR}/${PN}-system-jinja-r14.patch"
        "${FILESDIR}/${PN}-widevine-r1.patch"
        "${FILESDIR}/${PN}-glibc-2.24.patch"
+       "${FILESDIR}/${PN}-56-gcc4.patch"
 )
 
 pre_build_checks() {
@@ -173,9 +169,9 @@ pre_build_checks() {
                        # bugs: #601654
                        die "At least clang 3.9.1 is required"
                fi
-               if tc-is-gcc && ! version_is_at_least 5 "$(gcc-major-version)"; then
+               if tc-is-gcc && ! version_is_at_least 4.9 "$(gcc-version)"; then
                        # bugs: #535730, #525374, #518668, #600288
-                       die "At least gcc 5 is required"
+                       die "At least gcc 4.9 is required"
                fi
        fi
 
@@ -256,6 +252,7 @@ src_prepare() {
                third_party/hunspell
                third_party/iccjpeg
                third_party/inspector_protocol
+               third_party/jinja2
                third_party/jstemplate
                third_party/khronos
                third_party/leveldatabase
@@ -272,6 +269,7 @@ src_prepare() {
                third_party/libyuv
                third_party/lss
                third_party/lzma_sdk
+               third_party/markupsafe
                third_party/mesa
                third_party/modp_b64
                third_party/mt19937ar
@@ -290,6 +288,7 @@ src_prepare() {
                third_party/pdfium/third_party/libpng16
                third_party/pdfium/third_party/libtiff
                third_party/pdfium/third_party/zlib_v128
+               third_party/ply
                third_party/polymer
                third_party/protobuf
                third_party/protobuf/third_party/six
diff --git a/www-client/chromium/files/chromium-56-gcc4.patch b/www-client/chromium/files/chromium-56-gcc4.patch
new file mode 100644 (file)
index 0000000..e318866
--- /dev/null
@@ -0,0 +1,48 @@
+From 888874f761fdd69bb9448b3905627289b5fd66dd Mon Sep 17 00:00:00 2001
+From: floppymaster <floppymaster@gmail.com>
+Date: Thu, 19 Jan 2017 20:20:45 -0800
+Subject: [PATCH] Allow GCC 4.9 to compile Chromium
+
+In order to implicit cast an lvalue to an rvalue when returning
+from a function, the return type and type of variable in the return
+statement previously had to be exactly the same. When this was not
+the case, std::move was required. For instance, when returning a
+std::unique_ptr<Derived> variable in a function with a
+std::unique_ptr<Base> return type, std::move is required.
+
+DR 1579 changed this, and allows for implicitly converting
+to the return type, if the return type has a constructor(T&&), where
+T is the type of the local variable being returned. DR 1579 was
+implemented in GCC 5, but not in GCC 4.9 and below. By explicitly
+qualifying the local variable with std::move, we allow for compiling
+with GCC 4.9 and incur no performance penalty. The code is still
+absolutely correct to the word of C++11.
+
+BUG=chromium:682965
+
+See also:
+* https://bugs.gentoo.org/show_bug.cgi?id=600288
+* https://stackoverflow.com/questions/22018115/converting-stdunique-ptrderived-to-stdunique-ptrbase#comment33375875_22018521
+* http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2014/n3833.html#1579
+
+Review-Url: https://codereview.webrtc.org/2642053003
+Cr-Commit-Position: refs/heads/master@{#16175}
+---
+ AUTHORS                                               | 1 +
+ webrtc/modules/desktop_capture/screen_capturer_x11.cc | 2 +-
+ 2 files changed, 2 insertions(+), 1 deletion(-)
+
+--- a/third_party/webrtc/modules/desktop_capture/screen_capturer_x11.cc
++++ b/third_party/webrtc/modules/desktop_capture/screen_capturer_x11.cc
+@@ -412,7 +412,7 @@ std::unique_ptr<DesktopCapturer> DesktopCapturer::CreateRawScreenCapturer(
+     return nullptr;
+   }
+-  return capturer;
++  return std::move(capturer);
+ }
+ }  // namespace webrtc
+-- 
+2.11.0
+