Closed
Bug 80809
Opened 24 years ago
Closed 24 years ago
nss does not compile using gcc on IRIX
Categories
(NSS :: Build, defect, P2)
Tracking
(Not tracked)
RESOLVED
FIXED
3.3
People
(Reporter: jayvdb, Assigned: wtc)
References
Details
Attachments
(4 files)
779 bytes,
patch
|
Details | Diff | Splinter Review | |
779 bytes,
patch
|
Details | Diff | Splinter Review | |
781 bytes,
patch
|
Details | Diff | Splinter Review | |
774 bytes,
patch
|
Details | Diff | Splinter Review |
NSS has configure.in code to handle gcc on IRIX, however the Makefile.in in
lib/freebl has MIPSpro arguments without a test for gcc, hence trying to get
gcc to understand the option -n32, and the more comical blurt of gcc saying it
doesnt recognise language ansi.
cd freebl; gmake libs
gmake[2]: Entering directory
`/projects/sise/mozilla/devel/workpits/moz/0.9_release_gcc/workarea/security/nss
/lib/freebl'
gcc -x assembler-with-cpp -o mpi_mips.o -O -OPT:Olimit=4000 -dollar -fullwarn -
xansi -n32 -mips3 -
c /projects/sise/mozilla/devel/workpits/moz/0.9_release_gcc/mozilla/security/nss
/lib/freebl/mpi/mpi_mips.s
gcc: unrecognized option `-n32'
gcc: language ansi not recognized
gcc: /projects/sise/mozilla/devel/workpits/moz/0.9_release_gcc/mozilla/security/
nss/lib/freebl/mpi/mpi_mips.s: linker input file unused since linking not done
rm -f libfreebl.a
/usr/bin/ar cr
libfreebl.a ./ldvector.o ./prng_fips1861.o ./sha_fast.o ./md2.o ./md5.o ./alg226
8.o ./arcfour.o ./arcfive.o ./desblapi.o ./des.o ./rijndael.o ./dh.o ./pqg.o ./d
sa.o ./rsa.o ./mpprime.o ./mpmontg.o ./mplogic.o ./mpi.o ./mpi_mips.o
/usr/bin/ar: Error: ./mpi_mips.o cannot open
/bin/true libfreebl.a
../../coreconf/nsinstall/nsinstall -R -m 664 ./libfreebl.a ../../dist/./lib
gmake[2]: Leaving directory
`/projects/sise/mozilla/devel/workpits/moz/0.9_release_gcc/workarea/security/nss
/lib/freebl'
Reporter | ||
Comment 1•24 years ago
|
||
Reporter | ||
Comment 2•24 years ago
|
||
Also needed to change AS, as gcc -x assembler-with-cpp results in similar
incompatibilities between GNU cpp and SGI cpp as demonstrated in bug 28711 .
Comment 3•24 years ago
|
||
Which version of NSS is being used?
Reporter | ||
Comment 4•24 years ago
|
||
I found this problem in whilst working on 0.9, however from what I can see the
latest source has the same problem ... only in lib/freebl/Makefile instead of
lib/freebl/Makefile.in
Comment 5•24 years ago
|
||
Sounds like you're trying to build PSM, not NSS.
That's a PSM bug.
Reporter | ||
Comment 6•24 years ago
|
||
Yes, I am building mozilla 0.9 with PSM, however that involves building NSS.
Comment 7•24 years ago
|
||
Are you able to build NSS according to the instructions given in
http://www.mozilla.org/projects/security/pki/nss/buildnss_32.html#build
PSM uses different makefiles than the normal NSS builds. If you're
able to build NSS with the instructions given in the web site above
but not as part of PSM, then you've found a problem with the PSM
build system for NSS.
Reporter | ||
Comment 8•24 years ago
|
||
Using those instructions for compiling NSS using GCC on IRIX, nsinstall core
dump. However, as expected they work for MIPSpro. So I built nss using
MIPSpro, symbolic linked coreconf/nsinstall/IRIX6.5_DBG.OBJ to
coreconf/nsinstall/IRIX6.5_gcc_DBG.OBJ , applied the patch to bug 28711 in
nspr, and ended up with the exact same problem, only to the Makefile instead of
the Makefile.in .
This process did highlight one problem in that the defines to identify GCC are
different between the two build systems.
GNU_CC (configure & Makefile.in)
NS_USE_CC (config.mk & Makefile)
Reporter | ||
Comment 9•24 years ago
|
||
Reporter | ||
Comment 10•24 years ago
|
||
Reporter | ||
Comment 11•24 years ago
|
||
Reporter | ||
Comment 12•24 years ago
|
||
GNU cpp produces an output incompatible with SGI cpp (which gets called from
SGI 'as' when using gcc -x assembler-with-cpp) gcc option "-Wp,-P " this
problem. SGI as handles spaces before a hash ' #' differently than GNU cpp ,
so we also need '-Wp,-traditional' to tell GNU to be nice to existing .s files
which are expecting SGI's cpp.
This .s file could work with gcc -x assembler (as in the first two patches);
but that solution would demand no one in the future could add pre-processor
directives without having to work all this out again.
So it seems the only way to get these two cpp's to live happily is via these
two flags.
Comment 13•24 years ago
|
||
Marking NEW while this is sorted out.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Reporter | ||
Comment 14•24 years ago
|
||
Can I ask what has yet to be sorted out?
Assignee | ||
Comment 15•24 years ago
|
||
I checked in John's patch (id=34492) for lib/freebl/Makefile on
the NSS_3_2_BRANCH and the trunk of NSS. I updated the NSS_CLIENT_TAG
on that file.
(lib/freebl/Makefile.in is experimental and is not supported.)
Status: NEW → RESOLVED
Closed: 24 years ago
Priority: -- → P2
Resolution: --- → FIXED
Target Milestone: --- → 3.2.2
Version: 4.0 → 3.2.1
Comment 16•24 years ago
|
||
lib/freebl/Makefile.in is used by the mozilla build environment, and hence
attachment 34491 [details] [diff] [review] is of concern to SGI, as currently SGI is only building NSS as
part of mozilla. 34492 was to keep both Makefiles in sync.
Blocks: 28709
Assignee | ||
Comment 17•24 years ago
|
||
John:
The NSS_AUTOCONF_BRANCH is an unofficial, experimental branch.
The NSS team does not support that branch and strongly its
use.
If you want to participate in that experiment, you can ask
cls@seawood.org and bryner@netscape.com to check in that patch
for you.
Assignee | ||
Comment 18•23 years ago
|
||
The fix is not in 3.2.2 but is in 3.3 and on the 3.2 branch.
Since we are not planning to make any new 3.2.x releases,
I am setting the target milestone to 3.3.
Component: Libraries → Build
Target Milestone: 3.2.2 → 3.3
You need to log in
before you can comment on or make changes to this bug.
Description
•