Closed Bug 244010 Opened 21 years ago Closed 7 years ago

Support NetBSD/sparc64

Categories

(Core :: XPCOM, defect)

Sun
NetBSD
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1505360

People

(Reporter: martin, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(5 files, 5 obsolete files)

(Quite) some time ago I made NSPR work on NetBSD/spac64 (after a lot of gcc problems have been fixed). I cloned some other sparc support files and adjusted them as needed. It passes the NSPR tests, and gets Mozilla installed and running - but there is some (probably unrelated) bug somewhere else that prevents it from opening web pages. This has been laying around as a local change in NetBSD pkgsrc far too long - I think it's time to get it into the Mozilla tree.
Attached file xptcinvoke_asm_sparc64_netbsd.s (obsolete) —
Attached file xptcinvoke_sparc64_netbsd.cpp (obsolete) —
Attached file xptcstubs_sparc64_netbsd.cpp (obsolete) —
The patch includes two unrelated things: arm/armeb/armel confusion and a _PR_HAVE_GETPROTO_R_INT change in newer NetBSD - sorry about that, please ignore those in this context, or apply them as well - they are needed anyway.
Of course there is another (obvious) change needed in xpcom/reflect/xptcall/src/md/unix/Makefile.in something like this should do: @@ -295,6 +295,13 @@ CPPSRCS := xptcinvoke_sparc_netbsd.cpp xptcstubs_sparc_netbsd.cp p ASFILES := xptcinvoke_asm_sparc_netbsd.s xptcstubs_asm_sparc_net bsd.s endif +# +# NetBSD/SPARC64 +# +ifeq ($(OS_ARCH)$(OS_TEST),NetBSDsparc64) +CPPSRCS := xptcinvoke_sparc64_netbsd.cpp xptcstubs_sparc64_netbs d.cpp +ASFILES := xptcinvoke_asm_sparc64_netbsd.s xptcstubs_asm_sparc64 _netbsd.s +endif # # Solaris/SPARC #
Comment on attachment 148813 [details] [diff] [review] _MD_INIT_CONTEXT for NetBSD/sparc64 (checked in) Is it okay to use "arm" as the architecture name for __arm32__, __arm__, __armel__, and __armeb__?
Comment on attachment 148813 [details] [diff] [review] _MD_INIT_CONTEXT for NetBSD/sparc64 (checked in) You should make similar changes to mozilla/nsprpub/pr/include/md/_netbsd.cfg for __sparc_v9__ and __arm__, __armel__, and __armeb__.
Assignee: wchang0222 → BradleyJunk
Component: NSPR → XPConnect
Product: NSPR → Browser
QA Contact: wchang0222 → pschwartau
Version: other → Trunk
Yes, __arm__ is defined at all ARM platform. __arm32__(little endian only) is defined at old platform. Now __ARMEL__ for little endian and __ARMEB__ for big endian. I'll submit new patch later.
Attached patch modified patches for nspr part (obsolete) — Splinter Review
correctly handle ARM architecture.
Taya-san fixed a bug in the handling of bool values. Mozilla now realy runs, I'm uploading this from a NetBSD/sparc64 machine using mozilla 1.7.
Attachment #148810 - Attachment is obsolete: true
Assignee: dbradley → nobody
QA Contact: pschwartau → xpconnect
Attachment #148812 - Attachment is obsolete: true
Attachment #351450 - Attachment mime type: application/octet-stream → text/plain
Attachment #148809 - Attachment is obsolete: true
Attachment #148813 - Attachment description: _MD_INIT_CONTEXT for NetBSD/sparc64 → _MD_INIT_CONTEXT for NetBSD/sparc64 (checked in)
Comment on attachment 149345 [details] [diff] [review] modified patches for nspr part The changes to mozilla/nsprpub/pr/include/md/_netbsd.h in this patch have been checked in. The changes to mozilla/nsprpub/pr/include/md/_netbsd.cfg in this patch are out of date. We should get the latest from http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/devel/nspr/patches/patch-aa.
Attachment #149345 - Attachment is obsolete: true
Blocks: 471191
Maybe the openbsd sparc64 files should be merged with this (differences are only cosmetic now)
Attachment #351450 - Attachment is obsolete: true
(In reply to comment #14) > (From update of attachment 149345 [details] [diff] [review]) I checked in a new version of this patch based on http://cvsweb.netbsd.org/bsdweb.cgi/pkgsrc/devel/nspr/patches/patch-aa in bug 470528.
I just updated the local version we have of this to current aurora. After the stylistic changes (PR* -> C99 types) this results (modulo whitespace and comments) in what is in tree for OpenBSD/sparc64 right now. Can we please finally resolve this (either by just copying the OpenBSD files to *_netbsd_* names or by renaming them to _bsd_ instead and adjusting the makefiles)?
Just noticed that this ticket has aged and may be confusing - I am talking about the missing files: xpcom/reflect/xptcall/src/md/unix/xptcinvoke_asm_sparc64_netbsd.s xpcom/reflect/xptcall/src/md/unix/xptcinvoke_sparc64_netbsd.cpp xpcom/reflect/xptcall/src/md/unix/xptcstubs_asm_sparc64_netbsd.s xpcom/reflect/xptcall/src/md/unix/xptcstubs_sparc64_netbsd.cpp And: one change I had to make to the OpenBSD version is in xptcstubs_sparc64_netbsd.cpp, the STUB_ENTRY define needs a cast to nsresult in the return statement - but I don't understand why.
Component: XPConnect → XPCOM
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: