/[packages]/cauldron/firefox/current/SPECS/firefox.spec
ViewVC logotype

Annotation of /cauldron/firefox/current/SPECS/firefox.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 263349 - (hide annotations) (download)
Mon Jun 25 00:18:51 2012 UTC (11 years, 10 months ago) by dmorgan
File size: 13625 byte(s)
SILENT: comment removed option
1 blino 20612 #
2     # WARNING, READ FIRST:
3     #
4     # This is a special package that needs special treatment. Due to the amount of
5     # security updates it needs, it's common to ship new upstream versions instead of patching.
6     # That means this package MUST be BUILDABLE for stable official releases.
7     # This also means only STABLE upstream releases, NO betas.
8     # This is a discussed topic. Please, do not flame it again.
9    
10 dmorgan 207054 # Stay on ESR for stable releases and for cauldron before mageia2 .
11 dmorgan 263347 %define major 14.0
12 blino 20612 %define ff_epoch 0
13     # (tpg) set version HERE !!!
14 dmorgan 263347 %define realver %{major}b9
15 lmenut 130942 %define firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
16 dmorgan 127856
17 blino 20612 # (tpg) MOZILLA_FIVE_HOME
18 fwang 206843 %define mozillalibdir %{_libdir}/%{name}-%{major}
19 blino 20612 %define pluginsdir %{_libdir}/mozilla/plugins
20    
21     # libxul.so is provided by libxulrunnner2.0.
22     %define _requires_exceptions libxul.so
23    
24     # this seems fragile, so require the exact version or later (#58754)
25     %define sqlite3_version %(pkg-config --modversion sqlite3 &>/dev/null && pkg-config --modversion sqlite3 2>/dev/null || echo 0)
26 lmenut 130942 %define nss_version %(pkg-config --modversion nss &>/dev/null && pkg-config --modversion nss 2>/dev/null || echo 0)
27 tv 211809 %define nspr_version %(pkg-config --modversion nspr &>/dev/null && pkg-config --modversion nspr 2>/dev/null |sed -e 's!\.0!!' || echo 0)
28 blino 20612
29     %define _use_syshunspell 1
30    
31 dmorgan 263348 %define release %mkrel 0.b9.1
32 blino 20612
33 dmorgan 263347 %define channel beta
34 dmorgan 256220
35 blino 20612 Summary: Next generation web browser
36     Name: firefox
37 fwang 206843 Version: %{major}
38 blino 20612 Epoch: %{ff_epoch}
39     Release: %{release}
40     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 dmorgan 256939 Source0: ftp://ftp.mozilla.org/pub/mozilla.org/%{name}/releases/%{realver}/source/%{name}-%{realver}.source.tar.bz2
47 ahmad 75375 %endif
48 blino 20612 Source4: %{name}.desktop
49     Source9: kde.js
50 fwang 133091 Patch1: firefox-6.0-lang.patch
51 dmorgan 127856 Patch2: firefox-vendor.patch
52 blino 20612 Patch3: mozilla-firefox-1.5.0.6-systemproxy.patch
53 fwang 223798 Patch4: firefox-10.0-nss-binary.patch
54 blino 20612 # (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 fwang 133095 Patch5: firefox-6.0-appname.patch
57 fwang 149203 Patch6: firefox-7.0-fix-str-fmt.patch
58 dmorgan 127856 Patch7: mozilla-firefox-run-mozilla.patch
59     Patch8: firefox-disable-check-default-browser.patch
60     Patch10: firefox-3.5.3-default-mail-handler.patch
61     # Patches for kde integration of FF
62     Patch11: firefox-kde.patch
63     Patch12: mozilla-kde.patch
64 dmorgan 249717 Patch13: firefox-13-fix-nspr-include.patch
65     Patch14: firefox-13-fix-cairo-build.patch
66 rtp 79029 Patch34: xulrunner_nojit.patch
67 fwang 128523 Patch35: firefox-5.0-asciidel.patch
68 blino 20612 BuildRequires: gtk+2-devel
69     BuildRequires: unzip
70     BuildRequires: zip
71 fwang 133282 BuildRequires: libxinerama-devel
72 fwang 164134 BuildRequires: libxscrnsaver-devel
73 blino 20612 BuildRequires: libjpeg-devel
74 fwang 142362 BuildRequires: libpng-devel >= 2:1.4
75 blino 20612 BuildRequires: zlib-devel
76     BuildRequires: glib2-devel
77     BuildRequires: libIDL2-devel
78     BuildRequires: makedepend
79 dmorgan 134679 BuildRequires: nss-devel >= 2:3.12.10
80 dmorgan 127866 BuildRequires: nss-static-devel
81 dmorgan 134676 BuildRequires: nspr-devel >= 2:4.8.9
82 blino 20612 BuildRequires: startup-notification-devel
83     BuildRequires: dbus-glib-devel
84     BuildRequires: python
85 fwang 184892 BuildRequires: sqlite3-devel >= 3.7.7.1
86 rtp 79029 %ifnarch %arm %mips
87 blino 20612 BuildRequires: valgrind
88 rtp 79029 BuildRequires: java-rpmbuild
89 dmorgan 114215 BuildRequires: yasm >= 1.0.1
90 rtp 79029 %endif
91     %ifarch %arm
92     BuildRequires: libffi-devel
93     %endif
94 dmorgan 137463 BuildRequires: rootcerts >= 1:20110830.00
95 blino 20612 BuildRequires: libxt-devel
96     %if %_use_syshunspell
97     BuildRequires: hunspell-devel
98     %endif
99     BuildRequires: doxygen
100 ahmad 130766 # BuildRequires: xulrunner-devel >= %xulrunner_version%{?prel:-0.%prel}
101     BuildRequires: pkgconfig(libproxy-1.0)
102     BuildRequires: pkgconfig(alsa)
103 blino 20612 BuildRequires: wget
104     BuildRequires: libnotify-devel
105 ahmad 48246 BuildRequires: cairo-devel >= 1.10
106 blino 20612 BuildRequires: mesagl-devel
107 ahmad 75100 BuildRequires: libvpx-devel
108 rtp 79029 BuildRequires: autoconf2.1
109 dmorgan 127865 BuildRequires: libiw-devel
110 lmenut 130942
111 ahmad 75375 %if 0%{?prel}
112 blino 20612 Provides: %{name} = %{epoch}:%{realver}-0.%{prel}
113 ahmad 75375 %else
114     Provides: %{name} = %{epoch}:%{realver}
115 blino 20612 %endif
116 lmenut 130942 Provides: mozilla-firefox = %{epoch}:%{version}-%{release}
117 blino 20612 Provides: webclient
118 lmenut 130942
119     Requires: %{mklibname sqlite3_ 0} >= %{sqlite3_version}
120     Requires: %{mklibname nss 3} >= 2:%{nss_version}
121     Requires: %{mklibname nspr 4} >= 2:%{nspr_version}
122 blino 20612 Requires: indexhtml
123     Requires: xdg-utils
124 lmenut 130942 # fixes bug #42096
125     Requires: mailcap
126 fwang 211783 Suggests: hunspell-en
127 fwang 205048 Suggests: %{_lib}canberra0
128     Suggests: %{_lib}cups2
129 ahmad 75375 Obsoletes: firefox-ext-weave-sync
130 fwang 211782 Obsoletes: firefox-beta < 11
131 blino 20612
132     %description
133     The award-winning Web browser is now faster, more secure, and fully customizable
134 tv 45609 to your online life. With Firefox(R), we've added powerful new features that
135 blino 20612 make your online experience even better. It is an 'open source' product which is
136     freely available, and is acquiring a growing proportion of international web
137     browser usage.
138    
139     Firefox claims to offer a more secure web browsing experience than other products,
140     with better protection against spyware and other Internet-based security threats.
141     It includes all the standard features of a modern web browser, like Internet
142     searching, tracking recently visited sites, setting up shortcuts to favourite
143     sites, customising the software behaviour and so on. Firefox also includes
144     features like 'tabbed browsing' (opening several web sites as sections within the
145     same window) and methods for controlling pop-up windows, cookies and downloaded
146     files.
147    
148     %package devel
149     Summary: Development files for %{name}
150     Group: Development/Other
151 fwang 215462 Obsoletes: firefox-beta-devel < 11
152 blino 20612
153     %description devel
154     Files and macros mainly for building Firefox extensions.
155    
156     %prep
157 dmorgan 256220 %setup -qn mozilla-%channel
158 dmorgan 116916 %patch1 -p1 -b .lang
159 dmorgan 127856 %patch2 -p1 -b .vendor
160 lmenut 130942 #patch3 -p1 -b .systemproxy
161 fwang 223798 %patch4 -p0 -b .nss
162 lmenut 130942 %patch5 -p1 -b .appname
163 blino 20612 # It was disabled because firefox3 hangs when using soundwrapper
164 dmorgan 127856 #patch7 -p1
165 dmorgan 252897 %patch8 -p1 -b .disable-software-update
166 dmorgan 127856 %patch10 -p1 -b .default-mail-handler
167 dmorgan 249717 %patch14 -p1
168    
169 blino 20612 ## KDE INTEGRATION
170 dmorgan 206634 # Disable kde integration , need refactoring
171 fwang 260908 #patch11 -p1 -b .kde
172     #patch12 -p1 -b .kdemoz
173 blino 20612 # install kde.js
174 dmorgan 256939 install -m 644 %{SOURCE9} browser/app/profile/kde.js
175 blino 20612
176 rtp 79029 %ifarch %arm
177     %if "%{_target_cpu}" != "armv7l"
178     %patch34 -p1
179     %endif
180     %endif
181 fwang 128523 %patch35 -p1
182 rtp 79029 pushd js/src
183     autoconf-2.13
184     popd
185     autoconf-2.13
186    
187 dmorgan 127856 # needed to regenerate certdata.c
188     pushd security/nss/lib/ckfw/builtins
189     perl ./certdata.perl < /etc/pki/tls/mozilla/certdata.txt
190     popd
191    
192 blino 20612 %build
193 fwang 149200 export MOZCONFIG=`pwd`/mozconfig
194 dmorgan 127856 cat << EOF > $MOZCONFIG
195     mk_add_options MOZILLA_OFFICIAL=1
196     mk_add_options BUILD_OFFICIAL=1
197     mk_add_options MOZ_MAKE_FLAGS="%{_smp_mflags}"
198     mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/../obj
199 fwang 132978 ac_add_options --host=%{_host}
200     ac_add_options --target=%{_target_platform}
201 fwang 205048 ac_add_options --enable-optimize="%{optflags}"
202 dmorgan 127856 ac_add_options --prefix="%{_prefix}"
203     ac_add_options --libdir="%{_libdir}"
204     ac_add_options --sysconfdir="%{_sysconfdir}"
205     ac_add_options --mandir="%{_mandir}"
206     ac_add_options --includedir="%{_includedir}"
207     ac_add_options --datadir="%{_datadir}"
208     ac_add_options --with-system-nspr
209     ac_add_options --with-system-nss
210     ac_add_options --with-system-zlib
211 fwang 133280 ac_add_options --with-system-libvpx
212     ac_add_options --enable-webm
213 lmenut 130942 ac_add_options --enable-gio
214     ac_add_options --disable-gnomevfs
215 dmorgan 263349 # This option doesn't exist anymore
216     #ac_add_options --disable-installer
217 dmorgan 127856 ac_add_options --disable-updater
218     ac_add_options --disable-tests
219     ac_add_options --disable-debug
220     #ac_add_options --enable-chrome-format=jar
221     #ac_add_options --enable-update-channel=beta
222     ac_add_options --enable-official-branding
223     ac_add_options --enable-libproxy
224 fwang 142362 ac_add_options --with-system-png
225 dmorgan 127856 ac_add_options --with-system-jpeg
226     ac_add_options --enable-system-cairo
227     ac_add_options --enable-system-sqlite
228 lmenut 130942 ac_add_options --enable-startup-notification
229 fwang 133282 ac_add_options --enable-xinerama
230 dmorgan 127856 ac_add_options --with-distribution-id=org.mageia
231     ac_add_options --disable-crashreporter
232 rtp 79029 %ifarch %arm
233     %if "%{_target_cpu}" != "armv7l"
234 dmorgan 127856 ac_add_options --disable-methodjit
235     ac_add_options --disable-tracejit
236 rtp 79029 %endif
237 dmorgan 127856 ac_add_options --enable-system-ffi
238 rtp 79029 %endif
239     %ifnarch %arm %mips
240 dmorgan 127856 ac_add_options --with-valgrind
241     ac_add_options --with-java-include-path=%{java_home}/include
242     ac_add_options --with-java-bin-path=%{java_home}/bin
243 rtp 79029 %endif
244 blino 20612
245 dmorgan 127856 EOF
246    
247 blino 20612 %__perl -p -i -e 's|\-0|\-9|g' config/make-jars.pl
248    
249 fwang 133345 export LDFLAGS="%ldflags"
250 dmorgan 127856 make -f client.mk build
251 blino 20612
252     %install
253 ahmad 75100 rm -rf %{buildroot}
254 blino 20612
255 dmorgan 127856 make -C %{_builddir}/obj/browser/installer STRIP=/bin/true
256 blino 20612
257 dmorgan 127856 # Copy files to buildroot
258     %{__mkdir_p} %{buildroot}%{mozillalibdir}
259     cp -rf %{_builddir}/obj/dist/firefox/* %{buildroot}%{mozillalibdir}
260 blino 20612
261 dmorgan 127856 %{__mkdir_p} %{buildroot}%{_bindir}
262     ln -sf %{mozillalibdir}/firefox %{buildroot}%{_bindir}/firefox
263     pushd %{buildroot}%{_bindir}
264     ln -sf firefox mozilla-firefox
265     popd
266 tv 110649
267 lmenut 130942 # Create and own %_libdir/mozilla/plugins & firefox extensions directories
268     %{__mkdir_p} %{buildroot}%{pluginsdir}
269     %{__mkdir_p} %{buildroot}%{_libdir}/mozilla/extensions/%{firefox_appid}
270     %{__mkdir_p} %{buildroot}%{_datadir}/mozilla/extensions/%{firefox_appid}
271 blino 20612
272     # (tpg) desktop entry
273     %{__mkdir_p} %{buildroot}%{_datadir}/applications
274     install -m 644 %{SOURCE4} %{buildroot}%{_datadir}/applications/%{name}.desktop
275    
276     # (tpg) icons
277 dmorgan 127856 %{__cp} %{buildroot}%{mozillalibdir}/chrome/icons/default/default16.png %{buildroot}/%{mozillalibdir}/icons/
278 colin 130660 for i in 16 22 24 32 48 256; do
279     # (cg) Not all icon sizes are installed with make install, so just redo it here.
280 tv 133105 %{__install} -m 644 browser/branding/official/default$i.png %{buildroot}%{mozillalibdir}/chrome/icons/default/default$i.png
281 blino 20612 %{__mkdir_p} %{buildroot}%{_iconsdir}/hicolor/"$i"x"$i"/apps
282 colin 130660 ln -sf %{mozillalibdir}/chrome/icons/default/default$i.png %{buildroot}%{_iconsdir}/hicolor/"$i"x"$i"/apps/%{name}.png ;
283 blino 20612 done
284 colin 130660 %{__mkdir_p} %{buildroot}{%{_liconsdir},%{_iconsdir},%{_miconsdir}}
285     ln -sf %{mozillalibdir}/chrome/icons/default/default48.png %{buildroot}%{_liconsdir}/%{name}.png
286     ln -sf %{mozillalibdir}/chrome/icons/default/default32.png %{buildroot}%{_iconsdir}/%{name}.png
287 dmorgan 130666 ln -sf %{mozillalibdir}/chrome/icons/default/default16.png %{buildroot}%{_miconsdir}/%{name}.png
288 blino 20612
289 dmorgan 127856 # exclusions
290     rm -f %{buildroot}%{mozillalibdir}/README.txt
291     rm -f %{buildroot}%{mozillalibdir}/removed-files
292     rm -f %{buildroot}%{mozillalibdir}/precomplete
293    
294 doktor5000 170221 # this file is only used when creating a new user profile
295 blino 20612 install -D -m644 browser/app/profile/prefs.js %{buildroot}%{mozillalibdir}/defaults/profile/prefs.js
296     cat << EOF >> %{buildroot}%{mozillalibdir}/defaults/profile/prefs.js
297     user_pref("browser.EULA.override", true);
298     user_pref("browser.shell.checkDefaultBrowser", false);
299 rda 76933 user_pref("browser.startup.homepage", "file:///usr/share/indexhtml/index.html");
300 blino 20612 user_pref("app.update.auto", false);
301     user_pref("app.update.enabled", false);
302     user_pref("app.update.autoInstallEnabled", false);
303 lmenut 130942 user_pref("browser.showQuitWarning", true);
304 blino 20612 EOF
305    
306 fwang 223187 # display icon for Firefox button
307     %{__mkdir_p} %{buildroot}%{mozillalibdir}/defaults/profile/chrome
308 dmorgan 225217 cat << EOF > %{buildroot}%{mozillalibdir}/defaults/profile/chrome/userChrome.css
309 fwang 223187 #appmenu-toolbar-button {
310     list-style-image: url("chrome://branding/content/icon16.png");
311     }
312     EOF
313    
314 doktor5000 170221 # files in this directory are read on every startup, and can change/add
315     # preferences for existing profiles
316     # extensions.autoDisableScopes is a new preference added in firefox 8
317     # it defines "scopes" where newly installed addons are disabled by default
318     # this is an additive bit field, and the value defaults to 15 (1+2+4+8)
319     # we need to remove system scope (8) from it so language packs and other addons
320     # which are installed systemwide won't get marked as 3rd party and disabled
321     # documentation: http://kb.mozillazine.org/About:config_entries#Extensions.
322     # or in toolkit/mozapps/extensions/AddonManager.jsm
323     # we also need to disable the "disable addon selection dialog"
324     cat << EOF > %{buildroot}%{mozillalibdir}/defaults/pref/mga.js
325     pref("extensions.autoDisableScopes", 0);
326     pref("extensions.shownSelectionUI", true);
327     EOF
328    
329 ahmad 130766 # use the system myspell dictionaries
330     rm -fr %{buildroot}%{mozillalibdir}/dictionaries
331 fwang 211783 ln -s %{_datadir}/hunspell %{buildroot}%{mozillalibdir}/dictionaries
332 ahmad 130766
333 lmenut 130942 # (lm) touch and %ghost bookmarks.html to a proper uninstall
334     touch %{buildroot}%{mozillalibdir}/defaults/profile/bookmarks.html
335    
336 blino 20612 %find_lang %{name}
337    
338     mkdir -p %{buildroot}%{_sys_macros_dir}
339     cat <<FIN >%{buildroot}%{_sys_macros_dir}/%{name}.macros
340     # Macros from %{name} package
341     %%firefox_major %{major}
342     %%firefox_epoch %{ff_epoch}
343 fwang 248940 %%firefox_version %{major}%{?prel:-0.%prel}
344 blino 20612 %%firefox_mozillapath %{mozillalibdir}
345     %%firefox_pluginsdir %{pluginsdir}
346 tv 45614 %%firefox_appid \{ec8030f7-c20a-464f-9b0e-13a3a9e97384\}
347     %%firefox_extdir %%(if [ "%%_target_cpu" = "noarch" ]; then echo %%{_datadir}/mozilla/extensions/%%{firefox_appid}; else echo %%{_libdir}/mozilla/extensions/%%{firefox_appid}; fi)
348 blino 20612 FIN
349    
350 ahmad 130766 %pre
351     if [ -d %{mozillalibdir}/dictionaries ]; then
352     rm -fr %{mozillalibdir}/dictionaries
353     fi
354 dmorgan 127856
355 blino 20612 %post
356     if [ ! -r /etc/sysconfig/oem ]; then
357     case `grep META_CLASS /etc/sysconfig/system` in
358     *powerpack) bookmark="mozilla-powerpack.html" ;;
359     *desktop) bookmark="mozilla-one.html";;
360     *) bookmark="mozilla-download.html";;
361     esac
362 lmenut 130942 ln -s -f ../../../../share/mga/bookmarks/mozilla/$bookmark %{mozillalibdir}/defaults/profile/bookmarks.html
363 blino 20612 fi
364    
365     %files -f %{name}.lang
366     %{_bindir}/%{name}
367     %{_bindir}/mozilla-firefox
368     %{_iconsdir}/hicolor/*/apps/*.png
369 colin 130660 %{_miconsdir}/%{name}.png
370     %{_iconsdir}/%{name}.png
371     %{_liconsdir}/%{name}.png
372 blino 20612 %{_datadir}/applications/*.desktop
373 fwang 206849 %{_libdir}/%{name}-%{major}*
374 lmenut 130942 %ghost %{mozillalibdir}/defaults/profile/bookmarks.html
375 blino 20612 %dir %{_libdir}/mozilla
376     %dir %{pluginsdir}
377 lmenut 130942 %dir %{_libdir}/mozilla/extensions/%{firefox_appid}
378     %dir %{_datadir}/mozilla/extensions/%{firefox_appid}
379 blino 20612
380     %files devel
381     %{_sys_macros_dir}/%{name}.macros

  ViewVC Help
Powered by ViewVC 1.1.30