[Pkg-chromium-commit] [pkg-chromium] 02/03: release 55.0.2883.75-1~deb8u1
Michael Gilbert
mgilbert at moszumanska.debian.org
Sun Dec 11 21:48:19 UTC 2016
This is an automated email from the git hooks/post-receive script.
mgilbert pushed a commit to branch jessie
in repository pkg-chromium.
commit 7b3d74cb714bc88345e7da1a7c97b18197e47adc
Author: Michael Gilbert <mgilbert at debian.org>
Date: Sun Dec 11 20:15:33 2016 +0000
release 55.0.2883.75-1~deb8u1
---
debian/changelog | 62 +++++++++++++++++++
debian/clean | 6 ++
debian/patches/clang.patch | 35 +++++++----
debian/patches/clang3.5.patch | 37 ++++++++++++
debian/patches/disable/promo.patch | 2 +-
debian/patches/gn.patch | 22 +++++++
debian/patches/manpage.patch | 11 ----
debian/patches/nspr.patch | 51 ++++++++++++----
debian/patches/series | 4 ++
debian/patches/skia.patch | 16 +++++
debian/rules | 121 ++++++++++++-------------------------
debian/scripts/unbundle | 47 ++++++++++++++
12 files changed, 295 insertions(+), 119 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 35657be..cc6bec4 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,65 @@
+chromium-browser (55.0.2883.75-1~deb8u1) jessie-security; urgency=medium
+
+ * New upstream stable release:
+ - CVE-2016-5181: Universal XSS in Blink. Credit to Anonymous
+ - CVE-2016-5182: Heap overflow in Blink. Credit to Giwan Go
+ - CVE-2016-5183: Use after free in PDFium. Credit to Anonymous
+ - CVE-2016-5184: Use after free in PDFium. Credit to Anonymous
+ - CVE-2016-5185: Use after free in Blink. Credit to cloudfuzzer
+ - CVE-2016-5186: Out of bounds read in DevTools. Credit to Abdulrahman
+ - CVE-2016-5187: URL spoofing. Credit to Luan Herrera
+ - CVE-2016-5188: UI spoofing. Credit to Luan Herrera
+ haojunhou at gmail.com
+ - CVE-2016-5189: URL spoofing. Credit to xisigr
+ Alqabandi
+ - CVE-2016-5190: Use after free in Internals. Credit to Atte Kettunen
+ - CVE-2016-5191: Universal XSS in Bookmarks. Credit to Gareth Hughes
+ - CVE-2016-5192: Cross-origin bypass in Blink. Credit to
+ - CVE-2016-5193: Scheme bypass. Credit to Yuyang ZHOU
+ - CVE-2016-5194: Various fixes from internal audits, fuzzing and other
+ initiatives
+ - CVE-2016-5198: Out of bounds memory access in V8. Credit to Tencent Keen
+ Security Lab
+ - CVE-2016-5200: Out of bounds memory access in V8. Credit to Choongwoo Han
+ - CVE-2016-5201: Info leak in extensions. Credit to Rob Wu
+ - CVE-2016-5202: Various fixes from internal audits, fuzzing and other
+ initiatives
+ - CVE-2016-5203: Use after free in PDFium. Credit to Anonymous
+ - CVE-2016-5204: Universal XSS in Blink. Credit to Mariusz Mlynski
+ - CVE-2016-5205: Universal XSS in Blink. Credit to Anonymous
+ - CVE-2016-5206: Same-origin bypass in PDFium. Credit to Rob Wu
+ - CVE-2016-5207: Universal XSS in Blink. Credit to Mariusz Mlynski
+ - CVE-2016-5208: Universal XSS in Blink. Credit to Mariusz Mlynski
+ - CVE-2016-5209: Out of bounds write in Blink. Credit to Giwan Go
+ - CVE-2016-5210: Out of bounds write in PDFium. Credit to Ke Liu
+ - CVE-2016-5211: Use after free in PDFium. Credit to Anonymous
+ - CVE-2016-5212: Local file disclosure in DevTools. Credit to Khalil Zhani
+ - CVE-2016-5213: Use after free in V8. Credit to Khalil Zhani
+ - CVE-2016-5214: File download protection bypass. Credit to Jonathan Birch
+ and MSVR
+ - CVE-2016-5215: Use after free in Webaudio. Credit to Looben Yang
+ - CVE-2016-5216: Use after free in PDFium. Credit to Anonymous
+ - CVE-2016-5217: Use of unvalidated data in PDFium. Credit to Rob Wu
+ - CVE-2016-5218: Address spoofing in Omnibox. Credit to Abdulrahman
+ Alqabandi
+ - CVE-2016-5219: Use after free in V8. Credit to Rob Wu
+ - CVE-2016-5220: Local file access in PDFium. Credit to Rob Wu
+ - CVE-2016-5221: Integer overflow in ANGLE. Credit to Tim Becker
+ - CVE-2016-5222: Address spoofing in Omnibox. Credit to xisigr
+ - CVE-2016-5223: Integer overflow in PDFium. Credit to Hwiwon Lee
+ - CVE-2016-5224: Same-origin bypass in SVG. Credit to Roeland Krak
+ - CVE-2016-5225: CSP bypass in Blink. Credit to Scott Helme
+ - CVE-2016-5226: Limited XSS in Blink. Credit to Jun Kokatsu
+ - CVE-2016-9650: CSP Referrer disclosure. Credit to Jakub Żoczek
+ - CVE-2016-9651: Private property access in V8. Credit to Guang Gong
+ - CVE-2016-9652: Various fixes from internal audits, fuzzing and other
+ initiatives
+ - Certificate validity is now independent of the browser build date
+ (closes: #844631).
+ - No longer supports gyp build system, so update to use gn instead.
+
+ -- Michael Gilbert <mgilbert at debian.org> Sun, 11 Dec 2016 04:48:45 +0000
+
chromium-browser (53.0.2785.143-1~deb8u1) jessie-security; urgency=medium
* New upstream security release:
diff --git a/debian/clean b/debian/clean
new file mode 100644
index 0000000..54e2d68
--- /dev/null
+++ b/debian/clean
@@ -0,0 +1,6 @@
+build/secondary/third_party/libjpeg_turbo/BUILD.gn
+third_party/libpng/BUILD.gn
+third_party/libwebp/BUILD.gn
+third_party/libxml/BUILD.gn
+third_party/libxslt/BUILD.gn
+third_party/yasm/yasm_assemble.gni
diff --git a/debian/patches/clang.patch b/debian/patches/clang.patch
index 529ec31..787899d 100644
--- a/debian/patches/clang.patch
+++ b/debian/patches/clang.patch
@@ -1,16 +1,25 @@
description: use system clang compilers
author: Michael Gilbert <mgilbert at debian.org>
---- a/build/common.gypi
-+++ b/build/common.gypi
-@@ -5985,8 +5985,8 @@
- ['clang==1 and ((OS!="mac" and OS!="ios") or clang_xcode==0) '
- 'and OS!="win"', {
- 'make_global_settings': [
-- ['CC', '<(make_clang_dir)/bin/clang'],
-- ['CXX', '<(make_clang_dir)/bin/clang++'],
-+ ['CC', '/usr/bin/clang'],
-+ ['CXX', '/usr/bin/clang++'],
- ['CC.host', '$(CC)'],
- ['CXX.host', '$(CXX)'],
- ],
+--- a/build/toolchain/gcc_toolchain.gni
++++ b/build/toolchain/gcc_toolchain.gni
+@@ -482,7 +482,7 @@ template("clang_toolchain") {
+ }
+
+ gcc_toolchain(target_name) {
+- prefix = rebase_path("$clang_base_path/bin", root_build_dir)
++ prefix = "/usr/bin"
+ cc = "$prefix/clang"
+ cxx = "$prefix/clang++"
+ ld = cxx
+--- a/build/config/compiler/BUILD.gn
++++ b/build/config/compiler/BUILD.gn
+@@ -407,7 +407,7 @@ config("compiler") {
+ # clang-cl (used if is_win) doesn't expose this flag.
+ # Currently disabled for nacl since its toolchain lacks this flag (too old).
+ # TODO(zforman): Once nacl's toolchain is updated, remove check.
+- if (is_clang && is_linux) {
++ if (false) {
+ absolute_path = rebase_path("//.")
+ cflags += [ "-fdebug-prefix-map=$absolute_path=." ]
+ }
diff --git a/debian/patches/clang3.5.patch b/debian/patches/clang3.5.patch
new file mode 100644
index 0000000..794369c
--- /dev/null
+++ b/debian/patches/clang3.5.patch
@@ -0,0 +1,37 @@
+--- a/services/ui/public/cpp/gles2_context.cc
++++ b/services/ui/public/cpp/gles2_context.cc
+@@ -46,7 +46,7 @@ bool GLES2Context::Initialize(
+ gpu::CommandBuffer* command_buffer = command_buffer_proxy_impl_.get();
+ gpu::GpuControl* gpu_control = command_buffer_proxy_impl_.get();
+
+- constexpr gpu::SharedMemoryLimits default_limits;
++ constexpr gpu::SharedMemoryLimits default_limits{};
+ gles2_helper_.reset(new gpu::gles2::GLES2CmdHelper(command_buffer));
+ if (!gles2_helper_->Initialize(default_limits.command_buffer_size))
+ return false;
+--- a/chrome/common/extensions/chrome_extensions_client.h
++++ b/chrome/common/extensions/chrome_extensions_client.h
+@@ -57,9 +57,9 @@ class ChromeExtensionsClient : public Ex
+ static ChromeExtensionsClient* GetInstance();
+
+ private:
+- const ChromeAPIPermissions chrome_api_permissions_;
+- const ExtensionsAPIPermissions extensions_api_permissions_;
+- const ChromePermissionMessageProvider permission_message_provider_;
++ ChromeAPIPermissions chrome_api_permissions_;
++ ExtensionsAPIPermissions extensions_api_permissions_;
++ ChromePermissionMessageProvider permission_message_provider_;
+
+ // A whitelist of extensions that can script anywhere. Do not add to this
+ // list (except in tests) without consulting the Extensions team first.
+--- a/services/ui/surfaces/surfaces_context_provider.cc
++++ b/services/ui/surfaces/surfaces_context_provider.cc
+@@ -77,7 +77,7 @@ bool SurfacesContextProvider::BindToCurr
+ gpu::CommandBuffer* command_buffer = command_buffer_proxy_impl_.get();
+
+ gles2_helper_.reset(new gpu::gles2::GLES2CmdHelper(command_buffer));
+- constexpr gpu::SharedMemoryLimits default_limits;
++ constexpr gpu::SharedMemoryLimits default_limits{};
+ if (!gles2_helper_->Initialize(default_limits.command_buffer_size))
+ return false;
+ gles2_helper_->SetAutomaticFlushes(false);
diff --git a/debian/patches/disable/promo.patch b/debian/patches/disable/promo.patch
index 9b8b2cf..a087e26 100644
--- a/debian/patches/disable/promo.patch
+++ b/debian/patches/disable/promo.patch
@@ -4,7 +4,7 @@ bug-debian: http://bugs.debian.org/634101
--- a/chrome/browser/ui/app_list/app_list_service.cc
+++ b/chrome/browser/ui/app_list/app_list_service.cc
-@@ -156,7 +156,7 @@ void AppListService::RegisterPrefs(PrefR
+@@ -155,7 +155,7 @@ void AppListService::RegisterPrefs(PrefR
// Identifies whether we should show the app launcher promo or not. This
// becomes false when the user dismisses the promo.
diff --git a/debian/patches/gn.patch b/debian/patches/gn.patch
new file mode 100644
index 0000000..66f4a43
--- /dev/null
+++ b/debian/patches/gn.patch
@@ -0,0 +1,22 @@
+description: respect specified number of parallel jobs while bootstrapping gn
+author: Michael Gilbert <mgilbert at debian.org>
+
+--- a/tools/gn/bootstrap/bootstrap.py
++++ b/tools/gn/bootstrap/bootstrap.py
+@@ -102,6 +102,7 @@ def main(argv):
+ parser.add_option('--gn-gen-args', help='Args to pass to gn gen --args')
+ parser.add_option('-v', '--verbose', action='store_true',
+ help='Log more details')
++ parser.add_option('-j', '--jobs', help='Number of jobs')
+ options, args = parser.parse_args(argv)
+
+ if args:
+@@ -186,6 +187,8 @@ def build_gn_with_ninja_manually(tempdir
+ cmd = ['ninja', '-C', tempdir]
+ if options.verbose:
+ cmd.append('-v')
++ if options.jobs:
++ cmd.append('-j'+str(options.jobs))
+
+ if is_win:
+ cmd.append('gn.exe')
diff --git a/debian/patches/manpage.patch b/debian/patches/manpage.patch
index 00b025a..f8d3823 100644
--- a/debian/patches/manpage.patch
+++ b/debian/patches/manpage.patch
@@ -40,14 +40,3 @@ Author: Daniel Echeverry <epsilon77 at gmail.com>
<http://library.gnome.org/devel/gtk/stable/gtk-x11.html>
.SH ENVIRONMENT
---- a/chrome/chrome_exe.gypi
-+++ b/chrome/chrome_exe.gypi
-@@ -117,7 +117,7 @@
- }, { # else branding!="Chrome"
- 'variables': {
- 'name': 'Chromium',
-- 'filename': 'chromium-browser',
-+ 'filename': 'chromium',
- 'confdir': 'chromium',
- },
- }],
diff --git a/debian/patches/nspr.patch b/debian/patches/nspr.patch
index 4df6406..863300d 100644
--- a/debian/patches/nspr.patch
+++ b/debian/patches/nspr.patch
@@ -1,16 +1,5 @@
Include system copy of prtime.h
---- a/base/base.gypi
-+++ b/base/base.gypi
-@@ -676,8 +676,6 @@
- 'third_party/dmg_fp/g_fmt.cc',
- 'third_party/icu/icu_utf.cc',
- 'third_party/icu/icu_utf.h',
-- 'third_party/nspr/prtime.cc',
-- 'third_party/nspr/prtime.h',
- 'third_party/superfasthash/superfasthash.c',
- 'third_party/xdg_mime/xdgmime.h',
- 'threading/non_thread_safe.h',
--- a/base/time/pr_time_unittest.cc
+++ b/base/time/pr_time_unittest.cc
@@ -7,7 +7,7 @@
@@ -33,3 +22,43 @@ Include system copy of prtime.h
#include "build/build_config.h"
namespace base {
+--- a/tools/gn/bootstrap/bootstrap.py
++++ b/tools/gn/bootstrap/bootstrap.py
+@@ -467,7 +467,6 @@ def write_gn_ninja(path, root_gen_dir, o
+ 'base/third_party/dmg_fp/dtoa_wrapper.cc',
+ 'base/third_party/dmg_fp/g_fmt.cc',
+ 'base/third_party/icu/icu_utf.cc',
+- 'base/third_party/nspr/prtime.cc',
+ 'base/threading/non_thread_safe_impl.cc',
+ 'base/threading/post_task_and_reply_impl.cc',
+ 'base/threading/sequenced_task_runner_handle.cc',
+@@ -567,7 +566,7 @@ def write_gn_ninja(path, root_gen_dir, o
+ }
+
+ if is_linux:
+- libs.extend(['-lrt', '-latomic'])
++ libs.extend(['-lrt', '-latomic', '-lnspr4'])
+ ldflags.extend(['-pthread'])
+
+ static_libraries['xdg_user_dirs'] = {
+--- a/base/BUILD.gn
++++ b/base/BUILD.gn
+@@ -52,6 +52,9 @@ config("base_flags") {
+ "-Wno-char-subscripts",
+ ]
+ }
++ ldflags = [
++ "-lnspr4",
++ ]
+ }
+
+ config("base_implementation") {
+@@ -823,8 +826,6 @@ component("base") {
+ "third_party/dmg_fp/g_fmt.cc",
+ "third_party/icu/icu_utf.cc",
+ "third_party/icu/icu_utf.h",
+- "third_party/nspr/prtime.cc",
+- "third_party/nspr/prtime.h",
+ "third_party/superfasthash/superfasthash.c",
+ "threading/non_thread_safe.h",
+ "threading/non_thread_safe_impl.cc",
diff --git a/debian/patches/series b/debian/patches/series
index 7673b00..2363026 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,5 +1,8 @@
manpage.patch
+
+gn.patch
clang.patch
+clang3.5.patch
disable/promo.patch
disable/google-api-warning.patch
@@ -10,4 +13,5 @@ third-party-cookies-off-by-default.patch
ps-print.patch
chromedriver-revision.patch
+skia.patch
webui.patch
diff --git a/debian/patches/skia.patch b/debian/patches/skia.patch
new file mode 100644
index 0000000..8fca7ac
--- /dev/null
+++ b/debian/patches/skia.patch
@@ -0,0 +1,16 @@
+description: avoid a clang 4.0 compiler intrinsic
+author: Michael Gilbert <mgilbert at debian.org>
+
+--- a/third_party/skia/src/opts/SkRasterPipeline_opts.h
++++ b/third_party/skia/src/opts/SkRasterPipeline_opts.h
+@@ -40,8 +40,10 @@ static inline void SK_VECTORCALL stage_1
+ Sk4f r, Sk4f g, Sk4f b, Sk4f a,
+ Sk4f dr, Sk4f dg, Sk4f db, Sk4f da) {
+ #if defined(__clang__)
++#if __has_builtin(__builtin_assume)
+ __builtin_assume(tail > 0); // This flourish lets Clang compile away any tail==0 code.
+ #endif
++#endif
+ kernel(st->ctx<void*>(), x,tail, r,g,b,a, dr,dg,db,da);
+ if (kCallNext) {
+ st->next(x,tail, r,g,b,a, dr,dg,db,da);
diff --git a/debian/rules b/debian/rules
index 9f77101..f2a8589 100755
--- a/debian/rules
+++ b/debian/rules
@@ -12,89 +12,41 @@ export LDFLAGS+=-Wl,--no-keep-memory -Wl,--reduce-memory-overheads -Wl,--hash-si
# more verbose linker output
export LDFLAGS+=-Wl,--trace -Wl,--stats
-# use the gold linker to avoid memory exhaustion issues at link time
-export CFLAGS+=-fuse-ld=gold
-export CXXFLAGS+=-fuse-ld=gold
-
-# treat all warnings as errors
-defines=werror=
-
# use clang instead of gcc
-defines+=clang=1
-defines+=clang_use_chrome_plugins=
+defines=is_clang=true
+defines+=clang_use_chrome_plugins=false
+
+# set the appropriate cpu architecture
+ifeq (i386,$(shell dpkg-architecture -qDEB_HOST_ARCH))
+defines+=host_cpu=\"x86\"
+endif
+ifeq (amd64,$(shell dpkg-architecture -qDEB_HOST_ARCH))
+defines+=host_cpu=\"x64\"
+endif
# disabled features
-defines+=use_ozone=0 \
- use_gconf=0 \
- use_sysroot=0 \
- use_allocator=none \
- linux_breakpad=0 \
- linux_use_libgps=0 \
- linux_use_gold_flags=0 \
- linux_use_bundled_gold=0 \
- linux_use_bundled_binutils=0 \
- remoting=0 \
- disable_nacl=1 \
- enable_remoting_host=0 \
+defines+=is_debug=false \
+ use_gtk3=false \
+ use_ozone=false \
+ use_gconf=false \
+ use_sysroot=false \
+ use_gnome_keyring=false \
+ treat_warnings_as_errors=false \
+ enable_nacl=false \
+ enable_nacl_nonsfi=false \
+ enable_google_now=false \
+ enable_hangout_services_extension=false \
+ enable_iterator_debugging=false \
+ gold_path=\"\" \
+ linux_use_bundled_binutils=false \
# enabled features
-defines+=enable_webrtc=1 \
- use_gio=1 \
- use_pulseaudio=1 \
- use_gnome_keyring=1 \
- linux_link_libpci=1 \
- linux_link_gsettings=1 \
- linux_link_libspeechd=1 \
- linux_link_gnome_keyring=1 \
-
-# system libraries to use
-defines+=use_system_re2=1 \
- use_system_yasm=1 \
- use_system_opus=1 \
- use_system_zlib=1 \
- use_system_speex=1 \
- use_system_expat=1 \
- use_system_snappy=1 \
- use_system_libpng=1 \
- use_system_libxml=1 \
- use_system_libjpeg=1 \
- use_system_libwebp=1 \
- use_system_libxslt=1 \
- use_system_libsrtp=1 \
- use_system_jsoncpp=1 \
- use_system_libevent=1 \
- use_system_xdg_utils=1 \
-
-# need to use embedded harfbuzz to avoid division by zero
-defines+=use_system_harfbuzz=0 \
-
-# enable proprietary codecs
-defines+=proprietary_codecs=1 \
- ffmpeg_branding=Chrome \
-
-# use embedded protobuf for now (bug #764911)
-defines+=use_system_protobuf=0 \
-
-# icu
-defines+=use_system_icu=0 \
- #icu_use_data_file_flag=0 \
- #want_separate_host_toolset=0 \
-
-# embedded libraries (0 is the default, so just making some notes about the issues)
-# use_system_libusb=0 requires modified source that exposes libusb_interrupt_handle_event api
-# use_system_libvpx=0 requires modified source that exposes different api
-# use_system_sqlite=0 build fails
-# use_system_ffmpeg=0 build fails
-# can't use system nss since net/third_party/nss is heavily patched
-# can't use system ots (open text *summarizer*) since that's not google's ots (open text *sanitizer*)
-
-# make gyp a little more informative
-options+=--check \
- --debug=includes \
-
-# avoid the need for a special src directory (--depth=. seems to require --no-parallel)
-options+=--depth=. \
- --no-parallel \
+defines+=use_gio=true \
+ use_gold=true \
+ use_pulseaudio=false \
+ link_pulseaudio=false \
+ proprietary_codecs=true \
+ ffmpeg_branding=\"Chrome\" \
# handle parallel build options
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
@@ -105,18 +57,20 @@ endif
flotpaths=/usr/share/javascript/jquery/*min.js \
/usr/share/javascript/jquery-flot/*min.js \
-# files to exclude from the upstream tarball
-excluded=native_client/NOTICE \
- third_party/libsrtp/srtp/doc/rfc3711.txt \
-
%:
dh $@ --parallel
override_dh_auto_configure:
for file in $(flotpaths); do ln -sf $$file third_party/flot; done
- GYP_DEFINES="$(defines)" ./build/gyp_chromium $(options)
+ # strip out system third_party libraries
+ ./debian/scripts/unbundle
+ # build gn
+ ./tools/gn/bootstrap/bootstrap.py -v -s $(njobs)
+ # configure
+ ./out/Release/gn gen out/Release --args="$(defines)"
override_dh_auto_build:
+ ./out/Release/gn gen out/Release --args="$(defines)"
ninja $(njobs) -C out/Release chrome chrome_sandbox chromedriver
mv out/Release/chrome out/Release/chromium || true
mv out/Release/chrome.1 out/Release/chromium.1 || true
@@ -152,6 +106,7 @@ override_dh_auto_clean:
find . -name \*.pyc -execdir rm -rf {} \;
#find . -name config.sub -execdir rm -rf {} \;
#find . -name config.guess -execdir rm -rf {} \;
+ dh_auto_clean
###################### upstream source downloading ############################
diff --git a/debian/scripts/unbundle b/debian/scripts/unbundle
new file mode 100755
index 0000000..7e1aaf9
--- /dev/null
+++ b/debian/scripts/unbundle
@@ -0,0 +1,47 @@
+#!/usr/bin/python3
+
+import os
+import sys
+import shutil
+
+sys.path.append("build/linux/unbundle")
+
+import replace_gn_files
+
+def strip(path):
+ if os.path.exists(path):
+ for filename in os.listdir(path):
+ remove=True
+ for extension in ('.py','.gn','.gni','google','chromium'):
+ if filename.endswith(extension):
+ remove=False
+ if remove:
+ removal=os.path.join(path,filename)
+ print('removing: %s'%removal)
+ if os.path.isdir(removal):
+ shutil.rmtree(removal)
+ else:
+ os.remove(removal)
+
+replacements = ('libjpeg','libpng','libwebp','libxml','libxslt','yasm')
+
+for lib,rule in replace_gn_files.REPLACEMENTS.items():
+ if lib in replacements:
+ # remove conflicting embedded third party source files
+ strip(os.path.dirname(rule))
+ strip(os.path.join('third_party',lib))
+ # remove the gn file that builds the embedded library
+ if os.path.lexists(rule):
+ os.remove(rule)
+ # create a symlink to the unbundle gn file
+ symlink = "ln -s "
+ path = os.path.split(rule)
+ while path[0] != '':
+ path = os.path.split(path[0])
+ symlink += '../'
+ symlink += "build/linux/unbundle/%s.gn %s"%(lib,rule)
+ if os.system(symlink):
+ raise RuntimeError("error creating symlink",symlink)
+
+# libjpeg_turbo is unlike all the others, so clean it manually here
+strip('third_party/libjpeg_turbo')
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-chromium/pkg-chromium.git
More information about the Pkg-chromium-commit
mailing list