[Irix] LIBS order in js/src/xpconnect/shell fails on static build

RESOLVED FIXED in mozilla0.9.3

Status

P3
normal
RESOLVED FIXED
17 years ago
14 years ago

People

(Reporter: johnv, Assigned: cls)

Tracking

Trunk
mozilla0.9.3
SGI
IRIX

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Reporter)

Description

17 years ago
In js/src/xpconnect/shell/Makefile.in, the LIBS order is as follows:

LIBS           = \
               $(XPCOM_LIBS) \
               $(NSPR_LIBS) \
               $(MOZ_JS_LIBS) \
               $(NULL)

When building gets to here, there does not seem to be a libmozjs.so, only a 
dist/lib/libmozjs.a -> ../../js/src/libmozjs.a .

This results in unresolved symbols on IRIX, as the .a has unresolved symbols, 
and is fixed by moving the .a to before the .so's.

---
/projects/sise/mozilla/devel/workpits/moz/latest_static/toolroot/usr/bin/CC   -
LANG:exceptions=OFF -woff 3262 -n32  -DNDEBUG -DTRIMMED -o xpcshell xpcshell.o -
L/projects/sise/mozilla/devel/workpits/moz/latest_static/root/usr/lib32/ -
L/usr/freeware/lib32 -n32 -L../../../../dist/bin -L../../../../dist/lib -
L../../../../dist/bin -lxpcom -
L/projects/sise/mozilla/devel/workpits/moz/latest_static/workarea/dist/lib -
lplds4 -lplc4 -lnspr4 -
L/projects/sise/mozilla/devel/workpits/moz/latest_static/root/usr/lib32/ -
L/usr/freeware/lib32 -lpthread  -L../../../../dist/bin -lmozjs  -lsocket -ldl -
lm    
ld32: WARNING 
84 : /projects/sise/mozilla/devel/workpits/moz/latest_static/root/usr/lib32/libs
ocket.so is not used for resolving any symbol.
ld32: WARNING 
84 : /projects/sise/mozilla/devel/workpits/moz/latest_static/root/usr/lib32/libd
l.so is not used for resolving any symbol.
ld32: ERROR   33 : Unresolved text symbol "PR_NewLock" -- 1st referenced 
by ../../../../dist/lib/libmozjs.a(jsapi.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved text symbol "PR_NewCondVar" -- 1st referenced 
by ../../../../dist/lib/libmozjs.a(jsapi.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved text symbol "PR_DestroyLock" -- 1st referenced 
by ../../../../dist/lib/libmozjs.a(jsapi.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved text symbol "PR_DestroyCondVar" -- 1st referenced 
by ../../../../dist/lib/libmozjs.a(jsapi.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved text symbol "PR_Lock" -- 1st referenced 
by ../../../../dist/lib/libmozjs.a(jsapi.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved text symbol "PR_WaitCondVar" -- 1st referenced 
by ../../../../dist/lib/libmozjs.a(jsapi.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved text symbol "PR_Unlock" -- 1st referenced 
by ../../../../dist/lib/libmozjs.a(jsapi.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved text symbol "PR_NotifyAllCondVar" -- 1st 
referenced by ../../../../dist/lib/libmozjs.a(jsapi.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved text symbol "PR_NotifyCondVar" -- 1st referenced 
by ../../../../dist/lib/libmozjs.a(jsapi.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved text symbol "PR_AtomicIncrement" -- 1st 
referenced by ../../../../dist/lib/libmozjs.a(jsparse.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved text symbol "PR_AtomicDecrement" -- 1st 
referenced by ../../../../dist/lib/libmozjs.a(jsparse.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: ERROR   33 : Unresolved text symbol "PR_GetCurrentThread" -- 1st 
referenced by ../../../../dist/lib/libmozjs.a(jslock.o).
        Use linker option -v to see when and which objects, archives and dsos 
are loaded.  
ld32: INFO    152: Output file removed because of error.
gmake[2]: *** [xpcshell] Error 2
gmake[2]: Leaving directory 
`/projects/sise/mozilla/devel/workpits/moz/latest_static/workarea/js/src/xpconne
ct/shell'
gmake[1]: *** [install] Error 2
gmake[1]: Leaving directory 
`/projects/sise/mozilla/devel/workpits/moz/latest_static/workarea/js/src/xpconne
ct'
gmake: *** [install] Error 2
(Reporter)

Comment 1

17 years ago
Created attachment 40519 [details] [diff] [review]
js/src/xpconnect/shell/Makefile.in : Patch to reorder LIBS
(Reporter)

Comment 2

17 years ago
This is happening again, and ive had a coffee now, so now I am assuming that 
a .so should exist by now, and hence the previous patch was a wonderful waste 
of time.
(Reporter)

Comment 3

17 years ago
Onto my second coffee, and I realise that I am trying static build, in which it 
seems reasonable that I dont have a libmozjs.so, and my orignal patch may be 
relavent.  

Are XPCOM_LIBS and NSPR_LIBS supposed to be shared libraries in a static build ?
(Assignee)

Comment 4

17 years ago
Yes, xpcom & nspr are supposed to be dynamic in the static build. r=cls
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Priority: -- → P3
Summary: LIBS order in js/src/xpconnect/shell fails on IRIX → [Irix] LIBS order in js/src/xpconnect/shell fails on static build
Target Milestone: --- → mozilla0.9.3
(Assignee)

Comment 5

17 years ago
Patch has been checked in.
Status: ASSIGNED → RESOLVED
Last Resolved: 17 years ago
Resolution: --- → FIXED
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.