Closed Bug 101528 Opened 23 years ago Closed 23 years ago

[PATCH] linux-m68k compilation and gcc-3 fixes

Categories

(Core :: XPConnect, defect)

Other
Linux
defect
Not set
blocker

Tracking

()

VERIFIED FIXED
mozilla0.9.7

People

(Reporter: rz, Assigned: dbradley)

References

Details

Attachments

(1 file, 1 obsolete file)

mozilla doesn't compile without this patches ( I hope I will manage to
attach the patch somehow, otherwise available per email )

Works fine even if slightly slow compiled with gcc-3.0.1

Regards
Richard
Severity: critical → blocker
Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: patch
Blocks: 71627
Why is removing |static| needed?
I was wondering that as well as the additional space before extern "C"
the extra space was my error, hope this compile log 

helps answer your other question:



make[2]: Leaving directory `/misc/sources/build/mozilla/xpcom/build'

make[2]: Entering directory `/misc/sources/build/mozilla/xpcom/tools'

make[3]: Entering directory `/misc/sources/build/mozilla/xpcom/tools/registry'

regExport.cpp

c++ -o regExport.o -c -DOSTYPE=\"Linux2.4\" -DOSARCH=\"Linux\" -DOJI -DUSE_NSREG

   -I../../../dist/include -I../../../dist/include -I/sources/build/mozilla/dist

/include/nspr      -I/usr/X11R6/include   -fPIC  -I/usr/X11R6/include -fno-rtti 

-fno-exceptions -Wall -Wconversion -Wpointer-arith -Wbad-function-cast -Wcast-al

ign -Woverloaded-virtual -Wsynth -Wno-long-long -pipe -fshort-wchar -pthread -pi

pe -w -O3 -fomit-frame-pointer  -DNDEBUG -DTRIMMED -I/usr/X11R6/include -DMOZILL

A_CLIENT -include ../../../config-defs.h -Wp,-MD,.deps/regExport.pp regExport.cp

p

c++  -I/usr/X11R6/include -fno-rtti -fno-exceptions -Wall -Wconversion -Wpointer

-arith -Wbad-function-cast -Wcast-align -Woverloaded-virtual -Wsynth -Wno-long-l

ong -pipe -fshort-wchar -pthread -pipe -w -O3 -fomit-frame-pointer  -DNDEBUG -DT

RIMMED -o regExport regExport.o  -L../../../dist/bin -L../../../dist/lib -L../..

/../dist/bin -lxpcom -L../../../dist/bin -L/sources/build/mozilla/dist/lib -lpld

s4 -lplc4 -lnspr4 -lpthread -ldl -lc -lpthread -lc  -L../../../dist/bin -lxpcom 

 -ldl -lm  -lc   

../../../dist/bin/libxpcom.so: undefined reference to `invoke_copy_to_stack'

../../../dist/bin/libxpcom.so: undefined reference to `PrepareAndDispatch'

collect2: ld returned 1 exit status

Doh! I didn't even consider the extern "C". I'm surprised the compiler didn't
scream about that one.
the way PrepareAndDispatch  is called in the m68k asm code we need

the unmangled name, extern "C" is one way to get it. 
Comment on attachment 50690 [details] [diff] [review]
linux-m68k compilation and gcc-3 fixes

r=dbaron, except for the extra indents here:

>-    "movl  %/a0@(8,%/d0:l:4), %/a0\n\t"
>+#if defined(__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100 /* G++ V3 ABI */
>+     "movl  %/a0@(%/d0:l:4), %/a0\n\t"
>+#else /* not V3 */
>+     "movl  %/a0@(8,%/d0:l:4), %/a0\n\t"		      
>+#endif

and here:

>-extern "C" {
>+ extern "C" {
Attachment #50690 - Flags: review+
If someone, shaver?, can give an sr to this bug I'll take care of checking it
in. I don't have anyway of verifying it though.
Target Milestone: --- → mozilla0.9.7
Comment on attachment 50690 [details] [diff] [review]
linux-m68k compilation and gcc-3 fixes

sr=shaver, once dbaron's nits are fixed.
Attachment #50690 - Flags: superreview+
I noticed that the security/coreconf/linux.mk file is branched. Does anyone
know if I should check this in on the TNSS_CLIENT_TAG branch as well as the
tip?
Attachment #50690 - Attachment is obsolete: true
Patch checked in
Status: NEW → RESOLVED
Closed: 23 years ago
Resolution: --- → FIXED
Patch verified - 
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: