summaryrefslogtreecommitdiff
path: root/w32
AgeCommit message (Collapse)AuthorFilesLines
2012-01-28 Fix failures on MS-Windows when Make's standard handles are invalid.Eli Zaretskii1-52/+113
This can happen when Make is invoked from a GUI application. * w32/subproc/sub_proc.c (process_init_fd): Don't dereference pproc if it is a NULL pointer. (process_begin, process_cleanup): Don't try to close pipe handles whose value is INVALID_HANDLE_VALUE. (process_easy): Initialize hIn, hOut, and hErr to INVALID_HANDLE_VALUE. If DuplicateHandle fails with ERROR_INVALID_HANDLE, duplicate a handle for the null device instead of STD_INPUT_HANDLE, STD_OUTPUT_HANDLE or STD_ERROR_HANDLE. Don't try to close pipe handles whose value is INVALID_HANDLE_VALUE. * function.c (windows32_openpipe): Initialize hIn and hErr to INVALID_HANDLE_VALUE. If DuplicateHandle fails with ERROR_INVALID_HANDLE, duplicate a handle for the null device instead of STD_INPUT_HANDLE or STD_ERROR_HANDLE. Fix indentation. Don't try to close handles whose value is INVALID_HANDLE_VALUE.
2012-01-16Update copyright notices.Paul Smith13-21/+21
2011-11-15Enable jobserver on W32 when using configure.Paul Smith2-2/+2
Some W32 cleanups: see Savannah bug #34830 Forgot to modify the config.h.W32.template file for jobserver support.
2011-11-14Support jobserver capability on Windows systems.Paul Smith2-9/+145
Implementation contributed by Troy Runkel <Troy.Runkel@mathworks.com>
2010-08-07 w32/subproc/build.bat: Make all 3 cl.exe compile command linesEli Zaretskii1-5/+5
use the same /I switches. Fixes Savannah bug #30662.
2010-07-19- Many fixup patches from Savannah.Paul Smith4-5/+11
- Fix the test suite on Solaris (from Boris) - Update the manual for .ONESHELL
2010-07-13Update copyrights for 2010.Paul Smith13-13/+13
2010-07-09 w32/subproc/sub_proc.c: Include stdint.h.Eli Zaretskii1-14/+15
(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>
2009-10-25Update copyright years.Paul Smith13-13/+13
2009-09-14 * w32/subproc/sub_proc.c (process_begin): Check *ep non-NULLEli Zaretskii1-6/+7
inside the loop that looks up environment for PATH.
2009-03-14(convert_Path_to_windows32): Fix last change. Fixes Savannah bug #25412.Eli Zaretskii1-3/+9
2009-03-14<top level>: Update Copyright years. Add prototype for xmalloc.Eli Zaretskii1-47/+59
(find_file): Accept 3 arguments PATH_VAR, FULL_FNAME, and FULL_LEN instead of an LPOFSTRUCT pointer. Use xmalloc instead of malloc. Loop over an array of extensions, instead of duplicating the same code inline. Use SearchPath followed by CreateFile, instead of the obsolete OpenFile. Fixes Savannah bug #17277. (process_begin): Find $(PATH) in `envp', and pass a pointer to it to `find_file'. Fixes Savannah bug #25662.
2008-09-30 * build_w32.bat (GCCBuild): Use "-gdwarf-2 -g3" instead ofEli Zaretskii1-3/+3
"-gstabs+ -ggdb3". * w32/subproc/build.bat (GCCBuild): Likewise.
2007-10-24Convert to Unix line-endings.Eli Zaretskii6-475/+475
2007-10-10Fixes from Eli Zaretskii:Paul Smith1-1/+7
Fix to allow quoted directories in PATH. Fix for Savannah bug #20549.
2007-07-04* Update to GPLv3Paul Smith13-74/+76
* Update copyright to 2007 * Fix download URL for translation files (thanks to Thiemo Seufer)
2006-11-18Fix from Eli for incorrect value of $(MAKE) on Cygwin.Paul Smith2-5/+5
A few changes from char* to void* where appropriate, and removing of unnecessary casts. Much more work on const-ifying the codebase. This round involves some code changes to make it correct. NOTE!! There will almost certainly be problems on the non-POSIX ports that will need to be addressed after the const changes are finished: they will need to be const-ified properly and there may need to be some changes to allocate memory, etc. as well. The next (last?) big push for this, still to come, is const-ifying the filenames in struct file, struct dep, etc. This will allow us to store file names in the string cache and finally resolve Savannah bug #15182 (make uses too much memory), among other advantages.
2006-03-10Numerous updates to tests for issues found on Cygwin and Windows.Paul Smith1-5/+5
Revert a fix for $? including non-existent files as it shows a bug in the Linux kernel build. Give them a release to fix this. Add some changes from Eli Z. for Windows changes.
2006-02-11Last of the copyright updates.Paul Smith13-36/+37
2006-02-11More copyright/license updates.Paul Smith1-13/+11
2006-02-11Update copyright and license notices on all files.Paul Smith12-17/+199
Added new file strcache.c to various non-UNIX makefiles and build scripts.
2006-02-06Updates to Windows stuff from Markus Mauhart.Paul Smith1-28/+26
2006-02-01Various updates, mainly to the Windows port, from Eli Zaretskii andPaul Smith2-3/+18
Markus Maurhart.
2005-08-08- Fixed a bug reported by Michael Matz regarding handling of parallelPaul Smith3-8/+29
jobs after a failed job. - Enhancements to WINDOWS32 code from Eli Zaretskii. - Add Microsoft Project files from J. Grant.
2005-07-04Various fixes and updates from testers of the beta3 release (mostly WindowsPaul Smith2-7/+7
and OS/2 changes).
2005-06-27Fixes for some Windows/MSC compile issues.Paul Smith1-8/+8
wget command line option seems to have changed?
2005-06-09Fix Savannah bug #11913: ensure that scopes such as foreach, etc. takePaul Smith1-0/+1
precedence over the global scope when they're used in a global context (such as an eval).
2005-02-28* New feature: -L optionPaul Smith1-0/+1
* New function: $(info ...) * Disallow $(eval ...) to create prereq relationships inside command scripts (caused core dumps) * Try to allow more tests to succeed in Windows/DOS by sanitizing CRLF and \ * Various bug fixes and code cleanups (see the ChangeLog entry)
2005-02-26Add configure operations to support MINGW on Windows.Paul Smith4-7/+22
2005-02-10Flush stdout after printing directory info.Paul Smith1-5/+2
Fix references to MINGW #define constants. Remove WINDOWS32 ifdef from sub_proc.h. Only add variables to the command line for recursion once. New features in run_make_test: #PWD# and #MAKEPATH# replacements. Test the multi-variable fix in the recursion regression test.
2004-02-23Numerous fixes: patches for OS/2; core for -f ''; makefile updates.Paul Smith2-8/+11
2003-11-03Added MINGW32 changes.Paul Smith1-37/+62
This commits a number of changes from Earnie Boyd that allows GNU make to build for MINGW32 systems. Only missing from this commit are the changes to configure.in etc.; I'm waiting for Earnie to sign papers for those new files. Also not here is any README.mingw32 etc. which would explain how to use this port.
2000-06-07* Lots of bug fixes and cleanup; new i18n files, etc.Paul Smith1-2/+2
2000-04-22* Various bug fixes.Paul Smith1-6/+4
1999-12-08* Various changes and fixes. See ChangeLog.Paul Smith1-0/+2
1999-08-31* Large file support for AIX, HP-UX, and IRIX.Paul Smith1-4/+23
* W32 support for Cygnus Cygwin shell (bash).
1998-10-03Checkpoint changes. Bug fixes, mostly.Paul Smith2-1246/+1250
1998-07-30GNU make release 3.77.Paul Smith3-148/+204
1997-09-16Changes for GNU make 3.76Paul Smith1-8/+7
1997-08-27Updates for GNU make 3.75.92.Paul Smith5-33/+57
1997-04-07Changes for make 3.75.1Paul Smith11-52/+52
1996-07-29Sun Jul 28 15:37:09 1996 Rob Tulloh (tulloh@tivoli.com)Roland McGrath1-10/+9
* w32/include/pathstuff.h: Added prototype for the new function convert_vpath_to_win32. Deleted macro for same.
1996-07-29Sun Jul 28 15:37:09 1996 Rob Tulloh (tulloh@tivoli.com)Roland McGrath1-219/+239
* w32/pathstuff.c: Turned convert_vpath_to_win32() into a real function. This was done so that VPATH could contain white space separated pathnames. Please note that directory paths (in VPATH/vpath context) containing white space are not supported (just as they are not under Unix). See README.WIN32 for suggestions.
1996-07-19updated w32 code by tullohRoland McGrath12-1814/+1814
1996-05-22Wed May 15 10:14:14 CDT 1996 Rob Tulloh <tulloh@tivoli.com>Roland McGrath12-0/+1814
* dir.c: WIN32 does not support inode. For now, fully qualified pathname along with st_mtime will be keys for files. Fixed problem where vpath can be confused when files are added to a directory after the directory has already been read in. The code now attempts to reread the directory if it discovers that the datestamp on the directory has changed since it was cached by make. This problem only seems to occur on WIN32 right now so it is lumped under port #ifdef WIN32. * function.c: WIN32: call subproc library (CreateProcess()) instead of fork/exec. * job.c: WIN32: Added the code to do fork/exec/waitpid style processing on WIN32 systems via calls to subproc library. * main.c: WIN32: Several things added here. First, there is code for dealing with PATH and SHELL defaults. Make tries to figure out if the user has %PATH% set in the environment and sets it to %Path% if it is not set already. Make also looks to see if sh.exe is anywhere to be found. Code path through job.c will change based on existence of a working Bourne shell. The checking for default shell is done twice: once before makefiles are read in and again after. Fall back to MSDOS style execution mode if no sh.exe is found. Also added some debug support that allows user to pause make with -D switch and attach a debugger. This is especially useful for debugging recursive calls to make where problems appear only in the sub-make. * make.h: WIN32: A few macros and header files for WIN32 support. * misc.c: WIN32: Added a function end_of_token_w32() to assist in parsing code in read.c. * read.c: WIN32: Fixes similar to MSDOS which allow colon to appear in filenames. Use of colon in filenames would otherwise confuse make. * remake.c: WIN32: Added include of io.h to eliminate compiler warnings. Added some code to default LIBDIR if it is not set on WIN32. * variable.c: WIN32: Added support for detecting Path/PATH and converting them to semicolon separated lists for make's internal use. New function sync_Path_environment() which is called in job.c and function.c before creating a new process. Caller must set Path in environment since we don't have fork() to do this for us. * vpath.c: WIN32: Added detection for filenames containing forward or backward slashes. * NMakefile: WIN32: Visual C compatible makefile for use with nmake. Use this to build GNU make the first time on Windows NT or Windows 95. * README.WIN32: WIN32: Contains some helpful notes. * build_w32.bat: WIN32: If you don't like nmake, use this the first time you build GNU make on Windows NT or Windows 95. * config.h.WIN32: WIN32 version of config.h * subproc.bat: WIN32: A bat file used to build the subproc library from the top-level NMakefile. Needed because WIndows 95 (nmake) doesn't allow you to cd in a make rule. * w32/include/dirent.h * w32/compat/dirent.c: WIN32: opendir, readdir, closedir, etc. * w32/include/pathstuff.h: WIN32: used by files needed functions defined in pathstuff.c (prototypes). * w32/include/sub_proc.h: WIN32: prototypes for subproc.lib functions. * w32/include/w32err.h: WIN32: prototypes for w32err.c. * w32/pathstuff.c: WIN32: File and Path/Path conversion functions. * w32/subproc/build.bat: WIN32: build script for subproc library if you don't wish to use nmake. * w32/subproc/NMakefile: WIN32: Visual C compatible makefile for use with nmake. Used to build subproc library. * w32/subproc/misc.c: WIN32: subproc library support code * w32/subproc/proc.h: WIN32: subproc library support code * w32/subproc/sub_proc.c: WIN32: subproc library source code * w32/subproc/w32err.c: WIN32: subproc library support code