Date: Sun, 3 Aug 2008 19:55:46 +0100 From: Anton Shterenlikht <mexas@bristol.ac.uk> To: Glen Nakamura <glen@imodulo.com> Cc: freebsd-alpha@freebsd.org Subject: xptcinvoke and xptcstubs for firefox3 on FreeBSD Alpha Message-ID: <20080803185545.GA6782@mech-cluster238.men.bris.ac.uk> In-Reply-To: <20080803171000.GA30383@modulo.internal> References: <20080803164656.GA5775@mech-cluster238.men.bris.ac.uk> <20080803171000.GA30383@modulo.internal>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Aug 03, 2008 at 07:10:00AM -1000, Glen Nakamura wrote: > On Sun, Aug 03, 2008 at 05:46:56PM +0100, Anton Shterenlikht wrote: > > I'm trying to trace Glen Nakamura, a contributor to firefox, > > regarding some of his code. > > > > If it is the same Glen who holds the copyright to your site, > > please put me in touch with him. > > Aloha Anton, > > I contributed the Linux Alpha port of the xptcall interface > to the Mozilla project... What piece of code are you inquiring about? Glen, many thanks for a quick reply. (copied to freebsd-alpha mailing list) I'm trying to build firefox3 on FreeBSD Alpha. The build fails because files xptcinvoke_freebsd_alpha.cpp xptcstubs_freebsd_alpha.cpp (at least these 2, there might be more) are missing from the distribution. I understand you wrote the code in these files for firefox2. I've build firefox2 fine on the same machine, and I decided to just copy these 2 files from firefox2 source tree to firerox3 as is. The build fails with the following error: gmake[8]: Entering directory `/usr/ports/www/firefox3/work/mozilla/xpcom/reflect /xptcall/src/md/unix' xptcinvoke_freebsd_alpha.cpp c++ -o xptcinvoke_freebsd_alpha.o -c -DMOZILLA_INTERNAL_API -DOSTYPE=\"FreeBSD6 \" -DOSARCH=FreeBSD -DEXPORT_XPTC_API -D_IMPL_NS_COM -I./../.. -I./../../../../x ptinfo/src -I. -I. -I../../../../../../dist/include/string -I../../../../../../ dist/include -I../../../../../../dist/include/xpcom -I/usr/local/include/nspr -I/usr/include -I/usr/local/include -fPIC -I/usr/local/include -I/usr/loc al/include -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Woverlo aded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align - Wno-long-long -O -pipe -mcpu=ev6 -mieee -O2 -fno-strict-aliasing -fno-strict-ali asing -fshort-wchar -pipe -DNDEBUG -DTRIMMED -O -I/usr/local/include -I/usr/l ocal/include -DMOZILLA_CLIENT -include ../../../../../../mozilla-config.h xptcin voke_freebsd_alpha.cpp xptcstubs_freebsd_alpha.cpp c++ -o xptcstubs_freebsd_alpha.o -c -DMOZILLA_INTERNAL_API -DOSTYPE=\"FreeBSD6\ " -DOSARCH=FreeBSD -DEXPORT_XPTC_API -D_IMPL_NS_COM -I./../.. -I./../../../../xp tinfo/src -I. -I. -I../../../../../../dist/include/string -I../../../../../../d ist/include -I../../../../../../dist/include/xpcom -I/usr/local/include/nspr -I/usr/include -I/usr/local/include -fPIC -I/usr/local/include -I/usr/loca l/include -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer-arith -Woverloa ded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -W no-long-long -O -pipe -mcpu=ev6 -mieee -O2 -fno-strict-aliasing -fno-strict-alia sing -fshort-wchar -pipe -DNDEBUG -DTRIMMED -O -I/usr/local/include -I/usr/lo cal/include -DMOZILLA_CLIENT -include ../../../../../../mozilla-config.h xptcstu bs_freebsd_alpha.cpp xptcstubs_freebsd_alpha.cpp: In function `nsresult PrepareAndDispatch(nsXPTCStub Base*, uint32, PRUint64*)': xptcstubs_freebsd_alpha.cpp:59: error: `nsIInterfaceInfo' was not declared in th is scope xptcstubs_freebsd_alpha.cpp:59: error: `iface_info' was not declared in this sco pe xptcstubs_freebsd_alpha.cpp:67: error: 'class nsXPTCStubBase' has no member name d 'GetInterfaceInfo' xptcstubs_freebsd_alpha.cpp:131: error: 'class nsXPTCStubBase' has no member nam ed 'CallMethod' xptcstubs_freebsd_alpha.cpp:59: warning: unused variable 'nsIInterfaceInfo' gmake[8]: *** [xptcstubs_freebsd_alpha.o] Error 1 gmake[8]: Leaving directory `/usr/ports/www/firefox3/work/mozilla/xpcom/reflect/ xptcall/src/md/unix' gmake[7]: *** [libs] Error 2 So, it seems xptcinvoke compiles fine, but xptcstubs fails. Could you please give brief explanation of what the code in these files actually does, or point to a manual/doc if possible. I'm not a programmer myself, particularly not an assembler person, so reading the files didn't give me much insight. I had a very brief look at the distribution tree and I believe these 2 files are generated during configure stage from ./files/patch-xptcall-alpha, which is also missing in firefox3 distribution. Please comment on this as well if you can. Finally, how much work do you think is needed to port these 2 files from firefox2 to firefox3? Is it really just 2 files, or there is much more work to be done? many thanks anton -- Anton Shterenlikht Room 2.6, Queen's Building Mech Eng Dept Bristol University University Walk, Bristol BS8 1TR, UK Tel: +44 (0)117 928 8233 Fax: +44 (0)117 929 4423
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080803185545.GA6782>