%bcond_with shared_libs # with shared libs
%bcond_with sse2 # use SSE2 instructions
%bcond_without system_flac # system flac
-%bcond_with system_ffmpeg # system ffmpeg instead of ffmpegsumo
+%bcond_without system_ffmpeg # system ffmpeg
%bcond_without system_harfbuzz # system harfbuzz
+%bcond_without system_icu # system icu
%bcond_without system_jsoncpp # system jsoncpp
%bcond_without system_libexif # system libexif
%bcond_without system_libmtp # system libmtp
%bcond_with system_mesa # system Mesa
%bcond_without system_minizip # system minizip
%bcond_without system_opus # system opus codec support, http://www.opus-codec.org/examples/
-%bcond_without system_protobuf # system protobuf
+# protobuf broken: https://bugs.gentoo.org/show_bug.cgi?id=525560
+%bcond_with system_protobuf # system protobuf
%bcond_without system_re2 # system re2
%bcond_without system_snappy # system snappy
%bcond_without system_speex # system speex
%bcond_with system_sqlite # system sqlite WebSQL (http://www.w3.org/TR/webdatabase/) will not work
-%bcond_without system_libsrtp # system srtp (can be used if using bundled libjingle)
+%bcond_without system_libsrtp # system srtp (can be used if using bundled libjingle), http://bugs.gentoo.org/459932
%bcond_with system_v8 # system v8
-%bcond_with system_libvpx # system libvpx
+%bcond_with system_libvpx # system libvpx, http://crbug.com/494939
%bcond_without system_yasm # system yasm
%bcond_without system_zlib # system zlib
%bcond_with tcmalloc # use tcmalloc
# - use_system_skia
# - use_system_ssl (use_openssl: http://crbug.com/62803)
# - use_system_stlport (android specific)
-# - vpx: invert (remove) media_use_libvpx when libvpx with vp9 support is released
# NOTES:
# - mute BEEP mixer if you do not want to hear horrible system bell when
# pressing home/end in url bar or more ^F search results on page.
# - space considerations:
# - unpacked sources: ~490MiB
-# - built code: ~1.4GiB (x86_64/i686)
+# - built code: ~1.1GiB (x86_64/i686)
# - http://code.google.com/p/chromium/wiki/LinuxBuildInstructionsPrerequisites
# - to look for new tarball, use update-source.sh script
-%define branch 38.0.2125
-%define basever 101
-%define patchver 104
+%define branch 48.0.2564
+%define basever 103
+#define patchver 106
%define gyp_rev 1014
Summary: A WebKit powered web browser
Name: chromium-browser
%else
Version: %{branch}.%{basever}
%endif
-Release: 3
+Release: 1
License: BSD%{!?with_system_ffmpeg:, LGPL v2+ (ffmpeg)}
Group: X11/Applications/Networking
Source0: http://carme.pld-linux.org/~glen/chromium-browser/src/stable/%{name}-%{branch}.%{basever}.tar.xz
-# Source0-md5: f2ec6a50864d8b2ddcda0baef50e9c33
+# Source0-md5: 4c527967ce3e6c141ebac00e4b26ae0d
%if "%{?patchver}" != ""
Patch0: http://carme.pld-linux.org/~glen/chromium-browser/src/stable/%{name}-%{version}.patch.xz
-# Patch0-md5: 0d734cfd35874b4c25b1a762a648e9b6
+# Patch0-md5: 214631f58aae3e9d9ca0795240a95def
%endif
Source1: %{name}.default
Source2: %{name}.sh
Source7: clean-source.sh
Source8: get-source.sh
Source9: master_preferences.json
+# https://github.com/Kelvin-Ng/Kelvin-Gentoo-Overlay/tree/master/www-client/chromium/files
Patch2: enable-video-decode-accel.patch
-Patch4: path-libpdf.patch
Patch7: dlopen_sonamed_gl.patch
Patch8: chromium_useragent.patch.in
# https://bugs.gentoo.org/show_bug.cgi?id=393471
Patch25: gnome3-volume-control.patch
Patch26: master-prefs-path.patch
Patch28: system-mesa.patch
-Patch30: system-ply.patch
Patch31: system-jinja.patch
Patch32: remove_bundled_libraries-stale.patch
Patch35: etc-dir.patch
Patch36: angle.patch
+Patch37: %{name}-build.patch
+Patch38: vaapi_include.patch
+Patch39: libsecret.patch
+Patch40: ffmpeg-generate-errors.patch
+Patch41: ffmpeg-generate.patch
+Patch42: system-ffmpeg.patch
+Patch43: system-icu.patch
URL: http://www.chromium.org/Home
%{?with_gconf:BuildRequires: GConf2-devel}
%{?with_system_mesa:BuildRequires: Mesa-libGL-devel >= 9.1}
%{?with_cups:BuildRequires: cups-devel}
BuildRequires: elfutils-devel
BuildRequires: expat-devel
-%{?with_system_ffmpeg:BuildRequires: ffmpeg-devel >= 1.0}
+%{?with_system_ffmpeg:BuildRequires: ffmpeg-devel >= 2.7.2}
%{?with_system_flac:BuildRequires: flac-devel >= 1.2.1-7}
BuildRequires: fontconfig-devel
BuildRequires: glib2-devel
BuildRequires: libevent-devel
%{?with_system_libexif:BuildRequires: libexif-devel >= 1:0.6.21}
%{?with_keyring:BuildRequires: libgnome-keyring-devel}
-BuildRequires: libicu-devel >= 4.6
+%{?with_system_icu:BuildRequires: libicu-devel >= 4.6}
%{!?with_libjpegturbo:BuildRequires: libjpeg-devel}
%{?with_libjpegturbo:BuildRequires: libjpeg-turbo-devel >= 1.2.0}
%{?with_system_libmtp:BuildRequires: libmtp-devel >= 1.1.3}
BuildRequires: libpng-devel
+BuildRequires: libsecret-devel
%{?with_selinux:BuildRequires: libselinux-devel}
BuildRequires: libstdc++-devel
%{?with_system_libusb:BuildRequires: libusb-devel >= 1.0}
-%{?with_system_libvpx:BuildRequires: libvpx-devel >= 1.3.0}
+%{?with_system_libvpx:BuildRequires: libvpx-devel >= 1.5.0}
%{?with_system_libwebp:BuildRequires: libwebp-devel >= 0.4.0}
BuildRequires: libxml2-devel
BuildRequires: libxslt-devel
%{?with_system_protobuf:BuildRequires: protobuf-devel}
%{?with_pulseaudio:BuildRequires: pulseaudio-devel}
BuildRequires: python
+BuildRequires: python-BeautifulSoup
#BuildRequires: python-gyp >= 1-%{gyp_rev}
+BuildRequires: python-html5lib
BuildRequires: python-jinja2 >= 2.7
BuildRequires: python-modules
BuildRequires: python-ply >= 3.4
-%{?with_system_re2:BuildRequires: re2-devel >= 20130115-2}
+%{?with_system_re2:BuildRequires: re2-devel >= 20151101}
BuildRequires: rpm >= 4.4.9-56
BuildRequires: rpmbuild(macros) >= 1.453
%{?with_system_snappy:BuildRequires: snappy-devel}
Requires: hicolor-icon-theme
Requires: libevent >= 2.0.21
%{?with_libjpegturbo:Requires: libjpeg-turbo >= 1.2.0}
-%{?with_system_libvpx:Requires: libvpx >= 1.3.0}
+%{?with_system_libvpx:Requires: libvpx >= 1.4.0}
Requires: lsb-release
-%{?with_system_re2:Requires: re2 >= 20130115-2}
+%{?with_system_re2:Requires: re2 >= 20151101}
%{?with_system_protobuf:Requires: protobuf-libs >= 2.5.0-2}
Requires: shared-mime-info
%{?with_system_sqlite:Requires: sqlite3(icu)}
+Requires: uname(release) >= 3.17
Requires: xdg-utils >= 1.0.2-4
Requires: xorg-lib-libX11 >= 1.4.99.1
Provides: wwwbrowser
%{__sed} -e 's,@localedir@,%{_datadir}/%{name},' %{SOURCE5} > find-lang.sh
ln -s %{SOURCE7} .
-#%patch2 -p1 NOT COMPILING
-%patch4 -p3
+#%patch2 -p1 CHECK
%patch7 -p1
%patch15 -p2
%{!?with_libjpegturbo:%patch11 -p0}
%{?with_nacl:%patch18 -p1}
%patch24 -p1
%patch26 -p2
-#%patch30 -p1
-#%patch31 -p0
+%patch31 -p0
%patch32 -p1
%patch35 -p1
%patch36 -p1
+%patch37 -p1
+#%patch38 -p1 CHECK
+%patch39 -p1
+%patch40 -p1
+%patch41 -p1
+%patch42 -p1
+%patch43 -p0
+
+# https://groups.google.com/a/chromium.org/forum/#!topic/chromium-packagers/9JX1N2nf4PU
+install -d chrome/test/data/webui
+touch chrome/test/data/webui/i18n_process_css_test.html
%{?with_dev:exit 0}
flags="
-Dtarget_arch=%{target_arch} \
-Dpython_arch=%{target_arch} \
+ -Dproprietary_codecs=1 \
-Dffmpeg_branding=Chromium \
-Dsystem_libdir=%{_lib} \
-Dpython_ver=%{py_ver} \
%{gyp_with system_ffmpeg} -Dmedia_use_ffmpeg=1 \
%{gyp_with system_flac} \
%{gyp_with system_harfbuzz} \
+ %{gyp_with system_icu} %{?with_system_icu:-Dicu_use_data_file_flag=0} \
%{gyp_with system_jsoncpp} \
%{gyp_with system_libexif} \
%{gyp_with system_libmtp} \
%{gyp_with system_zlib} \
-Duse_system_bzip2=1 \
-Duse_system_expat=1 \
- -Duse_system_icu=1 -Dicu_use_data_file_flag=0 \
-Duse_system_libevent=1 \
-Duse_system_libjpeg=1 \
-Duse_system_libpng=1 \
$RPM_BUILD_ROOT{%{_bindir},%{_mandir}/man1,%{_desktopdir}} \
$RPM_BUILD_ROOT%{_sysconfdir}/%{name}/{native-messaging-hosts,policies/managed}
+%if %{without system_icu}
+cp -p third_party/icu/source/data/in/icudtl.dat $RPM_BUILD_ROOT%{_libdir}/%{name}
+%endif
+
cd %{builddir}
cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/default
install -p %{SOURCE2} $RPM_BUILD_ROOT%{_bindir}/%{name}
}
' $RPM_BUILD_ROOT%{_bindir}/%{name}
cp -a locales resources $RPM_BUILD_ROOT%{_datadir}/%{name}
-cp -p *.pak $RPM_BUILD_ROOT%{_libdir}/%{name}
+cp -p *.pak *.bin $RPM_BUILD_ROOT%{_libdir}/%{name}
ln -s %{_datadir}/%{name}/locales $RPM_BUILD_ROOT%{_libdir}/%{name}/locales
ln -s %{_datadir}/%{name}/resources $RPM_BUILD_ROOT%{_libdir}/%{name}/resources
cp -p chrome.1 $RPM_BUILD_ROOT%{_mandir}/man1/%{name}.1
install -p chrome $RPM_BUILD_ROOT%{_libdir}/%{name}/%{name}
install -p chrome_sandbox $RPM_BUILD_ROOT%{_libdir}/%{name}/chrome-sandbox
-%if %{without system_ffmpeg}
+%if %{without system_ffmpeg} && 0
install -p libffmpegsumo.so $RPM_BUILD_ROOT%{_libdir}/%{name}
%endif
-install -p libpdf.so $RPM_BUILD_ROOT%{_libdir}/%{name}
cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_desktopdir}
cp -p %{SOURCE9} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/master_preferences
%postun
if [ "$1" = 0 ]; then
%update_icon_cache hicolor
+ %update_desktop_database
%update_browser_plugins
fi
%{_iconsdir}/hicolor/*/apps/%{name}.png
%dir %{_libdir}/%{name}
%{_libdir}/%{name}/chrome*.pak
+%{!?with_system_icu:%{_libdir}/%{name}/icudtl.dat}
%{_libdir}/%{name}/content_resources.pak
%{_libdir}/%{name}/keyboard_resources.pak
%{_libdir}/%{name}/resources.pak
+%{_libdir}/%{name}/natives_blob.bin
+%{_libdir}/%{name}/snapshot_blob.bin
%{_libdir}/%{name}/locales
%{_libdir}/%{name}/resources
-# conflicts with browser-plugin-chrome-pdf?
-%attr(755,root,root) %{_libdir}/%{name}/libpdf.so
-
%dir %{_datadir}/%{name}
%dir %{_datadir}/%{name}/locales
%{_datadir}/%{name}/locales/en-US.pak
%attr(4555,root,root) %{_libdir}/%{name}/chrome-sandbox
# ffmpeg libs
-%if %{without system_ffmpeg}
+%if %{without system_ffmpeg} && 0
%attr(755,root,root) %{_libdir}/%{name}/libffmpegsumo.so
%endif