MozillaFirefox/MozillaFirefox.spec
branchfirefox69
changeset 1111 97a6da6d7e29
parent 1110 9e4b30f05706
child 1112 8a4f5aea2475
equal deleted inserted replaced
1110:9e4b30f05706 1111:97a6da6d7e29
    17 #
    17 #
    18 
    18 
    19 
    19 
    20 # changed with every update
    20 # changed with every update
    21 %define major          69
    21 %define major          69
    22 %define mainver        %major.0.1
    22 %define mainver        %major.0.3
    23 %define orig_version   69.0.1
    23 %define orig_version   69.0.3
    24 %define orig_suffix    %{nil}
    24 %define orig_suffix    %{nil}
    25 %define update_channel release
    25 %define update_channel release
    26 %define branding       1
    26 %define branding       1
    27 %define releasedate    20190917135527
    27 %define devpkg         1
    28 %define source_prefix  firefox-%{orig_version}
    28 %define releasedate    20191009172106
    29 
    29 
    30 # always build with GCC as SUSE Security Team requires that
    30 # always build with GCC as SUSE Security Team requires that
    31 %define clang_build 0
    31 %define clang_build 0
    32 
    32 
    33 # PIE, full relro
    33 # PIE, full relro
    43 %endif
    43 %endif
    44 
    44 
    45 # general build definitions
    45 # general build definitions
    46 %define progname firefox
    46 %define progname firefox
    47 %define pkgname  MozillaFirefox
    47 %define pkgname  MozillaFirefox
       
    48 %define srcname  firefox
    48 %define appname  Firefox
    49 %define appname  Firefox
    49 %define progdir %{_prefix}/%_lib/%{progname}
    50 %define progdir %{_prefix}/%_lib/%{progname}
    50 %define gnome_dir     %{_prefix}
    51 %define gnome_dir     %{_prefix}
    51 %define desktop_file_name %{progname}
    52 %define desktop_file_name %{progname}
    52 %define firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
    53 %define firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
    91 BuildRequires:  rust-cbindgen >= 0.9.0
    92 BuildRequires:  rust-cbindgen >= 0.9.0
    92 BuildRequires:  startup-notification-devel
    93 BuildRequires:  startup-notification-devel
    93 BuildRequires:  unzip
    94 BuildRequires:  unzip
    94 BuildRequires:  update-desktop-files
    95 BuildRequires:  update-desktop-files
    95 BuildRequires:  xorg-x11-libXt-devel
    96 BuildRequires:  xorg-x11-libXt-devel
       
    97 %if 0%{?do_profiling}
    96 BuildRequires:  xvfb-run
    98 BuildRequires:  xvfb-run
       
    99 %endif
    97 BuildRequires:  yasm
   100 BuildRequires:  yasm
    98 BuildRequires:  zip
   101 BuildRequires:  zip
    99 %if 0%{?suse_version} < 1550
   102 %if 0%{?suse_version} < 1550
   100 BuildRequires:  pkgconfig(gconf-2.0) >= 1.2.1
   103 BuildRequires:  pkgconfig(gconf-2.0) >= 1.2.1
   101 %endif
   104 %endif
   135 Summary:        Mozilla %{appname} Web Browser
   138 Summary:        Mozilla %{appname} Web Browser
   136 License:        MPL-2.0
   139 License:        MPL-2.0
   137 Group:          Productivity/Networking/Web/Browsers
   140 Group:          Productivity/Networking/Web/Browsers
   138 Url:            http://www.mozilla.org/
   141 Url:            http://www.mozilla.org/
   139 %if !%{with only_print_mozconfig}
   142 %if !%{with only_print_mozconfig}
   140 Source:         http://ftp.mozilla.org/pub/%{progname}/releases/%{version}%{orig_suffix}/source/firefox-%{orig_version}%{orig_suffix}.source.tar.xz
   143 Source:         http://ftp.mozilla.org/pub/%{srcname}/releases/%{version}%{orig_suffix}/source/%{srcname}-%{orig_version}%{orig_suffix}.source.tar.xz
   141 Source1:        MozillaFirefox.desktop
   144 Source1:        MozillaFirefox.desktop
   142 Source2:        MozillaFirefox-rpmlintrc
   145 Source2:        MozillaFirefox-rpmlintrc
   143 Source3:        mozilla.sh.in
   146 Source3:        mozilla.sh.in
   144 Source4:        tar_stamps
   147 Source4:        tar_stamps
   145 Source5:        source-stamp.txt
   148 Source5:        source-stamp.txt
   146 Source6:        kde.js
       
   147 Source7:        l10n-%{orig_version}%{orig_suffix}.tar.xz
   149 Source7:        l10n-%{orig_version}%{orig_suffix}.tar.xz
   148 Source8:        firefox-mimeinfo.xml
   150 Source8:        firefox-mimeinfo.xml
   149 Source9:        firefox.js
   151 Source9:        firefox.js
   150 Source10:       compare-locales.tar.xz
   152 Source10:       compare-locales.tar.xz
   151 Source11:       firefox.1
   153 Source11:       firefox.1
   152 Source12:       mozilla-get-app-id
   154 Source12:       mozilla-get-app-id
   153 Source13:       spellcheck.js
   155 Source13:       spellcheck.js
   154 Source14:       https://github.com/openSUSE/firefox-scripts/raw/master/create-tar.sh
   156 Source14:       https://github.com/openSUSE/firefox-scripts/raw/master/create-tar.sh
   155 Source15:       firefox-appdata.xml
   157 Source15:       firefox-appdata.xml
   156 Source16:       MozillaFirefox.changes
   158 Source16:       %{name}.changes
   157 # Set up API keys, see http://www.chromium.org/developers/how-tos/api-keys
   159 # 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,
   160 # Note: these are for the openSUSE Firefox builds ONLY. For your own distribution,
   159 # please get your own set of keys.
   161 # please get your own set of keys.
   160 Source18:       mozilla-api-key
   162 Source18:       mozilla-api-key
   161 Source19:       google-api-key
   163 Source19:       google-api-key
   162 Source20:       https://ftp.mozilla.org/pub/%{progname}/releases/%{version}%{orig_suffix}/source/%{progname}-%{orig_version}%{orig_suffix}.source.tar.xz.asc
   164 Source20:       https://ftp.mozilla.org/pub/%{srcname}/releases/%{version}%{orig_suffix}/source/%{srcname}-%{orig_version}%{orig_suffix}.source.tar.xz.asc
   163 Source21:       https://ftp.mozilla.org/pub/%{progname}/releases/%{version}%{orig_suffix}/KEY#/mozilla.keyring
   165 Source21:       https://ftp.mozilla.org/pub/%{srcname}/releases/%{version}%{orig_suffix}/KEY#/mozilla.keyring
   164 # Gecko/Toolkit
   166 # Gecko/Toolkit
   165 Patch1:         mozilla-nongnome-proxies.patch
   167 Patch1:         mozilla-nongnome-proxies.patch
   166 Patch2:         mozilla-kde.patch
   168 Patch2:         mozilla-kde.patch
   167 Patch3:         mozilla-ntlm-full-path.patch
   169 Patch3:         mozilla-ntlm-full-path.patch
   168 Patch4:         mozilla-openaes-decl.patch
   170 Patch4:         mozilla-openaes-decl.patch
   183 Patch19:        mozilla-bmo1504834-part3.patch
   185 Patch19:        mozilla-bmo1504834-part3.patch
   184 Patch20:        mozilla-bmo1511604.patch
   186 Patch20:        mozilla-bmo1511604.patch
   185 Patch21:        mozilla-bmo1554971.patch
   187 Patch21:        mozilla-bmo1554971.patch
   186 Patch22:        mozilla-nestegg-big-endian.patch
   188 Patch22:        mozilla-nestegg-big-endian.patch
   187 Patch23:        mozilla-bmo1512162.patch
   189 Patch23:        mozilla-bmo1512162.patch
       
   190 Patch24:        mozilla-fix-top-level-asm.patch
   188 # Firefox/browser
   191 # Firefox/browser
   189 Patch101:       firefox-kde.patch
   192 Patch101:       firefox-kde.patch
   190 Patch102:       firefox-branded-icons.patch
   193 Patch102:       firefox-branded-icons.patch
   191 Patch103:       firefox-add-kde.js-in-order-to-survive-PGO-build.patch
       
   192 %endif # only_print_mozconfig
   194 %endif # only_print_mozconfig
   193 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
   195 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
   194 Requires(post):   coreutils shared-mime-info desktop-file-utils
   196 Requires(post):   coreutils shared-mime-info desktop-file-utils
   195 Requires(postun): shared-mime-info desktop-file-utils
   197 Requires(postun): shared-mime-info desktop-file-utils
   196 %if %branding
   198 Requires:       %{name}-branding >= 68
   197 Requires:       %{name}-branding > 44.0
       
   198 %endif
       
   199 Requires:       mozilla-nspr >= %(rpm -q --queryformat '%%{VERSION}' mozilla-nspr)
   199 Requires:       mozilla-nspr >= %(rpm -q --queryformat '%%{VERSION}' mozilla-nspr)
   200 Requires:       mozilla-nss >= %(rpm -q --queryformat '%%{VERSION}' mozilla-nss)
   200 Requires:       mozilla-nss >= %(rpm -q --queryformat '%%{VERSION}' mozilla-nss)
   201 Recommends:     libcanberra0
   201 Recommends:     libcanberra0
   202 Recommends:     libpulse0
   202 Recommends:     libpulse0
   203 # addon leads to startup crash (bnc#908892)
   203 # addon leads to startup crash (bnc#908892)
   204 Obsoletes:      tracker-miner-firefox < 0.15
   204 Obsoletes:      tracker-miner-firefox < 0.15
       
   205 %if 0%{?devpkg} == 0
       
   206 Obsoletes:      %{name}-devel < %{version}
       
   207 %endif
   205 # libproxy's mozjs pacrunner crashes FF (bnc#759123)
   208 # libproxy's mozjs pacrunner crashes FF (bnc#759123)
   206 %if 0%{?suse_version} < 1220
   209 %if 0%{?suse_version} < 1220
   207 Obsoletes:      libproxy1-pacrunner-mozjs <= 0.4.7
   210 Obsoletes:      libproxy1-pacrunner-mozjs <= 0.4.7
   208 %endif
   211 %endif
   209 ##BuildArch:      i686 x86_64 aarch64 ppc64le
   212 ##BuildArch:      i686 x86_64 aarch64 ppc64le
   211 %description
   214 %description
   212 Mozilla Firefox is a standalone web browser, designed for standards
   215 Mozilla Firefox is a standalone web browser, designed for standards
   213 compliance and performance.  Its functionality can be enhanced via a
   216 compliance and performance.  Its functionality can be enhanced via a
   214 plethora of extensions.
   217 plethora of extensions.
   215 
   218 
       
   219 %if 0%{?devpkg}
   216 %package devel
   220 %package devel
   217 Summary:        Devel package for %{appname}
   221 Summary:        Devel package for %{appname}
   218 Group:          Development/Tools/Other
   222 Group:          Development/Tools/Other
   219 Provides:       firefox-devel = %{version}-%{release}
   223 Provides:       firefox-devel = %{version}-%{release}
   220 Requires:       %{name} = %{version}
   224 Requires:       %{name} = %{version}
   221 Requires:       perl(Archive::Zip)
   225 Requires:       perl(Archive::Zip)
   222 Requires:       perl(XML::Simple)
   226 Requires:       perl(XML::Simple)
   223 
   227 
   224 %description devel
   228 %description devel
   225 Development files for %{appname} to make packaging of addons easier.
   229 Development files for %{appname} to make packaging of addons easier.
       
   230 %endif
   226 
   231 
   227 %if %localize
   232 %if %localize
   228 %package translations-common
   233 %package translations-common
   229 Summary:        Common translations for %{appname}
   234 Summary:        Common translations for %{appname}
   230 Group:          System/Localization
   235 Group:          System/Localization
   237 of %{appname}.
   242 of %{appname}.
   238 
   243 
   239 %package translations-other
   244 %package translations-other
   240 Summary:        Extra translations for %{appname}
   245 Summary:        Extra translations for %{appname}
   241 Group:          System/Localization
   246 Group:          System/Localization
   242 Provides:       locale(%{name}:ach;af;an;as;ast;az;bg;bn_BD;bn_IN;br;bs;cak;cy;dsb;en_ZA;eo;es_MX;et;eu;fa;ff;fy_NL;ga_IE;gd;gl;gn;gu_IN;he;hi_IN;hr;hsb;hy_AM;id;is;ka;kab;kk;km;kn;lij;lt;lv;mai;mk;ml;mr;ms;ne-NP;nn_NO;oc;or;pa_IN;rm;ro;si;sk;sl;son;sq;sr;ta;te;th;tr;uk;uz;vi;xh)
   247 Provides:       locale(%{name}:ach;af;an;ast;az;be;bg;bn;br;bs;cak;cy;dsb;en_CA;eo;es_MX;et;eu;fa;ff;fy_NL;ga_IE;gd;gl;gn;gu_IN;he;hi_IN;hr;hsb;hy_AM;ia;id;is;ka;kab;kk;km;kn;lij;lt;lv;mk;mr;ms;my;ne_NP;nn_NO;oc;pa_IN;rm;ro;si;sk;sl;son;sq;sr;ta;te;th;tr;uk;ur;uz;vi;xh)
   243 Requires:       %{name} = %{version}
   248 Requires:       %{name} = %{version}
   244 Obsoletes:      %{name}-translations < %{version}-%{release}
   249 Obsoletes:      %{name}-translations < %{version}-%{release}
   245 
   250 
   246 %description translations-other
   251 %description translations-other
   247 This package contains rarely used languages for the user interface
   252 This package contains rarely used languages for the user interface
   248 of %{appname}.
   253 of %{appname}.
   249 %endif
   254 %endif
   250 
   255 
   251 %if %branding
       
   252 %package branding-upstream
   256 %package branding-upstream
   253 Summary:        Upstream branding for %{appname}
   257 Summary:        Upstream branding for %{appname}
   254 Group:          Productivity/Networking/Web/Browsers
   258 Group:          Productivity/Networking/Web/Browsers
   255 Provides:       %{name}-branding = %{version}
   259 Provides:       %{name}-branding = %{version}
   256 Conflicts:      otherproviders(%{name}-branding)
   260 Conflicts:      otherproviders(%{name}-branding)
   265 #BRAND: custom preference overrides.
   269 #BRAND: custom preference overrides.
   266 #BRAND: It's also possible to drop files in /usr/lib/firefox/distribution/searchplugins/common/
   270 #BRAND: It's also possible to drop files in /usr/lib/firefox/distribution/searchplugins/common/
   267 
   271 
   268 %description branding-upstream
   272 %description branding-upstream
   269 This package provides upstream look and feel for %{appname}.
   273 This package provides upstream look and feel for %{appname}.
   270 %endif
       
   271 
   274 
   272 %if %crashreporter
   275 %if %crashreporter
   273 %package buildsymbols
   276 %package buildsymbols
   274 Summary:        Breakpad buildsymbols for %{appname}
   277 Summary:        Breakpad buildsymbols for %{appname}
   275 Group:          Development/Debug
   278 Group:          Development/Debug
   289 if (( $(stat -Lc%s "%{SOURCE7}") < MINSIZE)); then
   292 if (( $(stat -Lc%s "%{SOURCE7}") < MINSIZE)); then
   290     echo "Translations tarball %{SOURCE7} not generated properly."
   293     echo "Translations tarball %{SOURCE7} not generated properly."
   291     exit 1
   294     exit 1
   292 fi
   295 fi
   293 
   296 
   294 %setup -q -n %{source_prefix} -b 7 -b 10
   297 %setup -q -n %{srcname}-%{orig_version} -b 7 -b 10
   295 %else
   298 %else
   296 %setup -q -n %{source_prefix}
   299 %setup -q -n %{srcname}-%{orig_version}
   297 %endif
   300 %endif
   298 cd $RPM_BUILD_DIR/%{source_prefix}
   301 cd $RPM_BUILD_DIR/%{srcname}-%{orig_version}
   299 %patch1 -p1
   302 %patch1 -p1
   300 %patch2 -p1
   303 %patch2 -p1
   301 %patch3 -p1
   304 %patch3 -p1
   302 %patch4 -p1
   305 %patch4 -p1
   303 %patch5 -p1
   306 %patch5 -p1
   319 %patch19 -p1
   322 %patch19 -p1
   320 %patch20 -p1
   323 %patch20 -p1
   321 %patch21 -p1
   324 %patch21 -p1
   322 %patch22 -p1
   325 %patch22 -p1
   323 %patch23 -p1
   326 %patch23 -p1
       
   327 %patch24 -p1
   324 # Firefox
   328 # Firefox
   325 %patch101 -p1
   329 %patch101 -p1
   326 %patch102 -p1
   330 %patch102 -p1
   327 %patch103 -p1
       
   328 %endif # only_print_mozconfig
   331 %endif # only_print_mozconfig
   329 
   332 
   330 %build
   333 %build
   331 %if !%{with only_print_mozconfig}
   334 %if !%{with only_print_mozconfig}
   332 # no need to add build time to binaries
   335 # no need to add build time to binaries
   446 %endif
   449 %endif
   447 %ifarch aarch64 %arm s390x
   450 %ifarch aarch64 %arm s390x
   448 ac_add_options --disable-webrtc
   451 ac_add_options --disable-webrtc
   449 %endif
   452 %endif
   450 # mitigation/workaround for bmo#1512162
   453 # mitigation/workaround for bmo#1512162
   451 %ifarch ppc64le s390x
   454 %ifarch s390x
   452 ac_add_options --enable-optimize="-O1"
   455 ac_add_options --enable-optimize="-O1"
   453 %endif
   456 %endif
   454 %ifarch x86_64
   457 %ifarch x86_64
   455 # LTO needs newer toolchain stack only (at least GCC 8.2.1 (r268506)
   458 # LTO needs newer toolchain stack only (at least GCC 8.2.1 (r268506)
   456 %if 0%{?suse_version} > 1500
   459 %if 0%{?suse_version} > 1500
   457 ac_add_options --enable-lto
   460 ac_add_options --enable-lto
       
   461 %if 0%{?do_profiling}
   458 ac_add_options MOZ_PGO=1
   462 ac_add_options MOZ_PGO=1
       
   463 %endif
   459 %endif
   464 %endif
   460 %endif
   465 %endif
   461 EOF
   466 EOF
   462 %if !%{with only_print_mozconfig}
   467 %if !%{with only_print_mozconfig}
   463 %ifarch ppc64 s390x s390
   468 %ifarch ppc64 s390x s390
   468 echo "Generate big endian version of config/external/icu/data/icud58l.dat"
   473 echo "Generate big endian version of config/external/icu/data/icud58l.dat"
   469 ./mach python intl/icu_sources_data.py .
   474 ./mach python intl/icu_sources_data.py .
   470 ls -l config/external/icu/data
   475 ls -l config/external/icu/data
   471 rm -f config/external/icu/data/icudt*l.dat
   476 rm -f config/external/icu/data/icudt*l.dat
   472 %endif
   477 %endif
   473 xvfb-run --server-args="-screen 0 1920x1080x24" ./mach build
   478 %if 0%{?do_profiling}
       
   479 xvfb-run --server-args="-screen 0 1920x1080x24" \
       
   480 %endif
       
   481 ./mach build -v
   474 %endif # only_print_mozconfig
   482 %endif # only_print_mozconfig
   475 
   483 
   476 %install
   484 %install
   477 cd $RPM_BUILD_DIR/obj
   485 cd $RPM_BUILD_DIR/obj
   478 source %{SOURCE5}
   486 source %{SOURCE5}
   485 make -C browser/installer STRIP=/bin/true MOZ_PKG_FATAL_WARNINGS=0
   493 make -C browser/installer STRIP=/bin/true MOZ_PKG_FATAL_WARNINGS=0
   486 #DEBUG (break the build if searchplugins are missing / temporary)
   494 #DEBUG (break the build if searchplugins are missing / temporary)
   487 grep amazondotcom dist/firefox/browser/omni.ja
   495 grep amazondotcom dist/firefox/browser/omni.ja
   488 # copy tree into RPM_BUILD_ROOT
   496 # copy tree into RPM_BUILD_ROOT
   489 mkdir -p %{buildroot}%{progdir}
   497 mkdir -p %{buildroot}%{progdir}
   490 cp -rf $RPM_BUILD_DIR/obj/dist/%{progname}/* %{buildroot}%{progdir}
   498 cp -rf $RPM_BUILD_DIR/obj/dist/%{srcname}/* %{buildroot}%{progdir}
   491 mkdir -p %{buildroot}%{progdir}/distribution/extensions
   499 mkdir -p %{buildroot}%{progdir}/distribution/extensions
   492 mkdir -p %{buildroot}%{progdir}/browser/defaults/preferences/
   500 mkdir -p %{buildroot}%{progdir}/browser/defaults/preferences/
       
   501 # renaming executables (for regular vs. ESR)
       
   502 %if "%{srcname}" != "%{progname}"
       
   503 mv %{buildroot}%{progdir}/%{srcname} %{buildroot}%{progdir}/%{progname}
       
   504 mv %{buildroot}%{progdir}/%{srcname}-bin %{buildroot}%{progdir}/%{progname}
       
   505 %endif
   493 # install gre prefs
   506 # install gre prefs
   494 install -m 644 %{SOURCE13} %{buildroot}%{progdir}/defaults/pref/
   507 install -m 644 %{SOURCE13} %{buildroot}%{progdir}/defaults/pref/
   495 # install browser prefs
   508 # install browser prefs
   496 install -m 644 %{SOURCE6} %{buildroot}%{progdir}/browser/defaults/preferences/kde.js
       
   497 install -m 644 %{SOURCE9} %{buildroot}%{progdir}/browser/defaults/preferences/firefox.js
   509 install -m 644 %{SOURCE9} %{buildroot}%{progdir}/browser/defaults/preferences/firefox.js
   498 # build additional locales
   510 # build additional locales
   499 %if %localize
   511 %if %localize
   500 mkdir -p %{buildroot}%{progdir}/browser/extensions
   512 mkdir -p %{buildroot}%{progdir}/browser/extensions
   501 truncate -s 0 %{_tmppath}/translations.{common,other}
   513 truncate -s 0 %{_tmppath}/translations.{common,other}
   502 sed -r '/^(ja-JP-mac|en-US|)$/d;s/ .*$//' $RPM_BUILD_DIR/%{source_prefix}/browser/locales/shipped-locales \
   514 sed -r '/^(ja-JP-mac|en-US|)$/d;s/ .*$//' $RPM_BUILD_DIR/%{srcname}-%{orig_version}/browser/locales/shipped-locales \
   503     | xargs -n 1 -I {} /bin/sh -c '
   515     | xargs -n 1 -I {} /bin/sh -c '
   504         locale=$1
   516         locale=$1
   505         pushd $RPM_BUILD_DIR/compare-locales
   517         pushd $RPM_BUILD_DIR/compare-locales
   506         PYTHONPATH=lib \
   518         PYTHONPATH=lib \
   507             scripts/compare-locales -m ../l10n-merged/$locale \
   519             scripts/compare-locales -m ../l10n-merged/$locale \
   508             ../%{source_prefix}/browser/locales/l10n.ini ../l10n $locale
   520             ../%{srcname}-%{orig_version}/browser/locales/l10n.ini ../l10n $locale
   509         popd
   521         popd
   510         LOCALE_MERGEDIR=$RPM_BUILD_DIR/l10n-merged/$locale \
   522         LOCALE_MERGEDIR=$RPM_BUILD_DIR/l10n-merged/$locale \
   511             make -C browser/locales langpack-$locale
   523             make -C browser/locales langpack-$locale
   512         cp -rL dist/xpi-stage/locale-$locale \
   524         cp -rL dist/xpi-stage/locale-$locale \
   513             %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org
   525             %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org
   539 find %{buildroot}%{progdir} -type f -name ".mkdir.done" -delete
   551 find %{buildroot}%{progdir} -type f -name ".mkdir.done" -delete
   540 # overwrite the mozilla start-script and link it to /usr/bin
   552 # overwrite the mozilla start-script and link it to /usr/bin
   541 mkdir --parents %{buildroot}/usr/bin
   553 mkdir --parents %{buildroot}/usr/bin
   542 sed "s:%%PREFIX:%{_prefix}:g
   554 sed "s:%%PREFIX:%{_prefix}:g
   543 s:%%PROGDIR:%{progdir}:g
   555 s:%%PROGDIR:%{progdir}:g
   544 s:%%APPNAME:firefox:g
   556 s:%%APPNAME:%{progname}:g
   545 s:%%PROFILE:.mozilla/firefox:g" \
   557 s:%%PROFILE:.mozilla/firefox:g" \
   546   %{SOURCE3} > %{buildroot}%{progdir}/%{progname}.sh
   558   %{SOURCE3} > %{buildroot}%{progdir}/%{progname}.sh
   547 chmod 755 %{buildroot}%{progdir}/%{progname}.sh
   559 chmod 755 %{buildroot}%{progdir}/%{progname}.sh
   548 ln -sf ../..%{progdir}/%{progname}.sh %{buildroot}%{_bindir}/%{progname}
   560 ln -sf ../..%{progdir}/%{progname}.sh %{buildroot}%{_bindir}/%{progname}
   549 # desktop file
   561 # desktop file
   556 # additional mime-types
   568 # additional mime-types
   557 mkdir -p %{buildroot}%{_datadir}/mime/packages
   569 mkdir -p %{buildroot}%{_datadir}/mime/packages
   558 cp %{SOURCE8} %{buildroot}%{_datadir}/mime/packages/%{progname}.xml
   570 cp %{SOURCE8} %{buildroot}%{_datadir}/mime/packages/%{progname}.xml
   559 # appdata
   571 # appdata
   560 mkdir -p %{buildroot}%{_datadir}/appdata
   572 mkdir -p %{buildroot}%{_datadir}/appdata
   561 cp %{SOURCE15} %{buildroot}%{_datadir}/appdata/%{desktop_file_name}.appdata.xml
   573 sed "s:firefox.desktop:%{desktop_file_name}:g" \
       
   574   %{SOURCE15} > %{buildroot}%{_datadir}/appdata/%{desktop_file_name}.appdata.xml
   562 # install man-page
   575 # install man-page
   563 mkdir -p %{buildroot}%{_mandir}/man1/
   576 mkdir -p %{buildroot}%{_mandir}/man1/
   564 cp %{SOURCE11} %{buildroot}%{_mandir}/man1/%{progname}.1
   577 cp %{SOURCE11} %{buildroot}%{_mandir}/man1/%{progname}.1
   565 ##########
   578 ##########
   566 # ADDONS
   579 # ADDONS
   586 rm -f %{buildroot}%{progdir}/old-homepage-default.properties
   599 rm -f %{buildroot}%{progdir}/old-homepage-default.properties
   587 rm -f %{buildroot}%{progdir}/run-mozilla.sh
   600 rm -f %{buildroot}%{progdir}/run-mozilla.sh
   588 rm -f %{buildroot}%{progdir}/LICENSE
   601 rm -f %{buildroot}%{progdir}/LICENSE
   589 rm -f %{buildroot}%{progdir}/precomplete
   602 rm -f %{buildroot}%{progdir}/precomplete
   590 rm -f %{buildroot}%{progdir}/update-settings.ini
   603 rm -f %{buildroot}%{progdir}/update-settings.ini
       
   604 %if 0%{?devpkg}
   591 # devel
   605 # devel
   592 mkdir -p %{buildroot}%{_bindir}
   606 mkdir -p %{buildroot}%{_bindir}
   593 install -m 755 %SOURCE12 %{buildroot}%{_bindir}
   607 install -m 755 %SOURCE12 %{buildroot}%{_bindir}
   594 # inspired by mandriva
   608 # inspired by mandriva
   595 mkdir -p %{buildroot}%{_sysconfdir}/rpm
   609 mkdir -p %{buildroot}%{_sysconfdir}/rpm
   607    extdir="%%{buildroot}%%{firefox_extdir}/`mozilla-get-app-id '%%1'`" \
   621    extdir="%%{buildroot}%%{firefox_extdir}/`mozilla-get-app-id '%%1'`" \
   608    mkdir -p "$extdir" \
   622    mkdir -p "$extdir" \
   609    %%{__unzip} -q -d "$extdir" "%%1" \
   623    %%{__unzip} -q -d "$extdir" "%%1" \
   610    %%{nil}
   624    %%{nil}
   611 FIN
   625 FIN
   612 # just dumping an xpi file there doesn't work...
   626 %endif
   613 #%%firefox_ext_install() \
       
   614 #       extdir="%%{buildroot}%%{firefox_extdir}" \
       
   615 #       mkdir -p "$extdir" \
       
   616 #       cp "%%1" "$extdir" \
       
   617 #       %%{nil}
       
   618 # fdupes
   627 # fdupes
   619 %fdupes %{buildroot}%{progdir}
   628 %fdupes %{buildroot}%{progdir}
   620 %fdupes %{buildroot}%{_datadir}
   629 %fdupes %{buildroot}%{_datadir}
   621 # create breakpad debugsymbols
   630 # create breakpad debugsymbols
   622 %if %crashreporter
   631 %if %crashreporter
   666 %{progdir}/defaults/
   675 %{progdir}/defaults/
   667 %dir %{progdir}/gtk2
   676 %dir %{progdir}/gtk2
   668 %{progdir}/gtk2/libmozgtk.so
   677 %{progdir}/gtk2/libmozgtk.so
   669 %{progdir}/gmp-clearkey/
   678 %{progdir}/gmp-clearkey/
   670 %attr(755,root,root) %{progdir}/%{progname}.sh
   679 %attr(755,root,root) %{progdir}/%{progname}.sh
   671 %{progdir}/firefox
   680 %{progdir}/%{progname}
   672 %{progdir}/firefox-bin
   681 %{progdir}/%{progname}-bin
   673 %{progdir}/application.ini
   682 %{progdir}/application.ini
   674 %{progdir}/chrome.manifest
   683 %{progdir}/chrome.manifest
   675 %{progdir}/dependentlibs.list
   684 %{progdir}/dependentlibs.list
   676 %{progdir}/*.so
   685 %{progdir}/*.so
   677 %{progdir}/omni.ja
   686 %{progdir}/omni.ja
   698 %{gnome_dir}/share/icons/hicolor/
   707 %{gnome_dir}/share/icons/hicolor/
   699 %{_bindir}/%{progname}
   708 %{_bindir}/%{progname}
   700 %doc %{_mandir}/man1/%{progname}.1.gz
   709 %doc %{_mandir}/man1/%{progname}.1.gz
   701 %{_datadir}/appdata/
   710 %{_datadir}/appdata/
   702 
   711 
       
   712 %if 0%{?devpkg}
   703 %files devel
   713 %files devel
   704 %defattr(-,root,root)
   714 %defattr(-,root,root)
   705 %{_bindir}/mozilla-get-app-id
   715 %{_bindir}/mozilla-get-app-id
   706 %config %{_sysconfdir}/rpm/macros.%{progname}
   716 %config %{_sysconfdir}/rpm/macros.%{progname}
       
   717 %endif
   707 
   718 
   708 %if %localize
   719 %if %localize
   709 
       
   710 %files translations-common -f %{_tmppath}/translations.common
   720 %files translations-common -f %{_tmppath}/translations.common
   711 %defattr(-,root,root)
   721 %defattr(-,root,root)
   712 %dir %{progdir}
   722 %dir %{progdir}
   713 %dir %{progdir}/browser/extensions/
   723 %dir %{progdir}/browser/extensions/
   714 
   724 
   718 %dir %{progdir}/browser/extensions/
   728 %dir %{progdir}/browser/extensions/
   719 %endif
   729 %endif
   720 
   730 
   721 # this package does not need to provide files but is needed to fulfill
   731 # this package does not need to provide files but is needed to fulfill
   722 # requirements if no other branding package is to be installed
   732 # requirements if no other branding package is to be installed
   723 %if %branding
       
   724 %files branding-upstream
   733 %files branding-upstream
   725 %defattr(-,root,root)
   734 %defattr(-,root,root)
   726 %dir %{progdir}
   735 %dir %{progdir}
   727 %endif
       
   728 
   736 
   729 %if %crashreporter
   737 %if %crashreporter
   730 %files buildsymbols
   738 %files buildsymbols
   731 %defattr(-,root,root)
   739 %defattr(-,root,root)
   732 %{_datadir}/mozilla/*.zip
   740 %{_datadir}/mozilla/*.zip