2012-07-04 11:57:27 +04:00
|
|
|
%define crname chromium-browser
|
|
|
|
%define _crdir %{_libdir}/%{crname}
|
|
|
|
%define _src %{_topdir}/SOURCES
|
|
|
|
|
|
|
|
Name: chromium-browser-stable
|
2014-05-14 17:35:50 +04:00
|
|
|
Version: 34.0.1847.132
|
2014-01-29 13:57:31 +04:00
|
|
|
Release: 1
|
2012-07-04 11:57:27 +04:00
|
|
|
Summary: A fast webkit-based web browser
|
|
|
|
Group: Networking/WWW
|
|
|
|
License: BSD, LGPL
|
2012-08-03 12:17:13 +04:00
|
|
|
|
2013-09-02 11:24:58 +04:00
|
|
|
Source0: https://commondatastorage.googleapis.com/chromium-browser-official/chromium-%{version}.tar.xz
|
2012-07-04 11:57:27 +04:00
|
|
|
Source1: chromium-wrapper
|
2012-07-24 16:01:58 +04:00
|
|
|
Source30: master_preferences
|
|
|
|
Source31: default_bookmarks.html
|
2014-05-14 17:35:50 +04:00
|
|
|
Source32: chromium.default
|
2012-08-03 12:17:13 +04:00
|
|
|
Source2: chromium-browser.desktop
|
2012-11-22 17:46:29 +04:00
|
|
|
Source100: icons.tar.bz2
|
2014-05-14 17:35:50 +04:00
|
|
|
Source997: depot_tools.tar.xz
|
2014-02-24 17:51:54 +04:00
|
|
|
Source998: gn-binaries.tar.xz
|
2013-10-07 14:53:21 +04:00
|
|
|
Patch4: chromium-30.0.1599.66-master-prefs-path.patch
|
2013-02-05 17:10:56 +04:00
|
|
|
Patch5: chromium-browser-big-icon.patch
|
2013-03-25 01:01:57 +04:00
|
|
|
# PATCH-FIX-OPENSUSE patches in system glew library
|
|
|
|
Patch13: chromium-25.0.1364.172-system-glew.patch
|
|
|
|
# PATCH-FIX-OPENSUSE removes build part for courgette
|
|
|
|
Patch14: chromium-25.0.1364.172-no-courgette.patch
|
|
|
|
# PATCH-FIX-OPENSUSE Compile the sandbox with -fPIE settings
|
|
|
|
Patch15: chromium-25.0.1364.172-sandbox-pie.patch
|
|
|
|
|
2014-04-10 12:38:43 +04:00
|
|
|
# Fix https://codereview.chromium.org/142853004/
|
|
|
|
Patch30: issue142853004_80001_90001.diff
|
|
|
|
|
2012-08-03 12:17:13 +04:00
|
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-buildroot
|
|
|
|
|
2012-07-24 13:18:14 +04:00
|
|
|
Provides: %{crname}
|
|
|
|
Conflicts: chromium-browser-unstable
|
|
|
|
Conflicts: chromium-browser-beta
|
|
|
|
Obsoletes: chromium-browser < 1:9.0.597.94
|
2012-07-04 11:57:27 +04:00
|
|
|
BuildRequires: bison, flex, gtk2-devel, atk-devel, libexpat-devel, gperf
|
2014-05-14 17:35:50 +04:00
|
|
|
BuildRequires: nspr-devel, nss-devel, libalsa-devel, util-linux, ninja
|
2013-03-13 12:20:18 +04:00
|
|
|
BuildRequires: glib2-devel, bzip2-devel, zlib-devel
|
2013-11-27 13:12:45 +04:00
|
|
|
BuildRequires: jpeg-devel, pkgconfig(gl), mesaglu-devel
|
2012-07-24 13:18:14 +04:00
|
|
|
BuildRequires: libxscrnsaver-devel, dbus-glib-devel, cups-devel
|
2012-07-04 11:57:27 +04:00
|
|
|
BuildRequires: libgnome-keyring-devel libvpx-devel libxtst-devel
|
|
|
|
BuildRequires: libxslt-devel libxml2-devel libxt-devel pam-devel
|
2013-07-12 12:56:31 +04:00
|
|
|
BuildRequires: libevent-devel pkgconfig(flac) pulseaudio-devel
|
2012-07-24 13:18:14 +04:00
|
|
|
BuildRequires: elfutils-devel udev-devel speex-devel yasm
|
2013-03-05 18:02:48 +04:00
|
|
|
BuildRequires: pkgconfig(harfbuzz) pkgconfig(libmtp) pkgconfig(libgpsd)
|
2014-01-24 11:24:35 +04:00
|
|
|
BuildRequires: speech-dispatcher-devel pkgconfig(libusb-1.0)
|
2013-09-02 11:26:42 +04:00
|
|
|
BuildRequires: pkgconfig(libpci) pkgconfig(gstreamer-plugins-base-1.0), gyp
|
2014-01-24 11:24:35 +04:00
|
|
|
BuildRequires: pkgconfig(opus) pkgconfig(libwebp) pkgconfig(minizip)
|
2014-01-23 13:40:18 +04:00
|
|
|
BuildRequires: pkgconfig(libexif) cap-devel
|
2013-03-05 18:02:48 +04:00
|
|
|
|
2012-07-04 11:57:27 +04:00
|
|
|
ExclusiveArch: i586 x86_64 armv7l
|
|
|
|
|
|
|
|
%description
|
|
|
|
Chromium is a browser that combines a minimal design with sophisticated
|
|
|
|
technology to make the web faster, safer, and easier.
|
|
|
|
|
|
|
|
This is the stable channel Chromium browser. It offers a rock solid
|
|
|
|
browser which is updated with features and fixes once they have been
|
|
|
|
thoroughly tested. If you want the latest features, install the
|
|
|
|
chromium-browser-unstable package instead.
|
|
|
|
|
|
|
|
Note: If you are reverting from unstable to stable or beta channel, you may
|
|
|
|
experience tab crashes on startup. This crash only affects tabs restored
|
|
|
|
during the first launch due to a change in how tab state is stored.
|
|
|
|
See http://bugs.chromium.org/34688. It's always a good idea to back up
|
|
|
|
your profile before changing channels.
|
|
|
|
|
|
|
|
%package -n chromium-browser
|
|
|
|
Summary: A fast webkit-based web browser (transition package)
|
|
|
|
Epoch: 1
|
|
|
|
Group: Networking/WWW
|
|
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
|
|
|
|
%description -n chromium-browser
|
|
|
|
Chromium is a browser that combines a minimal design with sophisticated
|
|
|
|
technology to make the web faster, safer, and easier.
|
|
|
|
|
|
|
|
This is a transition package that installs the stable channel Chromium
|
|
|
|
browser. If you prefer the dev channel browser, install the
|
|
|
|
chromium-browser-unstable package instead.
|
|
|
|
|
2013-01-25 15:10:50 +04:00
|
|
|
%package -n chromedriver
|
|
|
|
Summary: WebDriver for Google Chrome/Chromium
|
|
|
|
Group: Development/Other
|
|
|
|
Requires: %{name} = %{version}-%{release}
|
|
|
|
|
|
|
|
%description -n chromedriver
|
|
|
|
WebDriver is an open source tool for automated testing of webapps across many
|
|
|
|
browsers. It provides capabilities for navigating to web pages, user input,
|
|
|
|
JavaScript execution, and more. ChromeDriver is a standalone server which
|
|
|
|
implements WebDriver's wire protocol for Chromium. It is being developed by
|
|
|
|
members of the Chromium and WebDriver teams.
|
2012-07-24 13:18:14 +04:00
|
|
|
|
2012-07-04 11:57:27 +04:00
|
|
|
%prep
|
2014-05-14 17:35:50 +04:00
|
|
|
%setup -q -n chromium-%{version} -a 998 -a 997
|
2012-07-24 16:01:58 +04:00
|
|
|
%patch4 -p1 -b .prefs
|
2013-02-05 17:10:56 +04:00
|
|
|
%patch5 -p1 -b .big-icon
|
2012-07-04 11:57:27 +04:00
|
|
|
|
2013-03-25 01:01:57 +04:00
|
|
|
%patch13 -p1
|
|
|
|
%patch14 -p1
|
|
|
|
%patch15 -p1
|
|
|
|
|
2014-04-10 12:38:43 +04:00
|
|
|
%patch30 -p1
|
|
|
|
|
2012-07-04 11:57:27 +04:00
|
|
|
# Hard code extra version
|
|
|
|
FILE=chrome/common/chrome_version_info_posix.cc
|
|
|
|
sed -i.orig -e 's/getenv("CHROME_VERSION_EXTRA")/"%{product_vendor} %{product_version}"/' $FILE
|
|
|
|
cmp $FILE $FILE.orig && exit 1
|
|
|
|
|
|
|
|
%build
|
2014-05-14 17:35:50 +04:00
|
|
|
export GYP_GENERATORS='ninja'
|
|
|
|
./build/gyp_chromium build/all.gyp --depth=. \
|
2012-07-04 11:57:27 +04:00
|
|
|
-D linux_sandbox_path=%{_crdir}/chrome-sandbox \
|
|
|
|
-D linux_sandbox_chrome_path=%{_crdir}/chrome \
|
|
|
|
-D linux_link_gnome_keyring=0 \
|
|
|
|
-D use_gconf=0 \
|
|
|
|
-D werror='' \
|
|
|
|
-D use_system_sqlite=0 \
|
2014-01-24 11:24:35 +04:00
|
|
|
-D use_system_libxml=1 \
|
2014-01-21 18:02:47 +04:00
|
|
|
-D use_system_zlib=0 \
|
2012-07-04 11:57:27 +04:00
|
|
|
-D use_system_bzip2=1 \
|
2013-03-25 01:02:49 +04:00
|
|
|
-D use_system_libbz2=1 \
|
2012-07-24 13:18:14 +04:00
|
|
|
-D use_system_xdg_utils=1 \
|
|
|
|
-D use_system_yasm=1 \
|
2014-01-24 11:24:35 +04:00
|
|
|
-D use_system_libpng=1 \
|
2012-07-04 11:57:27 +04:00
|
|
|
-D use_system_libjpeg=1 \
|
|
|
|
-D use_system_libevent=1 \
|
2012-07-24 13:18:14 +04:00
|
|
|
-D use_system_speex=1 \
|
|
|
|
-D use_system_flac=1 \
|
2013-03-22 12:42:45 +04:00
|
|
|
-D use_system_vpx=1 \
|
2014-01-23 13:40:18 +04:00
|
|
|
-D use_system_icu=0 \
|
2013-03-05 18:02:48 +04:00
|
|
|
-D use_system_libusb=1 \
|
|
|
|
-D use_system_libexif=1 \
|
|
|
|
-D use_system_libsrtp=0 \
|
|
|
|
-D use_system_libmtp=1 \
|
2014-01-24 11:24:35 +04:00
|
|
|
-D use_system_opus=1 \
|
|
|
|
-D use_system_libwebp=1 \
|
2013-03-05 18:02:48 +04:00
|
|
|
-D use_system_harfbuzz=1 \
|
2014-01-24 11:24:35 +04:00
|
|
|
-D use_system_minizip=1 \
|
2013-03-25 01:03:44 +04:00
|
|
|
-D build_ffmpegsumo=1 \
|
|
|
|
-D use_system_ffmpeg=0 \
|
2013-12-09 19:37:08 +04:00
|
|
|
-D ffmpeg_branding=Chrome \
|
|
|
|
-D proprietary_codecs=1 \
|
2013-03-05 18:02:48 +04:00
|
|
|
-D use_pulseaudio=1 \
|
2014-01-15 22:26:02 +04:00
|
|
|
-D use_system_v8=0 \
|
2014-01-15 23:24:10 +04:00
|
|
|
-D use_system_protobuf=0 \
|
2013-03-12 15:05:36 +04:00
|
|
|
-D linux_link_libpci=1 \
|
2013-03-05 18:02:48 +04:00
|
|
|
-D linux_link_gsettings=1 \
|
|
|
|
-D linux_link_libspeechd=1 \
|
|
|
|
-D linux_link_kerberos=1 \
|
|
|
|
-D linux_link_libgps=1 \
|
2014-01-24 11:24:35 +04:00
|
|
|
-D use_system_libyuv=1 \
|
|
|
|
-D use_system_libxslt=1 \
|
|
|
|
-D use_system_nspr=1 \
|
2013-09-02 11:24:58 +04:00
|
|
|
-D disable_nacl=1 \
|
2014-01-23 16:10:28 +04:00
|
|
|
-D logging_like_official_build=1 \
|
|
|
|
-D remove_webcore_debug_symbols=1 \
|
|
|
|
-D linux_fpic=1 \
|
2014-05-14 17:35:50 +04:00
|
|
|
-D use_aura=1 \
|
|
|
|
-D linux_use_gold_binary=0 \
|
|
|
|
-D linux_use_gold_flags=0 \
|
2013-05-23 13:24:19 +04:00
|
|
|
-Dgoogle_api_key='AIzaSyD1hTe85_a14kr1Ks8T3Ce75rvbR1_Dx7Q' \
|
|
|
|
-Dgoogle_default_client_id='4139804441.apps.googleusercontent.com' \
|
|
|
|
-Dgoogle_default_client_secret='KDTRKEZk2jwT_7CDpcmMA--P' \
|
2012-07-04 11:57:27 +04:00
|
|
|
%ifarch i586
|
|
|
|
-D disable_sse2=1 \
|
|
|
|
-D release_extra_cflags="-march=i586"
|
|
|
|
%endif
|
|
|
|
|
2014-05-14 17:35:50 +04:00
|
|
|
mkdir -p out/Release
|
2012-07-04 11:57:27 +04:00
|
|
|
|
2014-05-14 17:35:50 +04:00
|
|
|
ninja-build -C out/Release chrome
|
|
|
|
# Build the required SUID_SANDBOX helper
|
|
|
|
ninja-build -C out/Release chrome_sandbox
|
|
|
|
# Build the ChromeDriver test suite
|
|
|
|
ninja-build -C out/Release chromedriver
|
2012-07-04 11:57:27 +04:00
|
|
|
|
|
|
|
%install
|
|
|
|
rm -rf %{buildroot}
|
|
|
|
mkdir -p %{buildroot}%{_bindir}
|
|
|
|
mkdir -p %{buildroot}%{_crdir}/locales
|
|
|
|
mkdir -p %{buildroot}%{_crdir}/themes
|
|
|
|
mkdir -p %{buildroot}%{_crdir}/default_apps
|
|
|
|
mkdir -p %{buildroot}%{_mandir}/man1
|
|
|
|
install -m 755 %{_src}/chromium-wrapper %{buildroot}%{_crdir}/
|
|
|
|
install -m 755 out/Release/chrome %{buildroot}%{_crdir}/
|
|
|
|
install -m 4755 out/Release/chrome_sandbox %{buildroot}%{_crdir}/chrome-sandbox
|
2013-01-25 15:10:50 +04:00
|
|
|
cp -a out/Release/chromedriver %{buildroot}%{_crdir}/chromedriver
|
2012-07-04 11:57:27 +04:00
|
|
|
install -m 644 out/Release/chrome.1 %{buildroot}%{_mandir}/man1/%{crname}.1
|
2014-04-10 12:38:43 +04:00
|
|
|
install -m 644 out/Release/*.pak %{buildroot}%{_crdir}/
|
2014-04-10 15:18:44 +04:00
|
|
|
install -m 644 out/Release/icudtl.dat %{buildroot}%{_crdir}/
|
2012-07-04 11:57:27 +04:00
|
|
|
install -m 755 out/Release/libffmpegsumo.so %{buildroot}%{_crdir}/
|
|
|
|
install -m 644 out/Release/locales/*.pak %{buildroot}%{_crdir}/locales/
|
|
|
|
install -m 644 out/Release/resources.pak %{buildroot}%{_crdir}/
|
|
|
|
install -m 644 chrome/browser/resources/default_apps/* %{buildroot}%{_crdir}/default_apps/
|
|
|
|
ln -s %{_crdir}/chromium-wrapper %{buildroot}%{_bindir}/%{crname}
|
2014-05-14 17:35:50 +04:00
|
|
|
sed -i "s!@LIBDIR@!%{_libdir}!g" %{buildroot}%{_crdir}/chromium-wrapper
|
2013-01-25 15:10:50 +04:00
|
|
|
ln -s %{_crdir}/chromedriver %{buildroot}%{_bindir}/chromedriver
|
2012-07-04 11:57:27 +04:00
|
|
|
|
2014-05-14 17:35:50 +04:00
|
|
|
# create global config file
|
|
|
|
mkdir -p %{buildroot}%{_sysconfdir}/default
|
|
|
|
install -m644 %{SOURCE32} %{buildroot}%{_sysconfdir}/default/%{crname}
|
|
|
|
|
|
|
|
# create pepper dir. talkplugin works fine only if sylinks in pepper
|
|
|
|
mkdir -p %{buildroot}%{_crdir}/pepper
|
|
|
|
|
2012-07-04 11:57:27 +04:00
|
|
|
find out/Release/resources/ -name "*.d" -exec rm {} \;
|
|
|
|
cp -r out/Release/resources %{buildroot}%{_crdir}
|
|
|
|
|
2012-07-24 13:18:14 +04:00
|
|
|
# Strip NaCl IRT
|
2013-09-02 14:47:11 +04:00
|
|
|
#%ifarch x86_64
|
|
|
|
#./native_client/toolchain/linux_x86_newlib/bin/x86_64-nacl-strip %{buildroot}%{_crdir}/nacl_irt_x86_64.nexe
|
|
|
|
#%endif
|
|
|
|
#%ifarch i586
|
|
|
|
#./native_client/toolchain/linux_x86_newlib/bin/i686-nacl-strip %{buildroot}%{_crdir}/nacl_irt_x86_32.nexe
|
|
|
|
#%endif
|
2012-07-24 13:18:14 +04:00
|
|
|
|
2012-07-04 11:57:27 +04:00
|
|
|
# desktop file
|
|
|
|
mkdir -p %{buildroot}%{_datadir}/applications
|
|
|
|
install -m 644 %{_src}/%{crname}.desktop %{buildroot}%{_datadir}/applications/
|
|
|
|
|
|
|
|
# icon
|
2012-11-22 17:46:29 +04:00
|
|
|
mkdir -p %{buildroot}%{_iconsdir}/hicolor/
|
|
|
|
tar xjf %{SOURCE100} -C %{buildroot}%{_iconsdir}/hicolor/
|
2012-07-04 11:57:27 +04:00
|
|
|
|
2012-07-24 16:01:58 +04:00
|
|
|
mkdir -p %{buildroot}%{_sysconfdir}/%{crname}
|
|
|
|
install -m 0644 %{SOURCE30} %{buildroot}%{_sysconfdir}/%{crname}/
|
|
|
|
install -m 0644 %{SOURCE31} %{buildroot}%{_sysconfdir}/%{crname}/
|
|
|
|
|
2012-10-23 15:04:10 +04:00
|
|
|
find %{buildroot} -name "*.nexe" -exec strip {} \;
|
|
|
|
|
2014-05-14 17:35:50 +04:00
|
|
|
%post
|
|
|
|
if [ -e /opt/google/talkplugin/libppgoogletalk.so ]; then
|
|
|
|
if [ ! -e %{_cdir}/pepper/libppgoogletalk.so ]; then
|
|
|
|
ln -s /opt/google/talkplugin/libppgoogletalk.so \
|
|
|
|
%{_cdir}/pepper/libppgoogletalk.so
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -e /opt/google/talkplugin/libppo1d.so ]; then
|
|
|
|
if [ ! -e %{_cdir}/pepper/libppo1d.so ]; then
|
|
|
|
ln -s /opt/google/talkplugin/libppo1d.so \
|
|
|
|
%{_cdir}/pepper/libppo1d.so
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
%preun
|
|
|
|
if [ $1 -eq 0 ] ; then
|
|
|
|
if [ -e %{_cdir}/pepper/libppo1d.so ]; then
|
|
|
|
rm -f %{_cdir}/pepper/libppo1d.so
|
|
|
|
fi
|
|
|
|
|
|
|
|
if [ -e %{_cdir}/pepper/libppgoogletalk.so ]; then
|
|
|
|
rm -f %{_cdir}/pepper/libppgoogletalk.so
|
|
|
|
fi
|
|
|
|
|
|
|
|
fi
|
2012-07-24 13:18:14 +04:00
|
|
|
|
2012-07-16 09:00:55 +00:00
|
|
|
%files -n chromium-browser
|
2012-07-04 11:57:27 +04:00
|
|
|
|
|
|
|
%files
|
|
|
|
%defattr(-,root,root,-)
|
2012-07-24 16:01:58 +04:00
|
|
|
%config %{_sysconfdir}/%{crname}
|
2014-05-14 17:35:50 +04:00
|
|
|
%config %{_sysconfdir}/default/%{crname}
|
2012-07-04 11:57:27 +04:00
|
|
|
%{_bindir}/%{crname}
|
|
|
|
%{_crdir}/chromium-wrapper
|
|
|
|
%{_crdir}/chrome
|
|
|
|
%{_crdir}/chrome-sandbox
|
2014-04-10 12:38:43 +04:00
|
|
|
%{_crdir}/icudtl.dat
|
2012-07-04 11:57:27 +04:00
|
|
|
%{_crdir}/libffmpegsumo.so
|
|
|
|
%{_crdir}/locales
|
|
|
|
%{_crdir}/resources.pak
|
|
|
|
%{_crdir}/resources
|
2012-11-20 19:07:24 +04:00
|
|
|
%{_crdir}/chrome_100_percent.pak
|
2012-09-28 12:20:27 +04:00
|
|
|
%{_crdir}/content_resources.pak
|
2014-05-14 17:35:50 +04:00
|
|
|
%{_crdir}/keyboard_resources.pak
|
2012-07-04 11:57:27 +04:00
|
|
|
%{_crdir}/themes
|
|
|
|
%{_crdir}/default_apps
|
2014-05-14 17:35:50 +04:00
|
|
|
%dir %{_crdir}/pepper
|
2012-07-04 11:57:27 +04:00
|
|
|
%{_mandir}/man1/%{crname}*
|
|
|
|
%{_datadir}/applications/*.desktop
|
2012-11-28 22:41:08 +04:00
|
|
|
%{_iconsdir}/hicolor/*/apps/%{crname}.*
|
2012-07-04 11:57:27 +04:00
|
|
|
|
2013-01-25 15:10:50 +04:00
|
|
|
%files -n chromedriver
|
|
|
|
%defattr(-,root,root,-)
|
|
|
|
%doc LICENSE AUTHORS
|
|
|
|
%{_bindir}/chromedriver
|
2013-01-25 18:30:54 +04:00
|
|
|
%{_crdir}/chromedriver
|
2013-01-25 15:10:50 +04:00
|
|
|
|