bpo-9566: Fix some Windows x64 compiler warnings (#2492)

* bpo-9566: Silence liblzma warnings

* bpo-9566: Silence tcl warnings

* bpo-9566: Silence tk warnings

* bpo-9566: Silence tix warnings

* bpo-9566: Fix some library warnings

* bpo-9566: Fix msvcrtmodule.c warnings

* bpo-9566: Silence _bz2 warnings

* bpo-9566: Fixed some _ssl warnings

* bpo-9566: Fix _msi warnings

* bpo-9566: Silence _ctypes warnings

* Revert "bpo-9566: Fixed some _ssl warnings"

This reverts commit a639001c94.

* bpo-9566: Also consider NULL as a possible error in HANDLE_return_converter

* bpo-9566: whitespace fixes
This commit is contained in:
Segev Finer 2017-07-27 01:17:57 +03:00 committed by Steve Dower
parent f0851910eb
commit 679b566622
12 changed files with 84 additions and 59 deletions

View File

@ -372,7 +372,7 @@ binascii_b2a_uu_impl(PyObject *module, Py_buffer *data, int backtick)
if (backtick && !bin_len) if (backtick && !bin_len)
*ascii_data++ = '`'; *ascii_data++ = '`';
else else
*ascii_data++ = ' ' + bin_len; *ascii_data++ = ' ' + (unsigned char)bin_len;
for( ; bin_len > 0 || leftbits != 0 ; bin_len--, bin_data++ ) { for( ; bin_len > 0 || leftbits != 0 ; bin_len--, bin_data++ ) {
/* Shift the data (or padding) into our buffer */ /* Shift the data (or padding) into our buffer */

View File

@ -142,7 +142,7 @@ PyZlib_Free(voidpf ctx, void *ptr)
static void static void
arrange_input_buffer(z_stream *zst, Py_ssize_t *remains) arrange_input_buffer(z_stream *zst, Py_ssize_t *remains)
{ {
zst->avail_in = Py_MIN((size_t)*remains, UINT_MAX); zst->avail_in = (uInt)Py_MIN((size_t)*remains, UINT_MAX);
*remains -= zst->avail_in; *remains -= zst->avail_in;
} }
@ -177,7 +177,7 @@ arrange_output_buffer_with_maximum(z_stream *zst, PyObject **buffer,
} }
} }
zst->avail_out = Py_MIN((size_t)(length - occupied), UINT_MAX); zst->avail_out = (uInt)Py_MIN((size_t)(length - occupied), UINT_MAX);
zst->next_out = (Byte *)PyBytes_AS_STRING(*buffer) + occupied; zst->next_out = (Byte *)PyBytes_AS_STRING(*buffer) + occupied;
return length; return length;

View File

@ -948,8 +948,8 @@ static PyTypeObject msidb_Type = {
}; };
#define Py_NOT_PERSIST(x, flag) \ #define Py_NOT_PERSIST(x, flag) \
(x != (int)(flag) && \ (x != (SIZE_T)(flag) && \
x != ((int)(flag) | MSIDBOPEN_PATCHFILE)) x != ((SIZE_T)(flag) | MSIDBOPEN_PATCHFILE))
#define Py_INVALID_PERSIST(x) \ #define Py_INVALID_PERSIST(x) \
(Py_NOT_PERSIST(x, MSIDBOPEN_READONLY) && \ (Py_NOT_PERSIST(x, MSIDBOPEN_READONLY) && \
@ -972,7 +972,7 @@ static PyObject* msiopendb(PyObject *obj, PyObject *args)
behavior. */ behavior. */
if (Py_INVALID_PERSIST(persist)) if (Py_INVALID_PERSIST(persist))
return msierror(ERROR_INVALID_PARAMETER); return msierror(ERROR_INVALID_PARAMETER);
status = MsiOpenDatabase(path, (LPCSTR)persist, &h); status = MsiOpenDatabase(path, (LPCSTR)(SIZE_T)persist, &h);
if (status != ERROR_SUCCESS) if (status != ERROR_SUCCESS)
return msierror(status); return msierror(status);
@ -1038,12 +1038,12 @@ PyInit__msi(void)
if (m == NULL) if (m == NULL)
return NULL; return NULL;
PyModule_AddIntConstant(m, "MSIDBOPEN_CREATEDIRECT", (long)MSIDBOPEN_CREATEDIRECT); PyModule_AddIntConstant(m, "MSIDBOPEN_CREATEDIRECT", (long)(SIZE_T)MSIDBOPEN_CREATEDIRECT);
PyModule_AddIntConstant(m, "MSIDBOPEN_CREATE", (long)MSIDBOPEN_CREATE); PyModule_AddIntConstant(m, "MSIDBOPEN_CREATE", (long)(SIZE_T)MSIDBOPEN_CREATE);
PyModule_AddIntConstant(m, "MSIDBOPEN_DIRECT", (long)MSIDBOPEN_DIRECT); PyModule_AddIntConstant(m, "MSIDBOPEN_DIRECT", (long)(SIZE_T)MSIDBOPEN_DIRECT);
PyModule_AddIntConstant(m, "MSIDBOPEN_READONLY", (long)MSIDBOPEN_READONLY); PyModule_AddIntConstant(m, "MSIDBOPEN_READONLY", (long)(SIZE_T)MSIDBOPEN_READONLY);
PyModule_AddIntConstant(m, "MSIDBOPEN_TRANSACT", (long)MSIDBOPEN_TRANSACT); PyModule_AddIntConstant(m, "MSIDBOPEN_TRANSACT", (long)(SIZE_T)MSIDBOPEN_TRANSACT);
PyModule_AddIntConstant(m, "MSIDBOPEN_PATCHFILE", (long)MSIDBOPEN_PATCHFILE); PyModule_AddIntConstant(m, "MSIDBOPEN_PATCHFILE", (long)(SIZE_T)MSIDBOPEN_PATCHFILE);
PyModule_AddIntMacro(m, MSICOLINFO_NAMES); PyModule_AddIntMacro(m, MSICOLINFO_NAMES);
PyModule_AddIntMacro(m, MSICOLINFO_TYPES); PyModule_AddIntMacro(m, MSICOLINFO_TYPES);

View File

@ -113,13 +113,13 @@ PyDoc_STRVAR(msvcrt_open_osfhandle__doc__,
{"open_osfhandle", (PyCFunction)msvcrt_open_osfhandle, METH_FASTCALL, msvcrt_open_osfhandle__doc__}, {"open_osfhandle", (PyCFunction)msvcrt_open_osfhandle, METH_FASTCALL, msvcrt_open_osfhandle__doc__},
static long static long
msvcrt_open_osfhandle_impl(PyObject *module, intptr_t handle, int flags); msvcrt_open_osfhandle_impl(PyObject *module, void *handle, int flags);
static PyObject * static PyObject *
msvcrt_open_osfhandle(PyObject *module, PyObject **args, Py_ssize_t nargs) msvcrt_open_osfhandle(PyObject *module, PyObject **args, Py_ssize_t nargs)
{ {
PyObject *return_value = NULL; PyObject *return_value = NULL;
intptr_t handle; void *handle;
int flags; int flags;
long _return_value; long _return_value;
@ -148,7 +148,7 @@ PyDoc_STRVAR(msvcrt_get_osfhandle__doc__,
#define MSVCRT_GET_OSFHANDLE_METHODDEF \ #define MSVCRT_GET_OSFHANDLE_METHODDEF \
{"get_osfhandle", (PyCFunction)msvcrt_get_osfhandle, METH_O, msvcrt_get_osfhandle__doc__}, {"get_osfhandle", (PyCFunction)msvcrt_get_osfhandle, METH_O, msvcrt_get_osfhandle__doc__},
static intptr_t static void *
msvcrt_get_osfhandle_impl(PyObject *module, int fd); msvcrt_get_osfhandle_impl(PyObject *module, int fd);
static PyObject * static PyObject *
@ -156,16 +156,16 @@ msvcrt_get_osfhandle(PyObject *module, PyObject *arg)
{ {
PyObject *return_value = NULL; PyObject *return_value = NULL;
int fd; int fd;
intptr_t _return_value; void *_return_value;
if (!PyArg_Parse(arg, "i:get_osfhandle", &fd)) { if (!PyArg_Parse(arg, "i:get_osfhandle", &fd)) {
goto exit; goto exit;
} }
_return_value = msvcrt_get_osfhandle_impl(module, fd); _return_value = msvcrt_get_osfhandle_impl(module, fd);
if ((_return_value == -1) && PyErr_Occurred()) { if ((_return_value == NULL || _return_value == INVALID_HANDLE_VALUE) && PyErr_Occurred()) {
goto exit; goto exit;
} }
return_value = PyLong_FromVoidPtr((void *)_return_value); return_value = PyLong_FromVoidPtr(_return_value);
exit: exit:
return return_value; return return_value;
@ -426,26 +426,26 @@ PyDoc_STRVAR(msvcrt_CrtSetReportFile__doc__,
#define MSVCRT_CRTSETREPORTFILE_METHODDEF \ #define MSVCRT_CRTSETREPORTFILE_METHODDEF \
{"CrtSetReportFile", (PyCFunction)msvcrt_CrtSetReportFile, METH_FASTCALL, msvcrt_CrtSetReportFile__doc__}, {"CrtSetReportFile", (PyCFunction)msvcrt_CrtSetReportFile, METH_FASTCALL, msvcrt_CrtSetReportFile__doc__},
static long static void *
msvcrt_CrtSetReportFile_impl(PyObject *module, int type, int file); msvcrt_CrtSetReportFile_impl(PyObject *module, int type, void *file);
static PyObject * static PyObject *
msvcrt_CrtSetReportFile(PyObject *module, PyObject **args, Py_ssize_t nargs) msvcrt_CrtSetReportFile(PyObject *module, PyObject **args, Py_ssize_t nargs)
{ {
PyObject *return_value = NULL; PyObject *return_value = NULL;
int type; int type;
int file; void *file;
long _return_value; void *_return_value;
if (!_PyArg_ParseStack(args, nargs, "ii:CrtSetReportFile", if (!_PyArg_ParseStack(args, nargs, "i"_Py_PARSE_INTPTR":CrtSetReportFile",
&type, &file)) { &type, &file)) {
goto exit; goto exit;
} }
_return_value = msvcrt_CrtSetReportFile_impl(module, type, file); _return_value = msvcrt_CrtSetReportFile_impl(module, type, file);
if ((_return_value == -1) && PyErr_Occurred()) { if ((_return_value == NULL || _return_value == INVALID_HANDLE_VALUE) && PyErr_Occurred()) {
goto exit; goto exit;
} }
return_value = PyLong_FromLong(_return_value); return_value = PyLong_FromVoidPtr(_return_value);
exit: exit:
return return_value; return return_value;
@ -569,4 +569,4 @@ exit:
#ifndef MSVCRT_SET_ERROR_MODE_METHODDEF #ifndef MSVCRT_SET_ERROR_MODE_METHODDEF
#define MSVCRT_SET_ERROR_MODE_METHODDEF #define MSVCRT_SET_ERROR_MODE_METHODDEF
#endif /* !defined(MSVCRT_SET_ERROR_MODE_METHODDEF) */ #endif /* !defined(MSVCRT_SET_ERROR_MODE_METHODDEF) */
/*[clinic end generated code: output=8e9e57c48c4defcc input=a9049054013a1b77]*/ /*[clinic end generated code: output=e86cf578e7f1ffd2 input=a9049054013a1b77]*/

View File

@ -33,14 +33,20 @@
#endif #endif
/*[python input] /*[python input]
class intptr_t_converter(CConverter): class HANDLE_converter(CConverter):
type = 'intptr_t' type = 'void *'
format_unit = '"_Py_PARSE_INTPTR"' format_unit = '"_Py_PARSE_INTPTR"'
class handle_return_converter(long_return_converter): class HANDLE_return_converter(CReturnConverter):
type = 'intptr_t' type = 'void *'
cast = '(void *)'
conversion_fn = 'PyLong_FromVoidPtr' def render(self, function, data):
self.declare(data)
self.err_occurred_if(
"_return_value == NULL || _return_value == INVALID_HANDLE_VALUE",
data)
data.return_conversion.append(
'return_value = PyLong_FromVoidPtr(_return_value);\n')
class byte_char_return_converter(CReturnConverter): class byte_char_return_converter(CReturnConverter):
type = 'int' type = 'int'
@ -59,7 +65,7 @@ class wchar_t_return_converter(CReturnConverter):
data.return_conversion.append( data.return_conversion.append(
'return_value = PyUnicode_FromOrdinal(_return_value);\n') 'return_value = PyUnicode_FromOrdinal(_return_value);\n')
[python start generated code]*/ [python start generated code]*/
/*[python end generated code: output=da39a3ee5e6b4b0d input=b59f1663dba11997]*/ /*[python end generated code: output=da39a3ee5e6b4b0d input=2b25dc89e9e59534]*/
/*[clinic input] /*[clinic input]
module msvcrt module msvcrt
@ -152,7 +158,7 @@ msvcrt_setmode_impl(PyObject *module, int fd, int flags)
/*[clinic input] /*[clinic input]
msvcrt.open_osfhandle -> long msvcrt.open_osfhandle -> long
handle: intptr_t handle: HANDLE
flags: int flags: int
/ /
@ -164,13 +170,13 @@ to os.fdopen() to create a file object.
[clinic start generated code]*/ [clinic start generated code]*/
static long static long
msvcrt_open_osfhandle_impl(PyObject *module, intptr_t handle, int flags) msvcrt_open_osfhandle_impl(PyObject *module, void *handle, int flags)
/*[clinic end generated code: output=cede871bf939d6e3 input=cb2108bbea84514e]*/ /*[clinic end generated code: output=b2fb97c4b515e4e6 input=d5db190a307cf4bb]*/
{ {
int fd; int fd;
_Py_BEGIN_SUPPRESS_IPH _Py_BEGIN_SUPPRESS_IPH
fd = _open_osfhandle(handle, flags); fd = _open_osfhandle((intptr_t)handle, flags);
_Py_END_SUPPRESS_IPH _Py_END_SUPPRESS_IPH
if (fd == -1) if (fd == -1)
PyErr_SetFromErrno(PyExc_OSError); PyErr_SetFromErrno(PyExc_OSError);
@ -179,7 +185,7 @@ msvcrt_open_osfhandle_impl(PyObject *module, intptr_t handle, int flags)
} }
/*[clinic input] /*[clinic input]
msvcrt.get_osfhandle -> handle msvcrt.get_osfhandle -> HANDLE
fd: int fd: int
/ /
@ -189,9 +195,9 @@ Return the file handle for the file descriptor fd.
Raises OSError if fd is not recognized. Raises OSError if fd is not recognized.
[clinic start generated code]*/ [clinic start generated code]*/
static intptr_t static void *
msvcrt_get_osfhandle_impl(PyObject *module, int fd) msvcrt_get_osfhandle_impl(PyObject *module, int fd)
/*[clinic end generated code: output=7ce761dd0de2b503 input=305900f4bfab76c7]*/ /*[clinic end generated code: output=aca01dfe24637374 input=5fcfde9b17136aa2]*/
{ {
intptr_t handle = -1; intptr_t handle = -1;
@ -201,7 +207,7 @@ msvcrt_get_osfhandle_impl(PyObject *module, int fd)
if (handle == -1) if (handle == -1)
PyErr_SetFromErrno(PyExc_OSError); PyErr_SetFromErrno(PyExc_OSError);
return handle; return (HANDLE)handle;
} }
/* Console I/O */ /* Console I/O */
@ -389,10 +395,10 @@ msvcrt_ungetwch_impl(PyObject *module, int unicode_char)
#ifdef _DEBUG #ifdef _DEBUG
/*[clinic input] /*[clinic input]
msvcrt.CrtSetReportFile -> long msvcrt.CrtSetReportFile -> HANDLE
type: int type: int
file: int file: HANDLE
/ /
Wrapper around _CrtSetReportFile. Wrapper around _CrtSetReportFile.
@ -400,14 +406,14 @@ Wrapper around _CrtSetReportFile.
Only available on Debug builds. Only available on Debug builds.
[clinic start generated code]*/ [clinic start generated code]*/
static long static void *
msvcrt_CrtSetReportFile_impl(PyObject *module, int type, int file) msvcrt_CrtSetReportFile_impl(PyObject *module, int type, void *file)
/*[clinic end generated code: output=df291c7fe032eb68 input=bb8f721a604fcc45]*/ /*[clinic end generated code: output=9393e8c77088bbe9 input=290809b5f19e65b9]*/
{ {
long res; HANDLE res;
_Py_BEGIN_SUPPRESS_IPH _Py_BEGIN_SUPPRESS_IPH
res = (long)_CrtSetReportFile(type, (_HFILE)file); res = _CrtSetReportFile(type, file);
_Py_END_SUPPRESS_IPH _Py_END_SUPPRESS_IPH
return res; return res;
@ -540,6 +546,20 @@ insertint(PyObject *d, char *name, int value)
} }
} }
static void
insertptr(PyObject *d, char *name, void *value)
{
PyObject *v = PyLong_FromVoidPtr(value);
if (v == NULL) {
/* Don't bother reporting this error */
PyErr_Clear();
}
else {
PyDict_SetItemString(d, name, v);
Py_DECREF(v);
}
}
PyMODINIT_FUNC PyMODINIT_FUNC
PyInit_msvcrt(void) PyInit_msvcrt(void)
{ {
@ -568,9 +588,9 @@ PyInit_msvcrt(void)
insertint(d, "CRTDBG_MODE_FILE", _CRTDBG_MODE_FILE); insertint(d, "CRTDBG_MODE_FILE", _CRTDBG_MODE_FILE);
insertint(d, "CRTDBG_MODE_WNDW", _CRTDBG_MODE_WNDW); insertint(d, "CRTDBG_MODE_WNDW", _CRTDBG_MODE_WNDW);
insertint(d, "CRTDBG_REPORT_MODE", _CRTDBG_REPORT_MODE); insertint(d, "CRTDBG_REPORT_MODE", _CRTDBG_REPORT_MODE);
insertint(d, "CRTDBG_FILE_STDERR", (int)_CRTDBG_FILE_STDERR); insertptr(d, "CRTDBG_FILE_STDERR", _CRTDBG_FILE_STDERR);
insertint(d, "CRTDBG_FILE_STDOUT", (int)_CRTDBG_FILE_STDOUT); insertptr(d, "CRTDBG_FILE_STDOUT", _CRTDBG_FILE_STDOUT);
insertint(d, "CRTDBG_REPORT_FILE", (int)_CRTDBG_REPORT_FILE); insertptr(d, "CRTDBG_REPORT_FILE", _CRTDBG_REPORT_FILE);
#endif #endif
/* constants for the crt versions */ /* constants for the crt versions */

View File

@ -905,7 +905,7 @@ winreg_CreateKeyEx_impl(PyObject *module, HKEY key, Py_UNICODE *sub_key,
HKEY retKey; HKEY retKey;
long rc; long rc;
rc = RegCreateKeyExW(key, sub_key, reserved, NULL, (DWORD)NULL, rc = RegCreateKeyExW(key, sub_key, reserved, NULL, 0,
access, NULL, &retKey, NULL); access, NULL, &retKey, NULL);
if (rc != ERROR_SUCCESS) { if (rc != ERROR_SUCCESS) {
PyErr_SetFromWindowsErrWithFunction(rc, "CreateKeyEx"); PyErr_SetFromWindowsErrWithFunction(rc, "CreateKeyEx");

View File

@ -64,6 +64,7 @@
<ClCompile> <ClCompile>
<AdditionalIncludeDirectories>$(bz2Dir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(bz2Dir);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
<PreprocessorDefinitions>WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions> <PreprocessorDefinitions>WIN32;_FILE_OFFSET_BITS=64;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<DisableSpecificWarnings>4244;4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
</ClCompile> </ClCompile>
<Link> <Link>
<BaseAddress>0x1D170000</BaseAddress> <BaseAddress>0x1D170000</BaseAddress>

View File

@ -83,7 +83,9 @@
<ClCompile Include="..\Modules\_ctypes\cfield.c" /> <ClCompile Include="..\Modules\_ctypes\cfield.c" />
<ClCompile Include="..\Modules\_ctypes\libffi_msvc\ffi.c" /> <ClCompile Include="..\Modules\_ctypes\libffi_msvc\ffi.c" />
<ClCompile Include="..\Modules\_ctypes\malloc_closure.c" /> <ClCompile Include="..\Modules\_ctypes\malloc_closure.c" />
<ClCompile Include="..\Modules\_ctypes\libffi_msvc\prep_cif.c" /> <ClCompile Include="..\Modules\_ctypes\libffi_msvc\prep_cif.c">
<DisableSpecificWarnings Condition="'$(Platform)'=='x64'">4267;%(DisableSpecificWarnings)</DisableSpecificWarnings>
</ClCompile>
<ClCompile Include="..\Modules\_ctypes\stgdict.c" /> <ClCompile Include="..\Modules\_ctypes\stgdict.c" />
<ClCompile Include="..\Modules\_ctypes\libffi_msvc\win32.c"> <ClCompile Include="..\Modules\_ctypes\libffi_msvc\win32.c">
<ExcludedFromBuild Condition="'$(Platform)'=='x64'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Platform)'=='x64'">true</ExcludedFromBuild>

View File

@ -64,7 +64,7 @@
<DebugInformationFormat>ProgramDatabase</DebugInformationFormat> <DebugInformationFormat>ProgramDatabase</DebugInformationFormat>
<Optimization>Disabled</Optimization> <Optimization>Disabled</Optimization>
<AdditionalIncludeDirectories>$(lzmaDir)windows;$(lzmaDir)src/liblzma/common;$(lzmaDir)src/common;$(lzmaDir)src/liblzma/api;$(lzmaDir)src/liblzma/check;$(lzmaDir)src/liblzma/delta;$(lzmaDir)src/liblzma/lz;$(lzmaDir)src/liblzma/lzma;$(lzmaDir)src/liblzma/rangecoder;$(lzmaDir)src/liblzma/simple</AdditionalIncludeDirectories> <AdditionalIncludeDirectories>$(lzmaDir)windows;$(lzmaDir)src/liblzma/common;$(lzmaDir)src/common;$(lzmaDir)src/liblzma/api;$(lzmaDir)src/liblzma/check;$(lzmaDir)src/liblzma/delta;$(lzmaDir)src/liblzma/lz;$(lzmaDir)src/liblzma/lzma;$(lzmaDir)src/liblzma/rangecoder;$(lzmaDir)src/liblzma/simple</AdditionalIncludeDirectories>
<DisableSpecificWarnings>4028;4113;4244;4267;4996</DisableSpecificWarnings> <DisableSpecificWarnings>4028;4113;4133;4244;4267;4996;%(DisableSpecificWarnings)</DisableSpecificWarnings>
</ClCompile> </ClCompile>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<ItemGroup> <ItemGroup>

View File

@ -55,11 +55,12 @@
<TclOpts Condition="$(Configuration) == 'Debug'">symbols,msvcrt</TclOpts> <TclOpts Condition="$(Configuration) == 'Debug'">symbols,msvcrt</TclOpts>
<TclDirs>INSTALLDIR="$(OutDir.TrimEnd(`\`))" INSTALL_DIR="$(OutDir.TrimEnd(`\`))"</TclDirs> <TclDirs>INSTALLDIR="$(OutDir.TrimEnd(`\`))" INSTALL_DIR="$(OutDir.TrimEnd(`\`))"</TclDirs>
<DebugFlags Condition="'$(Configuration)' == 'Debug'">DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996"</DebugFlags> <DebugFlags Condition="'$(Configuration)' == 'Debug'">DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996"</DebugFlags>
<WarningsFlags>WARNINGS="-W3 -wd4311 -wd4312"</WarningsFlags>
<NMakeBuildCommandLine>setlocal <NMakeBuildCommandLine>setlocal
set VCINSTALLDIR=$(VCInstallDir) set VCINSTALLDIR=$(VCInstallDir)
cd /D "$(tclDir)win" cd /D "$(tclDir)win"
nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(DebugFlags) core shell dlls nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(DebugFlags) $(WarningsFlags) core shell dlls
nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(DebugFlags) install-binaries install-libraries nmake -f makefile.vc MACHINE=$(TclMachine) OPTS=$(TclOpts) $(TclDirs) $(DebugFlags) $(WarningsFlags) install-binaries install-libraries
copy /Y ..\license.terms "$(OutDir)\tcllicense.terms" copy /Y ..\license.terms "$(OutDir)\tcllicense.terms"
</NMakeBuildCommandLine> </NMakeBuildCommandLine>
</PropertyGroup> </PropertyGroup>

View File

@ -56,7 +56,7 @@
<TixDirs>BUILDDIRTOP="$(BuildDirTop)" TCL_DIR="$(tclDir.TrimEnd(`\`))" TK_DIR="$(tkDir.TrimEnd(`\`))" INSTALL_DIR="$(OutDir.TrimEnd(`\`))"</TixDirs> <TixDirs>BUILDDIRTOP="$(BuildDirTop)" TCL_DIR="$(tclDir.TrimEnd(`\`))" TK_DIR="$(tkDir.TrimEnd(`\`))" INSTALL_DIR="$(OutDir.TrimEnd(`\`))"</TixDirs>
<DebugFlags Condition="'$(Configuration)' == 'Debug'">DEBUG=1 NODEBUG=0 TCL_DBGX=g TK_DBGX=g</DebugFlags> <DebugFlags Condition="'$(Configuration)' == 'Debug'">DEBUG=1 NODEBUG=0 TCL_DBGX=g TK_DBGX=g</DebugFlags>
<DebugFlags Condition="'$(Configuration)' != 'Debug'">DEBUG=0 NODEBUG=1</DebugFlags> <DebugFlags Condition="'$(Configuration)' != 'Debug'">DEBUG=0 NODEBUG=1</DebugFlags>
<CFlags>-c -W3 -nologo -MD -wd4028 -wd4090</CFlags> <CFlags>-c -W3 -nologo -MD -wd4028 -wd4090 -wd4244 -wd4267 -wd4312</CFlags>
<NMakeBuildCommandLine>setlocal <NMakeBuildCommandLine>setlocal
set VCINSTALLDIR=$(VCInstallDir) set VCINSTALLDIR=$(VCInstallDir)
cd /D "$(tixDir)win" cd /D "$(tixDir)win"

View File

@ -56,11 +56,12 @@
<TkOpts Condition="$(Configuration) == 'Debug'">symbols,msvcrt</TkOpts> <TkOpts Condition="$(Configuration) == 'Debug'">symbols,msvcrt</TkOpts>
<TkDirs>TCLDIR="$(tclDir.TrimEnd(`\`))" INSTALLDIR="$(OutDir.TrimEnd(`\`))"</TkDirs> <TkDirs>TCLDIR="$(tclDir.TrimEnd(`\`))" INSTALLDIR="$(OutDir.TrimEnd(`\`))"</TkDirs>
<DebugFlags Condition="'$(Configuration)' == 'Debug'">DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996"</DebugFlags> <DebugFlags Condition="'$(Configuration)' == 'Debug'">DEBUGFLAGS="-wd4456 -wd4457 -wd4458 -wd4459 -wd4996"</DebugFlags>
<WarningsFlags>WARNINGS="-W3 -wd4244 -wd4267 -wd4311 -wd4312 -wd4334"</WarningsFlags>
<NMakeBuildCommandLine>setlocal <NMakeBuildCommandLine>setlocal
set VCINSTALLDIR=$(VCInstallDir) set VCINSTALLDIR=$(VCInstallDir)
cd /D "$(tkDir)win" cd /D "$(tkDir)win"
nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs) $(DebugFlags) all nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs) $(DebugFlags) $(WarningsFlags) all
nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs) $(DebugFlags) install-binaries install-libraries nmake /nologo -f makefile.vc RC=rc MACHINE=$(TclMachine) OPTS=$(TkOpts) $(TkDirs) $(DebugFlags) $(WarningsFlags) install-binaries install-libraries
copy /Y ..\license.terms "$(OutDir)\tklicense.terms" copy /Y ..\license.terms "$(OutDir)\tklicense.terms"
</NMakeBuildCommandLine> </NMakeBuildCommandLine>
</PropertyGroup> </PropertyGroup>