diff options
author | Ting-Wei Lan <lantw44@gmail.com> | 2017-10-19 14:36:46 +0800 |
---|---|---|
committer | Ting-Wei Lan <lantw44@gmail.com> | 2017-10-22 01:43:04 +0800 |
commit | 6a2dd2ebb70b269857910df28385458b2aa8ae65 (patch) | |
tree | e0427b1bd4d7e31903f95ce1572078a24407cfcd | |
parent | 6a1f1408a96274375fdf0b28d0974e1270054477 (diff) | |
download | copr-rpm-spec-6a2dd2ebb70b269857910df28385458b2aa8ae65.tar copr-rpm-spec-6a2dd2ebb70b269857910df28385458b2aa8ae65.tar.gz copr-rpm-spec-6a2dd2ebb70b269857910df28385458b2aa8ae65.tar.bz2 copr-rpm-spec-6a2dd2ebb70b269857910df28385458b2aa8ae65.tar.lz copr-rpm-spec-6a2dd2ebb70b269857910df28385458b2aa8ae65.tar.xz copr-rpm-spec-6a2dd2ebb70b269857910df28385458b2aa8ae65.tar.zst copr-rpm-spec-6a2dd2ebb70b269857910df28385458b2aa8ae65.zip |
chromium: Chromium 61.0.3163.100 -> 62.0.3202.62
-rw-r--r-- | chromium/chromium/chromium-atk.patch | 11 | ||||
-rw-r--r-- | chromium/chromium/chromium-blink-gcc7.patch | 11 | ||||
-rw-r--r-- | chromium/chromium/chromium-crc32c-disable-c++17.patch | 20 | ||||
-rw-r--r-- | chromium/chromium/chromium-gn-bootstrap.patch | 87 | ||||
-rw-r--r-- | chromium/chromium/chromium-use-no-delete-null-pointer-checks-with-gcc.patch | 17 | ||||
-rw-r--r-- | chromium/chromium/chromium.spec | 57 |
6 files changed, 117 insertions, 86 deletions
diff --git a/chromium/chromium/chromium-atk.patch b/chromium/chromium/chromium-atk.patch deleted file mode 100644 index 32fa299..0000000 --- a/chromium/chromium/chromium-atk.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/content/browser/accessibility/browser_accessibility_auralinux.cc.orig 2017-07-27 06:28:01.090257874 +0000 -+++ b/content/browser/accessibility/browser_accessibility_auralinux.cc 2017-07-27 06:28:21.174653680 +0000 -@@ -571,7 +571,7 @@ - // it's best to leave this out rather than break people's builds: - #if defined(ATK_CHECK_VERSION) - #if ATK_CHECK_VERSION(2, 16, 0) -- atk_state_set_add_state(atk_state_set, ATK_STATE_READ_ONLY); -+ atk_state_set_add_state(state_set, ATK_STATE_READ_ONLY); - #endif - #endif - break; diff --git a/chromium/chromium/chromium-blink-gcc7.patch b/chromium/chromium/chromium-blink-gcc7.patch deleted file mode 100644 index d1ce8b3..0000000 --- a/chromium/chromium/chromium-blink-gcc7.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -up chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h ---- chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h.gcc7 2017-06-07 13:32:41.198087899 +0800 -+++ chromium-59.0.3071.86/third_party/WebKit/Source/platform/graphics/gpu/SharedGpuContext.h 2017-06-07 13:32:57.325018359 +0800 -@@ -5,6 +5,7 @@ - #include "platform/PlatformExport.h" - #include "platform/wtf/ThreadSpecific.h" - -+#include <functional> - #include <memory> - - namespace gpu { diff --git a/chromium/chromium/chromium-crc32c-disable-c++17.patch b/chromium/chromium/chromium-crc32c-disable-c++17.patch new file mode 100644 index 0000000..fca97fb --- /dev/null +++ b/chromium/chromium/chromium-crc32c-disable-c++17.patch @@ -0,0 +1,20 @@ +--- chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h.orig 2017-10-18 03:12:35.000000000 +0800 ++++ chromium-62.0.3202.62/third_party/crc32c/src/include/crc32c/crc32c.h 2017-10-18 20:08:46.105613847 +0800 +@@ -37,7 +37,7 @@ + #if __has_include(<string_view>) + // Visual Studio provides a <string_view> header even in C++11 mode. When + // included, the header issues an #error. (C1189) +-#if !defined(_MSC_VER) || __cplusplus >= 201703L ++#if __cplusplus >= 201703L + #include <string_view> + + // Comptues the CRC32C of the bytes in the string_view. +@@ -46,7 +46,7 @@ + string_view.size()); + } + +-#endif // !defined(_MSC_VER) || __cplusplus >= 201703L ++#endif // __cplusplus >= 201703L + #endif // __has_include(<string_view>) + #endif // defined(__has_include) + diff --git a/chromium/chromium/chromium-gn-bootstrap.patch b/chromium/chromium/chromium-gn-bootstrap.patch index 3c44c85..6cfd08d 100644 --- a/chromium/chromium/chromium-gn-bootstrap.patch +++ b/chromium/chromium/chromium-gn-bootstrap.patch @@ -1,27 +1,68 @@ -commit 96c271f8ab2be7ea4199078ea65ac50c6ada4685 -Author: Pawel Hajdan, Jr <phajdan.jr@chromium.org> -Date: Wed Jul 26 21:51:54 2017 +0000 - - wip - -diff --git a/tools/gn/bootstrap/bootstrap.py b/tools/gn/bootstrap/bootstrap.py -index 1390560f8e37..ff2ae57c46b0 100755 --- a/tools/gn/bootstrap/bootstrap.py +++ b/tools/gn/bootstrap/bootstrap.py -@@ -449,6 +449,7 @@ def write_gn_ninja(path, root_gen_dir, options): +@@ -179,6 +179,7 @@ def build_gn_with_ninja_manually(tempdir, options): + + write_buildflag_header_manually(root_gen_dir, 'base/debug/debugging_flags.h', + { ++ 'ENABLE_LOCATION_SOURCE': 'false', + 'ENABLE_PROFILING': 'false', + 'CAN_UNWIND_WITH_FRAME_POINTERS': 'false' + }) +@@ -204,7 +205,7 @@ def build_gn_with_ninja_manually(tempdir, options): + + write_gn_ninja(os.path.join(tempdir, 'build.ninja'), + root_gen_dir, options) +- cmd = ['ninja', '-C', tempdir] ++ cmd = ['ninja', '-C', tempdir, '-w', 'dupbuild=err'] + if options.verbose: + cmd.append('-v') + +@@ -458,6 +459,7 @@ def write_gn_ninja(path, root_gen_dir, options): + 'base/metrics/bucket_ranges.cc', + 'base/metrics/field_trial.cc', + 'base/metrics/field_trial_param_associator.cc', ++ 'base/metrics/field_trial_params.cc', + 'base/metrics/histogram.cc', 'base/metrics/histogram_base.cc', 'base/metrics/histogram_functions.cc', - 'base/metrics/histogram_samples.cc', -+ 'base/metrics/histogram_snapshot_manager.cc', - 'base/metrics/metrics_hashes.cc', - 'base/metrics/persistent_histogram_allocator.cc', - 'base/metrics/persistent_memory_allocator.cc', -@@ -534,7 +535,7 @@ def write_gn_ninja(path, root_gen_dir, options): - 'base/trace_event/heap_profiler_allocation_context_tracker.cc', - 'base/trace_event/heap_profiler_allocation_register.cc', - 'base/trace_event/heap_profiler_event_filter.cc', -- 'base/trace_event/heap_profiler_event_writer.cc', -+ 'base/trace_event/heap_profiler_heap_dump_writer.cc', - 'base/trace_event/heap_profiler_serialization_state.cc', - 'base/trace_event/heap_profiler_stack_frame_deduplicator.cc', - 'base/trace_event/heap_profiler_type_name_deduplicator.cc', +@@ -507,6 +509,7 @@ def write_gn_ninja(path, root_gen_dir, options): + 'base/task_scheduler/scheduler_lock_impl.cc', + 'base/task_scheduler/scheduler_single_thread_task_runner_manager.cc', + 'base/task_scheduler/scheduler_worker.cc', ++ 'base/task_scheduler/scheduler_worker_pool.cc', + 'base/task_scheduler/scheduler_worker_pool_impl.cc', + 'base/task_scheduler/scheduler_worker_pool_params.cc', + 'base/task_scheduler/scheduler_worker_stack.cc', +@@ -523,6 +526,7 @@ def write_gn_ninja(path, root_gen_dir, options): + 'base/third_party/icu/icu_utf.cc', + 'base/third_party/nspr/prtime.cc', + 'base/threading/post_task_and_reply_impl.cc', ++ 'base/threading/scoped_blocking_call.cc', + 'base/threading/sequence_local_storage_map.cc', + 'base/threading/sequenced_task_runner_handle.cc', + 'base/threading/sequenced_worker_pool.cc', +@@ -579,7 +583,6 @@ def write_gn_ninja(path, root_gen_dir, options): + 'base/unguessable_token.cc', + 'base/value_iterators.cc', + 'base/values.cc', +- 'base/value_iterators.cc', + 'base/vlog.cc', + ]) + +@@ -652,7 +655,6 @@ def write_gn_ninja(path, root_gen_dir, options): + static_libraries['base']['sources'].extend([ + 'base/memory/shared_memory_handle_posix.cc', + 'base/memory/shared_memory_posix.cc', +- 'base/memory/shared_memory_tracker.cc', + 'base/nix/xdg_util.cc', + 'base/process/internal_linux.cc', + 'base/process/memory_linux.cc', +@@ -827,7 +829,7 @@ def build_gn_with_gn(temp_gn, build_dir, options): + cmd = [temp_gn, 'gen', build_dir, '--args=%s' % gn_gen_args] + check_call(cmd) + +- cmd = ['ninja', '-C', build_dir] ++ cmd = ['ninja', '-C', build_dir, '-w', 'dupbuild=err'] + if options.verbose: + cmd.append('-v') + cmd.append('gn') diff --git a/chromium/chromium/chromium-use-no-delete-null-pointer-checks-with-gcc.patch b/chromium/chromium/chromium-use-no-delete-null-pointer-checks-with-gcc.patch deleted file mode 100644 index 2b5abed..0000000 --- a/chromium/chromium/chromium-use-no-delete-null-pointer-checks-with-gcc.patch +++ /dev/null @@ -1,17 +0,0 @@ ---- a/build/config/compiler/BUILD.gn 2016-10-13 03:02:53.000000000 +0800 -+++ b/build/config/compiler/BUILD.gn 2016-10-19 22:00:03.528903842 +0800 -@@ -228,6 +228,14 @@ - defines += [ "CR_CLANG_REVISION=\"$clang_revision\"" ] - } - -+ if (!is_win && !is_clang) { -+ # GCC 6+ can optimize away pointer comparisons to null. This is -+ # problematic as V8 encodes Values through tagged pointers and comparisons -+ # with 0 are actually necessary in many cases. As a temporary Workaround -+ # we disable this optimization. See: https://crbug.com/v8/3782 -+ cflags += [ "-fno-delete-null-pointer-checks" ] -+ } -+ - # Non-Mac Posix compiler flags setup. - # ----------------------------------- - if (is_posix && !(is_mac || is_ios)) { diff --git a/chromium/chromium/chromium.spec b/chromium/chromium/chromium.spec index 76ef342..a1cee71 100644 --- a/chromium/chromium/chromium.spec +++ b/chromium/chromium/chromium.spec @@ -32,7 +32,7 @@ %endif # Require libxml2 > 2.9.4 for XML_PARSE_NOXXE -%if 0 +%if 0%{?fedora} >= 27 %bcond_without system_libxml2 %else %bcond_with system_libxml2 @@ -54,8 +54,12 @@ # Allow disabling unconditional build dependency on clang %bcond_without require_clang +# Allow using compilation flags set by Fedora RPM macros +# Disabled by default because it causes out-of-memory error on Fedora Copr +%bcond_with fedora_compilation_flags + Name: chromium -Version: 61.0.3163.100 +Version: 62.0.3202.62 Release: 100%{?dist} Summary: An open-source project that aims to build a safer, faster, and more stable browser @@ -96,37 +100,22 @@ Source13: chromium-browser.appdata.xml # https://src.fedoraproject.org/cgit/rpms/chromium.git/commit/?id=0df9641 Patch10: chromium-last-commit-position.patch # Add patches from Gentoo to fix GN build -# https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=04322d0 +# https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=199c924 Patch11: chromium-gn-bootstrap.patch # https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c38ed01 Patch12: chromium-safe-math-gcc.patch -# Building with GCC 6 requires -fno-delete-null-pointer-checks to avoid crashes -# Unfortunately, it is not possible to add additional compiler flags with -# environment variables or command-line arguments when building with GN, so we -# must patch the build file here. -# https://src.fedoraproject.org/cgit/rpms/chromium.git/commit/?id=7fe5f2bb -# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68853 -# https://bugs.debian.org/833524 -# https://anonscm.debian.org/cgit/pkg-chromium/pkg-chromium.git/commit/?id=dfd37f3 -# https://bugs.chromium.org/p/v8/issues/detail?id=3782 -# https://codereview.chromium.org/2310513002 -Patch20: chromium-use-no-delete-null-pointer-checks-with-gcc.patch - # Add several patches from Fedora to fix build with GCC 7 # https://src.fedoraproject.org/cgit/rpms/chromium.git/commit/?id=86f726d Patch30: chromium-blink-fpermissive.patch -# https://src.fedoraproject.org/cgit/rpms/chromium.git/commit/?id=ce69059 -Patch31: chromium-blink-gcc7.patch - -# Add a patch from Gentoo to fix ATK-related build failure -# https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=04322d0 -Patch40: chromium-atk.patch # Add a patch from Gentoo to fix build with GLIBC 2.26 # https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2901239 Patch50: chromium-ucontext-glibc226.patch +# Don't include C++17 string_view header +Patch60: chromium-crc32c-disable-c++17.patch + # I don't have time to test whether it work on other architectures ExclusiveArch: x86_64 @@ -260,6 +249,7 @@ Provides: chromium-libs, chromium-libs-media, chromedriver third_party/ced \ third_party/cld_2 \ third_party/cld_3 \ + third_party/crc32c \ third_party/cros_system_api \ third_party/devscripts \ third_party/dom_distiller_js \ @@ -315,7 +305,7 @@ Provides: chromium-libs, chromium-libs-media, chromedriver third_party/modp_b64 \ third_party/mt19937ar \ third_party/node \ - third_party/node/node_modules/vulcanize/third_party/UglifyJS2 \ + third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2 \ third_party/openh264 \ third_party/openmax_dl \ third_party/ots \ @@ -325,7 +315,7 @@ Provides: chromium-libs, chromium-libs-media, chromedriver third_party/pdfium/third_party/bigint \ third_party/pdfium/third_party/build \ third_party/pdfium/third_party/freetype \ - third_party/pdfium/third_party/lcms2-2.6 \ + third_party/pdfium/third_party/lcms \ third_party/pdfium/third_party/libopenjpeg20 \ third_party/pdfium/third_party/libpng16 \ third_party/pdfium/third_party/libtiff \ @@ -338,6 +328,7 @@ Provides: chromium-libs, chromium-libs-media, chromedriver third_party/qcms \ third_party/sfntly \ third_party/skia \ + third_party/skia/third_party/gif \ third_party/skia/third_party/vulkan \ third_party/smhasher \ third_party/speech-dispatcher \ @@ -398,7 +389,6 @@ sed -i 's|//third_party/usb_ids|/usr/share/hwdata|g' device/usb/BUILD.gn # Workaround build error caused by debugedit # https://bugzilla.redhat.com/show_bug.cgi?id=304121 sed -i '/^#include/s|//|/|' \ - content/renderer/gpu/compositor_forwarding_message_filter.cc \ third_party/webrtc/modules/audio_processing/utility/ooura_fft.cc \ third_party/webrtc/modules/audio_processing/utility/ooura_fft_sse2.cc @@ -420,8 +410,20 @@ ln -s %{_bindir}/node third_party/node/linux/node-linux-x64/bin/node %build +export AR=ar NM=nm + +# Fedora 25 doesn't have __global_cxxflags +%if %{with fedora_compilation_flags} +export CFLAGS="$(echo '%{__global_cflags}' | sed 's/-fexceptions//')" +export CXXFLAGS="$(echo '%{?__global_cxxflags}%{!?__global_cxxflags:%{__global_cflags}}' | sed 's/-fexceptions//')" +export LDFLAGS='%{__global_ldflags}' +%endif + %if %{with clang} export CC=clang CXX=clang++ +%else +export CC=gcc CXX=g++ +export CXXFLAGS="$CXXFLAGS -fno-delete-null-pointer-checks" %endif gn_args=( @@ -441,6 +443,8 @@ gn_args=( treat_warnings_as_errors=false linux_use_bundled_binutils=false fieldtrial_testing_like_official_build=true + 'custom_toolchain="//build/toolchain/linux/unbundle:default"' + 'host_toolchain="//build/toolchain/linux/unbundle:default"' 'google_api_key="AIzaSyCcK3laItm4Ik9bm6IeGFC6tVgy4eut0_o"' 'google_default_client_id="82546407293.apps.googleusercontent.com"' 'google_default_client_secret="GuvPB069ONrHxN7Y_y0txLKn"' @@ -577,6 +581,11 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || : %changelog +* Wed Oct 18 2017 - Ting-Wei Lan <lantw44@gmail.com> - 62.0.3202.62-100 +- Update to 62.0.3202.62 +- Unbundle libxml2 on Fedora 27 and later +- Use environment variables to pass compiler flags + * Fri Sep 22 2017 - Ting-Wei Lan <lantw44@gmail.com> - 61.0.3163.100-100 - Update to 61.0.3163.100 |