]> git.pld-linux.org Git - packages/firefox.git/blobdiff - firefox.spec
- rust is required to build firefox now
[packages/firefox.git] / firefox.spec
index 74225448c7a12a0e1f9ab6b104fbe65b684deacd..4f0a95f2931281a143cf6e8746e36100c305fb1b 100644 (file)
@@ -9,6 +9,7 @@
 %bcond_without 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
 
 # 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.12
-%define                nss_ver         3.21.1
+%define                nspr_ver        4.13.1
+%define                nss_ver         3.29.5
 
 Summary:       Firefox web browser
 Summary(hu.UTF-8):     Firefox web böngésző
 Summary(pl.UTF-8):     Firefox - przeglądarka WWW
 Name:          firefox
-Version:       49.0.2
+Version:       54.0
 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: 5afc916c83998aef07b1adae1db21cbc
+# Source0-md5: bd9eccc20354ad3e69e0265f0a7f5c90
 Source3:       %{name}.desktop
 Source4:       %{name}.sh
 Source5:       vendor.js
@@ -38,7 +39,6 @@ Source6:      vendor-ac.js
 Patch0:                idl-parser.patch
 Patch1:                xulrunner-new-libxul.patch
 Patch2:                xulrunner-paths.patch
-Patch3:                xulrunner-pc.patch
 Patch4:                %{name}-prefs.patch
 Patch5:                %{name}-pld-bookmarks.patch
 Patch6:                %{name}-no-subshell.patch
@@ -53,7 +53,9 @@ 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
 BuildRequires: gcc-c++ >= 6:4.4
 BuildRequires: glib2-devel >= 1:2.22
@@ -62,21 +64,21 @@ BuildRequires:      gstreamer-plugins-base-devel >= 1.0
 %{!?with_gtk3:BuildRequires:   gtk+2-devel >= 2:2.18.0}
 %{?with_gtk3:BuildRequires:    gtk+3-devel >= 3.4.0}
 %{?with_kerberos:BuildRequires:        heimdal-devel >= 0.7.1}
-BuildRequires: hunspell-devel >= 1.2.3
+BuildRequires: hunspell-devel >= 1.6.1
 BuildRequires: libIDL-devel >= 0.8.0
 # DECnet (dnprogs.spec), not dummy net (libdnet.spec)
 #BuildRequires:        libdnet-devel
 BuildRequires: libevent-devel >= 1.4.7
 # standalone libffi 3.0.9 or gcc's from 4.5(?)+
 BuildRequires: libffi-devel >= 6:3.0.9
-BuildRequires: libicu-devel >= 50.1
+%{?with_system_icu:BuildRequires:      libicu-devel >= 58.1}
 # requires libjpeg-turbo implementing at least libjpeg 6b API
 BuildRequires: libjpeg-devel >= 6b
 BuildRequires: libjpeg-turbo-devel
 BuildRequires: libpng(APNG)-devel >= 0.10
-BuildRequires: libpng-devel >= 2:1.6.19
+BuildRequires: libpng-devel >= 2:1.6.28
 BuildRequires: libstdc++-devel >= 6:4.4
-BuildRequires: libvpx-devel >= 1.3.0
+BuildRequires: libvpx-devel >= 1.5.0
 BuildRequires: nspr-devel >= 1:%{nspr_ver}
 BuildRequires: nss-devel >= 1:%{nss_ver}
 BuildRequires: pango-devel >= 1:1.22.0
@@ -92,8 +94,9 @@ 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.9.1
+BuildRequires: sqlite3-devel >= 3.17.0
 BuildRequires: startup-notification-devel >= 0.8
 BuildRequires: xorg-lib-libX11-devel
 BuildRequires: xorg-lib-libXScrnSaver-devel
@@ -112,20 +115,37 @@ BuildRequires:    zlib-devel >= 1.2.3
 BuildConflicts:        %{name}-devel < %{version}
 Requires(post):        mktemp >= 1.5-18
 Requires:      browser-plugins >= 2.0
+Requires:      cairo >= 1.10.2-5
+Requires:      dbus-glib >= 0.60
 Requires:      desktop-file-utils
+Requires:      fontconfig-libs >= 1:2.7.0
+Requires:      glib2 >= 1:2.22
+%{!?with_gtk3:Requires:        gtk+2 >= 2:2.18.0}
+%{?with_gtk3:Requires: gtk+3 >= 3.4.0}
 Requires:      hicolor-icon-theme
+Requires:      libjpeg-turbo
+Requires:      libpng >= 2:1.6.28
+Requires:      libpng(APNG) >= 0.10
+Requires:      libvpx >= 1.5.0
 Requires:      myspell-common
 Requires:      nspr >= 1:%{nspr_ver}
 Requires:      nss >= 1:%{nss_ver}
-Requires:      %{name}-libs = %{version}-%{release}
+Requires:      pango >= 1:1.22.0
+Requires:      sqlite3 >= %{sqlite_build_version}
+Requires:      startup-notification >= 0.8
+Provides:      xulrunner-libs = 2:%{version}-%{release}
 Provides:      wwwbrowser
+Obsoletes:     firefox-devel
+Obsoletes:     firefox-libs
 Obsoletes:     iceweasel
+Obsoletes:     iceweasel-libs
 Obsoletes:     mozilla-firebird
 Obsoletes:     mozilla-firefox
 Obsoletes:     mozilla-firefox-lang-en < 2.0.0.8-3
 Obsoletes:     mozilla-firefox-libs
 Obsoletes:     xulrunner
 Obsoletes:     xulrunner-gnome
+Obsoletes:     xulrunner-libs
 Conflicts:     firefox-lang-resources < %{version}
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
@@ -135,7 +155,7 @@ BuildRoot:  %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 %define                _noautoprovfiles        %{_libdir}/%{name}
 
 # and as we don't provide them, don't require either
-%define                _noautoreq      libmozjs.so libxul.so
+%define                _noautoreq      liblgpllibs.so libmozavcodec.so libmozavutil.so libmozgtk.so libmozjs.so libmozsandbox.so libxul.so
 
 %description
 Firefox is an open-source web browser, designed for standards
@@ -150,53 +170,6 @@ 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 libs
-Summary:       Firefox shared libraries
-Summary(pl.UTF-8):     Biblioteki współdzielone Firefoxa
-Group:         X11/Libraries
-Requires:      cairo >= 1.10.2-5
-Requires:      dbus-glib >= 0.60
-Requires:      glib2 >= 1:2.22
-%{!?with_gtk3:Requires:        gtk+2 >= 2:2.18.0}
-%{?with_gtk3:Requires: gtk+3 >= 3.4.0}
-Requires:      libjpeg-turbo
-Requires:      libpng >= 2:1.6.19
-Requires:      libpng(APNG) >= 0.10
-Requires:      libvpx >= 1.3.0
-Requires:      pango >= 1:1.22.0
-Requires:      sqlite3 >= %{sqlite_build_version}
-Requires:      startup-notification >= 0.8
-Provides:      xulrunner-libs = 2:%{version}-%{release}
-Obsoletes:     iceweasel-libs
-Obsoletes:     xulrunner-libs
-
-%description libs
-XULRunner shared libraries.
-
-%description libs -l pl.UTF-8
-Biblioteki współdzielone XULRunnera.
-
-%package devel
-Summary:       Headers for developing programs that will use Firefox
-Summary(pl.UTF-8):     Pliki nagłówkowe do tworzenia programów używających Firefox
-Group:         X11/Development/Libraries
-Requires:      %{name}-libs = %{version}-%{release}
-Requires:      nspr-devel >= 1:%{nspr_ver}
-Requires:      nss-devel >= 1:%{nss_ver}
-Requires:      python-ply
-Provides:      xulrunner-devel = 2:%{version}-%{release}
-Obsoletes:     iceweasel-devel
-Obsoletes:     mozilla-devel
-Obsoletes:     mozilla-firefox-devel
-Obsoletes:     seamonkey-devel
-Obsoletes:     xulrunner-devel
-
-%description devel
-Firefox development package.
-
-%description devel -l pl.UTF-8
-Pakiet programistyczny Firefoxa.
-
 %prep
 %setup -q
 
@@ -208,7 +181,6 @@ echo 'LOCAL_INCLUDES += $(MOZ_HUNSPELL_CFLAGS)' >> extensions/spellcheck/src/Mak
 %patch0 -p2
 %patch1 -p1
 %patch2 -p2
-%patch3 -p1
 %patch4 -p1
 %patch5 -p1
 %patch6 -p2
@@ -261,6 +233,7 @@ 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
@@ -279,7 +252,7 @@ ac_add_options --with-default-mozilla-five-home=%{_libdir}/%{name}
 ac_add_options --with-distribution-id=org.pld-linux
 ac_add_options --with-pthreads
 ac_add_options --with-system-bz2
-ac_add_options --with-system-icu
+ac_add_options --with%{!?with_system_icu:out}-system-icu
 ac_add_options --with-system-jpeg
 ac_add_options --with-system-libevent
 ac_add_options --with-system-libvpx
@@ -314,39 +287,18 @@ install -d \
        $RPM_BUILD_ROOT%{_desktopdir} \
        $RPM_BUILD_ROOT%{_datadir}/%{name}/browser \
        $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/plugins \
-       $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/sdk/{lib,bin} \
        $RPM_BUILD_ROOT%{_includedir}/%{name} \
-       $RPM_BUILD_ROOT%{_datadir}/idl/%{name} \
        $RPM_BUILD_ROOT%{_pkgconfigdir}
 
 %browser_plugins_add_browser %{name} -p %{_libdir}/%{name}/browser/plugins
 
 cd obj-%{_target_cpu}
-%{__make} -C browser/installer stage-package libxul.pc libxul-embedding.pc mozilla-js.pc mozilla-plugin.pc \
+%{__make} -C browser/installer stage-package \
        DESTDIR=$RPM_BUILD_ROOT \
        installdir=%{_libdir}/%{name} \
-       INSTALL_SDK=1 \
        PKG_SKIP_STRIP=1
 
-cp -aL browser/installer/*.pc $RPM_BUILD_ROOT%{_pkgconfigdir}
 cp -aL dist/firefox/* $RPM_BUILD_ROOT%{_libdir}/%{name}/
-cp -aL dist/idl/* $RPM_BUILD_ROOT%{_datadir}/idl/%{name}
-cp -aL dist/include/* $RPM_BUILD_ROOT%{_includedir}/%{name}
-cp -aL dist/include/xpcom-config.h $RPM_BUILD_ROOT%{_libdir}/%{name}-devel
-cp -aL dist/sdk/lib/* $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/sdk/lib
-cp -aL dist/sdk/bin/* $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/sdk/bin
-find $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/sdk -name "*.pyc" | xargs rm -f
-
-ln -s %{_libdir}/%{name} $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/bin
-ln -s %{_includedir}/%{name} $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/include
-ln -s %{_datadir}/idl/%{name} $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/idl
-ln -s %{_libdir}/%{name}-devel/sdk/lib $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/lib
-
-# replace copies with symlinks
-%{?with_shared_js:ln -sf %{_libdir}/%{name}/libmozjs.so $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/sdk/lib/libmozjs.so}
-ln -sf %{_libdir}/%{name}/libxul.so $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/sdk/lib/libxul.so
-# temp fix for https://bugzilla.mozilla.org/show_bug.cgi?id=63955
-chmod a+rx $RPM_BUILD_ROOT%{_libdir}/%{name}-devel/sdk/bin/xpt.py
 
 # move arch independant ones to datadir
 mv $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/chrome $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/chrome
@@ -382,10 +334,6 @@ cp -a %{SOURCE6} $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/defaults/preferences
 cp -a %{SOURCE5} $RPM_BUILD_ROOT%{_datadir}/%{name}/browser/defaults/preferences/vendor.js
 %endif
 
-# files created by firefox -register
-touch $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/components/compreg.dat
-touch $RPM_BUILD_ROOT%{_libdir}/%{name}/browser/components/xpti.dat
-
 cat << 'EOF' > $RPM_BUILD_ROOT%{_sbindir}/%{name}-chrome+xpcom-generate
 #!/bin/sh
 umask 022
@@ -431,7 +379,6 @@ fi
 %config(noreplace) %verify(not md5 mtime size) %{_browserpluginsconfdir}/blacklist.d/%{name}.*.blacklist
 
 %dir %{_libdir}/%{name}/browser
-%dir %{_libdir}/%{name}/browser/components
 %dir %{_libdir}/%{name}/browser/plugins
 %dir %{_libdir}/%{name}/browser/features
 
@@ -450,34 +397,34 @@ 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
 %{_libdir}/%{name}/browser/blocklist.xml
 %{_libdir}/%{name}/browser/chrome.manifest
-%{_libdir}/%{name}/browser/components/components.manifest
-%attr(755,root,root) %{_libdir}/%{name}/browser/components/libbrowsercomps.so
 # the signature of the default theme
 %{_datadir}/%{name}/browser/extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}.xpi
 %{_libdir}/%{name}/browser/omni.ja
 
+%{_libdir}/%{name}/browser/features/aushelper@mozilla.org.xpi
 %{_libdir}/%{name}/browser/features/e10srollout@mozilla.org.xpi
 %{_libdir}/%{name}/browser/features/firefox@getpocket.com.xpi
 %{_libdir}/%{name}/browser/features/webcompat@mozilla.org.xpi
-
-# files created by firefox -register
-%ghost %{_libdir}/%{name}/browser/components/compreg.dat
-%ghost %{_libdir}/%{name}/browser/components/xpti.dat
+%{_libdir}/%{name}/browser/features/screenshots@mozilla.org.xpi
 
 %attr(755,root,root) %{_libdir}/%{name}/plugin-container
 %{_libdir}/%{name}/dictionaries
 
+%dir %{_libdir}/%{name}/fonts
+%{_libdir}/%{name}/fonts/EmojiOneMozilla.ttf
+
 %dir %{_libdir}/%{name}/gmp-clearkey
 %dir %{_libdir}/%{name}/gmp-clearkey/0.1
-%{_libdir}/%{name}/gmp-clearkey/0.1/clearkey.info
+%{_libdir}/%{name}/gmp-clearkey/0.1/manifest.json
 %attr(755,root,root) %{_libdir}/%{name}/gmp-clearkey/0.1/libclearkey.so
+%{!?with_system_icu:%{_libdir}/%{name}/icudt58l.dat}
 
-%files libs
-%defattr(644,root,root,755)
 %dir %{_libdir}/%{name}
 %{_libdir}/%{name}/platform.ini
 %{?with_shared_js:%attr(755,root,root) %{_libdir}/%{name}/libmozjs.so}
@@ -485,6 +432,7 @@ fi
 %attr(755,root,root) %{_libdir}/%{name}/libxul.so
 %attr(755,root,root) %{_libdir}/%{name}/libmozavcodec.so
 %attr(755,root,root) %{_libdir}/%{name}/libmozavutil.so
+%attr(755,root,root) %{_libdir}/%{name}/libmozsandbox.so
 %{_libdir}/%{name}/dependentlibs.list
 %{_libdir}/%{name}/omni.ja
 %if %{with gtk3}
@@ -492,31 +440,3 @@ fi
 %attr(755,root,root) %{_libdir}/%{name}/gtk2/libmozgtk.so
 %attr(755,root,root) %{_libdir}/%{name}/libmozgtk.so
 %endif
-
-%files devel
-%defattr(644,root,root,755)
-%{_includedir}/%{name}
-%{_datadir}/idl/%{name}
-%dir %{_libdir}/%{name}-devel
-%{_libdir}/%{name}-devel/bin
-%{_libdir}/%{name}-devel/idl
-%{_libdir}/%{name}-devel/lib
-%{_libdir}/%{name}-devel/include
-%{_libdir}/%{name}-devel/*.h
-%dir %{_libdir}/%{name}-devel/sdk
-%{_libdir}/%{name}-devel/sdk/lib
-%dir %{_libdir}/%{name}-devel/sdk/bin
-%attr(755,root,root) %{_libdir}/%{name}-devel/sdk/bin/header.py
-%attr(755,root,root) %{_libdir}/%{name}-devel/sdk/bin/run-mozilla.sh
-%attr(755,root,root) %{_libdir}/%{name}-devel/sdk/bin/typelib.py
-%attr(755,root,root) %{_libdir}/%{name}-devel/sdk/bin/xpcshell
-%attr(755,root,root) %{_libdir}/%{name}-devel/sdk/bin/xpidl.py
-%{_libdir}/%{name}-devel/sdk/bin/xpidllex.py
-%{_libdir}/%{name}-devel/sdk/bin/xpidlyacc.py
-%attr(755,root,root) %{_libdir}/%{name}-devel/sdk/bin/xpt.py
-%{_libdir}/%{name}-devel/sdk/bin/ply
-
-%{_pkgconfigdir}/libxul.pc
-%{_pkgconfigdir}/libxul-embedding.pc
-%{_pkgconfigdir}/mozilla-js.pc
-%{_pkgconfigdir}/mozilla-plugin.pc
This page took 0.244752 seconds and 4 git commands to generate.