michael@0: michael@0: michael@0: michael@0: michael@0: xptcall Porting Status michael@0: michael@0: michael@0:

xptcall Porting Status

michael@0: michael@0:

What is this?

michael@0: michael@0: This is a status page for the multiplatform porting of xptcall. michael@0: xptcall has a michael@0: FAQ michael@0: and a michael@0: Porting Guide. michael@0: michael@0:

michael@0: michael@0: This is being maintained by John Bandhauer <jband@netscape.com>. michael@0: Feel free to email me with questions or to volunteer to contribute xptcall code for any platform. michael@0: michael@0:

michael@0: michael@0: Mike Shaver <shaver@mozilla.org> michael@0: is the best contact regarding 'nix (Unix, Linux, Finux, etc.) ports of xptcall. michael@0: michael@0:

Status

michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0: michael@0:
StatusPlatformContributors and ? Possible ContributorsNotes
DoneWin32 x86Contributed code! michael@0: John Bandhauer <jband@netscape.com> michael@0: michael@0: win32
DoneLinux x86Contributed code! michael@0: John Bandhauer <jband@netscape.com>
michael@0: Contributed code! michael@0: Ulrich Drepper <drepper@cygnus.com> michael@0:
unix michael@0:
DoneFreeBSD and NetBSD x86Contributed code! michael@0: Christoph Toshok <toshok@hungry.com>,
michael@0: Contributed code! michael@0: John Bandhauer <jband@netscape.com>
unix (same as Linux 86 code)
DoneBSD/OS x86Contributed code! michael@0: Bert Driehuis <bert_driehuis@nl.compuware.com>unix (same as Linux 86 code) michael@0: Bert contributed patches that *should* do the right thing for all the unixish-x86 michael@0: versions of this code for GCC 2.7 or 2.8 vs. EGCS 1.1. He notes that the vtbl michael@0: scheme is different. He is hoping that others will help test the changes using michael@0: these two compilers on the various platforms where this same code is used. michael@0: Bert's details michael@0:
DoneMac PPCContributed code! michael@0: Roger Lawrence <rogerl@netscape.com>,
michael@0: Contributed code! michael@0: Patrick Beard <beard@netscape.com> michael@0:
mac (passing tests and checked in)
DoneSolaris SparcContributed code! michael@0: Roger Lawrence <rogerl@netscape.com>,
michael@0: Contributed code! michael@0: Chris McAfee <mcafee@netscape.com> michael@0:
unix This is checked in and working.
DoneSolaris Sparc v9 (64bit)Contributed code! michael@0: Stuart Parmenter <pavlov@netscape.com>,
michael@0: Contributed code! michael@0: Chris Seawood <cls@seawood.org> michael@0:
unix This is checked in and (pavlov claims!) working.
DoneOS/2Contributed code! michael@0: John Fairhurst <mjf35@cam.ac.uk>I never heard exactly who did what. But mozilla has been working on OS/2 michael@0: for a long time now. michael@0:
DoneOpenVMS AlphaContributed code! michael@0: Colin R. Blake <colin@theblakes.com> michael@0: Colin says this is passing all the tests on OpenVMS Alpha! michael@0:
DoneNT AlphaContributed code! michael@0: bob meader <bob@guiduck.com> michael@0: bob writes:
michael@0: Enclosed is xptcall for alpha/nt target.. michael@0:

michael@0: It is a variation of the IRIS port (only targeted for win32). michael@0:

michael@0: Notice the last 2 files (the change to mozilla\xpcom\build\makefile.win and michael@0: mozilla\xpcom\build) are needed because I was unable to figure how to do a michael@0: "declspecexport" from the assembler ASAXP ... if some knows how to do that then michael@0: those last 2 files won't be needed. michael@0:

michael@0: I have had someone look over this code at bridge.com (the entry point to michael@0: compaq/gem compiler team) and this code was given the OK. I consider it "done". michael@0:

michael@0: This code lives in the files where the name includes 'alpha' in the win32 directory.
michael@0:

DoneLinux ARMStarted michael@0: Stefan Hanske<sh990154@mail.uni-greifswald.de>
michael@0: ? michael@0: Matthew Wilcox <willy@bofh.ai>
michael@0: Stefan's code is checked in and he says it is working. michael@0:
DoneLinux Sparc michael@0: Contributed code! michael@0: Anton Blanchard <anton@progsoc.uts.edu.au>, michael@0:
michael@0: Contributed code! michael@0: Roger Lawrence <rogerl@netscape.com>, michael@0:
michael@0: Maybe michael@0: Brandon Ehle <ehle.3@osu.edu> michael@0:
michael@0: Anton contributed patches to Roger's Sparc code. Anton says it works and passes the tests! michael@0: (24-Aug-1999) Brandon writes: I've finished testing XPTCALL Sparc Linux on 12 different Sparc machines and it checks out good. michael@0:
DoneLinux PPC michael@0: Contributed code! michael@0: Patrick Beard <beard@netscape.com>
michael@0: Contributed code! michael@0: Chris Waterson <waterson@netscape.com>
michael@0: Contributed code! michael@0: Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
michael@0: ? michael@0: Jason Y. Sproul <jsproul@condor.fddi.wesleyan.edu>
michael@0: ? michael@0: Sean Chitwood <darkmane@w-link.net>
michael@0: waterson said: Mozilla runs on Linux/PPC michael@0:
DoneLinux Alpha michael@0: Contributed code! michael@0: Glen Nakamura <glen.nakamura@usa.net>
michael@0: Contributed code! michael@0: Dan Morril <morrildl@nycap.rr.com>
michael@0:
michael@0: Glen writes: michael@0:

