diff --git a/BUILDING.md b/BUILDING.md index 60c7a1c6..79ae90ce 100644 --- a/BUILDING.md +++ b/BUILDING.md @@ -39,7 +39,7 @@ The final size of the sandbox with build artifacts is over 5 GB. On systems with Install base requirements: `# apt install packaging-dev python3 ninja-build` -On Debian 9 (stretch), `stretch-backports` APT source is used to obtain LLVM 5.0. +On Debian 9 (stretch), `stretch-backports` APT source is used to obtain LLVM 6.0 and debhelper 11. #### Setting up the buildspace tree and packaging files @@ -68,9 +68,9 @@ Packages will appear under `buildspace/`. #### Notes for Debian derivatives -Ubuntu 17.10 (artful): Same as Debian 9 except the `ubuntu_artful` base bundle is used. +Ubuntu 18.04 (bionic): Same as Debian 9 except the `ubuntu_bionic` base bundle and the `buster` flavor are used. -Ubuntu 16.04 (xenial), Debian 8.0 (jessie), and other older versions: See [Other Linux distributions](#other-linux-distributions) +Ubuntu 16.04 (xenial), Ubuntu 17.10 (artful), Debian 8.0 (jessie), and other older versions: See [Other Linux distributions](#other-linux-distributions) ### Windows diff --git a/resources/config_bundles/archlinux/gn_flags.map b/resources/config_bundles/archlinux/gn_flags.map deleted file mode 100644 index 1af4e672..00000000 --- a/resources/config_bundles/archlinux/gn_flags.map +++ /dev/null @@ -1,2 +0,0 @@ -custom_toolchain="//build/toolchain/linux/unbundle:default" -host_toolchain="//build/toolchain/linux/unbundle:default" diff --git a/resources/config_bundles/common/gn_flags.map b/resources/config_bundles/common/gn_flags.map index 8f83991c..a9e762bf 100644 --- a/resources/config_bundles/common/gn_flags.map +++ b/resources/config_bundles/common/gn_flags.map @@ -1,3 +1,5 @@ +blink_symbol_level=0 +clang_use_chrome_plugins=false enable_ac3_eac3_audio_demuxing=true enable_google_now=false enable_hangout_services_extension=false @@ -21,6 +23,7 @@ fieldtrial_testing_like_official_build=true google_api_key="" google_default_client_id="" google_default_client_secret="" +is_clang=true is_debug=false is_official_build=true optimize_webui=false @@ -30,6 +33,7 @@ safe_browsing_mode=0 symbol_level=0 treat_warnings_as_errors=false use_gnome_keyring=false +use_jumbo_build=true use_official_google_api_keys=false use_ozone=false use_sysroot=false diff --git a/resources/config_bundles/common/patch_order.list b/resources/config_bundles/common/patch_order.list index 13d4043e..8a89bb38 100644 --- a/resources/config_bundles/common/patch_order.list +++ b/resources/config_bundles/common/patch_order.list @@ -27,7 +27,6 @@ inox-patchset/9000-disable-metrics.patch debian/gn/libcxx.patch debian/gn/parallel.patch debian/gn/narrowing.patch -debian/gn/buildflags.patch debian/disable/fonts.patch debian/disable/fuzzers.patch debian/disable/welcome-page.patch @@ -46,6 +45,7 @@ debian/fixes/connection-message.patch debian/fixes/chromedriver-revision.patch debian/fixes/skia_buildfix.patch debian/warnings/sequence-point.patch +debian/warnings/initialization.patch iridium-browser/net-cert-increase-default-key-length-for-newly-gener.patch iridium-browser/mime_util-force-text-x-suse-ymp-to-be-downloaded.patch diff --git a/resources/config_bundles/debian_buster/basebundlemeta.ini b/resources/config_bundles/debian_buster/basebundlemeta.ini new file mode 100644 index 00000000..0b9df060 --- /dev/null +++ b/resources/config_bundles/debian_buster/basebundlemeta.ini @@ -0,0 +1,3 @@ +[basebundle] +display_name = Debian 10 (buster) +depends = linux_rooted diff --git a/resources/config_bundles/ubuntu_artful/patch_order.list b/resources/config_bundles/debian_buster/patch_order.list similarity index 60% rename from resources/config_bundles/ubuntu_artful/patch_order.list rename to resources/config_bundles/debian_buster/patch_order.list index 624dd1fe..4d9d33fd 100644 --- a/resources/config_bundles/ubuntu_artful/patch_order.list +++ b/resources/config_bundles/debian_buster/patch_order.list @@ -1,2 +1,5 @@ +debian/master-preferences.patch +debian/system/lcms2.patch + ungoogled-chromium/linux/manpage.patch ungoogled-chromium/linux/fix-libstdcxx-errors.patch diff --git a/resources/config_bundles/debian_buster/version.ini b/resources/config_bundles/debian_buster/version.ini new file mode 100644 index 00000000..8a143b03 --- /dev/null +++ b/resources/config_bundles/debian_buster/version.ini @@ -0,0 +1,2 @@ +[version] +release_extra = stretch diff --git a/resources/config_bundles/debian_stretch/patch_order.list b/resources/config_bundles/debian_stretch/patch_order.list index 624dd1fe..cb8fddd3 100644 --- a/resources/config_bundles/debian_stretch/patch_order.list +++ b/resources/config_bundles/debian_stretch/patch_order.list @@ -1,2 +1,4 @@ +debian/master-preferences.patch + ungoogled-chromium/linux/manpage.patch ungoogled-chromium/linux/fix-libstdcxx-errors.patch diff --git a/resources/config_bundles/linux_portable/gn_flags.map b/resources/config_bundles/linux_portable/gn_flags.map index 80adcdd2..8ffdca51 100644 --- a/resources/config_bundles/linux_portable/gn_flags.map +++ b/resources/config_bundles/linux_portable/gn_flags.map @@ -1,9 +1,7 @@ -clang_base_path=getenv("CLANG_BASE_PATH") -clang_use_chrome_plugins=false -is_clang=true +custom_toolchain="//build/toolchain/linux/unbundle:default" +host_toolchain="//build/toolchain/linux/unbundle:default" linux_use_bundled_binutils=false optimize_for_size=false use_gtk3=true -use_jumbo_build=true use_kerberos=false use_lld=true diff --git a/resources/config_bundles/linux_rooted/gn_flags.map b/resources/config_bundles/linux_rooted/gn_flags.map index 532ce999..288a5082 100644 --- a/resources/config_bundles/linux_rooted/gn_flags.map +++ b/resources/config_bundles/linux_rooted/gn_flags.map @@ -1,9 +1,8 @@ -clang_base_path=getenv("CLANG_BASE_PATH") -clang_use_chrome_plugins=false +custom_toolchain="//build/toolchain/linux/unbundle:default" ffmpeg_branding="ChromeOS" gold_path="" goma_dir="" -is_clang=true +host_toolchain="//build/toolchain/linux/unbundle:default" link_pulseaudio=true linux_use_bundled_binutils=false optimize_for_size=false @@ -12,7 +11,6 @@ use_cups=true use_custom_libcxx=false use_gold=true use_gtk3=true -use_jumbo_build=true use_kerberos=false use_lld=true use_openh264=false diff --git a/resources/config_bundles/linux_rooted/patch_order.list b/resources/config_bundles/linux_rooted/patch_order.list index e5fc46ff..7cef30fe 100644 --- a/resources/config_bundles/linux_rooted/patch_order.list +++ b/resources/config_bundles/linux_rooted/patch_order.list @@ -1,6 +1,5 @@ inox-patchset/chromium-vaapi-r18.patch -debian/master-preferences.patch debian/system/vpx.patch debian/system/icu.patch debian/system/nspr.patch diff --git a/resources/config_bundles/macos/gn_flags.map b/resources/config_bundles/macos/gn_flags.map deleted file mode 100644 index 2e4c755e..00000000 --- a/resources/config_bundles/macos/gn_flags.map +++ /dev/null @@ -1,3 +0,0 @@ -clang_use_chrome_plugins=false -is_clang=true -use_jumbo_build=true diff --git a/resources/config_bundles/opensuse/gn_flags.map b/resources/config_bundles/opensuse/gn_flags.map index 180c44ac..bbb7c460 100644 --- a/resources/config_bundles/opensuse/gn_flags.map +++ b/resources/config_bundles/opensuse/gn_flags.map @@ -1,5 +1,3 @@ -clang_base_path="/usr" -clang_use_chrome_plugins=false is_component_build=false is_component_ffmpeg=true link_pulseaudio=true diff --git a/resources/config_bundles/ubuntu_artful/basebundlemeta.ini b/resources/config_bundles/ubuntu_artful/basebundlemeta.ini deleted file mode 100644 index bdf068a4..00000000 --- a/resources/config_bundles/ubuntu_artful/basebundlemeta.ini +++ /dev/null @@ -1,3 +0,0 @@ -[basebundle] -display_name = Ubuntu 17.10 (artful) -depends = linux_rooted diff --git a/resources/config_bundles/ubuntu_artful/version.ini b/resources/config_bundles/ubuntu_artful/version.ini deleted file mode 100644 index d4997bc5..00000000 --- a/resources/config_bundles/ubuntu_artful/version.ini +++ /dev/null @@ -1,2 +0,0 @@ -[version] -release_extra = artful diff --git a/resources/config_bundles/ubuntu_bionic/basebundlemeta.ini b/resources/config_bundles/ubuntu_bionic/basebundlemeta.ini new file mode 100644 index 00000000..39b45870 --- /dev/null +++ b/resources/config_bundles/ubuntu_bionic/basebundlemeta.ini @@ -0,0 +1,3 @@ +[basebundle] +display_name = Ubuntu 18.04 (bionic) +depends = debian_buster diff --git a/resources/config_bundles/ubuntu_bionic/version.ini b/resources/config_bundles/ubuntu_bionic/version.ini new file mode 100644 index 00000000..5840a8c8 --- /dev/null +++ b/resources/config_bundles/ubuntu_bionic/version.ini @@ -0,0 +1,2 @@ +[version] +release_extra = bionic diff --git a/resources/config_bundles/windows/gn_flags.map b/resources/config_bundles/windows/gn_flags.map index 709d4b93..a7eb3a70 100644 --- a/resources/config_bundles/windows/gn_flags.map +++ b/resources/config_bundles/windows/gn_flags.map @@ -1,7 +1,4 @@ chrome_pgo_phase=0 -clang_use_chrome_plugins=false full_wpo_on_official=false -is_clang=true rtc_use_lto=false target_cpu="x64" -use_jumbo_build=true diff --git a/resources/packaging/debian/buster/clean b/resources/packaging/debian/buster/clean index c25dceb9..8ee6f29d 100644 --- a/resources/packaging/debian/buster/clean +++ b/resources/packaging/debian/buster/clean @@ -2,7 +2,6 @@ debian/files Makefile third_party/flot/*.js -chrome/test/data/webui/i18n_process_css_test.html third_party/ffmpeg/BUILD.gn third_party/flac/BUILD.gn diff --git a/resources/packaging/debian/buster/control b/resources/packaging/debian/buster/control index 7e1e5b86..da5f1360 100644 --- a/resources/packaging/debian/buster/control +++ b/resources/packaging/debian/buster/control @@ -10,16 +10,15 @@ Homepage: https://github.com/Eloston/ungoogled-chromium Rules-Requires-Root: binary-targets Build-Depends: debhelper (>= 11), - clang-5.0, - lld-5.0, - llvm-5.0-dev, + clang-6.0, + lld-6.0, + llvm-6.0-dev, python, python3, pkg-config, ninja-build, python-jinja2, ca-certificates, - time, wget, flex, yasm, @@ -87,7 +86,7 @@ Build-Depends: libjs-jquery-flot, libgcrypt20-dev, libva-dev, -Standards-Version: 4.1.3 +Standards-Version: 4.1.4 Package: ungoogled-chromium Architecture: i386 amd64 arm64 armhf diff --git a/resources/packaging/debian/buster/rules.in b/resources/packaging/debian/buster/rules.in index 47e34a95..b001b565 100755 --- a/resources/packaging/debian/buster/rules.in +++ b/resources/packaging/debian/buster/rules.in @@ -6,13 +6,20 @@ export DH_VERBOSE=1 # enable all build hardening flags export DEB_BUILD_MAINT_OPTIONS=hardening=+all -export CLANG_BASE_PATH=/usr/lib/llvm-5.0 +# use system LLVM via unbundling +export AR=llvm-ar-6.0 +export NM=llvm-nm-6.0 +export CC=clang-6.0 +export CXX=clang++-6.0 # more verbose linker output -defines+=target_extra_ldflags=\"-Wl,--stats\" +export LDFLAGS+=-Wl,--stats # extra flags to reduce warnings that aren't very useful -defines+=target_extra_cxxflags=\"-Wno-deprecated-declarations -Wno-dangling-else -Wno-unused-function -Wno-unused-variable -Wno-unused-but-set-variable\" +export CXXFLAGS+=-Wno-unused-function \ + -Wno-unused-variable \ + -Wno-unused-but-set-variable \ + -Wno-deprecated-declarations \ # set the appropriate cpu architecture DEB_HOST_ARCH ?= $(shell dpkg-architecture -qDEB_HOST_ARCH) @@ -28,8 +35,6 @@ endif ifeq (armhf,$(DEB_HOST_ARCH)) defines+=host_cpu=\"arm\" \ arm_use_neon=false \ - blink_symbol_level=1 \ - symbol_level=1 \ endif @@ -41,8 +46,9 @@ $ungoog{gn_flags} # can't use system ots (open text *summarizer*) since that's not google's ots (open text *sanitizer*) # handle parallel build options +njobs=1 ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) -njobs=-j$(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) +njobs=$(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) endif # paths to files needed by flot @@ -54,7 +60,7 @@ flotpaths=/usr/share/javascript/jquery/*min.js \ $ungoog{build_output}/gn: mkdir -p $ungoog{build_output} || true - ./tools/gn/bootstrap/bootstrap.py -o $ungoog{build_output}/gn -s $(njobs) + ./tools/gn/bootstrap/bootstrap.py -o $ungoog{build_output}/gn -s -j$(njobs) override_dh_auto_configure: # output compiler information @@ -62,15 +68,16 @@ override_dh_auto_configure: # use system flot for file in $(flotpaths); do ln -sf $$file third_party/flot; done # strip out system third_party libraries + rm -f base/third_party/libevent/BUILD.gn ./debian/scripts/unbundle override_dh_auto_build-arch: $ungoog{build_output}/gn ./$ungoog{build_output}/gn gen $ungoog{build_output} --args="$(defines)" --fail-on-unused-args - ninja $(njobs) -C $ungoog{build_output} chrome chrome_sandbox content_shell chromedriver + ninja -j$(njobs) -C $ungoog{build_output} chrome chrome_sandbox content_shell chromedriver override_dh_auto_build-indep: $ungoog{build_output}/gn ./$ungoog{build_output}/gn gen $ungoog{build_output} --args="$(defines)" --fail-on-unused-args - ninja $(njobs) -C $ungoog{build_output} packed_resources + ninja -j$(njobs) -C $ungoog{build_output} packed_resources override_dh_auto_install-arch: cp $ungoog{build_output}/chrome $ungoog{build_output}/chromium diff --git a/resources/packaging/debian/buster/scripts/unbundle b/resources/packaging/debian/buster/scripts/unbundle index 20665d3c..24ffb43d 100755 --- a/resources/packaging/debian/buster/scripts/unbundle +++ b/resources/packaging/debian/buster/scripts/unbundle @@ -35,12 +35,11 @@ for lib,rule in replace_gn_files.REPLACEMENTS.items(): # remove the gn file that builds the embedded library if os.path.lexists(rule): os.remove(rule) - else: - # otherwise, create the missing directory - os.mkdir(libdir) # create a symlink to the unbundle gn file symlink = "ln -s " path = os.path.split(rule) + if not os.path.exists(path[0]): + os.mkdir(path[0]) while path[0] != '': path = os.path.split(path[0]) symlink += '../' diff --git a/resources/packaging/debian/minimal/control b/resources/packaging/debian/minimal/control index f92b4192..4deb486e 100644 --- a/resources/packaging/debian/minimal/control +++ b/resources/packaging/debian/minimal/control @@ -9,16 +9,15 @@ Vcs-Browser: https://github.com/Eloston/ungoogled-chromium Homepage: https://github.com/Eloston/ungoogled-chromium Build-Depends: debhelper (>= 9), - clang-5.0, - lld-5.0, - llvm-5.0-dev, + clang-6.0, + lld-6.0, + llvm-6.0-dev, python, python3, pkg-config, ninja-build, python-jinja2, ca-certificates, - time, wget, flex, yasm, diff --git a/resources/packaging/debian/minimal/ungoogled-chromium.install.in b/resources/packaging/debian/minimal/ungoogled-chromium.install.in new file mode 100644 index 00000000..6b8e83d9 --- /dev/null +++ b/resources/packaging/debian/minimal/ungoogled-chromium.install.in @@ -0,0 +1,21 @@ +$ungoog{build_output}/chromium usr/lib/chromium + +$ungoog{build_output}/chrome-sandbox usr/lib/chromium + +$ungoog{build_output}/chrome_*.pak usr/lib/chromium +$ungoog{build_output}/resources.pak usr/lib/chromium +$ungoog{build_output}/keyboard_resources.pak usr/lib/chromium + +$ungoog{build_output}/resources/en-US.pak usr/lib/chromium/locales + +debian/presubj usr/share/bug/chromium + +debian/master_preferences usr/lib/chromium + +debian/chromium.xml usr/share/gnome-control-center/default-apps + +debian/chromium.desktop usr/share/applications + +debian/extensions etc/chromium.d +debian/default-flags etc/chromium.d + diff --git a/resources/packaging/debian/stretch/clean b/resources/packaging/debian/stretch/clean index b886c4e5..fd0ef676 100644 --- a/resources/packaging/debian/stretch/clean +++ b/resources/packaging/debian/stretch/clean @@ -2,7 +2,6 @@ debian/files Makefile third_party/flot/*.js -chrome/test/data/webui/i18n_process_css_test.html third_party/ffmpeg/BUILD.gn third_party/flac/BUILD.gn diff --git a/resources/packaging/debian/stretch/control b/resources/packaging/debian/stretch/control index 6c79f4fa..d02f3b4f 100644 --- a/resources/packaging/debian/stretch/control +++ b/resources/packaging/debian/stretch/control @@ -7,19 +7,18 @@ Uploaders: Vcs-Git: https://github.com/Eloston/ungoogled-chromium.git Vcs-Browser: https://github.com/Eloston/ungoogled-chromium Homepage: https://github.com/Eloston/ungoogled-chromium -Rules-Requires-Root: no +Rules-Requires-Root: binary-targets Build-Depends: - debhelper (>= 10), - clang-5.0, - lld-5.0, - llvm-5.0-dev, + debhelper (>= 11), + clang-6.0, + lld-6.0, + llvm-6.0-dev, python, python3, pkg-config, ninja-build, python-jinja2, ca-certificates, - time, wget, flex, yasm, @@ -74,6 +73,7 @@ Build-Depends: libhunspell-dev, libharfbuzz-dev, libusb-1.0-0-dev, + libopenjp2-7-dev, libmodpbase64-dev, libnss3-dev (>= 3.12.3), libnspr4-dev (>= 2:4.9), @@ -84,7 +84,7 @@ Build-Depends: libjs-jquery-flot, libgcrypt20-dev, libva-dev, -Standards-Version: 4.1.3 +Standards-Version: 4.1.4 Package: ungoogled-chromium Architecture: i386 amd64 arm64 armhf diff --git a/resources/packaging/debian/stretch/scripts/unbundle b/resources/packaging/debian/stretch/scripts/unbundle index 859fbdc7..d447f773 100755 --- a/resources/packaging/debian/stretch/scripts/unbundle +++ b/resources/packaging/debian/stretch/scripts/unbundle @@ -35,12 +35,11 @@ for lib,rule in replace_gn_files.REPLACEMENTS.items(): # remove the gn file that builds the embedded library if os.path.lexists(rule): os.remove(rule) - else: - # otherwise, create the missing directory - os.mkdir(libdir) # create a symlink to the unbundle gn file symlink = "ln -s " path = os.path.split(rule) + if not os.path.exists(path[0]): + os.mkdir(path[0]) while path[0] != '': path = os.path.split(path[0]) symlink += '../' diff --git a/resources/packaging/linux_simple/build.sh.in b/resources/packaging/linux_simple/build.sh.in index 3ae709b1..e456e2c6 100755 --- a/resources/packaging/linux_simple/build.sh.in +++ b/resources/packaging/linux_simple/build.sh.in @@ -4,14 +4,17 @@ set -eux # Simple build script for Linux -# Generally, utilikit configuration types using Clang read CLANG_BASE_PATH to determine the Clang installation path. -# If it needs to be changed, add "export CLANG_BASE_PATH=..." below or set it from outside the script. -true ${CLANG_BASE_PATH:=/usr} # http://www.tldp.org/LDP/abs/html/parameter-substitution.html - rm -rf out || true mkdir out mkdir $ungoog{build_output} ./ungoogled_packaging/scripts/apply_patch_series.py + +# Set commands or paths to LLVM-provided tools here +export AR=llvm-ar +export NM=llvm-nm +export CC=clang +export CXX=clang++ + ./tools/gn/bootstrap/bootstrap.py -o $ungoog{build_output}/gn -s ./$ungoog{build_output}/gn gen $ungoog{build_output} --args='$ungoog{gn_args_string}' --fail-on-unused-args ninja -C $ungoog{build_output} chrome chrome_sandbox chromedriver diff --git a/resources/patches/debian/fixes/overloaded-call.patch b/resources/patches/debian/fixes/overloaded-call.patch index 6b6cd5ba..42a52458 100644 --- a/resources/patches/debian/fixes/overloaded-call.patch +++ b/resources/patches/debian/fixes/overloaded-call.patch @@ -1,3 +1,6 @@ +description: explicitly construct a vector +author: Michael Gilbert + --- a/chrome/browser/supervised_user/supervised_user_url_filter.cc +++ b/chrome/browser/supervised_user/supervised_user_url_filter.cc @@ -368,7 +368,7 @@ SupervisedUserURLFilter::GetFilteringBeh diff --git a/resources/patches/debian/gn/buildflags.patch b/resources/patches/debian/gn/buildflags.patch deleted file mode 100644 index ae04608e..00000000 --- a/resources/patches/debian/gn/buildflags.patch +++ /dev/null @@ -1,51 +0,0 @@ -description: support build flags passed in the --args to gn -author: Michael Gilbert - ---- a/build/toolchain/linux/BUILD.gn -+++ b/build/toolchain/linux/BUILD.gn -@@ -5,6 +5,12 @@ - import("//build/config/sysroot.gni") - import("//build/toolchain/gcc_toolchain.gni") - -+declare_args() { -+ target_extra_cflags = "" -+ target_extra_ldflags = "" -+ target_extra_cxxflags = "" -+} -+ - clang_toolchain("clang_arm") { - toolprefix = "arm-linux-gnueabihf-" - toolchain_args = { -@@ -50,6 +56,10 @@ gcc_toolchain("arm") { - readelf = "${toolprefix}readelf" - nm = "${toolprefix}nm" - -+ extra_cflags = target_extra_cflags -+ extra_ldflags = target_extra_ldflags -+ extra_cxxflags = target_extra_cxxflags -+ - toolchain_args = { - current_cpu = "arm" - current_os = "linux" -@@ -103,6 +113,10 @@ gcc_toolchain("x86") { - # Output linker map files for binary size analysis. - enable_linker_map = true - -+ extra_cflags = target_extra_cflags -+ extra_ldflags = target_extra_ldflags -+ extra_cxxflags = target_extra_cxxflags -+ - toolchain_args = { - current_cpu = "x86" - current_os = "linux" -@@ -156,6 +170,10 @@ gcc_toolchain("x64") { - # Output linker map files for binary size analysis. - enable_linker_map = true - -+ extra_cflags = target_extra_cflags -+ extra_ldflags = target_extra_ldflags -+ extra_cxxflags = target_extra_cxxflags -+ - toolchain_args = { - current_cpu = "x64" - current_os = "linux" diff --git a/resources/patches/debian/system/lcms2.patch b/resources/patches/debian/system/lcms2.patch new file mode 100644 index 00000000..a92f6a49 --- /dev/null +++ b/resources/patches/debian/system/lcms2.patch @@ -0,0 +1,30 @@ +description: use system lcms2 +author: Michael Gilbert +bug-debian: http://bugs.debian.org/879153 + +--- a/third_party/pdfium/BUILD.gn ++++ b/third_party/pdfium/BUILD.gn +@@ -192,6 +192,7 @@ jumbo_static_library("pdfium") { + ":fxge", + ":fxjs", + ":pwl", ++ "third_party:lcms2", + "third_party:bigint", + "third_party:pdfium_base", + "third_party:skia_shared", +@@ -682,6 +683,7 @@ jumbo_static_library("fpdftext") { + configs += [ ":pdfium_core_config" ] + deps = [ + ":fxcrt", ++ "third_party:lcms2", + ] + } + +@@ -1080,6 +1082,7 @@ jumbo_static_library("fxge") { + + deps = [ + ":fxcrt", ++ "third_party:lcms2", + ] + + if (is_component_build || use_system_freetype) { diff --git a/resources/patches/debian/warnings/initialization.patch b/resources/patches/debian/warnings/initialization.patch new file mode 100644 index 00000000..9879a97a --- /dev/null +++ b/resources/patches/debian/warnings/initialization.patch @@ -0,0 +1,14 @@ +description: source_ could be uninitialized +author: Michael Gilbert + +--- a/third_party/cacheinvalidation/src/google/cacheinvalidation/include/types.h ++++ b/third_party/cacheinvalidation/src/google/cacheinvalidation/include/types.h +@@ -174,7 +174,7 @@ class ErrorInfo { + */ + class ObjectId { + public: +- ObjectId() : is_initialized_(false) {} ++ ObjectId() : is_initialized_(false), source_(0) {} + + /* Creates an object id for the given source and name (the name is copied). */ + ObjectId(int source, const string& name)