Closed Bug 519654 Opened 16 years ago Closed 2 years ago

drbg.c compilation fails on s390 arch

Categories

(NSS :: Build, defect, P5)

Other
Linux

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: rnsastry, Unassigned)

Details

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1.3) Gecko/20090824 Firefox/3.5.3 (.NET CLR 3.5.30729) Build Identifier: latest cvs and nss-3.12.4 gcc -o Linux2.6_s390x_glibc_PTH_DBG.OBJ/Linux_SINGLE_SHLIB/drbg.o -c -g -fPIC -DLINUX1_2 -D_XOPEN_SOURCE -DLINUX2_1 -ansi -Wall -Werror-implicit-function-declaration -Wno-switch -pipe -DLINUX -Dlinux -D_POSIX_SOURCE -D_BSD_SOURCE -DHAVE_STRERROR -DXP_UNIX -DSHLIB_SUFFIX=\"so\" -DSHLIB_PREFIX=\"lib\" -DSHLIB_VERSION=\"3\" -DSOFTOKEN_SHLIB_VERSION=\"3\" -DRIJNDAEL_INCLUDE_TABLES -DDEBUG -UNDEBUG -DDEBUG_root -D_REENTRANT -DUSE_UTIL_DIRECTLY -DMP_API_COMPATIBLE -I../../../../dist/Linux2.6_s390x_glibc_PTH_DBG.OBJ/include -I../../../../dist/public/nss -I../../../../dist/private/nss -Impi -Iecl drbg.c drbg.c: In function âRNG_RandomUpdateâ: drbg.c:516: error: size of array âargâ is negative gmake[3]: *** [Linux2.6_s390x_glibc_PTH_DBG.OBJ/Linux_SINGLE_SHLIB/drbg.o] Error 1 gmake[3]: Leaving directory `/root/nss_cvs/mozilla/security/nss/lib/freebl' gmake[2]: *** [libs] Error 2 gmake[2]: Leaving directory `/root/nss_cvs/mozilla/security/nss/lib/freebl' gmake[1]: *** [libs] Error 2 gmake[1]: Leaving directory `/root/nss_cvs/mozilla/security/nss/lib' gmake: *** [libs] Error 2 Reproducible: Always Steps to Reproduce: 1. Download latest tar ball or from CVS 2. cd mozilla/security/nss gmake nss_build_all Actual Results: gcc -o Linux2.6_s390x_glibc_PTH_DBG.OBJ/Linux_SINGLE_SHLIB/drbg.o -c -g -fPIC -DLINUX1_2 -D_XOPEN_SOURCE -DLINUX2_1 -ansi -Wall -Werror-implicit-function-declaration -Wno-switch -pipe -DLINUX -Dlinux -D_POSIX_SOURCE -D_BSD_SOURCE -DHAVE_STRERROR -DXP_UNIX -DSHLIB_SUFFIX=\"so\" -DSHLIB_PREFIX=\"lib\" -DSHLIB_VERSION=\"3\" -DSOFTOKEN_SHLIB_VERSION=\"3\" -DRIJNDAEL_INCLUDE_TABLES -DDEBUG -UNDEBUG -DDEBUG_root -D_REENTRANT -DUSE_UTIL_DIRECTLY -DMP_API_COMPATIBLE -I../../../../dist/Linux2.6_s390x_glibc_PTH_DBG.OBJ/include -I../../../../dist/public/nss -I../../../../dist/private/nss -Impi -Iecl drbg.c drbg.c: In function âRNG_RandomUpdateâ: drbg.c:516: error: size of array âargâ is negative gmake[3]: *** [Linux2.6_s390x_glibc_PTH_DBG.OBJ/Linux_SINGLE_SHLIB/drbg.o] Error 1 gmake[3]: Leaving directory `/root/nss_cvs/mozilla/security/nss/lib/freebl' gmake[2]: *** [libs] Error 2 gmake[2]: Leaving directory `/root/nss_cvs/mozilla/security/nss/lib/freebl' gmake[1]: *** [libs] Error 2 gmake[1]: Leaving directory `/root/nss_cvs/mozilla/security/nss/lib' gmake: *** [libs] Error 2 Expected Results: should be compiled with out errors.
rnastry, May we conclude, from the existence of this bug, that you solved bug 516982? Please give us the URL from which you downloaded the tarball, so that we can correctly fill in this bug's version number field.
rnsastry: you can get past the drbg.c problem by building with USE_64=1. You can set it either on the make command line or as an environment variable: export USE_64=1
Status: UNCONFIRMED → NEW
Ever confirmed: true
Is s390 always an LP64 API, like OSF1 was on DEC Alpha? If so, we need to change something in coreconf.
bug 516982 is not resolved yet. and I downloaded nss tar ball from the URL ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_12_4_RTM/src/nss-3.12.4.tar.gz export USE_64=1 helped to get the successful compilation on the latest CVS download. but NOT on the above tar ball. Compilation fails with the reason bug#516982 (nsinstall not found).
bug 516982 got resolved with 'export USE_64=1' and the only thing left is with nss-3.12.4.tar.gz [root@ ~]# tar -zxf nss-3.12.4.tar.gz [root@ ~]# cd nss-3.12.4/mozilla/security/nss/ [root@ nss]# export USE_64=1 [root@ nss]# make cd lib; make export make[1]: Entering directory `/root/nss-3.12.4/mozilla/security/nss/lib' cd sqlite; make export make[2]: Entering directory `/root/nss-3.12.4/mozilla/security/nss/lib/sqlite' Creating ../../../../dist/private/nss /bin/sh: line 2: ../../../coreconf/nsinstall/Linux2.6_s390x_glibc_PTH_64_DBG.OBJ/nsinstall: No such file or directory make[2]: *** [../../../../dist/private/nss] Error 127 make[2]: Leaving directory `/root/nss-3.12.4/mozilla/security/nss/lib/sqlite' make[1]: *** [export] Error 2 make[1]: Leaving directory `/root/nss-3.12.4/mozilla/security/nss/lib' make: *** [export] Error 2 So to compile should I require nspr?
> bug 516982 got resolved with 'export USE_64=1' I'm not sure, but I think you mean that THIS bug, bug 519654, has been resolved by using USE_64=1, and now, only bug 516982 remains. Right? If that is so, I will ask you more questions in that bug.
bug 516982 can be closed. export USE_64=1 is helped to compile successfully. That means when I try to compile nss with nspr (downloaded from URL ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_12_4_RTM/src/nss-3.12.4-with-nspr-4.8.tar.gz ) and downloaded from CVS ( cvs co -r NSPR_4_8_RTM NSPR cvs co -r NSS_3_12_4_RTM NSS ) THIS bug 519654 still not getting compiled with nss downloaded from ftp://ftp.mozilla.org/pub/mozilla.org/security/nss/releases/NSS_3_12_4_RTM/src/nss-3.12.4.tar.gz The compilation error is 'nsinstall' no such file or dir. So should I have nspr also at the time of compiling nss? Thanks!!
> The compilation error is 'nsinstall' no such file or dir. I'd like to see the relevant lines from the build output, showing the directory in which make was operating, and the commands it attempted that led up to that error > So should I have nspr also at the time of compiling nss? Yes. But NSS and NSPR each have their own respective copies of nsinstall, so I want to check and be sure which copy of nsinstall was being complained about.
> I'd like to see the relevant lines from the build output Please have a look at comment#5 if you need more information please let me know. Thanks!!
nss-3.12.4.tar.gz has NSS only, without NSPR. nss-3.12.4-with-nspr-4.8.tar.gz has both NSS and NSPR. For your purposes, you should use the nss-x.y.z-with-nspr-a.b.c.tar.gz tarballs. The NSS only tarballs are for people who build NSS against system NSPR. Typically they are NSS package maintainers in some OS.
Thanks for pointing out the log in comment 5. Don't know how I overlooked it. After you set USE_64, you just did a "make" with no explicit make targets (no command line arguments for the make command). Try make nss_build_all as you did in comment 0. I think that will make nsinstall.
Severity: normal → S3
Severity: S3 → S4
Status: NEW → RESOLVED
Closed: 2 years ago
Priority: -- → P5
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.