Closed Bug 463987 Opened 16 years ago Closed 15 years ago

failed to build firefox on OpenSolaris with --enable-jemalloc

Categories

(Firefox Build System :: General, defect)

x86
OpenSolaris
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: eagle.lu, Assigned: eagle.lu)

References

Details

Attachments

(1 file)

When build js.cpp when "--enable-jemalloc" is enabled, I got following errors:
/export/home/ss12/SUNWspro/bin/CC -o js  -xlibmieee -xbuiltin=%all -features=tmplife -norunpath -mt  -DDEBUG -D_DEBUG -DDEBUG_brian -DTRACING -g  js.o jsapi.o jsarena.o jsarray.o jsatom.o jsbool.o jscntxt.o jsdate.o jsdbgapi.o jsdhash.o jsdtoa.o jsemit.o jsexn.o jsfun.o jsgc.o jshash.o jsinterp.o jsinvoke.o jsiter.o jslock.o jslog2.o jslong.o jsmath.o jsnum.o jsobj.o json.o jsopcode.o jsparse.o jsprf.o jsregexp.o jsscan.o jsscope.o jsscript.o jsstr.o jsutil.o jsxdrapi.o jsxml.o prmjtime.o jstracer.o Assembler.o Fragmento.o LIR.o RegAlloc.o avmplus.o Nativei386.o jsbuiltins.o   -L./dist/lib -ljemalloc -lpthread -M /usr/lib/ld/map.noexstk -xildoff -z lazyload -z combreloc  -z ignore -R '$ORIGIN:$ORIGIN/..'          -L./dist/bin -L./dist/lib -L/export/home/brian/moz-ws/community3/builds/1110/firefox/dist/lib -lplds4 -lplc4 -lnspr4 -lpthread -ldl -lposix4 -lsocket -ldl -lm -lCrun -lCstd  -lm -lposix4 -ldl -lnsl -lsocket    
ld: fatal: library -ljemalloc: not found
Attached patch patchSplinter Review
Assignee: general → brian.lu
Attachment #347248 - Flags: review?(brendan)
Methinks you want jim@moz (Jim Blandy) for a build bug, leaving alone for others to confirm...
Blocks: 449757
Attachment #347248 - Flags: review?(brendan) → review?(jim)
Comment on attachment 347248 [details] [diff] [review]
patch

Please ask Jim for build system review. Thanks,

/be
(In reply to comment #1)

Hi, Boying.  One minor question: why are you using override here?  Unless there's a specific reason you need to prevent people from setting the variable on the command line, it seems to me just assigning the variable is the right thing to do.

I think using ../.. in js/src stuff isn't right, but the existing code is certainly not right either.  Let me see how this works on Linux.
Comment on attachment 347248 [details] [diff] [review]
patch

This isn't quite the right approach, because the proposed change is only appropriate when js/src is being built as part of the larger mozilla tree.  js/src should make sense copied out on its own, and not have special knowledge of the layout of the Mozilla tree that might be around it.

I think the best approach here is for js/src/configure.in to take --with-jemalloc and --without-jemalloc switches, the latter being the default.  If specified, --with-jemalloc would optionally give the path of the directory containing the jemalloc library to link against.  If the path were omitted, then js/src should assume that -ljemalloc can be found in the normal library search path.
Attachment #347248 - Flags: review?(jim) → review-
(In reply to comment #4)
> (In reply to comment #1)
> 
> Hi, Boying.  One minor question: why are you using override here?  Unless
> there's a specific reason you need to prevent people from setting the variable
> on the command line, it seems to me just assigning the variable is the right
> thing to do.
> 
> I think using ../.. in js/src stuff isn't right, but the existing code is
> certainly not right either.  Let me see how this works on Linux.

The reason for overriding this variable is that this variable is set in rules.mk which is included near the end of Makefile.in.
Assignee: brian.lu → nobody
Component: JavaScript Engine → Build Config
QA Contact: general → build-config
Assignee: nobody → brian.lu
This bug was gone.

We still need some changes to memory/jemalloc/Makefile.in though. See Bug 457196.
But we don't need to change js/src/Makefile.in now.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → WORKSFORME
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: