Precise: SeaMonkey 2.15.2
February 10, 2013 —
BarryK
I have compiled SeaMonkey 2.15.2 in Precise Puppy 5.4.90. Here is the '.mozconfig' file:
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir-sm-release
mk_add_options MOZ_CO_PROJECT=suite
ac_add_options --enable-application=suite
ac_add_options --enable-system-hunspell
ac_add_options --localstatedir=/var
ac_add_options --sysconfdir=/etc
ac_add_options --prefix=/usr
ac_add_options --host=i486-pc-linux-gnu
ac_add_options --disable-dbus
ac_add_options --disable-accessibility
ac_add_options --with-system-bz2
ac_add_options --disable-updater
ac_add_options --disable-parental-controls
ac_add_options --enable-places
ac_add_options --disable-gnomevfs
ac_add_options --disable-gnomeui
ac_add_options --disable-system-sqlite
ac_add_options --disable-system-cairo
ac_add_options --enable-strip
ac_add_options --with-system-jpeg
ac_add_options --with-system-zlib
ac_add_options --enable-libxul
ac_add_options --enable-storage
ac_add_options --disable-tests
ac_add_options --with-default-mozilla-five-home=/usr/lib/seamonkey
ac_add_options --enable-jsd
ac_add_options --enable-default-toolkit=cairo-gtk2
ac_add_options --disable-crashreporter
ac_add_options --enable-libnotify
ac_add_options --with-system-libvpx
ac_add_options --disable-gio
ac_add_options --enable-chrome-format=omni
I have always configured with '--disable-dbus', but this time compile failed, which I determined is due to that option.
I searched, and only found the error message reported back in 2009:
https://bugzilla.mozilla.org/show_bug.cgi?id=495647
The attachment at that link gave me the hint that it is due to disabling dbus. Directory comm-release/mozilla/netwerk/wifi has 'Makefile.in' which chooses one of 'nsWifiScannerMac.cpp', 'nsWifiScannerWin.cpp', 'nsWifiScannerSolaris.cpp' or 'nsWifiScannerDBus.cpp'. These define a function 'DoScan()' that is called in file 'nsWifiMonitor.cpp'.
Now, there used to be a file 'nsWifiScannerUnix.cpp' but that has been removed, and is no longer referenced by 'Makefile.in'. I think that file would have defined DoScan() OK, but the current situation is that none of the files get included and DoScan() never gets defined.
Anyway, I thought who cares, just assume DoScan() returns 'NS_OK', so I hacked 'nsWifiMonitor.cpp' like this:
/*BK crap, it seems that --disable-dbus is broken.
* Makefile.in normally includes nsWifiScannerDBus.cpp
* which defines DoScan(). try a hack here...*/
/*nsresult rv = DoScan();*/
nsresult rv = NS_OK;
And SM compiled.
Comments
SM 2.15.2 PETsUsername: BarryK
Here are the PETs (26M, 24M): http://distro.ibiblio.org/quirky/pet_packages-precise/seamonkey-2.15.2-i486-precise.pet http://distro.ibiblio.org/quirky/pet_packages-precise/seamonkey_DEV-2.15.2-i486-precise.pet As usual, a big jump in size from the previous version. Here are sizes of some PETs: Version Size Compiled 2.15.2 26.21M Precise 2.13.1 23.26M " 2.12.1 22.82M " 2.9.1 19.74M " 2.3.2 16.08M Wary 1.1.18 9.14M Quirky
Seamonkey
Username: kirk
"Barry, I had the same problem, you can add --disable-necko-wifi to your config to fix it.
Precise 5.4.91 kernel 3.8rc7
Username: BarryK
"Another build, 3.8-rc7 kernel, without support for PAE: http://distro.ibiblio.org/quirky/precise-5.5alpha1/5.4.91-k3.8rc7-nopae/
Tags: puppy