MozillaFirefox/MozillaFirefox.spec
branchfirefox60
changeset 1047 847ae61baab6
parent 1046 75893a3d8fbe
child 1048 a6a2360bc1bd
equal deleted inserted replaced
1046:75893a3d8fbe 1047:847ae61baab6
    16 # Please submit bugfixes or comments via http://bugs.opensuse.org/
    16 # Please submit bugfixes or comments via http://bugs.opensuse.org/
    17 #
    17 #
    18 
    18 
    19 
    19 
    20 # changed with every update
    20 # changed with every update
    21 %define major 59
    21 %define major 60
    22 %define mainver %major.99
    22 %define mainver %major.0
    23 %define update_channel beta
    23 %define update_channel release
    24 %define branding 1
    24 %define branding 1
    25 %define releasedate 20180426170554
    25 %define releasedate 20180503143129
       
    26 %define source_prefix firefox-%{mainver}
    26 
    27 
    27 # PIE, full relro (x86_64 for now)
    28 # PIE, full relro (x86_64 for now)
    28 %define build_hardened 1
    29 %define build_hardened 1
    29 
    30 
    30 # Firefox only supports i686
    31 # Firefox only supports i686
   118 Provides:       mozilla-kde4-version = %{kde_helper_version}
   119 Provides:       mozilla-kde4-version = %{kde_helper_version}
   119 Summary:        Mozilla %{appname} Web Browser
   120 Summary:        Mozilla %{appname} Web Browser
   120 License:        MPL-2.0
   121 License:        MPL-2.0
   121 Group:          Productivity/Networking/Web/Browsers
   122 Group:          Productivity/Networking/Web/Browsers
   122 Url:            http://www.mozilla.org/
   123 Url:            http://www.mozilla.org/
   123 Source:         firefox-%{version}-source.tar.xz
   124 Source:         http://ftp.mozilla.org/pub/firefox/releases/%{version}/source/firefox-%{version}.source.tar.xz
   124 Source1:        MozillaFirefox.desktop
   125 Source1:        MozillaFirefox.desktop
   125 Source2:        MozillaFirefox-rpmlintrc
   126 Source2:        MozillaFirefox-rpmlintrc
   126 Source3:        mozilla.sh.in
   127 Source3:        mozilla.sh.in
   127 Source5:        source-stamp.txt
   128 Source5:        source-stamp.txt
   128 Source6:        kde.js
   129 Source6:        kde.js
   139 # Set up API keys, see http://www.chromium.org/developers/how-tos/api-keys
   140 # Set up API keys, see http://www.chromium.org/developers/how-tos/api-keys
   140 # Note: these are for the openSUSE Firefox builds ONLY. For your own distribution,
   141 # Note: these are for the openSUSE Firefox builds ONLY. For your own distribution,
   141 # please get your own set of keys.
   142 # please get your own set of keys.
   142 Source18:       mozilla-api-key
   143 Source18:       mozilla-api-key
   143 Source19:       google-api-key
   144 Source19:       google-api-key
       
   145 Source20:       http://ftp.mozilla.org/pub/firefox/releases/%{version}/source/firefox-%{version}.source.tar.xz.asc
       
   146 Source21:       mozilla.keyring
   144 # Gecko/Toolkit
   147 # Gecko/Toolkit
   145 Patch1:         mozilla-nongnome-proxies.patch
   148 Patch1:         mozilla-nongnome-proxies.patch
   146 Patch2:         mozilla-kde.patch
   149 Patch2:         mozilla-kde.patch
   147 Patch3:         mozilla-ntlm-full-path.patch
   150 Patch3:         mozilla-ntlm-full-path.patch
   148 Patch4:         mozilla-openaes-decl.patch
   151 Patch4:         mozilla-openaes-decl.patch
   204 of %{appname}.
   207 of %{appname}.
   205 
   208 
   206 %package translations-other
   209 %package translations-other
   207 Summary:        Extra translations for %{appname}
   210 Summary:        Extra translations for %{appname}
   208 Group:          System/Localization
   211 Group:          System/Localization
   209 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;or;pa_IN;rm;ro;si;sk;sl;son;sq;sr;ta;te;th;tr;uk;uz;vi;xh)
   212 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)
   210 Requires:       %{name} = %{version}
   213 Requires:       %{name} = %{version}
   211 Obsoletes:      %{name}-translations < %{version}-%{release}
   214 Obsoletes:      %{name}-translations < %{version}-%{release}
   212 
   215 
   213 %description translations-other
   216 %description translations-other
   214 This package contains rarely used languages for the user interface
   217 This package contains rarely used languages for the user interface
   246 symbols meant for upload to Mozilla's crash collector database.
   249 symbols meant for upload to Mozilla's crash collector database.
   247 %endif
   250 %endif
   248 
   251 
   249 %prep
   252 %prep
   250 %if %localize
   253 %if %localize
   251 %setup -q -n mozilla -b 7 -b 10
   254 %setup -q -n %{source_prefix} -b 7 -b 10
   252 %else
   255 %else
   253 %setup -q -n mozilla
   256 %setup -q -n %{source_prefix}
   254 %endif
   257 %endif
   255 cd $RPM_BUILD_DIR/mozilla
   258 cd $RPM_BUILD_DIR/%{source_prefix}
   256 %patch1 -p1
   259 %patch1 -p1
   257 %patch2 -p1
   260 %patch2 -p1
   258 %patch3 -p1
   261 %patch3 -p1
   259 %patch4 -p1
   262 %patch4 -p1
   260 %patch5 -p1
   263 %patch5 -p1
   315 %endif
   318 %endif
   316 %ifarch ppc64 ppc64le
   319 %ifarch ppc64 ppc64le
   317 export CFLAGS="$CFLAGS -mminimal-toc"
   320 export CFLAGS="$CFLAGS -mminimal-toc"
   318 %endif
   321 %endif
   319 export CXXFLAGS="$CFLAGS"
   322 export CXXFLAGS="$CFLAGS"
       
   323 %ifarch %{arm}
       
   324 export RUSTFLAGS="-Cdebuginfo=0"
       
   325 %endif
   320 export MOZCONFIG=$RPM_BUILD_DIR/mozconfig
   326 export MOZCONFIG=$RPM_BUILD_DIR/mozconfig
   321 cat << EOF > $MOZCONFIG
   327 cat << EOF > $MOZCONFIG
   322 mk_add_options MOZILLA_OFFICIAL=1
   328 mk_add_options MOZILLA_OFFICIAL=1
   323 mk_add_options BUILD_OFFICIAL=1
   329 mk_add_options BUILD_OFFICIAL=1
   324 mk_add_options MOZ_MAKE_FLAGS=%{?jobs:-j%jobs}
   330 mk_add_options MOZ_MAKE_FLAGS=%{?jobs:-j%jobs}
   369 ac_add_options --disable-crashreporter
   375 ac_add_options --disable-crashreporter
   370 %endif
   376 %endif
   371 %ifarch %arm
   377 %ifarch %arm
   372 ac_add_options --with-fpu=vfpv3-d16
   378 ac_add_options --with-fpu=vfpv3-d16
   373 ac_add_options --with-float-abi=hard
   379 ac_add_options --with-float-abi=hard
       
   380 %ifarch armv6l armv6hl
       
   381 ac_add_options --with-arch=armv6
       
   382 %else
   374 ac_add_options --with-arch=armv7-a
   383 ac_add_options --with-arch=armv7-a
       
   384 %endif
   375 %endif
   385 %endif
   376 %ifarch %arm s390x
   386 %ifarch %arm s390x
   377 ac_add_options --disable-webrtc
   387 ac_add_options --disable-webrtc
   378 %endif
   388 %endif
   379 EOF
   389 EOF
   403 install -m 644 %{SOURCE9} %{buildroot}%{progdir}/browser/defaults/preferences/firefox.js
   413 install -m 644 %{SOURCE9} %{buildroot}%{progdir}/browser/defaults/preferences/firefox.js
   404 # install additional locales
   414 # install additional locales
   405 %if %localize
   415 %if %localize
   406 rm -f %{_tmppath}/translations.*
   416 rm -f %{_tmppath}/translations.*
   407 touch %{_tmppath}/translations.{common,other}
   417 touch %{_tmppath}/translations.{common,other}
   408 for locale in $(cat $RPM_BUILD_DIR/mozilla/browser/locales/shipped-locales) ; do
   418 for locale in $(cat $RPM_BUILD_DIR/%{source_prefix}/browser/locales/shipped-locales) ; do
   409   case $locale in
   419   case $locale in
   410    ja-JP-mac|en-US|'')
   420    ja-JP-mac|en-US|'')
   411 	;;
   421 	;;
   412    *)
   422    *)
   413    	pushd $RPM_BUILD_DIR/compare-locales
   423    	pushd $RPM_BUILD_DIR/compare-locales
   414 	PYTHONPATH=lib \
   424 	PYTHONPATH=lib \
   415 	  scripts/compare-locales -m ../l10n-merged/$locale \
   425 	  scripts/compare-locales -m ../l10n-merged/$locale \
   416 	  ../mozilla/browser/locales/l10n.ini ../l10n $locale
   426 	  ../%{source_prefix}/browser/locales/l10n.ini ../l10n $locale
   417 	popd
   427 	popd
   418 	LOCALE_MERGEDIR=$RPM_BUILD_DIR/l10n-merged/$locale \
   428 	LOCALE_MERGEDIR=$RPM_BUILD_DIR/l10n-merged/$locale \
   419   	make -C browser/locales langpack-$locale
   429   	make -C browser/locales langpack-$locale
   420 	cp -rL dist/xpi-stage/locale-$locale \
   430 	cp -rL dist/xpi-stage/locale-$locale \
   421 	       %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org
   431 	       %{buildroot}%{progdir}/browser/extensions/langpack-$locale@firefox.mozilla.org
   442      -name "*.dtd" -o \
   452      -name "*.dtd" -o \
   443      -name "*.txt" -o \
   453      -name "*.txt" -o \
   444      -name "*.xml" -o \
   454      -name "*.xml" -o \
   445      -name "*.css" | xargs chmod a-x
   455      -name "*.css" | xargs chmod a-x
   446 # remove mkdir.done files from installed base
   456 # remove mkdir.done files from installed base
   447 find %{buildroot}%{progdir} -name ".mkdir.done" | xargs rm
   457 find %{buildroot}%{progdir} -name ".mkdir.done" | xargs rm || :
   448 # overwrite the mozilla start-script and link it to /usr/bin
   458 # overwrite the mozilla start-script and link it to /usr/bin
   449 mkdir --parents %{buildroot}/usr/bin
   459 mkdir --parents %{buildroot}/usr/bin
   450 sed "s:%%PREFIX:%{_prefix}:g
   460 sed "s:%%PREFIX:%{_prefix}:g
   451 s:%%PROGDIR:%{progdir}:g
   461 s:%%PROGDIR:%{progdir}:g
   452 s:%%APPNAME:firefox:g
   462 s:%%APPNAME:firefox:g