/[packages]/updates/1/firefox/current/SPECS/firefox.spec
ViewVC logotype

Annotation of /updates/1/firefox/current/SPECS/firefox.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 223319 - (hide annotations) (download)
Wed Mar 14 04:59:29 2012 UTC (9 years, 6 months ago) by fwang
File size: 15118 byte(s)
new version 1.0.3esr
1 blino 20612 #
2     # WARNING, READ FIRST:
3     #
4     # PLEASE svn cp SOURCES FROM xulrunner SOURCES INSTEAD
5     # OF COMMITING AGAIN THE TARBALL
6     #
7     # This is a special package that needs special treatment. Due to the amount of
8     # security updates it needs, it's common to ship new upstream versions instead of patching.
9     # That means this package MUST be BUILDABLE for stable official releases.
10     # This also means only STABLE upstream releases, NO betas.
11     # This is a discussed topic. Please, do not flame it again.
12    
13 dmorgan 207058 # Stay on ESR for stable releases.
14 fwang 223319 %define major 10.0.3
15 blino 20612 %define ff_epoch 0
16     # (tpg) set version HERE !!!
17 dmorgan 207058 %define realver %{major}esr
18 lmenut 130944 %define firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
19 dmorgan 128575
20 blino 20612 # (tpg) MOZILLA_FIVE_HOME
21 dmorgan 207058 %define mozillalibdir %{_libdir}/%{name}-%{major}
22 blino 20612 %define pluginsdir %{_libdir}/mozilla/plugins
23    
24     # libxul.so is provided by libxulrunnner2.0.
25     %define _requires_exceptions libxul.so
26    
27     # this seems fragile, so require the exact version or later (#58754)
28     %define sqlite3_version %(pkg-config --modversion sqlite3 &>/dev/null && pkg-config --modversion sqlite3 2>/dev/null || echo 0)
29 lmenut 130944 %define nss_version %(pkg-config --modversion nss &>/dev/null && pkg-config --modversion nss 2>/dev/null || echo 0)
30     %define nspr_version %(pkg-config --modversion nspr &>/dev/null && pkg-config --modversion nspr 2>/dev/null || echo 0)
31 blino 20612
32     %define _use_syshunspell 1
33 dmorgan 184845 %define subrel 1
34 blino 20612
35     Summary: Next generation web browser
36     Name: firefox
37 dmorgan 207058 Version: %{major}
38 blino 20612 Epoch: %{ff_epoch}
39 dmorgan 138410 Release: %mkrel 0
40 blino 20612 License: MPLv1+
41     Group: Networking/WWW
42 tv 45608 Url: http://www.mozilla.com/firefox/
43 ahmad 75375 %if 0%{?prel}
44 blino 20612 Source0: ftp://ftp.mozilla.org/pub/mozilla.org/%{name}/releases/%{realver}/source/%{name}-%{realver}%prel.source.tar.bz2
45 ahmad 75375 %else
46     Source0: ftp://ftp.mozilla.org/pub/mozilla.org/%{name}/releases/%{realver}/source/%{name}-%{realver}.source.tar.bz2
47     %endif
48 blino 20612 Source4: %{name}.desktop
49     Source9: kde.js
50 dmorgan 128575
51 dmorgan 134672 Patch1: firefox-6.0-lang.patch
52 dmorgan 128575 Patch2: firefox-vendor.patch
53 blino 20612 Patch3: mozilla-firefox-1.5.0.6-systemproxy.patch
54     # (OpenSuse) add patch to make firefox always use /usr/bin/firefox when "make firefox
55     # the default web browser" is used fix mdv bug#58784
56 dmorgan 134672 Patch5: firefox-6.0-appname.patch
57 dmorgan 128575 Patch7: mozilla-firefox-run-mozilla.patch
58     Patch8: firefox-disable-check-default-browser.patch
59     Patch10: firefox-3.5.3-default-mail-handler.patch
60     # Patches for kde integration of FF
61     Patch11: firefox-kde.patch
62     Patch12: mozilla-kde.patch
63 rtp 79029
64     # patch from https://bugzilla.mozilla.org/show_bug.cgi?id=551138
65     # we'll have to use system libffi on arm because moz folks are using
66     # vfp asm which doesn't exist on non-cortex platforms
67     # src/arm/sysv.S: Assembler messages:
68     # src/arm/sysv.S:266: Error: selected processor does not support ARM mode `flddle d0,[ip]'
69     # src/arm/sysv.S:267: Error: selected processor does not support ARM mode `fldmiadgt ip,{d0-d7}'
70     # src/arm/sysv.S:307: Error: selected processor does not support ARM mode `fstseq s0,[r2]'
71     # src/arm/sysv.S:311: Error: selected processor does not support ARM mode `fstdeq d0,[r2]'
72     # src/arm/sysv.S:316: Error: selected processor does not support ARM mode `fstmiadeq r2,{d0-d3}'
73     # src/arm/sysv.S:400: Error: selected processor does not support ARM mode `fstmfdd sp!,{d0-d7}'
74     # src/arm/sysv.S:438: Error: selected processor does not support ARM mode `flds s0,[sp]'
75     # src/arm/sysv.S:441: Error: selected processor does not support ARM mode `fldd d0,[sp]'
76     # src/arm/sysv.S:450: Error: selected processor does not support ARM mode `fldmiad sp,{d0-d1}'
77     # src/arm/sysv.S:453: Error: selected processor does not support ARM mode `fldmiad sp,{d0-d3}'
78     Patch34: xulrunner_nojit.patch
79 dmorgan 128575 Patch35: firefox-5.0-asciidel.patch
80 lmenut 130944
81 blino 20612 BuildRequires: gtk+2-devel
82     BuildRequires: unzip
83     BuildRequires: zip
84 dmorgan 134672 BuildRequires: libxinerama-devel
85 blino 20612 BuildRequires: libjpeg-devel
86     BuildRequires: zlib-devel
87     BuildRequires: glib2-devel
88     BuildRequires: libIDL2-devel
89     BuildRequires: makedepend
90 dmorgan 168153 BuildRequires: nss-devel >= 2:3.13.1
91 dmorgan 128575 BuildRequires: nss-static-devel
92 blino 20612 BuildRequires: nspr-devel >= 2:4.8.7
93     BuildRequires: startup-notification-devel
94     BuildRequires: dbus-glib-devel
95     BuildRequires: python
96 dmorgan 185216 BuildRequires: libsqlite3-devel >= 3.7.7.1
97 rtp 79029 %ifnarch %arm %mips
98 blino 20612 BuildRequires: valgrind
99 rtp 79029 BuildRequires: java-rpmbuild
100 dmorgan 128575 BuildRequires: yasm >= 1.0.1
101 rtp 79029 %endif
102     %ifarch %arm
103     BuildRequires: libffi-devel
104     %endif
105 dmorgan 141744 BuildRequires: rootcerts >= 1:20110902.00
106 blino 20612 BuildRequires: libxt-devel
107     %if %_use_syshunspell
108 dmorgan 137413 BuildRequires: hunspell-devel
109 blino 20612 %endif
110     BuildRequires: doxygen
111 lmenut 130944 # BuildRequires: xulrunner-devel >= %xulrunner_version%{?prel:-0.%prel}
112 ahmad 130767 BuildRequires: pkgconfig(libproxy-1.0)
113     BuildRequires: pkgconfig(alsa)
114 blino 20612 BuildRequires: wget
115     BuildRequires: libnotify-devel
116 ahmad 48246 BuildRequires: cairo-devel >= 1.10
117 blino 20612 BuildRequires: mesagl-devel
118 ahmad 75100 BuildRequires: libvpx-devel
119 rtp 79029 BuildRequires: autoconf2.1
120 dmorgan 128575 BuildRequires: libiw-devel
121 lmenut 130944
122 ahmad 75375 %if 0%{?prel}
123 blino 20612 Provides: %{name} = %{epoch}:%{realver}-0.%{prel}
124 ahmad 75375 %else
125     Provides: %{name} = %{epoch}:%{realver}
126 blino 20612 %endif
127 lmenut 130944 Provides: mozilla-firefox = %{epoch}:%{version}-%{release}
128 blino 20612 Provides: webclient
129 lmenut 130944
130     Requires: %{mklibname sqlite3_ 0} >= %{sqlite3_version}
131     Requires: %{mklibname nss 3} >= 2:%{nss_version}
132     Requires: %{mklibname nspr 4} >= 2:%{nspr_version}
133 blino 20612 Requires: indexhtml
134     Requires: xdg-utils
135 lmenut 130944 # fixes bug #42096
136     Requires: mailcap
137 ahmad 117224 Suggests: myspell-en_US
138     %ifarch x86_64
139     Suggests: nspluginwrapper
140     %endif
141 dmorgan 206631 Suggests: %{_lib}canberra0
142     Suggests: %{_lib}cups2
143 ahmad 75375 Obsoletes: firefox-ext-weave-sync
144 blino 20612
145     %description
146     The award-winning Web browser is now faster, more secure, and fully customizable
147 tv 45609 to your online life. With Firefox(R), we've added powerful new features that
148 blino 20612 make your online experience even better. It is an 'open source' product which is
149     freely available, and is acquiring a growing proportion of international web
150     browser usage.
151    
152     Firefox claims to offer a more secure web browsing experience than other products,
153     with better protection against spyware and other Internet-based security threats.
154     It includes all the standard features of a modern web browser, like Internet
155     searching, tracking recently visited sites, setting up shortcuts to favourite
156     sites, customising the software behaviour and so on. Firefox also includes
157     features like 'tabbed browsing' (opening several web sites as sections within the
158     same window) and methods for controlling pop-up windows, cookies and downloaded
159     files.
160    
161     %package devel
162     Summary: Development files for %{name}
163     Group: Development/Other
164    
165     %description devel
166     Files and macros mainly for building Firefox extensions.
167    
168     %prep
169 dmorgan 207058 %setup -qn mozilla-esr10
170 dmorgan 128575 %patch1 -p1 -b .lang
171     %patch2 -p1 -b .vendor
172 lmenut 130944 #patch3 -p1 -b .systemproxy
173     %patch5 -p1 -b .appname
174 blino 20612 # It was disabled because firefox3 hangs when using soundwrapper
175 dmorgan 128575 #patch7 -p1
176     %patch8 -p1 -b .disable-software-update
177     %patch10 -p1 -b .default-mail-handler
178 blino 20612 ## KDE INTEGRATION
179     # copy current files and patch them later to keep them in sync
180 dmorgan 206633 # Disable kde integration , need refactoring
181     #%patch11 -p1 -b .kde
182     #%patch12 -p1 -b .kdemoz
183 blino 20612 # install kde.js
184 dmorgan 74498 install -m 644 %{SOURCE9} browser/app/profile/kde.js
185 blino 20612
186 rtp 79029 %ifarch %arm
187     %if "%{_target_cpu}" != "armv7l"
188     %patch34 -p1
189     %endif
190     %endif
191     %patch35 -p1
192     pushd js/src
193     autoconf-2.13
194     popd
195     autoconf-2.13
196    
197 dmorgan 128575 # needed to regenerate certdata.c
198     pushd security/nss/lib/ckfw/builtins
199     perl ./certdata.perl < /etc/pki/tls/mozilla/certdata.txt
200     popd
201    
202 blino 20612 %build
203 dmorgan 149275 export MOZCONFIG=`pwd`/mozconfig
204 dmorgan 128575 cat << EOF > $MOZCONFIG
205     mk_add_options MOZILLA_OFFICIAL=1
206     mk_add_options BUILD_OFFICIAL=1
207     mk_add_options MOZ_MAKE_FLAGS="%{_smp_mflags}"
208     mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../obj
209 dmorgan 134672 ac_add_options --host=%{_host}
210     ac_add_options --target=%{_target_platform}
211     ac_add_options --enable-optimize="%{optflags}"
212 dmorgan 128575 ac_add_options --prefix="%{_prefix}"
213     ac_add_options --libdir="%{_libdir}"
214     ac_add_options --sysconfdir="%{_sysconfdir}"
215     ac_add_options --mandir="%{_mandir}"
216     ac_add_options --includedir="%{_includedir}"
217     ac_add_options --datadir="%{_datadir}"
218     ac_add_options --with-system-nspr
219     ac_add_options --with-system-nss
220     ac_add_options --with-system-zlib
221 dmorgan 134672 ac_add_options --with-system-libvpx
222     ac_add_options --enable-webm
223 lmenut 130944 ac_add_options --enable-gio
224     ac_add_options --disable-gnomevfs
225 dmorgan 128575 ac_add_options --disable-installer
226     ac_add_options --disable-updater
227     ac_add_options --disable-tests
228     ac_add_options --disable-debug
229     #ac_add_options --enable-chrome-format=jar
230     #ac_add_options --enable-update-channel=beta
231     ac_add_options --enable-official-branding
232     ac_add_options --enable-libproxy
233     ac_add_options --without-system-png
234     ac_add_options --with-system-jpeg
235     ac_add_options --enable-system-cairo
236     ac_add_options --enable-system-sqlite
237 lmenut 130944 ac_add_options --enable-startup-notification
238 dmorgan 134672 ac_add_options --enable-xinerama
239 dmorgan 128575 ac_add_options --with-distribution-id=org.mageia
240     ac_add_options --disable-crashreporter
241 rtp 79029 %ifarch %arm
242     %if "%{_target_cpu}" != "armv7l"
243 dmorgan 128575 ac_add_options --disable-methodjit
244     ac_add_options --disable-tracejit
245 rtp 79029 %endif
246 dmorgan 128575 ac_add_options --enable-system-ffi
247 rtp 79029 %endif
248     %ifnarch %arm %mips
249 dmorgan 128575 ac_add_options --with-valgrind
250     ac_add_options --with-java-include-path=%{java_home}/include
251     ac_add_options --with-java-bin-path=%{java_home}/bin
252 rtp 79029 %endif
253 blino 20612
254 dmorgan 128575 EOF
255    
256 blino 20612 %__perl -p -i -e 's|\-0|\-9|g' config/make-jars.pl
257    
258 dmorgan 134672 export LDFLAGS="%ldflags"
259 dmorgan 128575 make -f client.mk build
260 blino 20612
261     %install
262 ahmad 75100 rm -rf %{buildroot}
263 blino 20612
264 dmorgan 128575 make -C %{_builddir}/obj/browser/installer STRIP=/bin/true
265 blino 20612
266 dmorgan 128575 # Copy files to buildroot
267     %{__mkdir_p} %{buildroot}%{mozillalibdir}
268     cp -rf %{_builddir}/obj/dist/firefox/* %{buildroot}%{mozillalibdir}
269 blino 20612
270 dmorgan 128575 %{__mkdir_p} %{buildroot}%{_bindir}
271     ln -sf %{mozillalibdir}/firefox %{buildroot}%{_bindir}/firefox
272     pushd %{buildroot}%{_bindir}
273     ln -sf firefox mozilla-firefox
274     popd
275    
276 lmenut 130944 # Create and own %_libdir/mozilla/plugins & firefox extensions directories
277     %{__mkdir_p} %{buildroot}%{pluginsdir}
278     %{__mkdir_p} %{buildroot}%{_libdir}/mozilla/extensions/%{firefox_appid}
279     %{__mkdir_p} %{buildroot}%{_datadir}/mozilla/extensions/%{firefox_appid}
280 blino 20612
281     # (tpg) desktop entry
282     %{__mkdir_p} %{buildroot}%{_datadir}/applications
283     install -m 644 %{SOURCE4} %{buildroot}%{_datadir}/applications/%{name}.desktop
284    
285     # (tpg) icons
286 dmorgan 128575 %{__cp} %{buildroot}%{mozillalibdir}/chrome/icons/default/default16.png %{buildroot}/%{mozillalibdir}/icons/
287 lmenut 130944 for i in 16 22 24 32 48 256; do
288     # (cg) Not all icon sizes are installed with make install, so just redo it here.
289 dmorgan 134672 %{__install} -m 644 browser/branding/official/default$i.png %{buildroot}%{mozillalibdir}/chrome/icons/default/default$i.png
290 blino 20612 %{__mkdir_p} %{buildroot}%{_iconsdir}/hicolor/"$i"x"$i"/apps
291 lmenut 130944 ln -sf %{mozillalibdir}/chrome/icons/default/default$i.png %{buildroot}%{_iconsdir}/hicolor/"$i"x"$i"/apps/%{name}.png ;
292 blino 20612 done
293 lmenut 130944 %{__mkdir_p} %{buildroot}{%{_liconsdir},%{_iconsdir},%{_miconsdir}}
294     ln -sf %{mozillalibdir}/chrome/icons/default/default48.png %{buildroot}%{_liconsdir}/%{name}.png
295     ln -sf %{mozillalibdir}/chrome/icons/default/default32.png %{buildroot}%{_iconsdir}/%{name}.png
296     ln -sf %{mozillalibdir}/chrome/icons/default/default16.png %{buildroot}%{_miconsdir}/%{name}.png
297 blino 20612
298 dmorgan 128575 # exclusions
299     rm -f %{buildroot}%{mozillalibdir}/README.txt
300     rm -f %{buildroot}%{mozillalibdir}/removed-files
301     rm -f %{buildroot}%{mozillalibdir}/precomplete
302    
303 doktor5000 170215 # this file is only used when creating a new user profile
304 blino 20612 install -D -m644 browser/app/profile/prefs.js %{buildroot}%{mozillalibdir}/defaults/profile/prefs.js
305     cat << EOF >> %{buildroot}%{mozillalibdir}/defaults/profile/prefs.js
306     user_pref("browser.EULA.override", true);
307     user_pref("browser.shell.checkDefaultBrowser", false);
308 rda 76933 user_pref("browser.startup.homepage", "file:///usr/share/indexhtml/index.html");
309 blino 20612 user_pref("app.update.auto", false);
310     user_pref("app.update.enabled", false);
311     user_pref("app.update.autoInstallEnabled", false);
312 lmenut 130944 user_pref("browser.showQuitWarning", true);
313 blino 20612 EOF
314    
315 doktor5000 170215 # files in this directory are read on every startup, and can change/add
316     # preferences for existing profiles
317     # extensions.autoDisableScopes is a new preference added in firefox 8
318     # it defines "scopes" where newly installed addons are disabled by default
319     # this is an additive bit field, and the value defaults to 15 (1+2+4+8)
320     # we need to remove system scope (8) from it so language packs and other addons
321     # which are installed systemwide won't get marked as 3rd party and disabled
322     # documentation: http://kb.mozillazine.org/About:config_entries#Extensions.
323     # or in toolkit/mozapps/extensions/AddonManager.jsm
324     # we also need to disable the "disable addon selection dialog"
325     cat << EOF > %{buildroot}%{mozillalibdir}/defaults/pref/mga.js
326     pref("extensions.autoDisableScopes", 0);
327     pref("extensions.shownSelectionUI", true);
328     EOF
329    
330 ahmad 75106 # (ahmad) these ones belonged in prefs.js (see above), remove them until it's
331     # decided what search engines to ship by default
332     #user_pref("browser.search.selectedEngine","Ask.com");
333     #user_pref("browser.search.order.1","Ask.com");
334     #user_pref("browser.search.order.2","Exalead");
335     #user_pref("browser.search.order.3","Google");
336     #user_pref("browser.search.order.4","Yahoo");
337    
338     # (ahmad) don't install these until it's decided what search engines to ship by
339     # default
340 blino 20612 # search engines
341 ahmad 75106 #cp -f %{SOURCE5} %{buildroot}%{mozillalibdir}/searchplugins/jamendo.xml
342     #cp -f %{SOURCE6} %{buildroot}%{mozillalibdir}/searchplugins/exalead.xml
343     #cp -f %{SOURCE8} %{buildroot}%{mozillalibdir}/searchplugins/askcom.xml
344 blino 20612
345 ahmad 75106 #sed -i 's/@DISTRO_VALUE@/ffx/' %{buildroot}%{mozillalibdir}/searchplugins/askcom.xml
346     #sed -i 's/@DISTRO_VALUE@//' %{buildroot}%{mozillalibdir}/searchplugins/exalead.xml
347 blino 20612
348 lmenut 130944 # use the system myspell dictionaries
349 ahmad 130767 rm -fr %{buildroot}%{mozillalibdir}/dictionaries
350 ahmad 130768 ln -s %{_datadir}/dict/mozilla %{buildroot}%{mozillalibdir}/dictionaries
351 ahmad 130767
352 lmenut 130944 # (lm) touch and %ghost bookmarks.html to a proper uninstall
353     touch %{buildroot}%{mozillalibdir}/defaults/profile/bookmarks.html
354    
355 blino 20612 %find_lang %{name}
356    
357     mkdir -p %{buildroot}%{_sys_macros_dir}
358     cat <<FIN >%{buildroot}%{_sys_macros_dir}/%{name}.macros
359     # Macros from %{name} package
360     %%firefox_major %{major}
361     %%firefox_epoch %{ff_epoch}
362     %%firefox_version %{realver}%{?prel:-0.%prel}
363     %%firefox_mozillapath %{mozillalibdir}
364     %%firefox_pluginsdir %{pluginsdir}
365 tv 45614 %%firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
366     %%firefox_extdir %%(if [ "%%_target_cpu" = "noarch" ]; then echo %%{_datadir}/mozilla/extensions/%%{firefox_appid}; else echo %%{_libdir}/mozilla/extensions/%%{firefox_appid}; fi)
367 blino 20612 FIN
368    
369 ahmad 130767 %pre
370     if [ -d %{mozillalibdir}/dictionaries ]; then
371     rm -fr %{mozillalibdir}/dictionaries
372     fi
373    
374 blino 20612 %post
375     if [ ! -r /etc/sysconfig/oem ]; then
376     case `grep META_CLASS /etc/sysconfig/system` in
377     *powerpack) bookmark="mozilla-powerpack.html" ;;
378     *desktop) bookmark="mozilla-one.html";;
379     *) bookmark="mozilla-download.html";;
380     esac
381 lmenut 130944 ln -s -f ../../../../share/mga/bookmarks/mozilla/$bookmark %{mozillalibdir}/defaults/profile/bookmarks.html
382 blino 20612 fi
383    
384     %files -f %{name}.lang
385     %{_bindir}/%{name}
386     %{_bindir}/mozilla-firefox
387     %{_iconsdir}/hicolor/*/apps/*.png
388 lmenut 130944 %{_miconsdir}/%{name}.png
389     %{_iconsdir}/%{name}.png
390     %{_liconsdir}/%{name}.png
391 blino 20612 %{_datadir}/applications/*.desktop
392 dmorgan 207068 %{_libdir}/%{name}-%{major}*
393 lmenut 130944 %ghost %{mozillalibdir}/defaults/profile/bookmarks.html
394 blino 20612 %dir %{_libdir}/mozilla
395     %dir %{pluginsdir}
396 lmenut 130944 %dir %{_libdir}/mozilla/extensions/%{firefox_appid}
397     %dir %{_datadir}/mozilla/extensions/%{firefox_appid}
398 blino 20612
399     %files devel
400     %{_sys_macros_dir}/%{name}.macros

  ViewVC Help
Powered by ViewVC 1.1.28