Author: hawk Date: Mon May 15 19:57:52 2006 GMT Module: SPECS Tag: HEAD ---- Log message: - started packaging xulrunner, spec based on seamonkey.spec - builds, not checked, not tested, must be heavily reviewed by some mozilla guru (is all required stuff packaged? is some unecessary stuff packaged? does it need some other patches? does it need some other configure/build options?)
---- Files affected: SPECS: xulrunner.spec (1.1 -> 1.2) (NEW) ---- Diffs: ================================================================ Index: SPECS/xulrunner.spec diff -u /dev/null SPECS/xulrunner.spec:1.2 --- /dev/null Mon May 15 21:57:52 2006 +++ SPECS/xulrunner.spec Mon May 15 21:57:46 2006 @@ -0,0 +1,434 @@ +# $Revision$, $Date$ +Summary: XULRunner - Mozilla Runtime Environment +Summary(pl): XULRunner - Środowisko Uruchomieniowe Mozilli +Name: xulrunner +Version: 1.8.0.1 +Release: 0.1 +License: Mozilla Public License +Group: X11/Development/Libraries +Source0: http://ftp.mozilla.org/pub/mozilla.org/xulrunner/releases/%{version}/source/%{name}-%{version}-source.tar.bz2 +# Source0-md5: d60ccb6cc28afa7d880c8602a2c88450 +Patch0: %{name}-nss.patch +Patch1: %{name}-ldap-with-nss.patch +URL: http://www.mozilla.org/projects/xulrunner/ +BuildRequires: /bin/csh +BuildRequires: /bin/ex +BuildRequires: automake +BuildRequires: freetype-devel >= 1:2.1.8 +BuildRequires: libjpeg-devel >= 6b +BuildRequires: libpng-devel >= 1.2.0 +BuildRequires: libstdc++-devel +BuildRequires: nspr-devel >= 1:4.6.1 +BuildRequires: nss-devel >= 3.10.2 +BuildRequires: perl-modules >= 5.6.0 +BuildRequires: pkgconfig +BuildRequires: sed >= 4.0 +BuildRequires: tar >= 1:1.15.1 +BuildRequires: xcursor-devel +BuildRequires: xft-devel >= 2.1-2 +BuildRequires: zip >= 2.1 +BuildRequires: zlib-devel >= 1.0.0 +Requires(post,postun): /sbin/ldconfig +Requires: %{name}-libs = %{epoch}:%{version}-%{release} +%{?with_svg:Requires: cairo >= 1.0.0} +Requires: nspr >= 1:4.6.1 +Requires: nss >= 3.10.2 +BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) + +%define specflags -fno-strict-aliasing + +%define _xulrunnerdir %{_libdir}/%{name} +%define _chromedir %{_libdir}/%{name}/chrome +# mozilla, seamonkey and firefox provide their own versions +%define _noautoreqdep libgtkembedmoz.so libldap50.so libmozjs.so libprldap50.so libssldap50.so libxpcom.so + +%description +XULRunner is a runtime environment that can be used to bootstrap +multiple XUL+XPCOM applications that are as rich as Firefox and +Thunderbird. + +%description -l pl +XULRunner to środowisko uruchomieniowe, które może być używane do +uruchamiania wielu aplikacji XUL+XPCOM równie zaawansowanych jak +Firefox czy Thunderbird. + +%package libs +Summary: XULRunner shared libraries +Summary(pl): Biblioteki współdzielone XULRunner +Group: Libraries + +%description libs +XULRunner shared libraries. + +%description libs -l pl +Biblioteki współdzielone XULRunner. + +%package devel +Summary: Headers for developing programs that will use XULRunner +Summary(pl): XULRunner - pliki nagłówkowe i biblioteki +Group: X11/Development/Libraries +Requires: %{name} = %{epoch}:%{version}-%{release} +Requires: nspr-devel >= 1:4.6.1 +Obsoletes: mozilla-devel +Obsoletes: mozilla-firefox-devel +Obsoletes: seamonkey-devel + +%description devel +XULRunner development package. + +%description devel -l pl +Biblioteki i pliki nagłówkowe XULRunner. + +%prep +%setup -q -c -T +tar jxf %{SOURCE0} --strip-components=1 + +%patch0 -p1 +%patch1 -p1 + +%build +BUILD_OFFICIAL="1"; export BUILD_OFFICIAL +MOZILLA_OFFICIAL="1"; export MOZILLA_OFFICIAL + +cp -f %{_datadir}/automake/config.* build/autoconf +cp -f %{_datadir}/automake/config.* nsprpub/build/autoconf +cp -f %{_datadir}/automake/config.* directory/c-sdk/config/autoconf +%configure2_13 \ + %{!?debug:--disable-debug} \ + --disable-elf-dynstr-gc \ + %{!?with_gnomeui:--disable-gnomeui} \ + %{!?with_gnomevfs:--disable-gnomevfs} \ + --disable-javaxpcom \ + --disable-mailnews \ + --disable-pedantic \ + --disable-tests \ + --disable-xterm-updates \ + --enable-application=xulrunner \ + --enable-crypto \ + --enable-default-toolkit=gtk2 \ + --enable-extensions \ + --enable-ldap \ + --enable-mathml \ + --enable-optimize="%{rpmcflags}" \ + --enable-postscript \ + %{!?debug:--enable-strip} \ + --enable-xft \ + --enable-xinerama \ + --enable-xprint \ + --enable-old-abi-compat-wrappers \ + --with-default-mozilla-five-home=%{_xulrunnerdir} \ + --with-pthreads \ + --with-system-jpeg \ + --with-system-nspr \ + --with-system-png \ + --with-system-zlib \ + --with-x + +%{__make} + +%install +rm -rf $RPM_BUILD_ROOT +install -d \ + $RPM_BUILD_ROOT{%{_bindir},%{_sbindir},%{_datadir}} \ + $RPM_BUILD_ROOT%{_datadir}/%{name}/{chrome,defaults,greprefs,myspell,res} \ + $RPM_BUILD_ROOT%{_xulrunnerdir}/components \ + $RPM_BUILD_ROOT{%{_includedir}/%{name}/idl,%{_pkgconfigdir}} + +# preparing to create register +# remove empty directory trees +rm -fr dist/bin/chrome/{US,chatzilla,classic,comm,content-packs,cview,embed,embed-sample,en-US,en-mac,en-unix,en-win,help,inspector,messenger,modern,pipnss,pippki,toolkit,venkman,xmlterm} +# non-unix +rm -f dist/bin/chrome/en-{mac,win}.jar + +# creating and installing register +LD_LIBRARY_PATH="dist/bin" MOZILLA_FIVE_HOME="dist/bin" dist/bin/regxpcom +#install dist/bin/component.reg $RPM_BUILD_ROOT%{_xulrunnerdir} + +ln -sf ../../share/%{name}/chrome $RPM_BUILD_ROOT%{_chromedir} +ln -sf ../../share/%{name}/defaults $RPM_BUILD_ROOT%{_xulrunnerdir}/defaults +ln -sf ../../share/%{name}/greprefs $RPM_BUILD_ROOT%{_xulrunnerdir}/greprefs +#ln -sf ../../share/%{name}/icons $RPM_BUILD_ROOT%{_xulrunnerdir}/icons +ln -sf ../../share/%{name}/res $RPM_BUILD_ROOT%{_xulrunnerdir}/res +#ln -sf ../../share/%{name}/searchplugins $RPM_BUILD_ROOT%{_xulrunnerdir}/searchplugins +ln -sf ../../../share/%{name}/myspell $RPM_BUILD_ROOT%{_xulrunnerdir}/components/myspell + +cp -frL dist/bin/chrome/* $RPM_BUILD_ROOT%{_datadir}/%{name}/chrome +cp -frL dist/bin/components/{[^m],m[^y]}* $RPM_BUILD_ROOT%{_xulrunnerdir}/components +cp -frL dist/bin/components/myspell/* $RPM_BUILD_ROOT%{_datadir}/%{name}/myspell +cp -frL dist/bin/defaults/* $RPM_BUILD_ROOT%{_datadir}/%{name}/defaults +cp -frL dist/bin/res/* $RPM_BUILD_ROOT%{_datadir}/%{name}/res +cp -frL dist/gre/greprefs/* $RPM_BUILD_ROOT%{_datadir}/%{name}/greprefs +cp -frL dist/idl/* $RPM_BUILD_ROOT%{_includedir}/%{name}/idl +cp -frL dist/include/* $RPM_BUILD_ROOT%{_includedir}/%{name} +cp -frL dist/public/ldap{,-private} $RPM_BUILD_ROOT%{_includedir}/%{name} + +install dist/bin/*.so $RPM_BUILD_ROOT%{_xulrunnerdir} + +ln -s %{_libdir}/libnssckbi.so $RPM_BUILD_ROOT%{_xulrunnerdir}/libnssckbi.so + +for f in build/unix/*.pc ; do + sed -e 's/xulrunner-%{version}/xulrunner/' $f \ + > $RPM_BUILD_ROOT%{_pkgconfigdir}/$(basename $f) +done + +sed -e 's,lib/xulrunner-%{version},lib,g;s/xulrunner-%{version}/xulrunner/g' build/unix/xulrunner-gtkmozembed.pc \ + > $RPM_BUILD_ROOT%{_pkgconfigdir}/xulrunner-gtkmozembed.pc + +# add includir/dom to Cflags, for openvrml.spec, perhaps others +sed -i -e '/Cflags:/{/{includedir}\/dom/!s,$, -I${includedir}/dom,}' $RPM_BUILD_ROOT%{_pkgconfigdir}/xulrunner-plugin.pc + +rm -f $RPM_BUILD_ROOT%{_pkgconfigdir}/xulrunner-nss.pc $RPM_BUILD_ROOT%{_pkgconfigdir}/xulrunner-nspr.pc + +install dist/bin/xulrunner $RPM_BUILD_ROOT%{_bindir} +install dist/bin/xulrunner-bin $RPM_BUILD_ROOT%{_xulrunnerdir} +install dist/bin/regxpcom $RPM_BUILD_ROOT%{_xulrunnerdir} +install dist/bin/xpidl $RPM_BUILD_ROOT%{_xulrunnerdir} +install dist/bin/regxpcom $RPM_BUILD_ROOT%{_bindir} +install dist/bin/xpidl $RPM_BUILD_ROOT%{_bindir} + +cp $RPM_BUILD_ROOT%{_chromedir}/installed-chrome.txt \ + $RPM_BUILD_ROOT%{_chromedir}/%{name}-installed-chrome.txt + +cat << 'EOF' > $RPM_BUILD_ROOT%{_sbindir}/%{name}-chrome+xpcom-generate +#!/bin/sh +umask 022 +cd %{_datadir}/%{name}/chrome +cat *-installed-chrome.txt > installed-chrome.txt +rm -f chrome.rdf overlays.rdf +rm -f %{_xulrunnerdir}/components/{compreg,xpti}.dat + +LD_LIBRARY_PATH=%{_xulrunnerdir}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} +export LD_LIBRARY_PATH + +MOZILLA_FIVE_HOME=%{_xulrunnerdir} %{_xulrunnerdir}/regxpcom +exit 0 +EOF + +%clean +rm -rf $RPM_BUILD_ROOT + +%post +umask 022 +%{_sbindir}/%{name}-chrome+xpcom-generate + +%postun +if [ "$1" = "1" ]; then + %{_sbindir}/%{name}-chrome+xpcom-generate +fi + +%post libs -p /sbin/ldconfig +%postun libs -p /sbin/ldconfig + +%files +%defattr(644,root,root,755) +%attr(755,root,root) %{_bindir}/xulrunner +%attr(744,root,root) %{_sbindir}/%{name}-chrome+xpcom-generate + +%dir %{_xulrunnerdir} +%dir %{_chromedir} +%dir %{_xulrunnerdir}/components +%dir %{_xulrunnerdir}/defaults +%dir %{_xulrunnerdir}/greprefs +#%dir %{_xulrunnerdir}/icons +#%dir %{_xulrunnerdir}/plugins +%dir %{_xulrunnerdir}/res +%dir %{_datadir}/%{name} + +%attr(755,root,root) %{_xulrunnerdir}/xulrunner-bin +%attr(755,root,root) %{_xulrunnerdir}/reg* +%attr(755,root,root) %{_xulrunnerdir}/xpidl + +%attr(755,root,root) %{_xulrunnerdir}/libxpcom.so +%attr(755,root,root) %{_xulrunnerdir}/libnssckbi.so + +%attr(755,root,root) %{_xulrunnerdir}/components/libauth*.so +%attr(755,root,root) %{_xulrunnerdir}/components/libautoconfig.so +%attr(755,root,root) %{_xulrunnerdir}/components/libcookie.so +%attr(755,root,root) %{_xulrunnerdir}/components/libfileview.so +%attr(755,root,root) %{_xulrunnerdir}/components/libmoz*.so +%attr(755,root,root) %{_xulrunnerdir}/components/libmyspell.so +%attr(755,root,root) %{_xulrunnerdir}/components/libnkdatetime.so +%attr(755,root,root) %{_xulrunnerdir}/components/libnkfinger.so +%attr(755,root,root) %{_xulrunnerdir}/components/libp3p.so +%attr(755,root,root) %{_xulrunnerdir}/components/libpermissions.so +%attr(755,root,root) %{_xulrunnerdir}/components/libpipboot.so +%attr(755,root,root) %{_xulrunnerdir}/components/libpipnss.so +%attr(755,root,root) %{_xulrunnerdir}/components/libpippki.so +%attr(755,root,root) %{_xulrunnerdir}/components/libschemavalidation.so +%attr(755,root,root) %{_xulrunnerdir}/components/libspellchecker.so +%attr(755,root,root) %{_xulrunnerdir}/components/libsql.so +%attr(755,root,root) %{_xulrunnerdir}/components/libsroaming.so +%attr(755,root,root) %{_xulrunnerdir}/components/libsystem-pref.so +%attr(755,root,root) %{_xulrunnerdir}/components/libtransformiix.so +%attr(755,root,root) %{_xulrunnerdir}/components/libtypeaheadfind.so +%attr(755,root,root) %{_xulrunnerdir}/components/libuniversalchardet.so +%attr(755,root,root) %{_xulrunnerdir}/components/libwallet.so +%attr(755,root,root) %{_xulrunnerdir}/components/libwalletviewers.so +%attr(755,root,root) %{_xulrunnerdir}/components/libwebsrvcs.so +%attr(755,root,root) %{_xulrunnerdir}/components/libx*.so + +%{_xulrunnerdir}/components/access*.xpt +%{_xulrunnerdir}/components/alerts.xpt +%{_xulrunnerdir}/components/appshell.xpt +%{_xulrunnerdir}/components/appstartup.xpt +%{_xulrunnerdir}/components/autocomplete.xpt +%{_xulrunnerdir}/components/autoconfig.xpt +%{_xulrunnerdir}/components/caps.xpt +%{_xulrunnerdir}/components/chardet.xpt +%{_xulrunnerdir}/components/chrome.xpt +%{_xulrunnerdir}/components/commandhandler.xpt +%{_xulrunnerdir}/components/commandlines.xpt +%{_xulrunnerdir}/components/composer.xpt +%{_xulrunnerdir}/components/content*.xpt +%{_xulrunnerdir}/components/cookie.xpt +%{_xulrunnerdir}/components/directory.xpt +%{_xulrunnerdir}/components/docshell.xpt +%{_xulrunnerdir}/components/downloads.xpt +%{_xulrunnerdir}/components/dom*.xpt +%{_xulrunnerdir}/components/editor.xpt +%{_xulrunnerdir}/components/embed_base.xpt +%{_xulrunnerdir}/components/extensions.xpt +%{_xulrunnerdir}/components/exthandler.xpt +%{_xulrunnerdir}/components/fastfind.xpt +%{_xulrunnerdir}/components/find.xpt +%{_xulrunnerdir}/components/filepicker.xpt +%{_xulrunnerdir}/components/gfx*.xpt +%{?with_svg:%{_xulrunnerdir}/components/gksvgrenderer.xpt} +%{_xulrunnerdir}/components/history.xpt +%{_xulrunnerdir}/components/htmlparser.xpt +%{?with_gnomeui:%{_xulrunnerdir}/components/imgicon.xpt} +%{_xulrunnerdir}/components/imglib2.xpt +%{_xulrunnerdir}/components/intl.xpt +%{_xulrunnerdir}/components/jar.xpt +%{_xulrunnerdir}/components/js*.xpt +%{_xulrunnerdir}/components/layout*.xpt +%{_xulrunnerdir}/components/locale.xpt +%{_xulrunnerdir}/components/lwbrk.xpt +%{_xulrunnerdir}/components/mimetype.xpt +%{_xulrunnerdir}/components/moz*.xpt +%{_xulrunnerdir}/components/necko*.xpt +%{_xulrunnerdir}/components/oji.xpt +%{_xulrunnerdir}/components/p3p.xpt +%{_xulrunnerdir}/components/passwordmgr.xpt +%{_xulrunnerdir}/components/pipboot.xpt +%{_xulrunnerdir}/components/pipnss.xpt +%{_xulrunnerdir}/components/pippki.xpt +%{_xulrunnerdir}/components/plugin.xpt +%{_xulrunnerdir}/components/pref.xpt +%{_xulrunnerdir}/components/prefetch.xpt +%{_xulrunnerdir}/components/profile.xpt +%{_xulrunnerdir}/components/progressDlg.xpt +%{_xulrunnerdir}/components/proxyObjInst.xpt +%{_xulrunnerdir}/components/rdf.xpt +%{_xulrunnerdir}/components/satchel.xpt +%{_xulrunnerdir}/components/schemavalidation.xpt +%{_xulrunnerdir}/components/shistory.xpt +%{_xulrunnerdir}/components/signonviewer.xpt +%{_xulrunnerdir}/components/spellchecker.xpt +%{_xulrunnerdir}/components/sql.xpt +%{_xulrunnerdir}/components/toolkitprofile.xpt +%{_xulrunnerdir}/components/toolkitremote.xpt +%{_xulrunnerdir}/components/txmgr.xpt +%{_xulrunnerdir}/components/txtsvc.xpt +%{_xulrunnerdir}/components/typeaheadfind.xpt +%{_xulrunnerdir}/components/uconv.xpt +%{_xulrunnerdir}/components/unicharutil.xpt +%{_xulrunnerdir}/components/update.xpt +%{_xulrunnerdir}/components/uriloader.xpt +%{_xulrunnerdir}/components/wallet*.xpt +%{_xulrunnerdir}/components/webBrowser_core.xpt +%{_xulrunnerdir}/components/webbrowserpersist.xpt +%{_xulrunnerdir}/components/webshell_idls.xpt +%{_xulrunnerdir}/components/websrvcs.xpt +%{_xulrunnerdir}/components/widget.xpt +%{_xulrunnerdir}/components/windowds.xpt +%{_xulrunnerdir}/components/windowwatcher.xpt +%{_xulrunnerdir}/components/x*.xpt + +%{_xulrunnerdir}/components/jsconsole-clhandler.js +%{_xulrunnerdir}/components/nsCloseAllWindows.js +%{_xulrunnerdir}/components/nsDefaultCLH.js +%{_xulrunnerdir}/components/nsDictionary.js +%{_xulrunnerdir}/components/nsExtensionManager.js +%{_xulrunnerdir}/components/nsFilePicker.js +%{_xulrunnerdir}/components/nsHelperAppDlg.js +%{_xulrunnerdir}/components/nsInterfaceInfoToIDL.js +%{_xulrunnerdir}/components/nsKillAll.js +%{_xulrunnerdir}/components/nsProgressDialog.js +%{_xulrunnerdir}/components/nsProxyAutoConfig.js +%{_xulrunnerdir}/components/nsResetPref.js +%{_xulrunnerdir}/components/nsSchemaValidatorRegexp.js +%{_xulrunnerdir}/components/nsUpdateService.js +%{_xulrunnerdir}/components/nsXmlRpcClient.js +%{_xulrunnerdir}/components/nsXULAppInstall.js + +# not *.dat, so check-files can catch any new files +# (and they won't be just silently placed empty in rpm) +%ghost %{_xulrunnerdir}/components/compreg.dat +%ghost %{_xulrunnerdir}/components/xpti.dat + +%{_xulrunnerdir}/components/myspell + +%dir %{_datadir}/%{name}/chrome +%{_datadir}/%{name}/chrome/US.jar +%{_datadir}/%{name}/chrome/classic.jar +%{_datadir}/%{name}/chrome/comm.jar +%{_datadir}/%{name}/chrome/content-packs.jar +%{_datadir}/%{name}/chrome/cview.jar +%{_datadir}/%{name}/chrome/en-US.jar +%{_datadir}/%{name}/chrome/help.jar +%{_datadir}/%{name}/chrome/modern.jar +%{_datadir}/%{name}/chrome/pippki.jar +%{_datadir}/%{name}/chrome/reporter.jar +%{_datadir}/%{name}/chrome/sql.jar +%{_datadir}/%{name}/chrome/sroaming.jar +%{_datadir}/%{name}/chrome/tasks.jar +%{_datadir}/%{name}/chrome/toolkit.jar + +# not generated automatically ? +%{_datadir}/%{name}/chrome/chromelist.txt +#%{_datadir}/%{name}/chrome/icons + +%{_datadir}/%{name}/chrome/%{name}-installed-chrome.txt +%ghost %{_datadir}/%{name}/chrome/installed-chrome.txt + +%{_datadir}/%{name}/defaults +%{_datadir}/%{name}/greprefs +#%{_datadir}/%{name}/icons +%{_datadir}/%{name}/myspell +%{_datadir}/%{name}/res + +%files libs +%defattr(644,root,root,755) +# libxpcom.so used by mozillaplug-in +# probably should add more if more packages require +%attr(755,root,root) %{_xulrunnerdir}/libxpcom.so + +# add rest too +%attr(755,root,root) %{_xulrunnerdir}/libxul.so +%attr(755,root,root) %{_xulrunnerdir}/libgtkembedmoz.so +%attr(755,root,root) %{_xulrunnerdir}/libldap50.so +%attr(755,root,root) %{_xulrunnerdir}/libprldap50.so +%attr(755,root,root) %{_xulrunnerdir}/libssldap50.so +%attr(755,root,root) %{_xulrunnerdir}/libmozjs.so + +%files devel +%defattr(644,root,root,755) +%{_includedir}/%{name} +%{_pkgconfigdir}/* +%attr(755,root,root) %{_bindir}/reg* +%attr(755,root,root) %{_bindir}/xpidl + +%define date %(echo `LC_ALL="C" date +"%a %b %d %Y"`) +%changelog +* %{date} PLD Team <[EMAIL PROTECTED]> +All persons listed below can be reached at <cvs_login>@pld-linux.org + +$Log$ +Revision 1.2 2006/05/15 19:57:46 hawk +- started packaging xulrunner, spec based on seamonkey.spec +- builds, not checked, not tested, must be heavily reviewed by some + mozilla guru (is all required stuff packaged? is some unecessary stuff + packaged? does it need some other patches? does it need some other + configure/build options?) + ================================================================ _______________________________________________ pld-cvs-commit mailing list [email protected] http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit
