]> git.ipfire.org Git - thirdparty/make.git/commitdiff
Fixes to build_w32.bat for building with MSVC 64bit.
authorPaul Smith <psmith@gnu.org>
Mon, 12 Jul 2010 20:32:59 +0000 (20:32 +0000)
committerPaul Smith <psmith@gnu.org>
Mon, 12 Jul 2010 20:32:59 +0000 (20:32 +0000)
ChangeLog
build_w32.bat
job.c

index dac4ebb3b89b6aae914f3f3a9a9506e44e19d94d..bdaf8c5e70441ee22c44e601cfa8636c32abe18a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,8 +1,14 @@
+2010-07-12  Paul Smith  <psmith@gnu.org>
+
+       * build_w32.bat: Support for MSVC Windows x86_64 builds.
+       * job.c: Don't define execve() on MSVC/64bit.
+       Patch by Viktor Szakats.  Fixes Savannah bug #27590.
+
 2010-07-12  Eli Zaretskii  <eliz@gnu.org>
 
        * make.h (alloca) [!__GNUC__]: Don't define prototype.
        (int w32_kill): Use pid_t for process ID argument.
-       Savannah bug #27809.
+       Fixes Savannah bug #27809.
 
 2010-07-12  Paul Smith  <psmith@gnu.org>
 
        (sub_process_t): Use intptr_t for file handles and pid_t for
        process ID.
        (process_pipes, process_init_fd, process_begin): Use intptr_t for
-       file handles and pid_t for process ID.
-       Savannah bug #27809.  Patch by Ozkan Sezer <sezeroz@gmail.com>
+       file handles and pid_t for process ID.  Fixes Savannah bug #27809.
+       Patch by Ozkan Sezer <sezeroz@gmail.com>
 
        * function.c (abspath): Support absolute file names in UNC format.
-       (Savannah bug #30312.)
+       Fixes Savannah bug #30312.
 
        * job.c (pid2str) [WINDOWS32]: Don't use %Id with GCC < 4.x.
        (exec_command) [WINDOWS32]: Use pid2str instead of non-portable
@@ -52,8 +58,8 @@
        (func_shell): Use pid_t for process IDs.
        * main.c (main) [WINDOWS32]: Pacify the compiler.
        * config.h.W32.template (pid_t): Add a definition for 64-bit
-       Windows builds that don't use GCC.
-       Savannah bug #27809.  Patch by Ozkan Sezer <sezeroz@gmail.com>
+       Windows builds that don't use GCC.  Fixes Savannah bug #27809.
+       Patch by Ozkan Sezer <sezeroz@gmail.com>
 
 2010-07-07  Paul Smith  <psmith@gnu.org>
 
index 972e45d119e1cd671efbc2765cb8263e11790556..f7b7d5dd78a2742c2cf35ea080900c5f0885d5be 100644 (file)
@@ -94,9 +94,9 @@ cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D
 echo WinDebug\pathstuff.obj >>link.dbg\r
 echo off\r
 echo "Linking WinDebug/%make%.exe"\r
-rem link.exe kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib w32\subproc\windebug\subproc.lib /NOLOGO /SUBSYSTEM:console /INCREMENTAL:yes /PDB:.\WinDebug/%make%.pdb /DEBUG /MACHINE:I386 /OUT:.\WinDebug/%make%.exe .\WinDebug/variable.obj  .\WinDebug/rule.obj  .\WinDebug/remote-stub.obj  .\WinDebug/commands.obj  .\WinDebug/file.obj  .\WinDebug/getloadavg.obj  .\WinDebug/default.obj  .\WinDebug/signame.obj  .\WinDebug/expand.obj  .\WinDebug/dir.obj  .\WinDebug/main.obj  .\WinDebug/getopt1.obj  .\WinDebug/job.obj  .\WinDebug/read.obj  .\WinDebug/version.obj  .\WinDebug/getopt.obj  .\WinDebug/arscan.obj  .\WinDebug/remake.obj  .\WinDebug/hash.obj  .\WinDebug/strcache.obj  .\WinDebug/misc.obj  .\WinDebug/ar.obj  .\WinDebug/function.obj  .\WinDebug/vpath.obj  .\WinDebug/implicit.obj  .\WinDebug/dirent.obj  .\WinDebug/glob.obj  .\WinDebug/fnmatch.obj  .\WinDebug/pathstuff.obj\r
+rem link.exe kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib w32\subproc\windebug\subproc.lib /NOLOGO /SUBSYSTEM:console /INCREMENTAL:yes /PDB:.\WinDebug/%make%.pdb /DEBUG /OUT:.\WinDebug/%make%.exe .\WinDebug/variable.obj  .\WinDebug/rule.obj  .\WinDebug/remote-stub.obj  .\WinDebug/commands.obj  .\WinDebug/file.obj  .\WinDebug/getloadavg.obj  .\WinDebug/default.obj  .\WinDebug/signame.obj  .\WinDebug/expand.obj  .\WinDebug/dir.obj  .\WinDebug/main.obj  .\WinDebug/getopt1.obj  .\WinDebug/job.obj  .\WinDebug/read.obj  .\WinDebug/version.obj  .\WinDebug/getopt.obj  .\WinDebug/arscan.obj  .\WinDebug/remake.obj  .\WinDebug/hash.obj  .\WinDebug/strcache.obj  .\WinDebug/misc.obj  .\WinDebug/ar.obj  .\WinDebug/function.obj  .\WinDebug/vpath.obj  .\WinDebug/implicit.obj  .\WinDebug/dirent.obj  .\WinDebug/glob.obj  .\WinDebug/fnmatch.obj  .\WinDebug/pathstuff.obj\r
 echo kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib w32\subproc\windebug\subproc.lib >>link.dbg\r
-link.exe /NOLOGO /SUBSYSTEM:console /INCREMENTAL:yes /PDB:.\WinDebug/%make%.pdb /DEBUG /MACHINE:I386 /OUT:.\WinDebug/%make%.exe @link.dbg\r
+link.exe /NOLOGO /SUBSYSTEM:console /INCREMENTAL:yes /PDB:.\WinDebug/%make%.pdb /DEBUG /OUT:.\WinDebug/%make%.exe @link.dbg\r
 if not exist .\WinDebug/%make%.exe echo "WinDebug build failed"\r
 if exist .\WinDebug/%make%.exe echo "WinDebug build succeeded!"\r
 if not exist .\WinRel\nul mkdir .\WinRel\r
@@ -161,9 +161,9 @@ cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WIND
 echo WinRel\pathstuff.obj >>link.rel\r
 echo off\r
 echo "Linking WinRel/%make%.exe"\r
-rem link.exe kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib w32\subproc\winrel\subproc.lib /NOLOGO /SUBSYSTEM:console /INCREMENTAL:no /PDB:.\WinRel/%make%.pdb /MACHINE:I386 /OUT:.\WinRel/%make%.exe .\WinRel/variable.obj  .\WinRel/rule.obj  .\WinRel/remote-stub.obj  .\WinRel/commands.obj  .\WinRel/file.obj  .\WinRel/getloadavg.obj  .\WinRel/default.obj  .\WinRel/signame.obj  .\WinRel/expand.obj  .\WinRel/dir.obj  .\WinRel/main.obj  .\WinRel/getopt1.obj  .\WinRel/job.obj  .\WinRel/read.obj  .\WinRel/version.obj  .\WinRel/getopt.obj  .\WinRel/arscan.obj  .\WinRel/remake.obj  .\WinRel/misc.obj  .\WinRel/hash.obj  .\WinRel/strcache.obj  .\WinRel/ar.obj  .\WinRel/function.obj  .\WinRel/vpath.obj  .\WinRel/implicit.obj  .\WinRel/dirent.obj  .\WinRel/glob.obj  .\WinRel/fnmatch.obj  .\WinRel/pathstuff.obj\r
+rem link.exe kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib w32\subproc\winrel\subproc.lib /NOLOGO /SUBSYSTEM:console /INCREMENTAL:no /PDB:.\WinRel/%make%.pdb /OUT:.\WinRel/%make%.exe .\WinRel/variable.obj  .\WinRel/rule.obj  .\WinRel/remote-stub.obj  .\WinRel/commands.obj  .\WinRel/file.obj  .\WinRel/getloadavg.obj  .\WinRel/default.obj  .\WinRel/signame.obj  .\WinRel/expand.obj  .\WinRel/dir.obj  .\WinRel/main.obj  .\WinRel/getopt1.obj  .\WinRel/job.obj  .\WinRel/read.obj  .\WinRel/version.obj  .\WinRel/getopt.obj  .\WinRel/arscan.obj  .\WinRel/remake.obj  .\WinRel/misc.obj  .\WinRel/hash.obj  .\WinRel/strcache.obj  .\WinRel/ar.obj  .\WinRel/function.obj  .\WinRel/vpath.obj  .\WinRel/implicit.obj  .\WinRel/dirent.obj  .\WinRel/glob.obj  .\WinRel/fnmatch.obj  .\WinRel/pathstuff.obj\r
 echo kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib w32\subproc\winrel\subproc.lib >>link.rel\r
-link.exe /NOLOGO /SUBSYSTEM:console /INCREMENTAL:no /PDB:.\WinRel/%make%.pdb /MACHINE:I386 /OUT:.\WinRel/%make%.exe @link.rel\r
+link.exe /NOLOGO /SUBSYSTEM:console /INCREMENTAL:no /PDB:.\WinRel/%make%.pdb /OUT:.\WinRel/%make%.exe @link.rel\r
 if not exist .\WinRel/%make%.exe echo "WinRel build failed"\r
 if exist .\WinRel/%make%.exe echo "WinRel build succeeded!"\r
 set make=\r
diff --git a/job.c b/job.c
index 2d8fe607f976fc1e48da960aeedae32d80665514..741114da61efc72ae66922390b21ff9fbb8ff6bd 100644 (file)
--- a/job.c
+++ b/job.c
@@ -176,7 +176,9 @@ int wait ();
 
 #ifndef        HAVE_UNISTD_H
 int dup2 ();
+#if !(defined(_MSC_VER) && defined(_WIN64))
 int execve ();
+#endif
 void _exit ();
 # ifndef VMS
 int geteuid ();