mirror of
https://salsa.debian.org/srivasta/make-dfsg.git
synced 2024-12-26 14:00:56 +00:00
Fix compile issues with Windows and VMS.
* main.c (initialize_stopchar_map): isblank() is not part of C89. Install bits for space and tab directly. * makeint.h: Don't define vfork; autoconf handles this for us. * vmsjobs.c: Rename NEXT_TOKEN to V_NEXT_TOKEN to avoid conflicts. * dir.c (print_dir_data_base): Visual Studio C doesn't have int64_t. * w32/subproc/sub_proc.c (process_begin): Missing arg to memset(). * build_w32.bat: Don't use obsolete Visual Studio flags.
This commit is contained in:
parent
45200a42d3
commit
6f7fb050b4
6 changed files with 12 additions and 14 deletions
|
@ -149,7 +149,7 @@ if "%COMPILER%" == "gcc" goto GccCompile
|
||||||
|
|
||||||
:: MSVC Compile
|
:: MSVC Compile
|
||||||
echo on
|
echo on
|
||||||
cl.exe /nologo /MT /W4 /GX /YX %OPTS% /I %OUTDIR% /I . /I glob /I w32/include /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR%OUTDIR% /Fp%OUTDIR%\%MAKE%.pch /Fo%OUTDIR%\%1.obj /Fd%OUTDIR%\%MAKE%.pdb %EXTRAS% /c %1.c
|
cl.exe /nologo /MT /W4 /EHsc %OPTS% /I %OUTDIR% /I . /I glob /I w32/include /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR%OUTDIR% /Fp%OUTDIR%\%MAKE%.pch /Fo%OUTDIR%\%1.obj /Fd%OUTDIR%\%MAKE%.pdb %EXTRAS% /c %1.c
|
||||||
@echo off
|
@echo off
|
||||||
echo %OUTDIR%\%1.obj >>%OUTDIR%\link.sc
|
echo %OUTDIR%\%1.obj >>%OUTDIR%\link.sc
|
||||||
goto :EOF
|
goto :EOF
|
||||||
|
|
8
dir.c
8
dir.c
|
@ -1082,9 +1082,9 @@ print_dir_data_base (void)
|
||||||
else if (dir->contents->dirfiles.ht_vec == 0)
|
else if (dir->contents->dirfiles.ht_vec == 0)
|
||||||
{
|
{
|
||||||
#ifdef WINDOWS32
|
#ifdef WINDOWS32
|
||||||
printf (_("# %s (key %s, mtime %I64d): could not be opened.\n"),
|
printf (_("# %s (key %s, mtime %ull): could not be opened.\n"),
|
||||||
dir->name, dir->contents->path_key,
|
dir->name, dir->contents->path_key,
|
||||||
(int64_t)dir->contents->mtime);
|
(unsigned long long)dir->contents->mtime);
|
||||||
#else /* WINDOWS32 */
|
#else /* WINDOWS32 */
|
||||||
#ifdef VMS_INO_T
|
#ifdef VMS_INO_T
|
||||||
printf (_("# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"),
|
printf (_("# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"),
|
||||||
|
@ -1119,9 +1119,9 @@ print_dir_data_base (void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
#ifdef WINDOWS32
|
#ifdef WINDOWS32
|
||||||
printf (_("# %s (key %s, mtime %I64d): "),
|
printf (_("# %s (key %s, mtime %ull): "),
|
||||||
dir->name, dir->contents->path_key,
|
dir->name, dir->contents->path_key,
|
||||||
(int64_t)dir->contents->mtime);
|
(unsigned long long)dir->contents->mtime);
|
||||||
#else /* WINDOWS32 */
|
#else /* WINDOWS32 */
|
||||||
#ifdef VMS_INO_T
|
#ifdef VMS_INO_T
|
||||||
printf (_("# %s (device %d, inode [%d,%d,%d]): "),
|
printf (_("# %s (device %d, inode [%d,%d,%d]): "),
|
||||||
|
|
7
main.c
7
main.c
|
@ -663,6 +663,9 @@ initialize_stopchar_map ()
|
||||||
stopchar_map[(int)'-'] = MAP_USERFUNC;
|
stopchar_map[(int)'-'] = MAP_USERFUNC;
|
||||||
stopchar_map[(int)'_'] = MAP_USERFUNC;
|
stopchar_map[(int)'_'] = MAP_USERFUNC;
|
||||||
|
|
||||||
|
stopchar_map[(int)' '] = MAP_BLANK;
|
||||||
|
stopchar_map[(int)'\t'] = MAP_BLANK;
|
||||||
|
|
||||||
stopchar_map[(int)'/'] = MAP_DIRSEP;
|
stopchar_map[(int)'/'] = MAP_DIRSEP;
|
||||||
#if defined(VMS)
|
#if defined(VMS)
|
||||||
stopchar_map[(int)':'] |= MAP_DIRSEP;
|
stopchar_map[(int)':'] |= MAP_DIRSEP;
|
||||||
|
@ -674,9 +677,7 @@ initialize_stopchar_map ()
|
||||||
|
|
||||||
for (i = 1; i <= UCHAR_MAX; ++i)
|
for (i = 1; i <= UCHAR_MAX; ++i)
|
||||||
{
|
{
|
||||||
if (isblank (i))
|
if (isspace (i) && NONE_SET (stopchar_map[i], MAP_BLANK))
|
||||||
stopchar_map[i] |= MAP_BLANK;
|
|
||||||
else if (isspace (i))
|
|
||||||
/* Don't mark blank characters as newline characters. */
|
/* Don't mark blank characters as newline characters. */
|
||||||
stopchar_map[i] |= MAP_NEWLINE;
|
stopchar_map[i] |= MAP_NEWLINE;
|
||||||
else if (isalnum (i))
|
else if (isalnum (i))
|
||||||
|
|
|
@ -137,9 +137,6 @@ extern int errno;
|
||||||
#ifdef HAVE_VFORK_H
|
#ifdef HAVE_VFORK_H
|
||||||
# include <vfork.h>
|
# include <vfork.h>
|
||||||
#endif
|
#endif
|
||||||
#if !HAVE_WORKING_VFORK
|
|
||||||
# define vfork fork
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef HAVE_LIMITS_H
|
#ifdef HAVE_LIMITS_H
|
||||||
# include <limits.h>
|
# include <limits.h>
|
||||||
|
|
|
@ -264,14 +264,14 @@ tryToSetupYAst(void)
|
||||||
{ token->cmd_errno = ERANGE; return x; }}
|
{ token->cmd_errno = ERANGE; return x; }}
|
||||||
|
|
||||||
/* Check if we are out of space for more tokens */
|
/* Check if we are out of space for more tokens */
|
||||||
#define NEXT_TOKEN { if (cmd_tkn_index < MAX_DCL_TOKENS) \
|
#define V_NEXT_TOKEN { if (cmd_tkn_index < MAX_DCL_TOKENS) \
|
||||||
cmd_tokens[++cmd_tkn_index] = NULL; \
|
cmd_tokens[++cmd_tkn_index] = NULL; \
|
||||||
else { token.cmd_errno = E2BIG; break; } \
|
else { token.cmd_errno = E2BIG; break; } \
|
||||||
token.length = 0;}
|
token.length = 0;}
|
||||||
|
|
||||||
|
|
||||||
#define UPDATE_TOKEN {cmd_tokens[cmd_tkn_index] = strdup(token.text); \
|
#define UPDATE_TOKEN {cmd_tokens[cmd_tkn_index] = strdup(token.text); \
|
||||||
NEXT_TOKEN;}
|
V_NEXT_TOKEN;}
|
||||||
|
|
||||||
#define EOS_ERROR(x) { if (*x == 0) { token->cmd_errno = ERANGE; break; }}
|
#define EOS_ERROR(x) { if (*x == 0) { token->cmd_errno = ERANGE; break; }}
|
||||||
|
|
||||||
|
|
|
@ -677,7 +677,7 @@ process_begin(
|
||||||
/*
|
/*
|
||||||
* Set up inherited stdin, stdout, stderr for child
|
* Set up inherited stdin, stdout, stderr for child
|
||||||
*/
|
*/
|
||||||
memset(&startInfo, sizeof(startInfo));
|
memset(&startInfo, '\0', sizeof(startInfo));
|
||||||
GetStartupInfo(&startInfo);
|
GetStartupInfo(&startInfo);
|
||||||
startInfo.dwFlags = STARTF_USESTDHANDLES;
|
startInfo.dwFlags = STARTF_USESTDHANDLES;
|
||||||
startInfo.lpReserved = 0;
|
startInfo.lpReserved = 0;
|
||||||
|
|
Loading…
Reference in a new issue