From bab3923541bbe09c8f9f1a900fe508aadced5002 Mon Sep 17 00:00:00 2001 From: Koen Kooi Date: Sat, 20 Sep 2008 13:58:46 +0000 Subject: firefox: add 3.1 alpha 2 * works on armv7a --- .../mozilla/firefox-3.0.1+3.1a2/.mtn2git_empty | 0 .../mozilla/firefox-3.0.1+3.1a2/arm/.mtn2git_empty | 0 packages/mozilla/firefox-3.0.1+3.1a2/arm/mozconfig | 67 ++++++++++++++++++++++ .../jsautocfg-dontoverwrite.patch | 23 ++++++++ packages/mozilla/firefox-3.0.1+3.1a2/mozconfig | 66 +++++++++++++++++++++ .../firefox-3.0.1+3.1a2/random_to_urandom.diff | 26 +++++++++ packages/mozilla/firefox.inc | 16 +++--- packages/mozilla/firefox_3.1a2.bb | 47 +++++++++++++++ 8 files changed, 238 insertions(+), 7 deletions(-) create mode 100644 packages/mozilla/firefox-3.0.1+3.1a2/.mtn2git_empty create mode 100644 packages/mozilla/firefox-3.0.1+3.1a2/arm/.mtn2git_empty create mode 100644 packages/mozilla/firefox-3.0.1+3.1a2/arm/mozconfig create mode 100644 packages/mozilla/firefox-3.0.1+3.1a2/jsautocfg-dontoverwrite.patch create mode 100644 packages/mozilla/firefox-3.0.1+3.1a2/mozconfig create mode 100644 packages/mozilla/firefox-3.0.1+3.1a2/random_to_urandom.diff create mode 100644 packages/mozilla/firefox_3.1a2.bb diff --git a/packages/mozilla/firefox-3.0.1+3.1a2/.mtn2git_empty b/packages/mozilla/firefox-3.0.1+3.1a2/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/mozilla/firefox-3.0.1+3.1a2/arm/.mtn2git_empty b/packages/mozilla/firefox-3.0.1+3.1a2/arm/.mtn2git_empty new file mode 100644 index 0000000000..e69de29bb2 diff --git a/packages/mozilla/firefox-3.0.1+3.1a2/arm/mozconfig b/packages/mozilla/firefox-3.0.1+3.1a2/arm/mozconfig new file mode 100644 index 0000000000..094a0ff642 --- /dev/null +++ b/packages/mozilla/firefox-3.0.1+3.1a2/arm/mozconfig @@ -0,0 +1,67 @@ +. $topsrcdir/browser/config/mozconfig + +# use GTK+-2 widget set with XFT font rendering +#ac_add_options --enable-default-toolkit=gtk2 +ac_add_options --enable-xft +ac_add_options --disable-freetype2 + +# enable minimal profile support +ac_add_options --disable-profilesharing +ac_add_options --disable-profilelocking +ac_add_options --enable-single-profile + +ac_add_options --with-system-zlib +ac_add_options --with-system-jpeg +#ac_add_options --with-system-png + +ac_add_options --disable-accessibility +ac_add_options --disable-composer +#ac_add_options --enable-plaintext-editor-only +ac_add_options --disable-mailnews +ac_add_options --disable-ldap +#ac_add_options --disable-postscript +ac_add_options --disable-mathml +ac_add_options --disable-jsd +ac_add_options --disable-installer +ac_add_options --disable-xprint +ac_add_options --disable-necko-disk-cache + +# configure necko to allocate smaller network buffers +ac_add_options --enable-necko-small-buffers + +# disable debug logging and tests +#ac_add_options --disable-dtd-debug +ac_add_options --disable-logging +ac_add_options --disable-gtktest +ac_add_options --disable-tests +ac_add_options --disable-printing +ac_add_options --disable-gnomevfs +ac_add_options --disable-gnomeui +ac_add_options --enable-debugger-info-modules + +# build crypto module (PSM + NSS) +ac_add_options --enable-crypto + +# build minimal set of protocol handlers +ac_add_options --enable-necko-protocols=http,file,res,ftp,about,viewsource + +# build minimal set of image decoders +ac_add_options --enable-image-decoders=png,gif,jpeg + +#ac_add_options --enable-reorder +#ac_add_options --enable-elf-dynstr-gc + +# enable static build +#ac_add_options --disable-shared +#ac_add_options --enable-static +ac_add_options --enable-optimize=-O2 +ac_add_options --with-arm-kuser + +# Use cairo from system +ac_add_options --enable-system-cairo + +# Disable jemalloc +ac_add_options --disable-jemalloc + +# enable libxul +ac_add_options --enable-libxul diff --git a/packages/mozilla/firefox-3.0.1+3.1a2/jsautocfg-dontoverwrite.patch b/packages/mozilla/firefox-3.0.1+3.1a2/jsautocfg-dontoverwrite.patch new file mode 100644 index 0000000000..39978cfd11 --- /dev/null +++ b/packages/mozilla/firefox-3.0.1+3.1a2/jsautocfg-dontoverwrite.patch @@ -0,0 +1,23 @@ +--- mozilla/js/src/Makefile.in.orig 2006-12-12 11:46:02.000000000 +0000 ++++ mozilla/js/src/Makefile.in 2006-12-12 11:46:27.000000000 +0000 +@@ -319,20 +319,8 @@ + + jsopcode.h jsopcode.c: jsopcode.tbl + +-ifeq (,$(CROSS_COMPILE)$(filter-out WINNT,$(OS_ARCH))) + jsautocfg.h: + touch $@ +-else +-ifeq ($(OS_ARCH),WINCE) +-jsautocfg.h: +- touch $@ +-else +-jsautocfg.h: jscpucfg$(HOST_BIN_SUFFIX) +- @rm -f $@ jsautocfg.tmp +- ./jscpucfg > jsautocfg.tmp +- mv jsautocfg.tmp $@ +-endif +-endif + + # jscpucfg is a strange target + # Needs to be built with the host compiler but needs to include diff --git a/packages/mozilla/firefox-3.0.1+3.1a2/mozconfig b/packages/mozilla/firefox-3.0.1+3.1a2/mozconfig new file mode 100644 index 0000000000..cd097165ab --- /dev/null +++ b/packages/mozilla/firefox-3.0.1+3.1a2/mozconfig @@ -0,0 +1,66 @@ +. $topsrcdir/browser/config/mozconfig + +# use GTK+-2 widget set with XFT font rendering +#ac_add_options --enable-default-toolkit=gtk2 +ac_add_options --enable-xft +ac_add_options --disable-freetype2 + +# enable minimal profile support +ac_add_options --disable-profilesharing +ac_add_options --disable-profilelocking +ac_add_options --enable-single-profile + +ac_add_options --with-system-zlib +ac_add_options --with-system-jpeg +#ac_add_options --with-system-png + +ac_add_options --disable-accessibility +ac_add_options --disable-composer +#ac_add_options --enable-plaintext-editor-only +ac_add_options --disable-mailnews +ac_add_options --disable-ldap +#ac_add_options --disable-postscript +ac_add_options --disable-mathml +ac_add_options --disable-jsd +ac_add_options --disable-installer +ac_add_options --disable-xprint +ac_add_options --disable-necko-disk-cache + +# configure necko to allocate smaller network buffers +ac_add_options --enable-necko-small-buffers + +# disable debug logging and tests +#ac_add_options --disable-dtd-debug +ac_add_options --disable-logging +ac_add_options --disable-gtktest +ac_add_options --disable-tests +ac_add_options --disable-printing +ac_add_options --disable-gnomevfs +ac_add_options --disable-gnomeui +ac_add_options --enable-debugger-info-modules + +# build crypto module (PSM + NSS) +ac_add_options --enable-crypto + +# build minimal set of protocol handlers +ac_add_options --enable-necko-protocols=http,file,res,ftp,about,viewsource + +# build minimal set of image decoders +ac_add_options --enable-image-decoders=png,gif,jpeg + +#ac_add_options --enable-reorder +#ac_add_options --enable-elf-dynstr-gc + +# enable static build +#ac_add_options --disable-shared +#ac_add_options --enable-static +ac_add_options --enable-optimize=-O2 + +# Use cairo from system +ac_add_options --enable-system-cairo + +# Disable jemalloc +ac_add_options --disable-jemalloc + +# enable libxul +ac_add_options --enable-libxul diff --git a/packages/mozilla/firefox-3.0.1+3.1a2/random_to_urandom.diff b/packages/mozilla/firefox-3.0.1+3.1a2/random_to_urandom.diff new file mode 100644 index 0000000000..f969752381 --- /dev/null +++ b/packages/mozilla/firefox-3.0.1+3.1a2/random_to_urandom.diff @@ -0,0 +1,26 @@ +# Component manager should not use /dev/random for generation ranodm numbers +# It cause hangs on embedding platforms,which does not have enough devices for generation required entropy +# Bug somewhere exists but it is very old +Index: nsprpub/pr/src/md/unix/uxrng.c +=================================================================== +--- mozilla/nsprpub/pr/src/md/unix/uxrng.c.orig ++++ mozilla/nsprpub/pr/src/md/unix/uxrng.c +@@ -144,17 +144,17 @@ + #include + #include + + static int fdDevRandom; + static PRCallOnceType coOpenDevRandom; + + static PRStatus OpenDevRandom( void ) + { +- fdDevRandom = open( "/dev/random", O_RDONLY ); ++ fdDevRandom = open( "/dev/urandom", O_RDONLY ); + return((-1 == fdDevRandom)? PR_FAILURE : PR_SUCCESS ); + } /* end OpenDevRandom() */ + + static size_t GetDevRandom( void *buf, size_t size ) + { + int bytesIn; + int rc; + diff --git a/packages/mozilla/firefox.inc b/packages/mozilla/firefox.inc index 5b9acf9580..b45ac683d7 100644 --- a/packages/mozilla/firefox.inc +++ b/packages/mozilla/firefox.inc @@ -1,22 +1,24 @@ SRC_URI += "file://mozilla-${PN}.png file://mozilla-${PN}.desktop" +MOZPV ?= "${PV}" + PACKAGES =+ "${PN}-inspector" PACKAGES += "${PN}-sdk" -FILES_${PN}-inspector = " ${libdir}/${PN}-${PV}/chrome/inspector* \ - ${libdir}/${PN}-${PV}/components/*nspector* \ - ${libdir}/${PN}-${PV}/extensions/inspector* \ - ${libdir}/${PN}-${PV}/defaults/preferences/inspector* \ +FILES_${PN}-inspector = " ${libdir}/${PN}-${MOZPV}/chrome/inspector* \ + ${libdir}/${PN}-${MOZPV}/components/*nspector* \ + ${libdir}/${PN}-${MOZPV}/extensions/inspector* \ + ${libdir}/${PN}-${MOZPV}/defaults/preferences/inspector* \ " FILES_${PN} = "${bindir}/${PN} \ ${datadir}/applications/ \ ${datadir}/pixmaps/ \ - ${libdir}/${PN}-${PV}/* \ - ${libdir}/${PN}-${PV}/.autoreg \ + ${libdir}/${PN}-${MOZPV}/* \ + ${libdir}/${PN}-${MOZPV}/.autoreg \ ${bindir}/defaults" FILES_${PN}-dev += "${datadir}/idl ${bindir}/${PN}-config" -FILES_${PN}-sdk += "${libdir}/${PN}-devel-${PV}" +FILES_${PN}-sdk += "${libdir}/${PN}-devel-${MOZPV}" FILES_${PN}-dbg += " ${libdir}/${PN}-*/.debug \ ${libdir}/${PN}-*/*/.debug \ ${libdir}/${PN}-*/*/*/.debug \ diff --git a/packages/mozilla/firefox_3.1a2.bb b/packages/mozilla/firefox_3.1a2.bb new file mode 100644 index 0000000000..5e7c996ef1 --- /dev/null +++ b/packages/mozilla/firefox_3.1a2.bb @@ -0,0 +1,47 @@ +DEPENDS += "cairo" + +PV = "3.0.1+3.1a2" +MOZPV = "3.1a2" + + +SRC_URI = "http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/${MOZPV}-candidates/build1/firefox-${MOZPV}-source.tar.bz2 \ + file://jsautocfg.h \ + file://jsautocfg-dontoverwrite.patch;patch=1 \ + file://random_to_urandom.diff;patch=1 \ +" + +S = "${WORKDIR}/" + +DEFAULT_PREFERENCE = "-1" + +inherit mozilla +require firefox.inc + +export HOST_LIBIDL_CONFIG = "${STAGING_BINDIR_NATIVE}/libIDL-config-2" +FULL_OPTIMIZATION = "-fexpensive-optimizations -fomit-frame-pointer -frename-registers -O2" + +do_configure_prepend() { + sed -i -e s:'head -1':'head -n1':g client.mk + oe_runmake -f client.mk CONFIGURE_ARGS="${EXTRA_OECONF}" configure +} + +do_compile_prepend() { + cp ${WORKDIR}/jsautocfg.h ${S}/js/src/ + sed -i -e "s|CPU_ARCH =|CPU_ARCH = ${TARGET_ARCH}|" \ + -e s:'$(OS_TEST)':${TARGET_ARCH}:g \ + ${S}/security/coreconf/Linux.mk +} + +do_stage() { + install -d ${STAGING_INCDIR}/firefox-${MOZPV} + cd dist/sdk/include + rm -rf obsolete + headers=`find . -name "*.h"` + for f in $headers + do + install -D -m 0644 $f ${STAGING_INCDIR}/firefox-${MOZPV}/ + done + # removes 2 lines that call absent headers + sed -e '178,179d' ${STAGING_INCDIR}/firefox-${MOZPV}/nsIServiceManager.h +} + -- cgit v1.2.3