Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
10
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Open sidebar
Chakra
Packages
gtk
Commits
d5ca3f35
Commit
d5ca3f35
authored
Dec 14, 2017
by
Jeff Huang
🤔
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
chromium: update to 63.0.3239.84 (no build)
parent
ff87a1f6
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
154 additions
and
397 deletions
+154
-397
chromium/PKGBUILD
chromium/PKGBUILD
+55
-30
chromium/breakpad-use-ucontext_t.patch
chromium/breakpad-use-ucontext_t.patch
+0
-225
chromium/chromium-clang-r1.patch
chromium/chromium-clang-r1.patch
+21
-0
chromium/chromium-exclude_unwind_tables.patch
chromium/chromium-exclude_unwind_tables.patch
+44
-0
chromium/chromium-gn-bootstrap-r17.patch
chromium/chromium-gn-bootstrap-r17.patch
+0
-68
chromium/chromium-webrtc-r0.patch
chromium/chromium-webrtc-r0.patch
+34
-0
chromium/crc32c-string-view-check.patch
chromium/crc32c-string-view-check.patch
+0
-74
No files found.
chromium/PKGBUILD
View file @
d5ca3f35
...
...
@@ -10,8 +10,8 @@ declare -rgA _system_libs=(
#[ffmpeg]=ffmpeg # https://crbug.com/731766
[
flac]
=
flac
#[freetype]=freetype2 # https://crbug.com/pdfium/733
[
harfbuzz-ng]
=
harfbuzz-icu
[
icu]
=
icu
#
[harfbuzz-ng]=harfbuzz-icu
# https://crbug.com/768938
#
[icu]=icu
# https://crbug.com/772655
[
libdrm]
=
[
libjpeg]
=
libjpeg
#[libpng]=libpng # https://crbug.com/752403#c10
...
...
@@ -27,7 +27,7 @@ declare -rgA _system_libs=(
)
pkgname
=
chromium
pkgver
=
6
2
.0.32
02.94
pkgver
=
6
3
.0.32
39.108
pkgrel
=
1
_launcher_ver
=
5
pkgdesc
=
"A web browser built for speed, simplicity, and security"
...
...
@@ -38,23 +38,25 @@ depends=('gtk3' 'nss' 'alsa-lib' 'xdg-utils' 'libxss' 'libcups' 'libgcrypt'
'ttf-font'
'systemd'
'dbus'
'libpulse'
'pciutils'
'json-glib'
'desktop-file-utils'
'hicolor-icon-theme'
)
depends+
=(
${
_system_libs
[@]
}
)
makedepends
=(
'python2'
'gperf'
'yasm'
'mesa'
'ninja'
'nodejs'
'git'
)
makedepends
=(
'python2'
'gperf'
'yasm'
'mesa'
'ninja'
'nodejs'
'git'
'clang'
'lld'
)
optdepends
=(
'kwallet: for storing passwords in KWallet'
'kdialog: needed for file dialogs in KDE'
)
install
=
chromium.install
source
=(
https://commondatastorage.googleapis.com/chromium-browser-official/
$pkgname
-
$pkgver
.tar.xz
chromium-launcher-
$_launcher_ver
.tar.gz::https://github.com/foutrelis/chromium-launcher/archive/v
$_launcher_ver
.tar.gz
chromium-
$pkgver
.txt::https://chromium.googlesource.com/chromium/src.git/+/
$pkgver
?format
=
TEXT
chromium.desktop
breakpad-use-ucontext_t
.patch
c
rc32c-string-view-check
.patch
chromium-
gn-bootstrap-r17
.patch
chromium-exclude_unwind_tables
.patch
c
hromium-clang-r1
.patch
chromium-
webrtc-r0
.patch
chromium-widevine.patch
)
sha256sums
=(
'
cabc4d267bf08aabe11c5739048c43dde18c61acf595223a1c3aa1d3499558d4
'
sha256sums
=(
'
6de2754dfc333675ae6a67ae13c95666009b35c84f847b058edbf312e42fa3af
'
'4dc3428f2c927955d9ae117f2fb24d098cc6dd67adb760ac9c82b522ec8b0587'
'782a512b8bcf4aa6e58036cc3454d037d0eea69f27d5b673902d494c3fb5b20d'
'028a748a5c275de9b8f776f97909f999a8583a4b77fd1cd600b4fc5c0c3e91e9'
'
6e9a345f810d36068ee74ebba4708c70ab30421dad3571b6be5e9db635078ea8
'
'
35435e8dae76737baafecdc76d74a1c97281c4179e416556e033a06a31468e6d
'
'
d81319f168dad0e411c8e810f73daa2f56ff579578771bd9c9bb1aa2d7c09a8b
'
'
e53dc6f259acd39df13874f8a0f440528fae764b859dd71447991a5b1fac7c9c
'
'
ab5368a3e3a67fa63b33fefc6788ad5b4a79089ef4db1011a14c3bee9fdf70c6
'
'
bcb2f4588cf5dcf75cde855c7431e94fdcc34bdd68b876a90f65ab9938594562
'
'd6fdcb922e5a7fbe15759d39ccc8ea4225821c44d98054ce0f23f9d1f00c9808'
)
# Google API keys (see http://www.chromium.org/developers/how-tos/api-keys)
...
...
@@ -68,8 +70,8 @@ prepare() {
cd
"
$srcdir
/
$pkgname
-
$pkgver
"
# https://crbug.com/710701
local
_chrome_build_hash
=
$(
curl
-s
https://chromium.googlesource.com/chromium/src.git/+/
$pkgver
?format
=
TEXT
|
base64
-d
|
grep
-Po
'^parent \K[0-9a-f]{40}$'
)
local
_chrome_build_hash
=
$(
base64
-d
../chromium-
$pkgver
.txt
|
grep
-Po
'^parent \K[0-9a-f]{40}$'
)
if
[[
-z
$_chrome_build_hash
]]
;
then
error
"Unable to fetch Chrome build hash."
return
1
...
...
@@ -82,14 +84,20 @@ prepare() {
sed
"s/@WIDEVINE_VERSION@/Pinkie Pie/"
../chromium-widevine.patch |
patch
-Np1
# Fix build with glibc 2.26
patch
-Np1
-i
../breakpad-use-ucontext_t.patch
# Fix incorrect inclusion of <string_view> in modes other than >= C++17
patch
-Np1
-d
third_party/crc32c/src <../crc32c-string-view-check.patch
# https://chromium-review.googlesource.com/c/chromium/src/+/712575
patch
-Np1
-i
../chromium-exclude_unwind_tables.patch
# Fixes from Gentoo
patch
-Np1
-i
../chromium-gn-bootstrap-r17.patch
patch
-Np1
-i
../chromium-clang-r1.patch
patch
-Np1
-i
../chromium-webrtc-r0.patch
# Remove compiler flags not supported by our system clang
sed
-i
\
-e
'/"-Wno-enum-compare-switch"/d'
\
-e
'/"-Wno-null-pointer-arithmetic"/d'
\
-e
'/"-Wno-tautological-unsigned-zero-compare"/d'
\
-e
'/"-Wno-tautological-unsigned-enum-zero-compare"/d'
\
build/config/compiler/BUILD.gn
# Use Python 2
find
.
-name
'*.py'
-exec
sed
-i
-r
's|/usr/bin/python$|&2|g'
{}
+
...
...
@@ -123,12 +131,24 @@ build() {
cd
"
$srcdir
/
$pkgname
-
$pkgver
"
if
check_buildoption ccache y
;
then
# Avoid falling back to preprocessor mode when sources contain time macros
export
CCACHE_SLOPPINESS
=
time_macros
fi
export
PATH
=
"
$srcdir
/python2-path:
$PATH
"
export
TMPDIR
=
"
$srcdir
/temp"
mkdir
-p
"
$TMPDIR
"
export
CC
=
clang
export
CXX
=
clang++
export
AR
=
ar
export
NM
=
nm
local
_flags
=(
'is_clang=false'
'custom_toolchain="//build/toolchain/linux/unbundle:default"'
'host_toolchain="//build/toolchain/linux/unbundle:default"'
'is_clang=true'
'clang_use_chrome_plugins=false'
'is_debug=false'
'fatal_linker_warnings=false'
...
...
@@ -170,25 +190,30 @@ package() {
cd
"
$srcdir
/
$pkgname
-
$pkgver
"
install
-D
out/Release/chrome
"
$pkgdir
/usr/lib/chromium/chromium"
install
-Dm644
out/Release/chrome.1
"
$pkgdir
/usr/share/man/man1/chromium.1"
install
-Dm644
"
$srcdir
/chromium.desktop"
\
"
$pkgdir
/usr/share/applications/chromium.desktop"
install
-Dm4755
out/Release/chrome_sandbox
\
"
$pkgdir
/usr/lib/chromium/chrome-sandbox"
install
-Dm4755
out/Release/chrome_sandbox
"
$pkgdir
/usr/lib/chromium/chrome-sandbox"
ln
-s
/usr/lib/chromium/chromedriver
"
$pkgdir
/usr/bin/chromedriver"
cp
-a
\
install
-Dm644
chrome/installer/linux/common/desktop.template
\
"
$pkgdir
/usr/share/applications/chromium.desktop"
install
-Dm644
chrome/app/resources/manpage.1.in
\
"
$pkgdir
/usr/share/man/man1/chromium.1"
sed
-i
\
-e
"s/@@MENUNAME@@/Chromium/g"
\
-e
"s/@@PACKAGE@@/chromium/g"
\
-e
"s/@@USR_BIN_SYMLINK_NAME@@/chromium/g"
\
"
$pkgdir
/usr/share/applications/chromium.desktop"
\
"
$pkgdir
/usr/share/man/man1/chromium.1"
cp
\
out/Release/
{
chrome_
{
100,200
}
_percent,resources
}
.pak
\
out/Release/
{
*
.bin,chromedriver,libwidevinecdmadapter.so
}
\
out/Release/locales
\
"
$pkgdir
/usr/lib/chromium/"
install
-Dm644
-t
"
$pkgdir
/usr/lib/chromium/locales"
out/Release/locales/
*
.pak
if
[[
-z
${
_system_libs
[icu]+set
}
]]
;
then
cp
out/Release/icudtl.dat
"
$pkgdir
/usr/lib/chromium/"
fi
ln
-s
/usr/lib/chromium/chromedriver
"
$pkgdir
/usr/bin/chromedriver"
for
size
in
22 24 48 64 128 256
;
do
install
-Dm644
"chrome/app/theme/chromium/product_logo_
$size
.png"
\
"
$pkgdir
/usr/share/icons/hicolor/
${
size
}
x
${
size
}
/apps/chromium.png"
...
...
chromium/breakpad-use-ucontext_t.patch
deleted
100644 → 0
View file @
ff87a1f6
From b6a312ed8e144a37da840ae50dbd39df5ffb7e9f Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Sun, 2 Jul 2017 16:34:54 -0700
Subject: [PATCH 2/2] replace struct ucontext with ucontext_t
glibc 2.26 does not expose struct ucontext any longer
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
.../linux/dump_writer_common/ucontext_reader.cc | 30 +++++++++++-----------
.../linux/dump_writer_common/ucontext_reader.h | 10 ++++----
.../src/client/linux/handler/exception_handler.cc | 8 +++---
.../src/client/linux/handler/exception_handler.h | 2 +-
.../linux/microdump_writer/microdump_writer.cc | 2 +-
.../linux/minidump_writer/minidump_writer.cc | 2 +-
6 files changed, 27 insertions(+), 27 deletions(-)
diff --git a/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc b/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
index c80724dd8..93b4d9f85 100644
--- a/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
+++ b/breakpad/src/client/linux/dump_writer_common/ucontext_reader.cc
@@ -40,15 +40,15 @@
namespace google_breakpad {
#if defined(__i386__)
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
return uc->uc_mcontext.gregs[REG_ESP];
}
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
return uc->uc_mcontext.gregs[REG_EIP];
}
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
const struct _libc_fpstate* fp) {
const greg_t* regs = uc->uc_mcontext.gregs;
@@ -88,15 +88,15 @@
void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
#elif defined(__x86_64)
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
return uc->uc_mcontext.gregs[REG_RSP];
}
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
return uc->uc_mcontext.gregs[REG_RIP];
}
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
const struct _libc_fpstate* fpregs) {
const greg_t* regs = uc->uc_mcontext.gregs;
@@ -145,15 +145,15 @@
void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
#elif defined(__ARM_EABI__)
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
return uc->uc_mcontext.arm_sp;
}
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
return uc->uc_mcontext.arm_pc;
}
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
out->context_flags = MD_CONTEXT_ARM_FULL;
out->iregs[0] = uc->uc_mcontext.arm_r0;
@@ -184,15 +184,15 @@
void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
#elif defined(__aarch64__)
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
return uc->uc_mcontext.sp;
}
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
return uc->uc_mcontext.pc;
}
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
const struct fpsimd_context* fpregs) {
out->context_flags = MD_CONTEXT_ARM64_FULL;
@@ -210,15 +210,15 @@
void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
#elif defined(__mips__)
-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
+uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP];
}
-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
+uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
return uc->uc_mcontext.pc;
}
-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
+void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
#if _MIPS_SIM == _ABI64
out->context_flags = MD_CONTEXT_MIPS64_FULL;
#elif _MIPS_SIM == _ABIO32
diff --git a/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h b/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
index b6e77b4b5..2369a9ad3 100644
--- a/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
+++ b/breakpad/src/client/linux/dump_writer_common/ucontext_reader.h
@@ -41,21 +41,21 @@
namespace google_breakpad {
// Wraps platform-dependent implementations of accessors to ucontext structs.
struct UContextReader {
- static uintptr_t GetStackPointer(const struct ucontext* uc);
+ static uintptr_t GetStackPointer(const ucontext_t* uc);
- static uintptr_t GetInstructionPointer(const struct ucontext* uc);
+ static uintptr_t GetInstructionPointer(const ucontext_t* uc);
// Juggle a arch-specific ucontext into a minidump format
// out: the minidump structure
// info: the collection of register structures.
#if defined(__i386__) || defined(__x86_64)
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
const struct _libc_fpstate* fp);
#elif defined(__aarch64__)
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
const struct fpsimd_context* fpregs);
#else
- static void FillCPUContext(RawContextCPU *out, const ucontext *uc);
+ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc);
#endif
};
diff --git a/breakpad/src/client/linux/handler/exception_handler.cc b/breakpad/src/client/linux/handler/exception_handler.cc
index b63f973b8..f2688acaf 100644
--- a/breakpad/src/client/linux/handler/exception_handler.cc
+++ b/breakpad/src/client/linux/handler/exception_handler.cc
@@ -439,9 +439,9 @@
bool ExceptionHandler::HandleSignal(int sig, siginfo_t* info, void* uc) {
// Fill in all the holes in the struct to make Valgrind happy.
memset(&g_crash_context_, 0, sizeof(g_crash_context_));
memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t));
- memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext));
+ memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t));
#if defined(__aarch64__)
- struct ucontext* uc_ptr = (struct ucontext*)uc;
+ ucontext_t* uc_ptr = (ucontext_t*)uc;
struct fpsimd_context* fp_ptr =
(struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved;
if (fp_ptr->head.magic == FPSIMD_MAGIC) {
@@ -452,7 +452,7 @@
bool ExceptionHandler::HandleSignal(int sig, siginfo_t* info, void* uc) {
// FP state is not part of user ABI on ARM Linux.
// In case of MIPS Linux FP state is already part of struct ucontext
// and 'float_state' is not a member of CrashContext.
- struct ucontext* uc_ptr = (struct ucontext*)uc;
+ ucontext_t* uc_ptr = (ucontext_t*)uc;
if (uc_ptr->uc_mcontext.fpregs) {
memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs,
sizeof(g_crash_context_.float_state));
@@ -476,7 +476,7 @@
bool ExceptionHandler::SimulateSignalDelivery(int sig) {
// ExceptionHandler::HandleSignal().
siginfo.si_code = SI_USER;
siginfo.si_pid = getpid();
- struct ucontext context;
+ ucontext_t context;
getcontext(&context);
return HandleSignal(sig, &siginfo, &context);
}
diff --git a/breakpad/src/client/linux/handler/exception_handler.h b/breakpad/src/client/linux/handler/exception_handler.h
index 591c31085..846df772f 100644
--- a/breakpad/src/client/linux/handler/exception_handler.h
+++ b/breakpad/src/client/linux/handler/exception_handler.h
@@ -191,7 +191,7 @@
class ExceptionHandler {
struct CrashContext {
siginfo_t siginfo;
pid_t tid; // the crashing thread.
- struct ucontext context;
+ ucontext_t context;
#if !defined(__ARM_EABI__) && !defined(__mips__)
// #ifdef this out because FP state is not part of user ABI for Linux ARM.
// In case of MIPS Linux FP state is already part of struct
diff --git a/breakpad/src/client/linux/microdump_writer/microdump_writer.cc b/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
index 6f5b43559..a508667a0 100644
--- a/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
+++ b/breakpad/src/client/linux/microdump_writer/microdump_writer.cc
@@ -571,7 +571,7 @@
class MicrodumpWriter {
void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); }
- const struct ucontext* const ucontext_;
+ const ucontext_t* const ucontext_;
#if !defined(__ARM_EABI__) && !defined(__mips__)
const google_breakpad::fpstate_t* const float_state_;
#endif
diff --git a/breakpad/src/client/linux/minidump_writer/minidump_writer.cc b/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
index 86009b9f6..f2aec73d7 100644
--- a/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
+++ b/breakpad/src/client/linux/minidump_writer/minidump_writer.cc
@@ -1248,7 +1248,7 @@
class MinidumpWriter {
const int fd_; // File descriptor where the minidum should be written.
const char* path_; // Path to the file where the minidum should be written.
- const struct ucontext* const ucontext_; // also from the signal handler
+ const ucontext_t* const ucontext_; // also from the signal handler
#if !defined(__ARM_EABI__) && !defined(__mips__)
const google_breakpad::fpstate_t* const float_state_; // ditto
#endif
--
2.13.2
chromium/chromium-clang-r1.patch
0 → 100644
View file @
d5ca3f35
--- a/build/config/compiler/BUILD.gn.orig 2017-10-04 08:50:15.014675936 +0000
+++ b/build/config/compiler/BUILD.gn 2017-10-04 08:50:32.831024327 +0000
@@ -429,18 +429,6 @@
cflags += [ "-fcolor-diagnostics" ]
}
- # TODO(hans): Remove this once Clang generates better optimized debug info by
- # default. https://crbug.com/765793
- if (is_clang && !is_nacl && current_toolchain == host_toolchain &&
- target_os != "chromeos") {
- cflags += [
- "-Xclang",
- "-mllvm",
- "-Xclang",
- "-instcombine-lower-dbg-declare=1",
- ]
- }
-
# Print absolute paths in diagnostics. There is no precedent for doing this
# on Linux/Mac (GCC doesn't support it), but MSVC does this with /FC and
# Windows developers rely on it (crbug.com/636109) so only do this on Windows.
chromium/chromium-exclude_unwind_tables.patch
0 → 100644
View file @
d5ca3f35
From 1fc37227522ccd314f82ec893ed15c6129296604 Mon Sep 17 00:00:00 2001
From: Paul Jensen <pauljensen@chromium.org>
Date: Wed, 11 Oct 2017 08:37:34 -0400
Subject: [PATCH] Move exclude_unwind_tables back into declare_args
There is desire to adjust this flag manually.
BUG=762629
R=thakis@chromium.org
Change-Id: I3bd134c19270cd1f729b3ea078674e734493d4ab
---
diff --git a/build/config/compiler/compiler.gni b/build/config/compiler/compiler.gni
index ad40fd9..50e19a4 100644
--- a/build/config/compiler/compiler.gni
+++ b/build/config/compiler/compiler.gni
@@ -68,18 +68,18 @@
# Whether or not we should use position independent code.
use_pic = true
+
+ # Exclude unwind tables for official builds as unwinding can be done from
+ # stack dumps produced by Crashpad at a later time "offline" in the crash
+ # server. For unofficial (e.g. development) builds and non-Chrome branded
+ # (e.g. Cronet which doesn't use Crashpad, crbug.com/479283) builds it's
+ # useful to be able to unwind at runtime.
+ exclude_unwind_tables = (is_chrome_branded && is_official_build) ||
+ (is_chromecast && !is_cast_desktop_build && !is_debug)
}
assert(!is_cfi || use_thin_lto, "CFI requires ThinLTO")
-# Exclude unwind tables for official builds as unwinding can be done from stack
-# dumps produced by Crashpad at a later time "offline" in the crash server.
-# For unofficial (e.g. development) builds and non-Chrome branded (e.g. Cronet
-# which doesn't use Crashpad, crbug.com/479283) builds it's useful to be able
-# to unwind at runtime.
-exclude_unwind_tables = (is_chrome_branded && is_official_build) ||
- (is_chromecast && !is_cast_desktop_build && !is_debug)
-
# If true, optimize for size. Does not affect windows builds.
# Linux & Mac favor speed over size.
# TODO(brettw) it's weird that Mac and desktop Linux are different. We should
chromium/chromium-gn-bootstrap-r17.patch
deleted
100644 → 0
View file @
ff87a1f6
--- a/tools/gn/bootstrap/bootstrap.py
+++ b/tools/gn/bootstrap/bootstrap.py
@@ -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',
@@ -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')
chromium/chromium-webrtc-r0.patch
0 → 100644
View file @
d5ca3f35
From 7f90e2cceda0458cf56026eb6ccffb961a47804b Mon Sep 17 00:00:00 2001
From: Raphael Kubo da Costa <raphael.kubo.da.costa@intel.com>
Date: Fri, 13 Oct 2017 15:49:32 +0200
Subject: [PATCH] IWYU: Include math.h for round(3).
math.h was being implicitly included, which can break the build with
alternative libc implementations.
Bug: None
Change-Id: I969b320b65d0f44abb33d3e1036cfbcb859a4952
Reviewed-on: https://webrtc-review.googlesource.com/9384
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Raphael Kubo da Costa (rakuco) <raphael.kubo.da.costa@intel.com>
Cr-Commit-Position: refs/heads/master@{#20292}
---
p2p/base/port.cc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/p2p/base/port.cc b/p2p/base/port.cc
index a1b478d11..81aa0aadb 100644
--- a/third_party/webrtc/p2p/base/port.cc
+++ b/third_party/webrtc/p2p/base/port.cc
@@ -10,6 +10,8 @@
#include "p2p/base/port.h"
+#include <math.h>
+
#include <algorithm>
#include <vector>
--
2.15.0.rc2
chromium/crc32c-string-view-check.patch
deleted
100644 → 0
View file @
ff87a1f6
From d0f929a5db87cb34d03afb0d8e8bfc95b8f786e3 Mon Sep 17 00:00:00 2001
From: Victor Costan <costan@gmail.com>
Date: Mon, 11 Sep 2017 13:18:27 -0700
Subject: [PATCH] More conservative check for <string_view> availability. (#4)
has_include(<string_view>) does not imply that the header can be
included and will work. The assumption fails on MSVC and libc++ [1, 2].
Conversely, checking that __cplusplus > 201402L is not sufficient on its
own either, as the toolchain on Mac OS 10.12 passes that check but does
not contain a <string_view> header.
[1] https://crbug.com/759349
[2]
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79433
---
include/crc32c/crc32c.h | 10 +++-------
src/crc32c_unittest.cc | 6 ++----
2 files changed, 5 insertions(+), 11 deletions(-)
diff --git a/include/crc32c/crc32c.h b/include/crc32c/crc32c.h
index 9f1973a..8ecab0d 100644
--- a/include/crc32c/crc32c.h
+++ b/include/crc32c/crc32c.h
@@ -33,22 +33,18 @@
inline uint32_t Crc32c(const std::string& string) {
string.size());
}
-#if defined(__has_include)
+#if __cplusplus > 201402L
#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
#include <string_view>
-// Comptues the CRC32C of the bytes in the string_view.
+// Computes the CRC32C of the bytes in the string_view.
inline uint32_t Crc32c(const std::string_view& string_view) {
return Crc32c(reinterpret_cast<const uint8_t*>(string_view.data()),
string_view.size());
}
-#endif // !defined(_MSC_VER) || __cplusplus >= 201703L
#endif // __has_include(<string_view>)
-#endif // defined(__has_include)
+#endif // __cplusplus > 201402L
} // namespace crc32c
diff --git a/src/crc32c_unittest.cc b/src/crc32c_unittest.cc
index 7a9c765..69babb3 100644
--- a/src/crc32c_unittest.cc
+++ b/src/crc32c_unittest.cc
@@ -95,9 +95,8 @@
TEST(CRC32CTest, Crc32cStdString) {
EXPECT_EQ(static_cast<uint32_t>(0x113fdb5c), crc32c::Crc32c(buf));
}
-#if defined(__has_include)
+#if __cplusplus > 201402L
#if __has_include(<string_view>)
-#if !defined(_MSC_VER) || __cplusplus >= 201703L
TEST(CRC32CTest, Crc32cStdStringView) {
uint8_t buf[32];
@@ -118,9 +117,8 @@
TEST(CRC32CTest, Crc32cStdStringView) {
EXPECT_EQ(static_cast<uint32_t>(0x113fdb5c), crc32c::Crc32c(view));
}
-#endif // !defined(_MSC_VER) || __cplusplus >= 201703L
#endif // __has_include(<string_view>)
-#endif // defined(__has_include)
+#endif // __cplusplus > 201402L
#define TESTED_EXTEND Extend
#include "./crc32c_extend_unittests.h"
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment