Hello community, here is the log from the commit of package chromium for openSUSE:Factory checked in at 2016-08-31 00:11:01 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/chromium (Old) and /work/SRC/openSUSE:Factory/.chromium.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "chromium" Changes: -------- --- /work/SRC/openSUSE:Factory/chromium/chromium.changes 2016-08-24 10:17:25.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.chromium.new/chromium.changes 2016-08-31 00:12:02.000000000 +0200 @@ -1,0 +2,9 @@ +Sat Aug 27 18:46:44 UTC 2016 - tittiatc...@gmail.com + +- Make it build on ARM. + * Add build patch arm_use_right_compiler.patch + +- Drop unnecessary patches: + * chromium-arm-r0.patch + +------------------------------------------------------------------- Old: ---- chromium-arm-r0.patch New: ---- arm_use_right_compiler.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ chromium.spec ++++++ --- /var/tmp/diff_new_pack.5uVczB/_old 2016-08-31 00:12:12.000000000 +0200 +++ /var/tmp/diff_new_pack.5uVczB/_new 2016-08-31 00:12:12.000000000 +0200 @@ -52,14 +52,16 @@ Patch8: gcc60-fixes.diff # archlinux arm enhancement patches Patch100: arm-webrtc-fix.patch -Patch101: chromium-arm-r0.patch +Patch101: arm_use_right_compiler.patch # GN buildsystem related patches Patch200: chromium-last-commit-position-r0.patch Patch201: chromium-snapshot-toolchain-r1.patch BuildRequires: alsa-devel +BuildRequires: binutils-gold BuildRequires: bison BuildRequires: cups-devel +BuildRequires: dbus-1-devel BuildRequires: desktop-file-utils BuildRequires: fdupes BuildRequires: flac-devel @@ -68,49 +70,66 @@ BuildRequires: gcc BuildRequires: gcc-c++ BuildRequires: gperf +BuildRequires: harfbuzz-devel BuildRequires: hicolor-icon-theme BuildRequires: hunspell-devel BuildRequires: krb5-devel BuildRequires: libbz2-devel -BuildRequires: pkgconfig(libffi) -BuildRequires: binutils-gold -BuildRequires: dbus-1-devel -BuildRequires: libevent-devel -BuildRequires: harfbuzz-devel -BuildRequires: libwebp-devel -BuildRequires: snappy-devel -BuildRequires: zlib-devel -BuildRequires: yasm-devel BuildRequires: libelf-devel +BuildRequires: libevent-devel BuildRequires: libexpat-devel BuildRequires: libpulse-devel -BuildRequires: update-desktop-files +BuildRequires: libwebp-devel BuildRequires: python-xml +BuildRequires: snappy-devel +BuildRequires: update-desktop-files +BuildRequires: zlib-devel +BuildRequires: pkgconfig(libffi) Requires(pre): permissions +BuildRequires: SDL-devel +BuildRequires: dirac-devel >= 1.0.0 +BuildRequires: libcap-devel +BuildRequires: libdc1394 +BuildRequires: libdc1394-devel +BuildRequires: libdrm-devel BuildRequires: libgcrypt-devel BuildRequires: libgnome-keyring-devel -BuildRequires: libcap-devel +BuildRequires: libgsm +BuildRequires: libgsm-devel +BuildRequires: libjack-devel +BuildRequires: libogg-devel +BuildRequires: liboil-devel >= 0.3.15 +BuildRequires: libopenssl-devel +BuildRequires: libtheora-devel >= 1.1 +BuildRequires: libvdpau-devel +BuildRequires: libvorbis-devel +BuildRequires: libvpx-devel +BuildRequires: ncurses-devel BuildRequires: ninja BuildRequires: pam-devel BuildRequires: pciutils-devel BuildRequires: pkg-config BuildRequires: python BuildRequires: python-devel -BuildRequires: pkgconfig(sqlite3) +BuildRequires: schroedinger-devel +BuildRequires: slang-devel +BuildRequires: texinfo BuildRequires: util-linux BuildRequires: valgrind-devel BuildRequires: wdiff -BuildRequires: perl(Switch) BuildRequires: pkgconfig(cairo) >= 1.6 BuildRequires: pkgconfig(dbus-1) BuildRequires: pkgconfig(gconf-2.0) BuildRequires: pkgconfig(glib-2.0) BuildRequires: pkgconfig(gtk+-2.0) BuildRequires: pkgconfig(gtk+-3.0) +BuildRequires: pkgconfig(libcrypto) +BuildRequires: pkgconfig(libexif) BuildRequires: pkgconfig(libudev) BuildRequires: pkgconfig(libxslt) BuildRequires: pkgconfig(nspr) >= 4.9.5 BuildRequires: pkgconfig(nss) >= 3.14 +BuildRequires: pkgconfig(sqlite3) BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xcomposite) BuildRequires: pkgconfig(xcursor) @@ -123,29 +142,6 @@ BuildRequires: pkgconfig(xscrnsaver) BuildRequires: pkgconfig(xt) BuildRequires: pkgconfig(xtst) -BuildRequires: libdrm-devel -BuildRequires: pkgconfig(libexif) -BuildRequires: pkgconfig(libcrypto) -BuildRequires: libdc1394 -BuildRequires: libdc1394-devel -BuildRequires: libgsm -BuildRequires: libgsm-devel -BuildRequires: libogg-devel -BuildRequires: liboil-devel >= 0.3.15 -BuildRequires: libjack-devel -BuildRequires: imlib2-devel -BuildRequires: libtheora-devel >= 1.1 -BuildRequires: libvdpau-devel -BuildRequires: libvorbis-devel -BuildRequires: libvpx-devel -BuildRequires: ncurses-devel -BuildRequires: schroedinger-devel -BuildRequires: slang-devel -BuildRequires: texinfo -BuildRequires: libopenssl-devel -BuildRequires: SDL-devel -BuildRequires: dirac-devel >= 1.0.0 -#Requirements to build a fully functional ffmpeg Requires: alsa Requires: ffmpegsumo Requires: hicolor-icon-theme @@ -153,7 +149,7 @@ Requires: xdg-utils Requires(pre): permissions # Recommends the chromium-ffmpeg library (available from packman) -Recommends: chromium-ffmpeg +Recommends: %{name}-ffmpeg Conflicts: otherproviders(chromium-browser) Provides: chromium-based-browser = %{version} Provides: chromium-browser = %{version} @@ -161,8 +157,7 @@ Obsoletes: %{name}-suid-helper < %{version} Obsoletes: chromium-browser < %{version} Provides: %{name}-suid-helper = %{version} -# There is no v8 for ppc and thus chromium won't run on ppc. For aarch64 certain buildrequires are missing (e.g. valgrind) -ExcludeArch: aarch64 ppc ppc64 ppc64le +ExclusiveArch: %{ix86} x86_64 %arm #Requirements to build a fully functional ffmpeg # This can only be done on packman OBS %if 0%{?packman_bs} @@ -173,6 +168,13 @@ BuildRequires: libxvidcore-devel %endif +#Define the maximum number of build processes to prevent running out of memory +%ifarch %arm +%define ninjaproc 2 +%else +%define ninjaproc 4 +%endif + %description Chromium is the open-source project behind Google Chrome. We invite you to join us in our effort to help build a safer, faster, and more stable way for all Internet users to experience the web, and to create a powerful platform for developing a new generation of web applications. @@ -182,6 +184,7 @@ Group: Productivity/Networking/Web/Browsers Requires: %{name} Conflicts: otherproviders(ffmpegsumo) +Conflicts: %{name}-ffmpeg Provides: ffmpegsumo = %{version} %description ffmpegsumo @@ -230,7 +233,7 @@ Summary: The ffmpeg library for Google's opens source browser Chromium License: BSD-3-Clause and LGPL-2.1+ Group: Productivity/Networking/Web/Browsers -Requires: %{name} = %{version} +Requires: %{name} Conflicts: otherproviders(ffmpegsumo) Provides: ffmpegsumo = %{version} @@ -243,7 +246,7 @@ #GN Buildsystem fixes %patch200 -p1 -%patch201 +%patch201 -p0 #Standard patches %patch1 @@ -259,7 +262,7 @@ # archlinux arm enhancements %patch100 -%patch101 +%patch101 -p0 %build @@ -284,6 +287,17 @@ myconf_gn+=" ffmpeg_branding=\"Chrome\"" %endif +%ifarch %arm +myconf_gn+=" target_cpu =\"arm\"" +myconf_gn+=" target_sysroot_dir=\"\"" +myconf_gn+=" arm_use_neon=false" +myconf_gn+=" arm_optionally_use_neon=false" +myconf_gn+=" arm_use_thumb=true" +myconf_gn+=" remove_webcore_debug_symbols=true" +myconf_gn+=" symbol_level = 0" +myconf_gn+=" is_component_build = true" +%endif + # Set up Google API keys, see http://www.chromium.org/developers/how-tos/api-keys # Note: these are for the openSUSE Chromium builds ONLY. For your own distribution, # please get your own set of keys. @@ -308,13 +322,13 @@ %if 0%{?packman_bs} ninja -C out/Release third_party/ffmpeg %else - ninja -j 4 -C out/Release chrome + ninja -j %{ninjaproc} -C out/Release chrome # Build the required SUID_SANDBOX helper - ninja -C out/Release chrome_sandbox + ninja -j %{ninjaproc} -C out/Release chrome_sandbox # Build the ChromeDriver test suite - ninja -C out/Release chromedriver + ninja -j %{ninjaproc} -C out/Release chromedriver %endif %install @@ -353,6 +367,13 @@ cp -a *.bin *.pak locales xdg-mime icudtl.dat %{buildroot}%{_libdir}/chromium/ cp -a chromedriver %{buildroot}%{_libdir}/chromium/ + # chromium components +%ifarch %arm + cp -a lib*.so %{buildroot}%{_libdir}/chromium/ +%else + cp -av libffmpeg.so %{buildroot}%{_libdir}/chromium/ +%endif + # Patch xdg-settings to use the chromium version of xdg-mime as that the system one is not KDE4 compatible sed "s|xdg-mime|%{_libdir}/chromium/xdg-mime|g" xdg-settings > %{buildroot}%{_libdir}/chromium/xdg-settings @@ -362,9 +383,6 @@ cp -a chrome.1 %{buildroot}%{_mandir}/man1/chromium.1 %fdupes %{buildroot}%{_mandir}/man1/ - # chromium components - cp -av libffmpeg.so %{buildroot}%{_libdir}/chromium/ - popd mkdir -p %{buildroot}%{_datadir}/icons/ ++++++ arm_use_right_compiler.patch ++++++ --- build/toolchain/linux/BUILD.gn 2016-08-25 12:19:55.634174140 +0200 +++ build/toolchain/linux/BUILD.gn 2016-08-25 12:19:55.634174140 +0200 @@ -8,11 +8,11 @@ clang_toolchain("clang_arm") { toolchain_cpu = "arm" toolchain_os = "linux" - toolprefix = "arm-linux-gnueabihf-" + toolprefix = "" } gcc_toolchain("arm") { - toolprefix = "arm-linux-gnueabihf-" + toolprefix = "" cc = "${toolprefix}gcc" cxx = "${toolprefix}g++" ++++++ chromium-snapshot-toolchain-r1.patch ++++++ --- /var/tmp/diff_new_pack.5uVczB/_old 2016-08-31 00:12:13.000000000 +0200 +++ /var/tmp/diff_new_pack.5uVczB/_new 2016-08-31 00:12:13.000000000 +0200 @@ -21,3 +21,4 @@ - - +snapshot_toolchain = default_toolchain + ++++++ gcc60-fixes.diff ++++++ --- /var/tmp/diff_new_pack.5uVczB/_old 2016-08-31 00:12:13.000000000 +0200 +++ /var/tmp/diff_new_pack.5uVczB/_new 2016-08-31 00:12:13.000000000 +0200 @@ -1,26 +1,11 @@ ---- build/common.gypi 2016-06-15 21:03:15.000000000 +0200 -+++ build/common.gypi 2016-06-15 21:03:15.000000000 +0200 -@@ -4699,6 +4699,7 @@ - ['_toolset=="target"', { - 'cflags_cc': [ - '-std=gnu++11', -+ '-fno-delete-null-pointer-checks', - # See comment for -Wno-c++11-narrowing. - '-Wno-narrowing', - ], -@@ -4710,6 +4711,7 @@ - ['_toolset=="host"', { - 'cflags_cc': [ - '-std=gnu++11', -+ '-fno-delete-null-pointer-checks', - # See comment for -Wno-c++11-narrowing. - '-Wno-narrowing', - ], -@@ -4720,6 +4722,7 @@ - 'target_conditions': [ - ['_toolset=="target"', { - 'cflags_cc': [ -+ '-fno-delete-null-pointer-checks', - # TODO(thakis): Remove, http://crbug.com/263960 - '-Wno-literal-suffix', - ], +--- build/config/compiler/BUILD.gn 2016-08-14 09:59:05.527738286 +0200 ++++ build/config/compiler/BUILD.gn 2016-08-14 09:59:56.340463935 +0200 +@@ -389,6 +389,7 @@ + # TODO(thakis): Eventually switch this to c++11 instead, + # http://crbug.com/427584 + cflags_cc += [ "-std=gnu++11" ] ++ cflags_cc += [ "-fno-delete-null-pointer-checks" ] + } else if (!is_win && !is_nacl) { + # TODO(mcgrathr) - the NaCl GCC toolchain doesn't support either gnu++11 + # or c++11; we technically don't need this toolchain any more, but there +