Closed Bug 1399063 Opened 7 years ago Closed 4 months ago

Fail to build on SLES 11 with GCC 4.8 compiler

Categories

(NSS :: Build, defect, P3)

3.33

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: Zenitur, Unassigned)

Details

Attachments

(2 files)

User Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Firefox/45.0
Build ID: 20170614122554

Steps to reproduce:

I create an OBS reposotory with Mozilla Firefox for SLES11. I'd copied firefox52 package from a "mozilla" OBS repo, then the package asks mozilla-nspr and mozilla-nss packages.


Actual results:

There is an error when build mozilla-nss.I had tried to switch compilers between GCC 4.3 and GCC 4.8. I attach the build log with GCC 4.8.

[   45s] gcc-4.8 -o Linux4.4_x86_64_gcc-4.8_glibc_PTH_64_OPT.OBJ/utilmod.o -c -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fno-strict-aliasing -fPIC  -m64 -pipe -ffunction-sections -fdata-sections -DHAVE_STRERROR -DLINUX -Dlinux -Wall -Werror -DXP_UNIX -UDEBUG -DNDEBUG -D_REENTRANT -DNSS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -I/usr/include/nspr4 -I../../../dist/Linux4.4_x86_64_gcc-4.8_glibc_PTH_64_OPT.OBJ/include -I../../../dist/public/nss -I../../../dist/private/nss  utilmod.c
[   45s] utilmod.c: In function 'nssutil_AddSecmodDBEntry':
[   45s] utilmod.c:704:15: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result [-Werror=unused-result]
[   45s]          fwrite(block, PORT_Strlen(block), 1, fd);
[   45s]                ^
[   45s] utilmod.c: In function 'nssutil_DeleteSecmodDBEntry':
[   45s] utilmod.c:590:19: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result [-Werror=unused-result]
[   45s]              fwrite(block, PORT_Strlen(block), 1, fd2);
[   45s]                    ^
[   45s] cc1: all warnings being treated as errors
[   45s] make[2]: *** [Linux4.4_x86_64_gcc-4.8_glibc_PTH_64_OPT.OBJ/utilmod.o] Error 1


Expected results:

The package
Is any workaround? Is there a way to disable -Wall?
ANy progress? I still have an old Firefox. My subscription was expired few months ago, so I need to update Firefox manually.
In an openSUSE repository, there is an upgrade to 3.33. There is a build log on SLES 11 with GCC 4.3:

cd cpputil; make libs
make[1]: Entering directory `/usr/src/packages/BUILD/nss-3.33/nss/cpputil'
if test ! -d Linux4.4_x86_64_cc_glibc_PTH_64_OPT.OBJ; then rm -rf Linux4.4_x86_64_cc_glibc_PTH_64_OPT.OBJ; ../coreconf/nsinstall/Linux4.4_x86_64_cc_glibc_PTH_64_OPT.OBJ/nsinstall -D Linux4.4_x86_64_cc_glibc_PTH_64_OPT.OBJ; fi
g++ -o Linux4.4_x86_64_cc_glibc_PTH_64_OPT.OBJ/dummy_io.o -c -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fno-strict-aliasing -fPIC  -m64 -pipe -ffunction-sections -fdata-sections -DHAVE_STRERROR -DLINUX -Dlinux -Wall -DNSS_NO_GCC48 -DXP_UNIX -UDEBUG -DNDEBUG -D_REENTRANT -DNSS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -I/usr/include/nspr4 -I../../dist/Linux4.4_x86_64_cc_glibc_PTH_64_OPT.OBJ/include -I../../dist/public/nss -I../../dist/private/nss  -std=c++0x dummy_io.cc
In file included from dummy_io.h:11,
                 from dummy_io.cc:11:
scoped_ptrs.h:54: error: expected initializer before '<' token
scoped_ptrs.h:55: error: expected initializer before '<' token
scoped_ptrs.h:56: error: expected initializer before '<' token
scoped_ptrs.h:57: error: expected initializer before '<' token
scoped_ptrs.h:58: error: expected initializer before '<' token
scoped_ptrs.h:59: error: expected initializer before '<' token
scoped_ptrs.h:60: error: expected initializer before '<' token
scoped_ptrs.h:61: error: expected initializer before '<' token
scoped_ptrs.h:62: error: expected initializer before '<' token
scoped_ptrs.h:63: error: expected initializer before '<' token
scoped_ptrs.h:64: error: expected initializer before '<' token
scoped_ptrs.h:65: error: expected initializer before '<' token
scoped_ptrs.h:66: error: expected initializer before '<' token
scoped_ptrs.h:67: error: expected initializer before '<' token
scoped_ptrs.h:68: error: expected initializer before '<' token
scoped_ptrs.h:69: error: expected initializer before '<' token
scoped_ptrs.h:70: error: expected initializer before '<' token
In file included from dummy_io.cc:11:
dummy_io.h:15: error: 'ScopedPRFileDesc' does not name a type
dummy_io.cc:19: error: 'ScopedPRFileDesc' does not name a type
dummy_io.cc: In member function 'virtual PRStatus DummyIOLayerMethods::Close(PRFileDesc*)':
dummy_io.cc:31: error: 'nullptr' was not declared in this scope
dummy_io.cc: In member function 'virtual PRFileDesc* DummyIOLayerMethods::Accept(PRFileDesc*, PRNetAddr*, PRIntervalTime)':
dummy_io.cc:99: error: 'nullptr' was not declared in this scope
make[1]: *** [Linux4.4_x86_64_cc_glibc_PTH_64_OPT.OBJ/dummy_io.o] Error 1
make[1]: Leaving directory `/usr/src/packages/BUILD/nss-3.33/nss/cpputil'
make: *** [libs] Error 2
Version: 3.32 → 3.33
With GCC 4.8:

cc -o Linux4.4_x86_64_cc_glibc_PTH_64_OPT.OBJ/utilmod.o -c -fmessage-length=0 -O2 -Wall -D_FORTIFY_SOURCE=2 -fstack-protector -funwind-tables -fasynchronous-unwind-tables -fno-strict-aliasing -fPIC  -m64 -pipe -ffunction-sections -fdata-sections -DHAVE_STRERROR -DLINUX -Dlinux -Wall -Werror -DXP_UNIX -UDEBUG -DNDEBUG -D_REENTRANT -DNSS_NO_INIT_SUPPORT -DUSE_UTIL_DIRECTLY -DNO_NSPR_10_SUPPORT -DSSL_DISABLE_DEPRECATED_CIPHER_SUITE_NAMES -I/usr/include/nspr4 -I../../../dist/Linux4.4_x86_64_cc_glibc_PTH_64_OPT.OBJ/include -I../../../dist/public/nss -I../../../dist/private/nss  utilmod.c
utilmod.c: In function 'nssutil_AddSecmodDBEntry':
utilmod.c:704:15: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result [-Werror=unused-result]
         fwrite(block, PORT_Strlen(block), 1, fd);
               ^
utilmod.c: In function 'nssutil_DeleteSecmodDBEntry':
utilmod.c:590:19: error: ignoring return value of 'fwrite', declared with attribute warn_unused_result [-Werror=unused-result]
             fwrite(block, PORT_Strlen(block), 1, fd2);
                   ^
cc1: all warnings being treated as errors
make[2]: *** [Linux4.4_x86_64_cc_glibc_PTH_64_OPT.OBJ/utilmod.o] Error 1
make[2]: Leaving directory `/usr/src/packages/BUILD/nss-3.33/nss/lib/util'
make[1]: *** [libs] Error 2
Attached patch Fix for NSS 3.33Splinter Review
I'd fixed this problem, thanks my friends from this topic! https://www.linux.org.ru/forum/development/13807223 I'm attaching a patch.
Severity: normal → S3
Status: UNCONFIRMED → RESOLVED
Closed: 4 months 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: