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

  ViewVC Help
Powered by ViewVC 1.1.30