MozillaFirefox/MozillaFirefox.spec
changeset 1129 146af4f081b9
parent 1128 0d95fa645411
child 1130 ea7152ed4a37
equal deleted inserted replaced
1116:52b1745787cf 1129:146af4f081b9
     1 #
     1 #
     2 # spec file for package MozillaFirefox
     2 # spec file for package MozillaFirefox
     3 #
     3 #
     4 # Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
     4 # Copyright (c) 2020 SUSE LLC
     5 #               2006-2019 Wolfgang Rosenauer <wr@rosenauer.org>
     5 #               2006-2020 Wolfgang Rosenauer <wr@rosenauer.org>
     6 #
     6 #
     7 # All modifications and additions to the file contributed by third parties
     7 # All modifications and additions to the file contributed by third parties
     8 # remain the property of their copyright owners, unless otherwise agreed
     8 # remain the property of their copyright owners, unless otherwise agreed
     9 # upon. The license for this file, and modifications and additions to the
     9 # upon. The license for this file, and modifications and additions to the
    10 # file, is the same license as for the pristine package itself (unless the
    10 # file, is the same license as for the pristine package itself (unless the
    16 # Please submit bugfixes or comments via https://bugs.opensuse.org/
    16 # Please submit bugfixes or comments via https://bugs.opensuse.org/
    17 #
    17 #
    18 
    18 
    19 
    19 
    20 # changed with every update
    20 # changed with every update
    21 %define major          70
    21 %define major          77
    22 %define mainver        %major.99
    22 %define mainver        %major.0.1
    23 %define orig_version   71.0
    23 %define orig_version   77.0.1
    24 %define orig_suffix    b11
    24 %define orig_suffix    %{nil}
    25 %define update_channel beta
    25 %define update_channel release
    26 %define branding       1
    26 %define branding       1
    27 %define devpkg         1
    27 %define devpkg         1
    28 
    28 
    29 # always build with GCC as SUSE Security Team requires that
    29 # PGO builds do not work in TW currently (bmo#1642410)
       
    30 %define do_profiling   0
       
    31 
       
    32 # upstream default is clang (to use gcc for large parts set to 0)
    30 %define clang_build 0
    33 %define clang_build 0
    31 
    34 
    32 # PIE, full relro
    35 # PIE, full relro
    33 %define build_hardened 1
    36 %define build_hardened 1
    34 
    37 
    70 %if 0%{?suse_version} <= 1320
    73 %if 0%{?suse_version} <= 1320
    71 BuildRequires:  gcc7-c++
    74 BuildRequires:  gcc7-c++
    72 %else
    75 %else
    73 BuildRequires:  gcc-c++
    76 BuildRequires:  gcc-c++
    74 %endif
    77 %endif
    75 BuildRequires:  cargo >= 1.37
    78 BuildRequires:  cargo >= 1.41
    76 BuildRequires:  libXcomposite-devel
    79 BuildRequires:  libXcomposite-devel
    77 BuildRequires:  libcurl-devel
    80 BuildRequires:  libcurl-devel
    78 BuildRequires:  libidl-devel
    81 BuildRequires:  libidl-devel
    79 BuildRequires:  libiw-devel
    82 BuildRequires:  libiw-devel
    80 BuildRequires:  libnotify-devel
    83 BuildRequires:  libnotify-devel
    81 BuildRequires:  libproxy-devel
    84 BuildRequires:  libproxy-devel
    82 BuildRequires:  makeinfo
    85 BuildRequires:  makeinfo
    83 BuildRequires:  mozilla-nspr-devel >= 4.23
    86 BuildRequires:  mozilla-nspr-devel >= 4.25
    84 BuildRequires:  mozilla-nss-devel >= 3.47.1
    87 BuildRequires:  mozilla-nss-devel >= 3.52.1
    85 BuildRequires:  nasm >= 2.13
    88 BuildRequires:  nasm >= 2.14
    86 BuildRequires:  nodejs8 >= 8.11
    89 BuildRequires:  nodejs10 >= 10.19.0
    87 BuildRequires:  python-devel
    90 BuildRequires:  python-devel
    88 BuildRequires:  python2-xml
    91 BuildRequires:  python2-xml
    89 BuildRequires:  python3 >= 3.5
    92 BuildRequires:  python3 >= 3.5
    90 BuildRequires:  rust >= 1.37
    93 BuildRequires:  rust >= 1.41
    91 BuildRequires:  rust-cbindgen >= 0.9.1
    94 BuildRequires:  rust-cbindgen >= 0.14.1
    92 BuildRequires:  startup-notification-devel
    95 BuildRequires:  startup-notification-devel
    93 BuildRequires:  unzip
    96 BuildRequires:  unzip
    94 BuildRequires:  update-desktop-files
    97 BuildRequires:  update-desktop-files
    95 BuildRequires:  xorg-x11-libXt-devel
    98 BuildRequires:  xorg-x11-libXt-devel
    96 %if 0%{?do_profiling}
    99 %if 0%{?do_profiling}
    99 BuildRequires:  yasm
   102 BuildRequires:  yasm
   100 BuildRequires:  zip
   103 BuildRequires:  zip
   101 %if 0%{?suse_version} < 1550
   104 %if 0%{?suse_version} < 1550
   102 BuildRequires:  pkgconfig(gconf-2.0) >= 1.2.1
   105 BuildRequires:  pkgconfig(gconf-2.0) >= 1.2.1
   103 %endif
   106 %endif
       
   107 BuildRequires:  clang-devel >= 5
   104 BuildRequires:  pkgconfig(gdk-x11-2.0)
   108 BuildRequires:  pkgconfig(gdk-x11-2.0)
   105 BuildRequires:  pkgconfig(glib-2.0) >= 2.22
   109 BuildRequires:  pkgconfig(glib-2.0) >= 2.22
   106 BuildRequires:  pkgconfig(gobject-2.0)
   110 BuildRequires:  pkgconfig(gobject-2.0)
   107 BuildRequires:  pkgconfig(gtk+-2.0) >= 2.18.0
   111 BuildRequires:  pkgconfig(gtk+-2.0) >= 2.18.0
   108 BuildRequires:  pkgconfig(gtk+-3.0) >= 3.4.0
   112 BuildRequires:  pkgconfig(gtk+-3.0) >= 3.4.0
   109 BuildRequires:  pkgconfig(gtk+-unix-print-2.0)
   113 BuildRequires:  pkgconfig(gtk+-unix-print-2.0)
   110 BuildRequires:  pkgconfig(gtk+-unix-print-3.0)
   114 BuildRequires:  pkgconfig(gtk+-unix-print-3.0)
   111 BuildRequires:  pkgconfig(libffi)
   115 BuildRequires:  pkgconfig(libffi)
   112 BuildRequires:  pkgconfig(libpulse)
   116 BuildRequires:  pkgconfig(libpulse)
   113 %if 0%{?suse_version} > 1320
       
   114 BuildRequires:  llvm-clang-devel >= 3.9.0
       
   115 %else
       
   116 # this covers the workaround to compile on Leap 42 in OBS
       
   117 BuildRequires:  clang4-devel
       
   118 %endif
       
   119 # libavcodec is required for H.264 support but the
   117 # libavcodec is required for H.264 support but the
   120 # openSUSE version is currently not able to play H.264
   118 # openSUSE version is currently not able to play H.264
   121 # therefore the Packman version is required
   119 # therefore the Packman version is required
   122 # minimum version of libavcodec is 53
   120 # minimum version of libavcodec is 53
   123 Recommends:     libavcodec-full >= 0.10.16
   121 Recommends:     libavcodec-full >= 0.10.16
   135 %define kde_helper_version 6
   133 %define kde_helper_version 6
   136 Provides:       mozilla-kde4-version = %{kde_helper_version}
   134 Provides:       mozilla-kde4-version = %{kde_helper_version}
   137 Summary:        Mozilla %{appname} Web Browser
   135 Summary:        Mozilla %{appname} Web Browser
   138 License:        MPL-2.0
   136 License:        MPL-2.0
   139 Group:          Productivity/Networking/Web/Browsers
   137 Group:          Productivity/Networking/Web/Browsers
   140 Url:            http://www.mozilla.org/
   138 URL:            http://www.mozilla.org/
   141 %if !%{with only_print_mozconfig}
   139 %if !%{with only_print_mozconfig}
   142 Source:         http://ftp.mozilla.org/pub/%{srcname}/releases/%{version}%{orig_suffix}/source/%{srcname}-%{orig_version}%{orig_suffix}.source.tar.xz
   140 Source:         http://ftp.mozilla.org/pub/%{srcname}/releases/%{version}%{orig_suffix}/source/%{srcname}-%{orig_version}%{orig_suffix}.source.tar.xz
   143 Source1:        MozillaFirefox.desktop
   141 Source1:        MozillaFirefox.desktop
   144 Source2:        MozillaFirefox-rpmlintrc
   142 Source2:        MozillaFirefox-rpmlintrc
   145 Source3:        mozilla.sh.in
   143 Source3:        mozilla.sh.in
   146 Source4:        tar_stamps
   144 Source4:        tar_stamps
   147 Source7:        l10n-%{orig_version}%{orig_suffix}.tar.xz
   145 Source7:        l10n-%{orig_version}%{orig_suffix}.tar.xz
   148 Source8:        firefox-mimeinfo.xml
   146 Source8:        firefox-mimeinfo.xml
   149 Source9:        firefox.js
   147 Source9:        firefox.js
   150 Source10:       compare-locales.tar.xz
       
   151 Source11:       firefox.1
   148 Source11:       firefox.1
   152 Source12:       mozilla-get-app-id
   149 Source12:       mozilla-get-app-id
   153 Source13:       spellcheck.js
   150 Source13:       spellcheck.js
   154 Source14:       https://github.com/openSUSE/firefox-scripts/raw/04d38e104a6ecdea33442755282688e8090ffa66/create-tar.sh
   151 Source14:       https://github.com/openSUSE/firefox-scripts/raw/8a54002/create-tar.sh
   155 Source15:       firefox-appdata.xml
   152 Source15:       firefox-appdata.xml
   156 Source16:       %{name}.changes
   153 Source16:       %{name}.changes
   157 # Set up API keys, see http://www.chromium.org/developers/how-tos/api-keys
   154 # Set up API keys, see http://www.chromium.org/developers/how-tos/api-keys
   158 # Note: these are for the openSUSE Firefox builds ONLY. For your own distribution,
   155 # Note: these are for the openSUSE Firefox builds ONLY. For your own distribution,
   159 # please get your own set of keys.
   156 # please get your own set of keys.
   165 Patch1:         mozilla-nongnome-proxies.patch
   162 Patch1:         mozilla-nongnome-proxies.patch
   166 Patch2:         mozilla-kde.patch
   163 Patch2:         mozilla-kde.patch
   167 Patch3:         mozilla-ntlm-full-path.patch
   164 Patch3:         mozilla-ntlm-full-path.patch
   168 Patch4:         mozilla-aarch64-startup-crash.patch
   165 Patch4:         mozilla-aarch64-startup-crash.patch
   169 Patch5:         mozilla-bmo1463035.patch
   166 Patch5:         mozilla-bmo1463035.patch
   170 Patch6:         mozilla-cubeb-noreturn.patch
   167 Patch6:         mozilla-sandbox-fips.patch
   171 Patch7:         mozilla-fix-aarch64-libopus.patch
   168 Patch7:         mozilla-fix-aarch64-libopus.patch
   172 Patch8:         mozilla-disable-wasm-emulate-arm-unaligned-fp-access.patch
   169 Patch8:         mozilla-disable-wasm-emulate-arm-unaligned-fp-access.patch
   173 Patch9:         mozilla-s390-context.patch
   170 Patch9:         mozilla-s390-context.patch
   174 Patch10:        mozilla-s390-bigendian.patch
   171 Patch10:        mozilla-s390-bigendian.patch
   175 Patch11:        mozilla-reduce-rust-debuginfo.patch
   172 Patch11:        mozilla-reduce-rust-debuginfo.patch
   182 Patch18:        mozilla-bmo1554971.patch
   179 Patch18:        mozilla-bmo1554971.patch
   183 Patch19:        mozilla-bmo1512162.patch
   180 Patch19:        mozilla-bmo1512162.patch
   184 Patch20:        mozilla-fix-top-level-asm.patch
   181 Patch20:        mozilla-fix-top-level-asm.patch
   185 Patch21:        mozilla-bmo1504834-part4.patch
   182 Patch21:        mozilla-bmo1504834-part4.patch
   186 Patch22:        mozilla-bmo849632.patch
   183 Patch22:        mozilla-bmo849632.patch
       
   184 Patch23:        mozilla-bmo1634646.patch
   187 # Firefox/browser
   185 # Firefox/browser
   188 Patch101:       firefox-kde.patch
   186 Patch101:       firefox-kde.patch
   189 Patch102:       firefox-branded-icons.patch
   187 Patch102:       firefox-branded-icons.patch
   190 %endif # only_print_mozconfig
   188 %endif # only_print_mozconfig
   191 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
   189 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
   203 %endif
   201 %endif
   204 # libproxy's mozjs pacrunner crashes FF (bnc#759123)
   202 # libproxy's mozjs pacrunner crashes FF (bnc#759123)
   205 %if 0%{?suse_version} < 1220
   203 %if 0%{?suse_version} < 1220
   206 Obsoletes:      libproxy1-pacrunner-mozjs <= 0.4.7
   204 Obsoletes:      libproxy1-pacrunner-mozjs <= 0.4.7
   207 %endif
   205 %endif
   208 ##BuildArch:      i686 x86_64 aarch64 ppc64le
   206 ExcludeArch:    armv6l armv6hl
   209 
   207 
   210 %description
   208 %description
   211 Mozilla Firefox is a standalone web browser, designed for standards
   209 Mozilla Firefox is a standalone web browser, designed for standards
   212 compliance and performance.  Its functionality can be enhanced via a
   210 compliance and performance.  Its functionality can be enhanced via a
   213 plethora of extensions.
   211 plethora of extensions.
   288 if (( $(stat -Lc%s "%{SOURCE7}") < MINSIZE)); then
   286 if (( $(stat -Lc%s "%{SOURCE7}") < MINSIZE)); then
   289     echo "Translations tarball %{SOURCE7} not generated properly."
   287     echo "Translations tarball %{SOURCE7} not generated properly."
   290     exit 1
   288     exit 1
   291 fi
   289 fi
   292 
   290 
   293 %setup -q -n %{srcname}-%{orig_version} -b 7 -b 10
   291 %setup -q -n %{srcname}-%{orig_version} -b 7
   294 %else
   292 %else
   295 %setup -q -n %{srcname}-%{orig_version}
   293 %setup -q -n %{srcname}-%{orig_version}
   296 %endif
   294 %endif
   297 cd $RPM_BUILD_DIR/%{srcname}-%{orig_version}
   295 cd $RPM_BUILD_DIR/%{srcname}-%{orig_version}
   298 %patch1 -p1
   296 %patch1 -p1
   317 %patch18 -p1
   315 %patch18 -p1
   318 %patch19 -p1
   316 %patch19 -p1
   319 %patch20 -p1
   317 %patch20 -p1
   320 %patch21 -p1
   318 %patch21 -p1
   321 %patch22 -p1
   319 %patch22 -p1
       
   320 %patch23 -p1
   322 # Firefox
   321 # Firefox
   323 %patch101 -p1
   322 %patch101 -p1
   324 %patch102 -p1
   323 %patch102 -p1
   325 %endif # only_print_mozconfig
   324 %endif # only_print_mozconfig
   326 
   325 
   378 echo "export LDFLAGS=\"$LDFLAGS\""
   377 echo "export LDFLAGS=\"$LDFLAGS\""
   379 echo "export RUSTFLAGS=\"$RUSTFLAGS\""
   378 echo "export RUSTFLAGS=\"$RUSTFLAGS\""
   380 echo ""
   379 echo ""
   381 cat << EOF
   380 cat << EOF
   382 %else
   381 %else
       
   382 %ifarch ppc64 ppc64le
       
   383 %limit_build -m 2500
       
   384 %else
   383 %limit_build -m 2000
   385 %limit_build -m 2000
       
   386 %endif
   384 cat << EOF > $MOZCONFIG
   387 cat << EOF > $MOZCONFIG
   385 %endif
   388 %endif
   386 mk_add_options MOZILLA_OFFICIAL=1
   389 mk_add_options MOZILLA_OFFICIAL=1
   387 mk_add_options BUILD_OFFICIAL=1
   390 mk_add_options BUILD_OFFICIAL=1
   388 mk_add_options MOZ_MAKE_FLAGS=%{?jobs:-j%jobs}
   391 mk_add_options MOZ_MAKE_FLAGS=%{?jobs:-j%jobs}
   390 . \$topsrcdir/browser/config/mozconfig
   393 . \$topsrcdir/browser/config/mozconfig
   391 ac_add_options --prefix=%{_prefix}
   394 ac_add_options --prefix=%{_prefix}
   392 ac_add_options --libdir=%{_libdir}
   395 ac_add_options --libdir=%{_libdir}
   393 ac_add_options --includedir=%{_includedir}
   396 ac_add_options --includedir=%{_includedir}
   394 ac_add_options --enable-release
   397 ac_add_options --enable-release
   395 ac_add_options --enable-default-toolkit=cairo-gtk3
   398 ac_add_options --enable-default-toolkit=cairo-gtk3-wayland
   396 %if 0%{?suse_version} >= 1550
   399 %if 0%{?suse_version} >= 1550
   397 ac_add_options --disable-gconf
   400 ac_add_options --disable-gconf
   398 %endif
   401 %endif
   399 # bmo#1441155 - Disable the generation of Rust debug symbols on Linux32
   402 # bmo#1441155 - Disable the generation of Rust debug symbols on Linux32
   400 %ifarch %ix86 %arm
   403 %ifarch %ix86 %arm
   401 ac_add_options --disable-debug-symbols
   404 ac_add_options --disable-debug-symbols
   402 %else
   405 %else
   403 ac_add_options --enable-debug-symbols
   406 ac_add_options --enable-debug-symbols
   404 %endif
   407 %endif
   405 %if 0%{?suse_version} > 1549
   408 # building with elf-hack started to fail everywhere with FF73
       
   409 #%if 0%{?suse_version} > 1549
   406 %ifnarch aarch64 ppc64 ppc64le s390x
   410 %ifnarch aarch64 ppc64 ppc64le s390x
   407 ac_add_options --disable-elf-hack
   411 ac_add_options --disable-elf-hack
   408 %endif
   412 %endif
   409 %endif
   413 #%endif
   410 ac_add_options --with-system-nspr
   414 ac_add_options --with-system-nspr
   411 ac_add_options --with-system-nss
   415 ac_add_options --with-system-nss
   412 %if %{localize}
   416 %if %{localize}
   413 ac_add_options --with-l10n-base=$RPM_BUILD_DIR/l10n
   417 ac_add_options --with-l10n-base=$RPM_BUILD_DIR/l10n
   414 %endif
   418 %endif
   469 %endif
   473 %endif
   470 %if 0%{?do_profiling}
   474 %if 0%{?do_profiling}
   471 xvfb-run --server-args="-screen 0 1920x1080x24" \
   475 xvfb-run --server-args="-screen 0 1920x1080x24" \
   472 %endif
   476 %endif
   473 ./mach build -v
   477 ./mach build -v
       
   478 
       
   479 # build additional locales
       
   480 %if %localize
       
   481 mkdir -p %{buildroot}%{progdir}/browser/extensions
       
   482 truncate -s 0 %{_tmppath}/translations.{common,other}
       
   483 sed -r '/^(ja-JP-mac|en-US|)$/d;s/ .*$//' $RPM_BUILD_DIR/%{srcname}-%{orig_version}/browser/locales/shipped-locales \
       
   484     | xargs -n 1 -I {} /bin/sh -c '
       
   485         locale=$1
       
   486         ./mach build langpack-$locale
       
   487         cp -rL ../obj/dist/xpi-stage/locale-$locale \
       
   488             %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org
       
   489         # remove prefs, profile defaults, and hyphenation from langpack
       
   490         rm -rf %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org/defaults
       
   491         rm -rf %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org/hyphenation
       
   492         # check against the fixed common list and sort into the right filelist
       
   493         _matched=0
       
   494         for _match in ar ca cs da de el en-GB es-AR es-CL es-ES fi fr hu it ja ko nb-NO nl pl pt-BR pt-PT ru sv-SE zh-CN zh-TW; do
       
   495             [ "$_match" = "$locale" ] && _matched=1
       
   496         done
       
   497         [ $_matched -eq 1 ] && _l10ntarget=common || _l10ntarget=other
       
   498         echo %{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org \
       
   499             >> %{_tmppath}/translations.$_l10ntarget
       
   500 ' -- {}
       
   501 %endif
       
   502 
   474 %endif # only_print_mozconfig
   503 %endif # only_print_mozconfig
   475 
   504 
   476 %install
   505 %install
   477 cd $RPM_BUILD_DIR/obj
   506 cd $RPM_BUILD_DIR/obj
   478 source %{SOURCE4}
   507 source %{SOURCE4}
   497 %endif
   526 %endif
   498 # install gre prefs
   527 # install gre prefs
   499 install -m 644 %{SOURCE13} %{buildroot}%{progdir}/defaults/pref/
   528 install -m 644 %{SOURCE13} %{buildroot}%{progdir}/defaults/pref/
   500 # install browser prefs
   529 # install browser prefs
   501 install -m 644 %{SOURCE9} %{buildroot}%{progdir}/browser/defaults/preferences/firefox.js
   530 install -m 644 %{SOURCE9} %{buildroot}%{progdir}/browser/defaults/preferences/firefox.js
   502 # build additional locales
   531 
   503 %if %localize
       
   504 mkdir -p %{buildroot}%{progdir}/browser/extensions
       
   505 truncate -s 0 %{_tmppath}/translations.{common,other}
       
   506 sed -r '/^(ja-JP-mac|en-US|)$/d;s/ .*$//' $RPM_BUILD_DIR/%{srcname}-%{orig_version}/browser/locales/shipped-locales \
       
   507     | xargs -n 1 -I {} /bin/sh -c '
       
   508         locale=$1
       
   509         pushd $RPM_BUILD_DIR/compare-locales
       
   510         PYTHONPATH=lib \
       
   511             scripts/compare-locales -m ../l10n-merged/$locale \
       
   512             ../%{srcname}-%{orig_version}/browser/locales/l10n.ini ../l10n $locale
       
   513         popd
       
   514         LOCALE_MERGEDIR=$RPM_BUILD_DIR/l10n-merged/$locale \
       
   515             make -C browser/locales langpack-$locale
       
   516         cp -rL dist/xpi-stage/locale-$locale \
       
   517             %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org
       
   518         # remove prefs, profile defaults, and hyphenation from langpack
       
   519         rm -rf %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org/defaults
       
   520         rm -rf %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org/hyphenation
       
   521         # check against the fixed common list and sort into the right filelist
       
   522         _matched=0
       
   523         for _match in ar ca cs da de el en-GB es-AR es-CL es-ES fi fr hu it ja ko nb-NO nl pl pt-BR pt-PT ru sv-SE zh-CN zh-TW; do
       
   524             [ "$_match" = "$locale" ] && _matched=1
       
   525         done
       
   526         [ $_matched -eq 1 ] && _l10ntarget=common || _l10ntarget=other
       
   527         echo %{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org \
       
   528             >> %{_tmppath}/translations.$_l10ntarget
       
   529 ' -- {}
       
   530 %endif
       
   531 # remove some executable permissions
   532 # remove some executable permissions
   532 find %{buildroot}%{progdir} \
   533 find %{buildroot}%{progdir} \
   533      -name "*.js" -o \
   534      -name "*.js" -o \
   534      -name "*.jsm" -o \
   535      -name "*.jsm" -o \
   535      -name "*.rdf" -o \
   536      -name "*.rdf" -o \
   570 ##########
   571 ##########
   571 # ADDONS
   572 # ADDONS
   572 #
   573 #
   573 mkdir -p %{buildroot}%{_datadir}/mozilla/extensions/%{firefox_appid}
   574 mkdir -p %{buildroot}%{_datadir}/mozilla/extensions/%{firefox_appid}
   574 mkdir -p %{buildroot}%{_libdir}/mozilla/extensions/%{firefox_appid}
   575 mkdir -p %{buildroot}%{_libdir}/mozilla/extensions/%{firefox_appid}
   575 mkdir -p %{buildroot}/usr/share/pixmaps/
       
   576 ln -sf %{progdir}/browser/chrome/icons/default/default128.png %{buildroot}/usr/share/pixmaps/%{progname}.png
       
   577 ln -sf %{progdir}/browser/chrome/icons/default/default128.png %{buildroot}/usr/share/pixmaps/%{progname}-gnome.png
       
   578 %if %branding
   576 %if %branding
       
   577 # Install symbolic icon for GNOME
       
   578 mkdir -p %{buildroot}%{gnome_dir}/share/icons/hicolor/symbolic/apps/
       
   579 cp %{_builddir}/%{srcname}-%{orig_version}/browser/branding/official/content/identity-icons-brand.svg \
       
   580    %{buildroot}%{gnome_dir}/share/icons/hicolor/symbolic/apps/%{progname}-symbolic.svg
   579 for size in 16 22 24 32 48 64 128 256; do
   581 for size in 16 22 24 32 48 64 128 256; do
   580 %else
   582 %else
   581 for size in 16 32 48; do
   583 for size in 16 32 48; do
   582 %endif
   584 %endif
   583   mkdir -p %{buildroot}%{gnome_dir}/share/icons/hicolor/${size}x${size}/apps/
   585   mkdir -p %{buildroot}%{gnome_dir}/share/icons/hicolor/${size}x${size}/apps/
   603 # Macros from %{name} package
   605 # Macros from %{name} package
   604 %%firefox_major              %{major}
   606 %%firefox_major              %{major}
   605 %%firefox_version            %{version}
   607 %%firefox_version            %{version}
   606 %%firefox_mainver            %{mainver}
   608 %%firefox_mainver            %{mainver}
   607 %%firefox_mozillapath        %%{_libdir}/%{progname}
   609 %%firefox_mozillapath        %%{_libdir}/%{progname}
   608 %%firefox_pluginsdir         %%{_libdir}/browser-plugins
   610 %%firefox_pluginsdir         %%{_libdir}/mozilla/plugins
   609 %%firefox_appid              \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
   611 %%firefox_appid              \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
   610 %%firefox_extdir             %%(if [ "%%_target_cpu" = "noarch" ]; then echo %%{_datadir}/mozilla/extensions/%%{firefox_appid}; else echo %%{_libdir}/mozilla/extensions/%%{firefox_appid}; fi)
   612 %%firefox_extdir             %%(if [ "%%_target_cpu" = "noarch" ]; then echo %%{_datadir}/mozilla/extensions/%%{firefox_appid}; else echo %%{_libdir}/mozilla/extensions/%%{firefox_appid}; fi)
   611 
   613 
   612 %%firefox_ext_install() \
   614 %%firefox_ext_install() \
   613    extdir="%%{buildroot}%%{firefox_extdir}/`mozilla-get-app-id '%%1'`" \
   615    extdir="%%{buildroot}%%{firefox_extdir}/`mozilla-get-app-id '%%1'`" \
   657 %dir %{progdir}/browser/
   659 %dir %{progdir}/browser/
   658 %dir %{progdir}/browser/chrome/
   660 %dir %{progdir}/browser/chrome/
   659 %{progdir}/browser/defaults
   661 %{progdir}/browser/defaults
   660 %{progdir}/browser/features/
   662 %{progdir}/browser/features/
   661 %{progdir}/browser/chrome/icons
   663 %{progdir}/browser/chrome/icons
   662 %{progdir}/browser/blocklist.xml
       
   663 %{progdir}/browser/chrome.manifest
       
   664 %{progdir}/browser/omni.ja
   664 %{progdir}/browser/omni.ja
   665 %dir %{progdir}/distribution/
   665 %dir %{progdir}/distribution/
   666 %{progdir}/distribution/extensions/
   666 %{progdir}/distribution/extensions/
   667 %{progdir}/defaults/
   667 %{progdir}/defaults/
   668 %dir %{progdir}/gtk2
   668 %dir %{progdir}/gtk2
   670 %{progdir}/gmp-clearkey/
   670 %{progdir}/gmp-clearkey/
   671 %attr(755,root,root) %{progdir}/%{progname}.sh
   671 %attr(755,root,root) %{progdir}/%{progname}.sh
   672 %{progdir}/%{progname}
   672 %{progdir}/%{progname}
   673 %{progdir}/%{progname}-bin
   673 %{progdir}/%{progname}-bin
   674 %{progdir}/application.ini
   674 %{progdir}/application.ini
   675 %{progdir}/chrome.manifest
       
   676 %{progdir}/dependentlibs.list
   675 %{progdir}/dependentlibs.list
   677 %{progdir}/*.so
   676 %{progdir}/*.so
   678 %{progdir}/omni.ja
   677 %{progdir}/omni.ja
   679 %{progdir}/fonts/
   678 %{progdir}/fonts/
   680 %{progdir}/pingsender
   679 %{progdir}/pingsender
   687 %{progdir}/minidump-analyzer
   686 %{progdir}/minidump-analyzer
   688 %{progdir}/browser/crashreporter-override.ini
   687 %{progdir}/browser/crashreporter-override.ini
   689 %endif
   688 %endif
   690 %{_datadir}/applications/%{desktop_file_name}.desktop
   689 %{_datadir}/applications/%{desktop_file_name}.desktop
   691 %{_datadir}/mime/packages/%{progname}.xml
   690 %{_datadir}/mime/packages/%{progname}.xml
   692 %{_datadir}/pixmaps/firefox*
       
   693 %dir %{_datadir}/mozilla
   691 %dir %{_datadir}/mozilla
   694 %dir %{_datadir}/mozilla/extensions
   692 %dir %{_datadir}/mozilla/extensions
   695 %dir %{_datadir}/mozilla/extensions/%{firefox_appid}
   693 %dir %{_datadir}/mozilla/extensions/%{firefox_appid}
   696 %dir %{_libdir}/mozilla
   694 %dir %{_libdir}/mozilla
   697 %dir %{_libdir}/mozilla/extensions
   695 %dir %{_libdir}/mozilla/extensions