michael@0: I am attaching a patch which contains my Linux Alpha xptcall code. michael@0: It passes TestXPTCInvoke and TestXPC on my machine which runs michael@0: kernel 2.2.7, glibc 2.1.1, and egcs 1.1.2. I have not tested it michael@0: with older GNU compilers such as gcc 2.8.x. From looking at the michael@0: Linux x86 code, I gather that the vtable layout is a little different michael@0: for those compilers and the code will need minor modifications michael@0: in order to work properly. michael@0:

michael@0: I am not sure how much of the code can be used for OpenVMS Alpha michael@0: and/or Digital UNIX. Currently the code is dependent on the g++ michael@0: name mangling convention and a few GNU extensions so I'm not sure michael@0: how useful it will be for the other systems. Hopefully the michael@0: comments in the code are detailed enough to help people attempting michael@0: a port. michael@0:

michael@0:

DoneSunOS x86 michael@0: Contributed code! michael@0: Arthur Jones <aljones@lbl.gov>
michael@0: ? michael@0: Philip Pokorny <ppokorny@mindspring.com>
michael@0:
michael@0: The word I hear is that this is working and done michael@0:
DoneHP-UX michael@0: Contributed code! michael@0: Thomas Wang <wang@cup.hp.com>
michael@0: Contributed code! michael@0: Mike Gleeson <mgleeson1@netscape.com> michael@0:
I hear that this code is checked in and working. Though, there is some michael@0: doubt - see bug michael@0: #17997 michael@0:
DoneAIX PPCContributed code! michael@0: Jim Dunn <jdunn@netscape.com>Philip K. Warren writes:
michael@0: michael@0: We have gone through several releases of AIX without any problems. michael@0:
DoneIrixContributed code! michael@0: Jason Heirtzler <jasonh@m7.engr.sgi.com>
michael@0:
Jason has declared this done. Jason is no longer working at SGI and will michael@0: not be maintaining this code. There is some doubt as to whether or not this is michael@0: working for everyone - see bug michael@0: #10061. michael@0: Mike Shaver <shaver@mozilla.org> michael@0: is the interim maintainer until someone more suitable can be found. michael@0:
DoneBeOS x86Contributed code! michael@0: Duncan Wilcox <duncan@be.com>
michael@0:
michael@0: unix (yet another reuse of the Linux 86 code!)
michael@0: Duncan says this is all working. He did the code for old cfront style 'this' adjustment for others to use too! michael@0:
HELP!BeOS PPC--
DoneCompaq Tru64 UNIX (Digital UNIX)Contributed code! michael@0: Steve Streeter <streeter@zk3.dec.com>
michael@0:
Code passes the tests and is checked in.
WorkingNeutrio x86Contributed code! michael@0: Jerry L. Kirk <Jerry.Kirk@Nexwarecorp.com>
michael@0:
michael@0: Patches for xptc*_unixish_x86.cpp checked in. Waiting for verification that this is really finished. michael@0:
InvestigatingSCO UW7 and OSR5 michael@0: Investigating michael@0: J. Kean Johnston <jkj@sco.com>
michael@0: Investigating michael@0: Evan Hunt <evanh@sco.com>
michael@0:
Recent (Feb-2001) email from jkj@sco.com suggests that work will be occuring soon.
WorksNetBSD/m68kContributed code! michael@0: Dave Huang <khym@bga.com>
michael@0:
michael@0: Dave's changes are in the tree. Waiting for verification that it is really finished.
Partially WorkingNetBSD/arm32Investigating michael@0: Mike Pumford <mpumford@black-star.demon.co.uk> michael@0: Mike writes:
michael@0: I have started porting to the platform based on the code for Linux ARM. The michael@0: InvokeByIndex code works correctly when used with TestXPTCInvoke. I am michael@0: currently working on making TestXPC function correctly. michael@0:

michael@0: I am doing the porting work with egcs-1.1.2 on NetBSD 1.4P (NetBSD-current michael@0: snapshot from a couple of days ago). michael@0:

DoneLinux ia64Contributed code! michael@0: HP
michael@0: Contributed code! michael@0: Ulrich Drepper <drepper@redhat.com> michael@0:
bug 40950 comment 15
HELP!All others!--
michael@0: michael@0:

michael@0: michael@0: Note: I've used the symbol (?) to michael@0: indicate people who have expressed an interest in possibly contributing code. michael@0: Just because these people are listed here does not mean that they have commited michael@0: themselves to do the work. If you would like to contribute then let me michael@0: know. Feel free to email these folks and offer to help or find out what's going michael@0: on. We're all in this together. michael@0: michael@0:

michael@0: michael@0:


michael@0: Author: John Bandhauer <jband@netscape.com>
michael@0: Last modified: 3 February 2003 michael@0: michael@0: michael@0: