X-Git-Url: http://git.pld-linux.org/?p=packages%2Ffirefox.git;a=blobdiff_plain;f=firefox.spec;h=23beb1ae222974960fdf5d84ac53273e74e2db03;hp=aab2e10e13f9a3260610cb3789472943345d1f03;hb=412ccc4;hpb=27896e279d6c21ca4c3e9d7d28927c602f6be543 diff --git a/firefox.spec b/firefox.spec index aab2e10..23beb1a 100644 --- a/firefox.spec +++ b/firefox.spec @@ -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_without clang # build using Clang/LLVM # On updating version, grab CVE links from: # https://www.mozilla.org/security/known-vulnerabilities/firefox.html @@ -19,25 +20,24 @@ # 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.1 +Version: 55.0.3 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: bb6cc95056feba6acc487d773bc13e71 +# Source0-md5: bc55a68fdd6770215cfa7a49fe7e3c98 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 @@ -49,15 +49,16 @@ Patch10: freetype.patch URL: https://www.mozilla.org/firefox/ BuildRequires: OpenGL-devel BuildRequires: alsa-lib-devel -BuildRequires: automake BuildRequires: autoconf2_13 +BuildRequires: automake BuildRequires: bzip2-devel BuildRequires: cairo-devel >= 1.10.2-5 BuildRequires: cargo +%{?with_clang:BuildRequires: clang} 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 +%{!?with_clang:BuildRequires: gcc-c++ >= 6:4.4} BuildRequires: glib2-devel >= 1:2.22 BuildRequires: gstreamer-devel >= 1.0 BuildRequires: gstreamer-plugins-base-devel >= 1.0 @@ -66,6 +67,7 @@ BuildRequires: gstreamer-plugins-base-devel >= 1.0 %{?with_kerberos:BuildRequires: heimdal-devel >= 0.7.1} BuildRequires: hunspell-devel >= 1.6.1 BuildRequires: libIDL-devel >= 0.8.0 +BuildRequires: libatomic-devel # DECnet (dnprogs.spec), not dummy net (libdnet.spec) #BuildRequires: libdnet-devel BuildRequires: libevent-devel >= 1.4.7 @@ -151,6 +153,10 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %define filterout_cpp -D_FORTIFY_SOURCE=[0-9]+ +%if %{with clang} +%define filterout -fvar-tracking-assignments +%endif + # don't satisfy other packages %define _noautoprovfiles %{_libdir}/%{name} @@ -170,6 +176,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 @@ -179,7 +199,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 @@ -201,6 +220,13 @@ 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" @@ -217,7 +243,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 @@ -233,14 +259,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} @@ -295,20 +319,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 @@ -324,7 +348,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 @@ -354,6 +378,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 @@ -411,10 +439,13 @@ 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/webcompat@mozilla.org.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 %{_libdir}/%{name}/dictionaries @@ -443,3 +474,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