]> git.pld-linux.org Git - packages/firefox.git/blobdiff - firefox.spec
- added clang bcond (works for me)
[packages/firefox.git] / firefox.spec
index 27b0ffe039abf7761755d625f84c5de5b9301f9a..62c991bc3622fb35a18d43c9c0ad8d6dbf8380fe 100644 (file)
@@ -6,10 +6,11 @@
 %bcond_without gtk3            # GTK+ 3.x instead of 2.x
 %bcond_without kerberos        # disable krb5 support
 %bcond_without official        # official Firefox branding
-%bcond_without pgo             # PGO-enabled build (requires working $DISPLAY == :100)
+%bcond_with    pgo             # PGO-enabled build (requires working $DISPLAY == :100)
 # - disabled shared_js - https://bugzilla.mozilla.org/show_bug.cgi?id=1039964
 %bcond_with    shared_js       # shared libmozjs library [broken]
 %bcond_without system_icu      # build without system ICU
+%bcond_with    clang           # build using Clang/LLVM
 
 # On updating version, grab CVE links from:
 # https://www.mozilla.org/security/known-vulnerabilities/firefox.html
 # The actual sqlite version (see RHBZ#480989):
 %define                sqlite_build_version %(pkg-config --silence-errors --modversion sqlite3 2>/dev/null || echo ERROR)
 
-%define                nspr_ver        4.13.1
-%define                nss_ver         3.29.5
+%define                nspr_ver        4.14
+%define                nss_ver         3.30.2
 
 Summary:       Firefox web browser
 Summary(hu.UTF-8):     Firefox web böngésző
 Summary(pl.UTF-8):     Firefox - przeglądarka WWW
 Name:          firefox
-Version:       54.0
+Version:       55.0.2
 Release:       1
 License:       MPL v2.0
 Group:         X11/Applications/Networking
 Source0:       http://releases.mozilla.org/pub/mozilla.org/firefox/releases/%{version}/source/firefox-%{version}.source.tar.xz
-# Source0-md5: bd9eccc20354ad3e69e0265f0a7f5c90
+# Source0-md5: d1e65708db51034d2ad090b4bfba7f1c
 Source3:       %{name}.desktop
 Source4:       %{name}.sh
 Source5:       vendor.js
 Source6:       vendor-ac.js
 Patch0:                idl-parser.patch
-Patch1:                xulrunner-new-libxul.patch
 Patch2:                xulrunner-paths.patch
 Patch4:                %{name}-prefs.patch
 Patch5:                %{name}-pld-bookmarks.patch
@@ -53,6 +53,7 @@ BuildRequires:        automake
 BuildRequires: autoconf2_13
 BuildRequires: bzip2-devel
 BuildRequires: cairo-devel >= 1.10.2-5
+BuildRequires: cargo
 BuildRequires: dbus-glib-devel >= 0.60
 BuildRequires: fontconfig-devel >= 1:2.7.0
 BuildRequires: freetype-devel >= 1:2.1.8
@@ -93,6 +94,7 @@ BuildRequires:        python-virtualenv >= 15
 BuildRequires: readline-devel
 BuildRequires: rpm >= 4.4.9-56
 BuildRequires: rpmbuild(macros) >= 1.601
+BuildRequires: rust
 BuildRequires: sed >= 4.0
 BuildRequires: sqlite3-devel >= 3.17.0
 BuildRequires: startup-notification-devel >= 0.8
@@ -168,6 +170,20 @@ Firefox jest przeglądarką WWW rozpowszechnianą zgodnie z ideami
 ruchu otwartego oprogramowania oraz tworzoną z myślą o zgodności ze
 standardami, wydajnością i przenośnością.
 
+%package -n gmp-api
+Summary:       GeckoMediaPlugins API header files
+Summary(pl.UTF-8):     Pliki nagłówkowe API GeckoMediaPlugins
+Group:         Development/Libraries
+URL:           https://wiki.mozilla.org/GeckoMediaPlugins
+# actually C++ compiler; STL is not even used
+Requires:      libstdc++-devel
+
+%description -n gmp-api
+GeckoMediaPlugins API header files.
+
+%description -n gmp-api -l pl.UTF-8
+Pliki nagłówkowe API GeckoMediaPlugins.
+
 %prep
 %setup -q
 
@@ -177,7 +193,6 @@ standardami, wydajnością i przenośnością.
 echo 'LOCAL_INCLUDES += $(MOZ_HUNSPELL_CFLAGS)' >> extensions/spellcheck/src/Makefile.in
 
 %patch0 -p2
-%patch1 -p1
 %patch2 -p2
 %patch4 -p1
 %patch5 -p1
@@ -199,6 +214,16 @@ cp -p %{_datadir}/automake/config.* build/autoconf
 cat << 'EOF' > .mozconfig
 . $topsrcdir/browser/config/mozconfig
 
+%if %{with clang}
+export CC="clang"
+export CXX="clang++"
+%else
+export CC="%{__cc}"
+export CXX="%{__cxx}"
+%endif
+export CFLAGS="%{rpmcflags} -D_FILE_OFFSET_BITS=64"
+export CXXFLAGS="%{rpmcxxflags} -D_FILE_OFFSET_BITS=64"
+
 mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/obj-%{_target_cpu}
 
 # Options for 'configure' (same as command-line options).
@@ -212,7 +237,7 @@ ac_add_options --enable-debugger-info-modules
 ac_add_options --enable-crash-on-assert
 %else
 ac_add_options --disable-debug
-ac_add_options --enable-optimize="%{rpmcflags} -Os"
+ac_add_options --enable-optimize="%{rpmcflags}%{?with_pgo: -Os}"
 %endif
 ac_add_options --disable-strip
 ac_add_options --disable-install-strip
@@ -228,14 +253,12 @@ ac_add_options --disable-tests
 %endif
 ac_add_options --disable-crashreporter
 ac_add_options --disable-gconf
-ac_add_options --disable-gnomeui
 ac_add_options --disable-necko-wifi
 ac_add_options --disable-updater
 ac_add_options --enable-alsa
 ac_add_options --enable-chrome-format=omni
 ac_add_options --enable-default-toolkit=%{?with_gtk3:cairo-gtk3}%{!?with_gtk3:cairo-gtk2}
 ac_add_options --enable-extensions=default
-ac_add_options --enable-gio
 ac_add_options --enable-readline
 ac_add_options --enable-safe-browsing
 %{?with_shared_js:ac_add_options --enable-shared-js}
@@ -290,20 +313,20 @@ install -d \
 
 %browser_plugins_add_browser %{name} -p %{_libdir}/%{name}/browser/plugins
 
-cd obj-%{_target_cpu}
-%{__make} -C browser/installer stage-package \
+OBJDIR=obj-%{_target_cpu}
+%{__make} -C ${OBJDIR}/browser/installer stage-package \
        DESTDIR=$RPM_BUILD_ROOT \
        installdir=%{_libdir}/%{name} \
        PKG_SKIP_STRIP=1
 
-cp -aL dist/firefox/* $RPM_BUILD_ROOT%{_libdir}/%{name}/
+cp -aL ${OBJDIR}/dist/firefox/* $RPM_BUILD_ROOT%{_libdir}/%{name}/
 
 # move arch independant ones to datadir
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/chrome $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/chrome
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/extensions $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/extensions
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/icons $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/icons
-mv $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/defaults
-mv $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/defaults/{pref,preferences}
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/chrome $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/chrome
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/extensions $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/extensions
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/icons $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/icons
+%{__mv} $RPM_BUILD_ROOT%{_libdir}/%{name}/defaults $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/defaults
+%{__mv} $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/defaults/{pref,preferences}
 
 ln -s ../../../share/%{name}/browser/chrome $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/chrome
 ln -s ../../../share/%{name}/browser/defaults $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/defaults
@@ -319,7 +342,7 @@ chmod 755 $RPM_BUILD_ROOT%{_bindir}/firefox
 # install icons and desktop file
 for i in 16 32 48 %{?with_official:22 24 256}; do
        install -d $RPM_BUILD_ROOT%{_iconsdir}/hicolor/${i}x${i}/apps
-       cp -a ../browser/branding/%{!?with_official:un}official/default${i}.png \
+       cp -a browser/branding/%{!?with_official:un}official/default${i}.png \
                $RPM_BUILD_ROOT%{_iconsdir}/hicolor/${i}x${i}/apps/firefox.png
 done
 
@@ -349,6 +372,10 @@ rm -rf $HOME
 EOF
 chmod 755 $RPM_BUILD_ROOT%{_sbindir}/%{name}-chrome+xpcom-generate
 
+# GeckoMediaPlugin API headers
+install -d $RPM_BUILD_ROOT%{_includedir}
+cp -pr dom/media/gmp/gmp-api $RPM_BUILD_ROOT%{_includedir}
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
@@ -395,6 +422,7 @@ fi
 
 %attr(755,root,root) %{_libdir}/%{name}/firefox
 %attr(755,root,root) %{_libdir}/%{name}/firefox-bin
+%attr(755,root,root) %{_libdir}/%{name}/pingsender
 %attr(755,root,root) %{_libdir}/%{name}/run-mozilla.sh
 %{_libdir}/%{name}/application.ini
 %{_libdir}/%{name}/chrome.manifest
@@ -405,8 +433,12 @@ fi
 %{_libdir}/%{name}/browser/omni.ja
 
 %{_libdir}/%{name}/browser/features/aushelper@mozilla.org.xpi
+%{_libdir}/%{name}/browser/features/clicktoplay-rollout@mozilla.org.xpi
 %{_libdir}/%{name}/browser/features/e10srollout@mozilla.org.xpi
 %{_libdir}/%{name}/browser/features/firefox@getpocket.com.xpi
+%{_libdir}/%{name}/browser/features/followonsearch@mozilla.com.xpi
+%{_libdir}/%{name}/browser/features/screenshots@mozilla.org.xpi
+%{_libdir}/%{name}/browser/features/shield-recipe-client@mozilla.org.xpi
 %{_libdir}/%{name}/browser/features/webcompat@mozilla.org.xpi
 
 %attr(755,root,root) %{_libdir}/%{name}/plugin-container
@@ -436,3 +468,7 @@ fi
 %attr(755,root,root) %{_libdir}/%{name}/gtk2/libmozgtk.so
 %attr(755,root,root) %{_libdir}/%{name}/libmozgtk.so
 %endif
+
+%files -n gmp-api
+%defattr(644,root,root,755)
+%{_includedir}/gmp-api
This page took 0.05428 seconds and 4 git commands to generate.