|
|
@@ -23,11 +23,19 @@
|
|
|
## SUCH DAMAGE.
|
|
|
##
|
|
|
|
|
|
+# package options
|
|
|
+%ifndef with_mailnews
|
|
|
+%define with_mailnews no
|
|
|
+%endif
|
|
|
+%ifndef with_composer
|
|
|
+%define with_composer no
|
|
|
+%endif
|
|
|
+
|
|
|
# package information
|
|
|
Name: mozilla
|
|
|
-Summary: Graphical Web/Mail/News/Chat Frontend
|
|
|
+Summary: Graphical Internet Communication Frontend
|
|
|
URL: http://www.mozilla.org/
|
|
|
-Vendor: Mozilla
|
|
|
+Vendor: The Mozilla Project
|
|
|
Packager: The OpenPKG Project
|
|
|
Distribution: OpenPKG [EVAL]
|
|
|
Group: Web
|
|
|
@@ -50,15 +58,34 @@ AutoReq: no
|
|
|
AutoReqProv: no
|
|
|
|
|
|
%description
|
|
|
- Mozilla is a full-featured open-source web browser derived
|
|
|
- from Netscape Communicator, designed for standards compliance,
|
|
|
- performance and portability.
|
|
|
+ Mozilla is a full-featured Open Source Internet communication
|
|
|
+ frontend derived from the popular Netscape Communicator. It provides
|
|
|
+ Web, Mail, News and Chat client services and is designed for
|
|
|
+ standards compliance, performance and portability.
|
|
|
|
|
|
%prep
|
|
|
+ # display a warning that this package is a beast
|
|
|
+ ( echo "This package requires about FIXME MB of free disk space and about"
|
|
|
+ echo "FIXME minutes real-time to build on a Pentium-III 800Mhz class CPU."
|
|
|
+ echo "So please be prepared... ;-)"
|
|
|
+ ) | %{l_rpmtool} msg -b -t notice
|
|
|
+
|
|
|
+ # extract source distribution
|
|
|
%setup -q -n mozilla
|
|
|
+
|
|
|
+ # patch source distribution
|
|
|
%patch -p0
|
|
|
|
|
|
+ # strip down source distribution (save disk space)
|
|
|
+ find . -type d -name "CVS" -print | xargs rm -rf
|
|
|
+ find . -type d -name "macbuild" -print | xargs rm -rf
|
|
|
+ find . -type f -name ".cvsignore" -print | xargs rm -f
|
|
|
+ find . -type f -name "makefile.win" -print | xargs rm -f
|
|
|
+ find . -type f -name "MANIFEST" -print | xargs rm -f
|
|
|
+ rm -rf build/package
|
|
|
+
|
|
|
%build
|
|
|
+ # configure source
|
|
|
CC="%{l_cc}" \
|
|
|
CXX="%{l_cxx}" \
|
|
|
CFLAGS="%{l_cflags} %{l_cppflags}" \
|
|
|
@@ -84,19 +111,28 @@ AutoReqProv: no
|
|
|
--with-system-png=%{l_prefix} \
|
|
|
--with-system-zlib=%{l_prefix} \
|
|
|
--with-ft-prefix=%{l_prefix} \
|
|
|
+ --enable-freetype2 \
|
|
|
--enable-jsd \
|
|
|
--enable-crypto \
|
|
|
--enable-chrome-format=jar \
|
|
|
--enable-static \
|
|
|
--enable-strip \
|
|
|
+%if "%{with_mailnews}" == "yes"
|
|
|
+ --enable-mailnews \
|
|
|
+%else
|
|
|
+ --disable-mailnews \
|
|
|
+%endif
|
|
|
+%if "%{with_composer}" == "yes"
|
|
|
+ --enable-composer \
|
|
|
+%else
|
|
|
+ --disable-composer \
|
|
|
+%endif
|
|
|
+ --disable-xft \
|
|
|
--disable-xinerama \
|
|
|
--disable-shared \
|
|
|
--disable-tests \
|
|
|
- --disable-mailnews \
|
|
|
- --disable-composer \
|
|
|
--disable-svg \
|
|
|
--disable-ldap \
|
|
|
- --disable-freetype2 \
|
|
|
--disable-accessibility \
|
|
|
--disable-debug \
|
|
|
--disable-dtd-debug \
|
|
|
@@ -108,19 +144,34 @@ AutoReqProv: no
|
|
|
--disable-optimize \
|
|
|
--disable-xterm-updates \
|
|
|
--with-pthreads
|
|
|
+
|
|
|
+ # build program
|
|
|
%{l_make} %{l_mflags}
|
|
|
+
|
|
|
+ # post-adjustments to builded program
|
|
|
( cd dist/bin
|
|
|
+ # prepare for multi-user usage
|
|
|
LD_LIBRARY_PATH=.; export LD_LIBRARY_PATH
|
|
|
MOZILLA_FIVE_HOME=.; export MOZILLA_FIVE_HOME
|
|
|
./regxpcom || true
|
|
|
./regchrome || true
|
|
|
touch chrome/user-skins.rdf chrome/user-locales.rdf
|
|
|
- #find . -type d -depth -print | xargs rmdir >/dev/null 2>&1 || true
|
|
|
+
|
|
|
+ # re-adjust paths to reflect final location
|
|
|
%{l_shtool} subst \
|
|
|
-e "s;`pwd`;%{l_prefix}/lib/mozilla;" \
|
|
|
components/xpti.dat components/compreg.dat
|
|
|
+
|
|
|
+ # strip down installation tree
|
|
|
+ find . -type d -depth -print | xargs rmdir >/dev/null 2>&1 || true
|
|
|
+ rm -f mozilla-config mkdepend nsinstall bloaturls.txt TestGtk* LICENSE README
|
|
|
+ rm -rf res/samples
|
|
|
+
|
|
|
+ # workaround run-time startup problems
|
|
|
mkdir .autoreg
|
|
|
)
|
|
|
+
|
|
|
+ # generate manual page for startup convinience wrapper
|
|
|
%{l_prefix}/bin/pod2man \
|
|
|
--section=1 --quotes=none \
|
|
|
--release="Mozilla %{version}" --center="%{packager}" \
|
|
|
@@ -128,16 +179,24 @@ AutoReqProv: no
|
|
|
|
|
|
%install
|
|
|
rm -rf $RPM_BUILD_ROOT
|
|
|
+
|
|
|
+ # generate temporary installation tree
|
|
|
%{l_shtool} mkdir -f -p -m 755 \
|
|
|
$RPM_BUILD_ROOT%{l_prefix}/bin \
|
|
|
$RPM_BUILD_ROOT%{l_prefix}/lib/mozilla \
|
|
|
$RPM_BUILD_ROOT%{l_prefix}/man/man1
|
|
|
- (cd dist/bin && %{l_tar} -chf - . ) |\
|
|
|
- (cd $RPM_BUILD_ROOT%{l_prefix}/lib/mozilla && %{l_tar} -xf -)
|
|
|
+
|
|
|
+ # move files into temporary installation tree
|
|
|
+ (cd dist/bin && %{l_tar} -chf - . ) |\
|
|
|
+ (cd $RPM_BUILD_ROOT%{l_prefix}/lib/mozilla && %{l_tar} -xf -)
|
|
|
+
|
|
|
+ # add startup convinience wrapper
|
|
|
%{l_shtool} install -c -m 755 -e 's;@l_prefix@;%{l_prefix};g' \
|
|
|
%{SOURCE mozilla.sh} $RPM_BUILD_ROOT%{l_prefix}/bin/mozilla
|
|
|
%{l_shtool} install -c -m 644 \
|
|
|
mozilla.1 $RPM_BUILD_ROOT%{l_prefix}/man/man1/
|
|
|
+
|
|
|
+ # determine installation files
|
|
|
%{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std}
|
|
|
|
|
|
%files -f files
|