]> git.pld-linux.org Git - packages/chromium-browser.git/blobdiff - chromium-browser.spec
skip delete remoting/base/resources_unittest.* to get build going
[packages/chromium-browser.git] / chromium-browser.spec
index f4b4bc5ecacbdbb149473394f788942967f31c32..dc8b0d533037ef980b0ea567ecd35892141f53b7 100644 (file)
@@ -2,7 +2,6 @@
 # Conditional build:
 %bcond_without cups                    # with cups
 %bcond_without debuginfo               # disable debuginfo creation (it is huge)
-%bcond_without ffmpegsumo              # build with ffmpegsumo
 %bcond_without gconf                   # with GConf
 %bcond_without kerberos                # build with kerberos support (dlopened if support compiled, library names in src/net/http/http_auth_gssapi_posix.cc)
 %bcond_without keyring                 # with keyring support (gnome-keyring dlopened, kwalletd via dbus)
 %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_harfbuzz # system harfbuzz
 %bcond_without system_jsoncpp  # system jsoncpp
 %bcond_without system_libexif  # system libexif
 %bcond_without system_libmtp   # system libmtp
 %bcond_without system_libusb   # system libusb-1
 %bcond_without system_libwebp  # system libwebp
+%bcond_without system_libxnvctrl       # system libxnvctrl
 %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
 %bcond_without system_speex    # system speex
 %bcond_with            system_sqlite   # system sqlite
-%bcond_without system_srtp             # system srtp (can be used if using bundled libjingle)
+%bcond_without system_libsrtp  # system srtp (can be used if using bundled libjingle)
 %bcond_with            system_v8               # system v8
 %bcond_without system_libvpx   # system libvpx
 %bcond_without system_yasm             # system yasm
 %bcond_without system_zlib             # system zlib
-%bcond_with            tcmalloc                # use tcmalloc
+%bcond_without tcmalloc                # use tcmalloc
 %bcond_without verbose                 # verbose build (V=1)
 
 %if %{with nacl}
 # - check system sqlite linking problems
 # - find system deps: find -name '*.gyp*' | xargs grep 'use_system.*=='
 # - use_system_ssl (use_openssl: http://crbug.com/62803)
-# - use_system_ffmpeg && build_ffmpegsumo
 # - use_system_hunspell
 # - use_system_stlport
 # - other defaults: src/build/common.gypi
+# - system usb-ids stuff
+# - libpci: link, because xserver loads it anyway
 
 # 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: ~668MiB
+#   - unpacked sources: ~574MiB
 #   - built code: ~1.4GiB (x86_64/i686)
 # - http://code.google.com/p/chromium/wiki/LinuxBuildInstructionsPrerequisites
 # - to look for new tarball, use update-source.sh script
 %define                gyp_rev 1014
 Summary:       A WebKit powered web browser
 Name:          chromium-browser
-Version:       24.0.1312.45
-Release:       0.15
+Version:       25.0.1364.26
+Release:       0.24
 License:       BSD, LGPL v2+ (ffmpeg)
 Group:         X11/Applications/Networking
-Source0:       http://carme.pld-linux.org/~glen/chromium-browser/src/beta/%{name}-%{version}.tar.gz
+Source0:       http://carme.pld-linux.org/~glen/chromium-browser/src/dev/%{name}-%{version}.tar.gz
 # Source0-md5: 2995d5aa3f1ecb470e60e0984229fcce
 Source1:       %{name}.default
 Source2:       %{name}.sh
@@ -85,24 +89,26 @@ Patch1:             plugin-searchdirs.patch
 #Patch2:               system-nspr.patch
 Patch3:                disable_dlog_and_dcheck_in_release_builds.patch
 Patch4:                path-libpdf.patch
-Patch5:                options-support.patch
 Patch6:                get-webkit_revision.patch
 Patch7:                dlopen_sonamed_gl.patch
 Patch8:                chromium_useragent.patch.in
 Patch9:                chromium-ppapi.patch
+Patch10:       system-libxnvctrl.patch
 # https://bugs.gentoo.org/show_bug.cgi?id=393471
 # libjpeg-turbo >= 1.1.90 supports that feature
 Patch11:       chromium-revert-jpeg-swizzle-r2.patch
+Patch12:       system-ffmpeg.patch
+Patch13:       system-libpng.patch
+Patch14:       system-opus.patch
 Patch15:       nacl-build-irt.patch
 Patch16:       nacl-linkingfix.patch
 Patch18:       nacl-no-untar.patch
 Patch19:       system-jsoncpp.patch
-Patch21:       system-srtp.patch
-Patch22:       pulse_fix-157876.patch
 Patch23:       no-pnacl.patch
 Patch24:       nacl-verbose.patch
 Patch25:       gnome3-volume-control.patch
 Patch26:       master-prefs-path.patch
+Patch27:       tcmalloc-glibc2.16.patch
 URL:           http://www.chromium.org/Home
 %{?with_gconf:BuildRequires:   GConf2-devel}
 BuildRequires: OpenGL-GLU-devel
@@ -117,20 +123,26 @@ BuildRequires:    bzip2-devel
 %{?with_cups:BuildRequires:    cups-devel}
 BuildRequires: dbus-glib-devel
 BuildRequires: expat-devel
+%{?with_system_ffmpeg:BuildRequires:   ffmpeg-devel >= 1.0}
 %{?with_system_flac:BuildRequires:     flac-devel >= 1.2.1-7}
 BuildRequires: flex
 BuildRequires: fontconfig-devel
 BuildRequires: glib2-devel
 BuildRequires: gperf
+BuildRequires: gtest-devel
 BuildRequires: gtk+2-devel
+%{?with_system_harfbuzz:BuildRequires: harfbuzz-devel}
 %{?with_kerberos:BuildRequires:        heimdal-devel}
 BuildRequires: hicolor-icon-theme
 %{?with_system_jsoncpp:BuildRequires:  jsoncpp-devel}
+%{?with_system_libxvnctrl:BuildRequires:       libXNVCtrl-devel >= 310.19}
 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_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
 %{?with_selinux:BuildRequires: libselinux-devel}
 BuildRequires: libstdc++-devel
@@ -141,15 +153,14 @@ BuildRequires:    libxml2-devel
 BuildRequires: libxslt-devel
 BuildRequires: lzma
 %{?with_system_minizip:BuildRequires:  minizip-devel}
-%{?with_system_libexif:BuildRequires:  libexif-devel >= 1:0.6.21}
-%{?with_system_libmtp:BuildRequires:   libmtp-devel >= 1.1.3}
-%{?with_system_opus:BuildRequires:     opus-devel >= 1.0.2}
 BuildRequires: nspr-devel
 BuildRequires: nss-devel >= 1:3.12.3
+%{?with_system_opus:BuildRequires:     opus-devel >= 1.0.2}
 BuildRequires: pam-devel
 BuildRequires: pango-devel
 BuildRequires: perl-modules
 BuildRequires: pkgconfig
+%{?with_system_protobuf:BuildRequires: protobuf-devel}
 %{?with_pulseaudio:BuildRequires:      pulseaudio-devel}
 BuildRequires: python
 #BuildRequires:        python-gyp >= 1-%{gyp_rev}
@@ -158,7 +169,7 @@ BuildRequires:      rpm >= 4.4.9-56
 BuildRequires: rpmbuild(macros) >= 1.453
 %{?with_system_speex:BuildRequires:    speex-devel >= 1:1.2-rc1}
 BuildRequires: sqlite3-devel >= 3.6.1
-%{?with_system_srtp:BuildRequires:     srtp-devel >= 1.4.4}
+%{?with_system_libsrtp:BuildRequires:  srtp-devel >= 1.4.4}
 BuildRequires: subversion
 BuildRequires: tar >= 1:1.22
 BuildRequires: udev-devel
@@ -246,7 +257,6 @@ ln -s %{SOURCE7} src
 %patch1 -p1
 %patch3 -p1
 %patch4 -p1
-%patch5 -p1
 %patch6 -p1
 %patch7 -p1
 %patch15 -p1
@@ -254,11 +264,13 @@ cd src
 %patch9 -p0
 #%patch2 -p1
 %{!?with_libjpegturbo:%patch11 -p0}
+%patch12 -p1
+%patch13 -p0
+%patch14 -p2
 %patch16 -p1
 %patch19 -p1
-%patch21 -p1
-%patch22 -p1
 %patch25 -p1
+%patch27 -p1
 cd ..
 %patch18 -p1
 %patch23 -p1
@@ -286,19 +298,27 @@ cat > chrome/test/data/nacl/nacl_test_data.gyp <<-EOF
 }
 EOF
 
-sh -x clean-source.sh %{!?with_system_v8:v8=0} %{!?with_nacl:nacl=0} %{!?with_system_zlib:zlib=0}
+sh -x clean-source.sh \
+       %{!?with_nacl:nacl=0} \
+       %{!?with_system_protobuf:protobuf=0} \
+       %{!?with_system_v8:v8=0} \
+       %{!?with_system_zlib:zlib=0} \
+       %{nil}
 
 %build
 cd src
 
 %if %{with nacl}
+rm -rf native_client/toolchain/linux_x86_newlib
 if [ ! -d native_client/toolchain/linux_x86_newlib ]; then
 # Make symlinks for NaCL
-install -d native_client/toolchain/linux_x86_newlib/x86_64-nacl/{bin,lib,lib32,nacl}
+install -d native_client/toolchain/linux_x86_newlib/x86_64-nacl/{bin,nacl}
 
-cd native_client/toolchain/linux_x86_newlib/x86_64-nacl/bin
+cd native_client/toolchain/linux_x86_newlib
+ln -s x86_64-nacl/bin bin
+cd x86_64-nacl/bin
 __cc='%{__cc}'
-if [ "${__cc}#ccache}" != "$__cc" ]; then
+if [ "${__cc#ccache}" != "$__cc" ]; then
        echo 'exec ccache %{_bindir}/x86_64-nacl-gcc "$@"' > gcc
        echo 'exec ccache %{_bindir}/x86_64-nacl-g++ "$@"' > g++
        %{__sed} -i -e '1i#!/bin/sh' gcc g++
@@ -307,13 +327,17 @@ else
        ln -s %{_bindir}/x86_64-nacl-gcc gcc
        ln -s %{_bindir}/x86_64-nacl-g++ g++
 fi
+ln -s gcc x86_64-nacl-gcc
+ln -s g++ x86_64-nacl-g++
+ln -s %{_bindir}/x86_64-nacl-ar .
 ln -s %{_bindir}/x86_64-nacl-ar ar
 ln -s %{_bindir}/x86_64-nacl-as as
+ln -s %{_bindir}/x86_64-nacl-ranlib .
 ln -s %{_bindir}/x86_64-nacl-ranlib ranlib
-ln -s %{_bindir}/x86_64-nacl-strip x86-64-nacl-strip
+ln -s %{_bindir}/x86_64-nacl-strip .
 ln -s %{_bindir}/x86_64-nacl-strip strip
-ln -s %{_prefix}/x86_64-nacl/lib/*.a ../lib
-ln -s %{_prefix}/x86_64-nacl/lib/32/*.a ../lib32
+ln -s %{_prefix}/x86_64-nacl/lib ../lib
+ln -s %{_prefix}/x86_64-nacl/lib32 ../lib32
 ln -s %{_prefix}/x86_64-nacl/include ../nacl/include
 cd ../../../../..
 fi
@@ -340,10 +364,7 @@ test -e Makefile || %{__python} build/gyp_chromium \
        %{!?debug:-Dwerror=} \
        %{!?debuginfo:-Dfastbuild=1 -Dremove_webcore_debug_symbols=1} \
        %{?with_shared_libs:-Dlibrary=shared_library} \
-       -Dbuild_ffmpegsumo=%{?with_ffmpegsumo:1}%{!?with_ffmpegsumo:0} \
-       -Dffmpeg_branding=Chrome \
-       -Dremove_webcore_debug_symbols=1 \
-       -Dproprietary_codecs=1 \
+       %{!?with_system_ffmpeg:-Dbuild_ffmpegsumo=1 -Dproprietary_codecs=1} \
        -Dinclude_tests=0 \
 %if %{with nacl}
        -Dnaclsdk_mode=custom:/usr/x86_64-nacl \
@@ -363,14 +384,19 @@ test -e Makefile || %{__python} build/gyp_chromium \
        %{gyp_with kerberos} -Dlinux_link_kerberos=0 \
        %{gyp_with keyring gnome_keyring} -Dlinux_link_gnome_keyring=0 \
        %{gyp_with pulseaudio} \
+       %{gyp_with system_ffmpeg} \
        %{gyp_with system_flac} \
+       %{gyp_with system_harfbuzz} \
        %{gyp_with system_libexif} \
        %{gyp_with system_libmtp} \
+       %{gyp_with system_libsrtp} \
        %{gyp_with system_libusb} \
        %{gyp_with system_libvpx} \
        %{gyp_with system_libwebp} \
+       %{gyp_with system_libxnvctrl} \
        %{gyp_with system_minizip} \
        %{gyp_with system_opus} \
+       %{gyp_with system_protobuf} \
        %{gyp_with system_speex} \
        %{gyp_with system_sqlite} \
        %{gyp_with system_v8} \
@@ -414,7 +440,7 @@ cp -a *.pak locales resources $RPM_BUILD_ROOT%{_libdir}/%{name}
 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}/chromium-sandbox
-%if %{with ffmpegsumo}
+%if %{without system_ffmpeg}
 install -p libffmpegsumo.so $RPM_BUILD_ROOT%{_libdir}/%{name}
 %endif
 cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_desktopdir}
@@ -500,7 +526,7 @@ fi
 %attr(4555,root,root) %{_libdir}/%{name}/chromium-sandbox
 
 # ffmpeg libs
-%if %{with ffmpegsumo}
+%if %{without system_ffmpeg}
 %attr(755,root,root) %{_libdir}/%{name}/libffmpegsumo.so
 %endif
 
This page took 0.05475 seconds and 4 git commands to generate.