Closed Bug 406258 Opened 12 years ago Closed 12 years ago

zlib does not compile with new VC2008 compiler (VC9)

Categories

(NSS :: Tools, defect, P1)

3.11.8
x86
Windows Server 2003
defect

Tracking

(Not tracked)

RESOLVED FIXED
3.11.9

People

(Reporter: julien.pierre, Assigned: julien.pierre)

Details

Attachments

(1 file, 1 obsolete file)

cl -FoWINNT5.2_DBG.OBJ/crc32.obj -c -Od -Z7 -MD -W3 -nologo -GT -DXP_PC -Dverbos
e=-1 -DDEBUG -D_DEBUG -UNDEBUG -DDEBUG_Administrator -DWIN32 -D_WINDOWS -D_X86_
-DWINNT -DNSS_ENABLE_ECC -DNSS_ECC_MORE_THAN_SUITE_B -DUSE_UTIL_DIRECTLY -I../..
/../../dist/WINNT5.2_DBG.OBJ/include  -I../../../../dist/public/nss -I../../../.
./dist/private/nss  /c/NSS/tip/mozilla/security/nss/cmd/zlib/crc32.c
crc32.c
D:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\INCLUDE\stdio.h(358) : err
or C3163: '_vsnprintf': attributes inconsistent with previous declaration
        D:\Program Files (x86)\Microsoft Visual Studio 9.0\VC\INCLUDE\stdio.h(35
0) : see declaration of '_vsnprintf'
make: *** [WINNT5.2_DBG.OBJ/crc32.obj] Error 2
Attachment #290933 - Flags: superreview?(wtc)
Attachment #290933 - Flags: review?(nelson)
P1 because we want to release 3.11.9 on Win64 with VC9 .
Priority: -- → P1
Is this the ONLY compilation problem for VC9? 
Let's have just one bug for all the VC9-related compilation bugs.

What is the source of the number 1500 in this patch?
Yes, it is the only compilation problem for VC9. The source of the 1500 is that VC9 is CL version 15.00 :

Microsoft (R) C/C++ Optimizing Compiler Version 15.00.21022.08 for x64
Copyright (C) Microsoft Corporation.  All rights reserved.
Comment on attachment 290933 [details] [diff] [review]
Account for the fact that vsnprintf is defined in VC9

r=wtc.  We should submit this patch to the zlib maintainer.
Attachment #290933 - Flags: superreview?(wtc) → superreview+
Attachment #290933 - Flags: review?(nelson) → review+
checked in to the NSS_3_11_BRANCH :

Checking in zlib/zutil.h;
/cvsroot/mozilla/security/nss/cmd/zlib/zutil.h,v  <--  zutil.h
new revision: 1.6.2.1; previous revision: 1.6
done

and trunk :

Checking in zutil.h;
/cvsroot/mozilla/security/nss/cmd/zlib/zutil.h,v  <--  zutil.h
new revision: 1.7; previous revision: 1.6
done
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Shouldn't this have been checked into:
/modules/zlib/src/zutil.h
?

I still get the vsnprintf error there.
Attachment #291115 - Flags: superreview?
Attachment #291115 - Flags: review?(julien.pierre.boogz)
Attachment #291115 - Flags: superreview? → superreview?(wtc)
Comment on attachment 291115 [details] [diff] [review]
Need to patch modules/zlib as well?

Aaron, this bug is only concerned with the NSS module.
Attachment #291115 - Attachment is obsolete: true
Attachment #291115 - Flags: superreview?(wtc)
Attachment #291115 - Flags: review?(julien.pierre.boogz)
Comment on attachment 291115 [details] [diff] [review]
Need to patch modules/zlib as well?

It seems that you can also fix the vsnprintf issue by
adding vsnprintf to mozilla/configure.in here, assuming
AC_CHECK_FUNCS works with Visual C++:

http://lxr.mozilla.org/seamonkey/source/configure.in#3191

3187 dnl Checks for library functions.
3188 dnl ========================================================
3189 AC_PROG_GCC_TRADITIONAL
3190 AC_FUNC_MEMCMP
3191 AC_CHECK_FUNCS(random strerror lchown fchmod snprintf statvfs memmove rint stat64 lstat64)
3192 AC_CHECK_FUNCS(flockfile getpagesize)
Please ignore the previous comment 10.
You need to log in before you can comment on or make changes to this bug.