Closed Bug 348964 Opened 18 years ago Closed 11 years ago

Spidermonkey doesn't build standalone on solaris intel

Categories

(Core :: JavaScript Engine, defect)

x86
OpenSolaris
defect
Not set
minor

Tracking

()

RESOLVED WONTFIX

People

(Reporter: timeless, Unassigned)

Details

Attachments

(1 file)

steps:
1. cvs -d:pserver:anonymous@cvs-mirror.mozilla.org:/cvsroot co mozilla/js/src
2. cd mozilla/js/src
3. pkginfo |grep SPROcc
(if you don't have SPROcc, you're going to have trouble compiling)
4. pkginfo |grep SUNWgmake
(if you don't have gnu make, you won't be able to run the next command)
5. gmake -f Makefile.ref
6. cd Sun*
7. ./js

expected results:
js>

actual results:
(sun assembler)
/usr/ccs/bin/as -o SunOS5.11_i86pc_DBG.OBJ/lock_SunOS.o  -P -L -K PIC -D_ASM -D__STDC__=0 lock_SunOS.s
Assembler:
        "lock_SunOS.s", line 1 : Syntax error
        Near line: "! "

(gnu assembler)
/usr/sfw/i386-sun-solaris2.11/bin/as -o SunOS5.11_i86pc_DBG.OBJ/lock_SunOS.o  -P -L -K PIC -D_ASM -D__STDC__=0 lock_SunOS.s/usr/sfw/i386-sun-solaris2.11/bin/as: unrecognized option `-P'

It wouldn't matter whether or not I had the right assembler. The file that's being assembled is a *sparc* file, and this is solaris for intel.

Makefile.in uses:
ifeq ($(OS_ARCH),SunOS)
ifneq ($(OS_TEST),i86pc)
ifndef GNU_CC
ASFILES         = lock_$(OS_ARCH).s
endif
endif
endif

Unfortunately, Makefile.ref uses:
LIB_ASFILES := $(wildcard *_$(OS_ARCH).s)

And the file is named lock_SunOS.s which will match for SunOS x86 too.

I think the clever wildcard approach probably needs to be abandonned. I looked at uname and arch and it seems that the output formats aren't consistent enough for anyone to be able to build a rule from it.
note that removing the lock_SunOS.s file from the directory will enable me to build.
I experience the same failure based on uname and lack of provisions for Solaris 10.   

bash-3.00# make -f Makefile.ref 
config.mk:150: config/SunOS5.10_i86pc.mk: No such file or directory
make: *** No rule to make target `config/SunOS5.10_i86pc.mk'.  Stop.

If I create a config/SunOS5.10_i86pc.mk based on the existing config/SunOS5.5.mk, I notice the line:

CPU_ARCH = sparc

This doesn't apply on x86.  Compiler flags and other variables being set to ULTRA_SPARC are probably going to be wrong for x86 also.  I agree that the uname switching needs to be more specific.  I am playing with the config file but this is outside my expertise.  

This will become a bigger deal as Sun pushes out more Intel boxes.
I believe some people have been running Solaris builds in the last two years.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: