diff --git a/network/web/chromium-browser/files/chromium-FORTIFY_SOURCE-r2.patch b/network/web/chromium-browser/files/chromium-FORTIFY_SOURCE-r2.patch new file mode 100644 index 0000000000..8ebf42a46a --- /dev/null +++ b/network/web/chromium-browser/files/chromium-FORTIFY_SOURCE-r2.patch @@ -0,0 +1,30 @@ +Drop _FORTIFY_SOURCE=2 from defines + +Gentoo toolchains enable this by default. Removing this prevents spammy +warnings about the macro being redefined. + +--- a/build/config/compiler/BUILD.gn ++++ b/build/config/compiler/BUILD.gn +@@ -1213,22 +1213,6 @@ + "__STDC_FORMAT_MACROS", + ] + +- if (!is_debug && !using_sanitizer && +- (!is_linux || !is_clang || is_official_build) && +- current_cpu != "s390x" && current_cpu != "s390" && +- current_cpu != "ppc64" && current_cpu != "ppc64" && +- current_cpu != "mips" && current_cpu != "mips64") { +- # _FORTIFY_SOURCE isn't really supported by Clang now, see +- # http://llvm.org/bugs/show_bug.cgi?id=16821. +- # It seems to work fine with Ubuntu 12 headers though, so use it in +- # official builds. +- # +- # Non-chromium code is not guaranteed to compile cleanly with +- # _FORTIFY_SOURCE. Also, fortified build may fail when optimizations are +- # disabled, so only do that for Release build. +- defines += [ "_FORTIFY_SOURCE=2" ] +- } +- + if (is_mac || is_ios) { + cflags_objc = [ "-Wobjc-missing-property-synthesis" ] + cflags_objcc = [ "-Wobjc-missing-property-synthesis" ] diff --git a/network/web/chromium-browser/files/chromium-blink-gcc7-r2.patch b/network/web/chromium-browser/files/chromium-blink-gcc7-r2.patch new file mode 100644 index 0000000000..4791a449dd --- /dev/null +++ b/network/web/chromium-browser/files/chromium-blink-gcc7-r2.patch @@ -0,0 +1,77 @@ +--- chromium-59.0.3071.86/third_party/WebKit/Source/platform/wtf/LinkedHashSet.h.orig 2017-06-06 15:05:38.145247996 +0300 ++++ chromium-59.0.3071.86/third_party/WebKit/Source/platform/wtf/LinkedHashSet.h 2017-06-06 15:06:13.866246667 +0300 +@@ -647,31 +647,6 @@ + friend class LinkedHashSet; + }; + +-inline void SwapAnchor(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b) { +- DCHECK(a.prev_); +- DCHECK(a.next_); +- DCHECK(b.prev_); +- DCHECK(b.next_); +- swap(a.prev_, b.prev_); +- swap(a.next_, b.next_); +- if (b.next_ == &a) { +- DCHECK_EQ(b.prev_, &a); +- b.next_ = &b; +- b.prev_ = &b; +- } else { +- b.next_->prev_ = &b; +- b.prev_->next_ = &b; +- } +- if (a.next_ == &b) { +- DCHECK_EQ(a.prev_, &b); +- a.next_ = &a; +- a.prev_ = &a; +- } else { +- a.next_->prev_ = &a; +- a.prev_->next_ = &a; +- } +-} +- + inline void swap(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b) { + DCHECK_NE(a.next_, &a); + DCHECK_NE(b.next_, &b); +@@ -725,6 +700,31 @@ + return *this; + } + ++inline void SwapAnchor(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b) { ++ DCHECK(a.prev_); ++ DCHECK(a.next_); ++ DCHECK(b.prev_); ++ DCHECK(b.next_); ++ swap(a.prev_, b.prev_); ++ swap(a.next_, b.next_); ++ if (b.next_ == &a) { ++ DCHECK_EQ(b.prev_, &a); ++ b.next_ = &b; ++ b.prev_ = &b; ++ } else { ++ b.next_->prev_ = &b; ++ b.prev_->next_ = &b; ++ } ++ if (a.next_ == &b) { ++ DCHECK_EQ(a.prev_, &b); ++ a.next_ = &a; ++ a.prev_ = &a; ++ } else { ++ a.next_->prev_ = &a; ++ a.prev_->next_ = &a; ++ } ++} ++ + template + inline void LinkedHashSet::Swap(LinkedHashSet& other) { + impl_.swap(other.impl_); + +--- chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.orig 2017-06-06 16:16:43.657661313 +0300 ++++ chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-06-06 16:16:50.911198032 +0300 +@@ -5,6 +5,7 @@ + #include "platform/PlatformExport.h" + #include "platform/wtf/ThreadSpecific.h" + ++#include + #include + + namespace gpu { diff --git a/network/web/chromium-browser/files/chromium-gcc-r1.patch b/network/web/chromium-browser/files/chromium-gcc-r1.patch new file mode 100644 index 0000000000..2acd11ed5b --- /dev/null +++ b/network/web/chromium-browser/files/chromium-gcc-r1.patch @@ -0,0 +1,14 @@ +diff --git a/base/numerics/safe_math_shared_impl.h b/base/numerics/safe_math_shared_impl.h +index 99f230ce7e9a..de2415d402f5 100644 +--- a/base/numerics/safe_math_shared_impl.h ++++ b/base/numerics/safe_math_shared_impl.h +@@ -21,8 +21,7 @@ + #if !defined(__native_client__) && \ + ((defined(__clang__) && \ + ((__clang_major__ > 3) || \ +- (__clang_major__ == 3 && __clang_minor__ >= 4))) || \ +- (defined(__GNUC__) && __GNUC__ >= 5)) ++ (__clang_major__ == 3 && __clang_minor__ >= 4)))) + #include "base/numerics/safe_math_clang_gcc_impl.h" + #define BASE_HAS_OPTIMIZED_SAFE_MATH (1) + #else diff --git a/network/web/chromium-browser/files/chromium-gcc5-r2.patch b/network/web/chromium-browser/files/chromium-gcc5-r2.patch new file mode 100644 index 0000000000..f2be2d5b8a --- /dev/null +++ b/network/web/chromium-browser/files/chromium-gcc5-r2.patch @@ -0,0 +1,36 @@ +--- a/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h ++++ b/third_party/WebKit/Source/platform/wtf/typed_arrays/ArrayBufferContents.h +@@ -63,7 +63,7 @@ class WTF_EXPORT ArrayBufferContents { + allocation_length_(0), + data_(data), + data_length_(0), +- kind_(AllocationKind::kNormal), ++ kind_(WTF::ArrayBufferContents::AllocationKind::kNormal), + deleter_(deleter) {} + DataHandle(void* allocation_base, + size_t allocation_length, +@@ -94,11 +94,11 @@ class WTF_EXPORT ArrayBufferContents { + reinterpret_cast(allocation_base_) + + allocation_length_); + switch (kind_) { +- case AllocationKind::kNormal: ++ case WTF::ArrayBufferContents::AllocationKind::kNormal: + DCHECK(deleter_); + deleter_(data_); + return; +- case AllocationKind::kReservation: ++ case WTF::ArrayBufferContents::AllocationKind::kReservation: + ReleaseReservedMemory(allocation_base_, allocation_length_); + return; + } +--- a/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc.orig 2017-08-15 12:45:59.433532111 +0000 ++++ b/third_party/webrtc/modules/audio_processing/aec3/aec_state.cc 2017-08-15 17:52:59.691328825 +0000 +@@ -10,7 +10,7 @@ + + #include "webrtc/modules/audio_processing/aec3/aec_state.h" + +-#include ++#include + #include + #include + diff --git a/network/web/chromium-browser/files/chromium-gn-bootstrap-r20.patch b/network/web/chromium-browser/files/chromium-gn-bootstrap-r20.patch new file mode 100644 index 0000000000..4b339e0354 --- /dev/null +++ b/network/web/chromium-browser/files/chromium-gn-bootstrap-r20.patch @@ -0,0 +1,18 @@ +--- a/tools/gn/bootstrap/bootstrap.py ++++ b/tools/gn/bootstrap/bootstrap.py +@@ -546,6 +546,7 @@ def write_gn_ninja(path, root_gen_dir, options): + 'base/timer/timer.cc', + 'base/trace_event/category_registry.cc', + 'base/trace_event/event_name_filter.cc', ++ 'base/trace_event/freed_object_tracker.cc', + 'base/trace_event/heap_profiler_allocation_context.cc', + 'base/trace_event/heap_profiler_allocation_context_tracker.cc', + 'base/trace_event/heap_profiler_allocation_register.cc', +@@ -605,7 +606,6 @@ def write_gn_ninja(path, root_gen_dir, options): + 'base/strings/string16.cc', + 'base/synchronization/condition_variable_posix.cc', + 'base/synchronization/lock_impl_posix.cc', +- 'base/synchronization/read_write_lock_posix.cc', + 'base/sys_info_posix.cc', + 'base/task_scheduler/task_tracker_posix.cc', + 'base/threading/platform_thread_internal_posix.cc', diff --git a/network/web/chromium-browser/files/chromium-widevine-r1.patch b/network/web/chromium-browser/files/chromium-widevine-r1.patch new file mode 100644 index 0000000000..f206878cf0 --- /dev/null +++ b/network/web/chromium-browser/files/chromium-widevine-r1.patch @@ -0,0 +1,14 @@ +Minimal patch to get chromium to compile with widevine support + +https://bugs.gentoo.org/show_bug.cgi?id=547630 + +--- a/third_party/widevine/cdm/stub/widevine_cdm_version.h ++++ b/third_party/widevine/cdm/stub/widevine_cdm_version.h +@@ -10,6 +10,7 @@ + + #include "third_party/widevine/cdm/widevine_cdm_common.h" + ++#define WIDEVINE_CDM_VERSION_STRING "unknown" + #define WIDEVINE_CDM_AVAILABLE + + #endif // WIDEVINE_CDM_VERSION_H_ diff --git a/network/web/chromium-browser/pspec.xml b/network/web/chromium-browser/pspec.xml index 3a80a9e32a..c7c22ccedb 100644 --- a/network/web/chromium-browser/pspec.xml +++ b/network/web/chromium-browser/pspec.xml @@ -13,7 +13,7 @@ app:gui A WebKit powered web browser Chromium-browser is an open-source web browser, powered by WebKit. - https://commondatastorage.googleapis.com/chromium-browser-official/chromium-60.0.3112.78.tar.xz + https://commondatastorage.googleapis.com/chromium-browser-official/chromium-63.0.3223.8.tar.xz alsa-lib-devel at-spi2-atk-devel @@ -22,8 +22,8 @@ cups-devel desktop-file-utils faac-devel - ffmpeg-devel - flac-devel + + flac-devel pciutils-devel fontconfig-devel dbus-devel @@ -34,16 +34,16 @@ speech-dispatcher-devel gdk-pixbuf-devel gsm-devel - gtk2-devel + gtk3-devel harfbuzz-devel hunspell-devel - icu4c-devel + imlib2-devel lame-devel libdc1394-devel libdrm-devel - libevent-devel + libexif-devel libjpeg-turbo-devel libmtp-devel @@ -53,7 +53,7 @@ libtheora-devel libvdpau-devel libvorbis-devel - libvpx-devel + libXcomposite-devel libXcursor-devel libXdamage-devel @@ -91,13 +91,15 @@ icon-theme-hicolor - 0001-Clip-FreeType-glyph-bitmap-to-mask.patch - chromium-widevine.patch - chromium-v8-gcc7.patch - pisilinux/gfx_jpeg_codec.patch + chromium-FORTIFY_SOURCE-r2.patch + chromium-gcc5-r2.patchdigikam + chromium-gn-bootstrap-r20.patch + chromium-gcc-r1.patch + chromium-blink-gcc7-r2.patch + chromium-widevine-r1.patch + pisilinux/last_commit_position.patch - chromium-gn-bootstrap-r8.patch @@ -111,11 +113,11 @@ flac fontconfig gdk-pixbuf - gtk2 + gtk3 - libevent - libjpeg-turbo - libopus + + + libXcomposite libXcursor libXdamage @@ -128,27 +130,27 @@ libXtst libxcb libxslt - minizip - mit-kerberos + + nss pango pepperflash pulseaudio-libs - speech-dispatcher - speex + + webp - pciutils + nspr - zlib + expat glib2 libX11 libgcc - libpng - snappy - freetype + + + harfbuzz - glibc + /etc @@ -167,6 +169,13 @@ + + 2017-10-08 + 63.0.3223.8 + Version Bump + Mustafa Cinasal + muscnsl@gmail.com + 2017-07-31 60.0.3112.78