<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gunmake/w32/include, branch 3.99.90</title>
<subtitle>GNU make with more features of SunOS make</subtitle>
<id>https://git.pashev.ru/gunmake/atom?h=3.99.90</id>
<link rel='self' href='https://git.pashev.ru/gunmake/atom?h=3.99.90'/>
<link rel='alternate' type='text/html' href='https://git.pashev.ru/gunmake/'/>
<updated>2013-05-17T05:47:42Z</updated>
<entry>
<title>Update copyright for changes in 2013.</title>
<updated>2013-05-17T05:47:42Z</updated>
<author>
<name>Paul Smith</name>
<email>psmith@gnu.org</email>
</author>
<published>2013-05-17T05:46:11Z</published>
<link rel='alternate' type='text/html' href='https://git.pashev.ru/gunmake/commit/?id=5370238316ee4284fe058a9c298a5734d2686678'/>
<id>urn:sha1:5370238316ee4284fe058a9c298a5734d2686678</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fix interfacing with and remaking dynamic objects on MS-Windows.</title>
<updated>2013-05-03T13:09:12Z</updated>
<author>
<name>Eli Zaretskii</name>
<email>eliz@gnu.org</email>
</author>
<published>2013-05-03T13:09:12Z</published>
<link rel='alternate' type='text/html' href='https://git.pashev.ru/gunmake/commit/?id=a66469e003526679b793f2d4623219aab2230b2f'/>
<id>urn:sha1:a66469e003526679b793f2d4623219aab2230b2f</id>
<content type='text'>
 load.c (load_object, load_file): Accept an additional argument
 DLP and return in it a pointer that can be used to unload the
 dynamic object.
 read.c (eval): Call load_file with an additional argument, and
 record the pointer returned there in the 'struct file' object of
 dynamic objects in that object's 'struct file'.
 commands.c (execute_file_commands): Unload dynamic objects
 before remaking them, to avoid failure to remake if the OS doesn't
 allow overwriting objects that are in use.
 filedef.h (struct file): New member dlopen_ptr.
 gnumake.h (GMK_EXPORT): Define to dllexport/dllimport
 decorations for Windows and to nothing on other platforms.
 (gmk_eval, gmk_expand, gmk_add_function): Add GMK_EXPORT qualifier
 to prototypes.
 makeint.h (MAIN): Define before including gnumake.h, to give
 correct dllexport decorations to exported functions.
 (load_file): Adjust prototype.
 loadapi.c: Don't include gnumake.h, since makeint.h already
 includes it, and takes care of defining MAIN before doing so.
 build_w32.bat (LinkGCC): Produce an import library for functions
 exported by Make for loadable dynamic objects.

 w32/compat/posixfcn.c (dlclose): New function.
 w32/include/dlfcn.h (dlclose): Add prototype.

 scripts/features/load: Fix signatures of testload_gmk_setup and
 explicit_setup, to bring them in line with the documentation.
</content>
</entry>
<entry>
<title>Support dynamic object loading on MS-Windows.</title>
<updated>2013-04-29T16:26:06Z</updated>
<author>
<name>Eli Zaretskii</name>
<email>eliz@gnu.org</email>
</author>
<published>2013-04-29T16:26:06Z</published>
<link rel='alternate' type='text/html' href='https://git.pashev.ru/gunmake/commit/?id=19a69bafc0913f13e334b5f56d95c693fab29023'/>
<id>urn:sha1:19a69bafc0913f13e334b5f56d95c693fab29023</id>
<content type='text'>
 w32/include/dlfcn.h: New file.
 w32/compat/posixfcn.c: Include dlfcn.h.
 (dlopen, dlerror, dlsym) [MAKE_LOAD]: New functions, in support of
 dynamic loading.

 config.h.W32.template (MAKE_LOAD): Define.
 load.c (load_object) [HAVE_DOS_PATHS]: Support backslashes and
 drive letters in file names of dynamic objects.
</content>
</entry>
<entry>
<title>Support --output-sync on MS-Windows.</title>
<updated>2013-04-27T11:20:49Z</updated>
<author>
<name>Eli Zaretskii</name>
<email>eliz@gnu.org</email>
</author>
<published>2013-04-27T11:20:49Z</published>
<link rel='alternate' type='text/html' href='https://git.pashev.ru/gunmake/commit/?id=da7df54309eb759837a289ade900fe8e3d6ddc36'/>
<id>urn:sha1:da7df54309eb759837a289ade900fe8e3d6ddc36</id>
<content type='text'>
 w32/compat/posixfcn.c: New file, with emulations of Posix
 functions and Posix functionality for MS-Windows.
 w32/subproc/sub_proc.c: Include io.h.
 (process_noinherit): New function, forces a file descriptor to not
 be inherited by child processes.
 (process_easy): Accept two additional arguments, and use them to
 set up the standard output and standard error handles of the child
 process.
 w32/include/sub_proc.h (process_easy): Adjust prototype.
 (process_noinherit): Add prototype.

 read.c [WINDOWS32]: Include windows.h and sub_proc.h.
 makeint.h (LOCALEDIR) [WINDOWS32}: Define to NULL if not
 defined.  This is needed because the MS-Windows build doesn't have
 a canonical place for LOCALEDIR.
 (WIN32_LEAN_AND_MEAN) [WINDOWS32]: Define, to avoid getting from
 windows.h header too much stuff that could conflict with the code.
 main.c &lt;sync_mutex&gt;: New static variable.
 &lt;switches&gt;: Add support for "--sync-mutex" switch.
 (decode_output_sync_flags): Decode the --sync-mutex= switch.
 (prepare_mutex_handle_string) [WINDOWS32]: New function.
 (main): Add "output-sync" to .FEATURES.
 job.h (CLOSE_ON_EXEC) [WINDOWS32]: Define to call
 process_noinherit.
 (F_GETFD, F_SETLKW, F_WRLCK, F_UNLCK, struct flock) [WINDOWS32]:
 New macros.
 (RECORD_SYNC_MUTEX): New macro, a no-op for Posix platforms.
 (sync_handle_t): New typedef.
 job.c &lt;sync_handle&gt;: Change type to sync_handle_t.
 (FD_NOT_EMPTY): Seek to the file's end.  Suggested by Frank
 Heckenbach &lt;f.heckenbach@fh-soft.de&gt;.
 (pump_from_tmp_fd) [WINDOWS32]: Switch to_fd to binary mode for
 the duration of this function, and then change back before
 returning.
 (start_job_command) [WINDOWS32]: Support output_sync mode on
 MS-Windows.  Use a system-wide mutex instead of locking
 stdout/stderr.  Call process_easy with two additional arguments:
 child-&gt;outfd and child-&gt;errfd.
 (exec_command) [WINDOWS32]: Pass two additional arguments, both
 -1, to process_easy, to adjust for the changed function signature.
 function.c (windows32_openpipe) [WINDOWS32]: This function now
 returns an int, which is -1 if it fails and zero otherwise.  It
 also calls 'error' instead of 'fatal', to avoid exiting
 prematurely.
 (func_shell_base) [WINDOWS32]: Call perror_with_name if
 windows32_openpipe fails, now that it always returns.  This avoids
 a compiler warning that error_prefix is not used in the MS-Windows
 build.
 config.h.W32.template (OUTPUT_SYNC): Define.
 build_w32.bat: Add w32/compat/posixfcn.c to compilation and
 linking commands.

 From Frank Heckenbach &lt;f.heckenbach@fh-soft.de&gt;:
 job.c (sync_output): Don't discard the output if
 acquire_semaphore fails; instead, dump the output unsynchronized.
</content>
</entry>
<entry>
<title>Simplify copyrights using ranges of years.</title>
<updated>2012-03-05T14:10:39Z</updated>
<author>
<name>Paul Smith</name>
<email>psmith@gnu.org</email>
</author>
<published>2012-03-05T14:10:39Z</published>
<link rel='alternate' type='text/html' href='https://git.pashev.ru/gunmake/commit/?id=adb50bd4c92424e7281156e118a687da1c8ebd7f'/>
<id>urn:sha1:adb50bd4c92424e7281156e118a687da1c8ebd7f</id>
<content type='text'>
The new GNU Maintainer's Manual allows the use of year ranges in certain
situations; take advantage of this simplification.
</content>
</entry>
<entry>
<title>Fix Savannah bug #34832 with unused TLS attributes.</title>
<updated>2012-02-03T12:15:56Z</updated>
<author>
<name>Eli Zaretskii</name>
<email>eliz@gnu.org</email>
</author>
<published>2012-02-03T12:15:56Z</published>
<link rel='alternate' type='text/html' href='https://git.pashev.ru/gunmake/commit/?id=1befa76448266208ee853f3e5b3a34a12807eaf4'/>
<id>urn:sha1:1befa76448266208ee853f3e5b3a34a12807eaf4</id>
<content type='text'>
 w32/subproc/w32err.c (map_windows32_error_to_string) [_MSC_VER]:
 Don't use TLS storage for szMessageBuffer.  Ifdef away special
 code for handling Winsock error codes.  Make the function return a
 `const char *'.  Suggested by Ozkan Sezer.  Fixes Savannah bug #34832.
</content>
</entry>
<entry>
<title>Update copyright notices.</title>
<updated>2012-01-16T02:29:20Z</updated>
<author>
<name>Paul Smith</name>
<email>psmith@gnu.org</email>
</author>
<published>2012-01-16T02:29:20Z</published>
<link rel='alternate' type='text/html' href='https://git.pashev.ru/gunmake/commit/?id=3f6bb04e75e5a02f23339c9d4bec99b22d430803'/>
<id>urn:sha1:3f6bb04e75e5a02f23339c9d4bec99b22d430803</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Enable jobserver on W32 when using configure.</title>
<updated>2011-11-15T21:12:53Z</updated>
<author>
<name>Paul Smith</name>
<email>psmith@gnu.org</email>
</author>
<published>2011-11-15T21:12:53Z</published>
<link rel='alternate' type='text/html' href='https://git.pashev.ru/gunmake/commit/?id=dc2a6ceb81730c25c0beec1f13994b9710767ee1'/>
<id>urn:sha1:dc2a6ceb81730c25c0beec1f13994b9710767ee1</id>
<content type='text'>
Some W32 cleanups: see Savannah bug #34830
Forgot to modify the config.h.W32.template file for jobserver support.
</content>
</entry>
<entry>
<title>Support jobserver capability on Windows systems.</title>
<updated>2011-11-14T00:42:49Z</updated>
<author>
<name>Paul Smith</name>
<email>psmith@gnu.org</email>
</author>
<published>2011-11-14T00:42:49Z</published>
<link rel='alternate' type='text/html' href='https://git.pashev.ru/gunmake/commit/?id=63888b91f62a9c126c1cfa61ec3ffac35a6a36f1'/>
<id>urn:sha1:63888b91f62a9c126c1cfa61ec3ffac35a6a36f1</id>
<content type='text'>
Implementation contributed by Troy Runkel &lt;Troy.Runkel@mathworks.com&gt;
</content>
</entry>
<entry>
<title>Update copyrights for 2010.</title>
<updated>2010-07-13T01:20:10Z</updated>
<author>
<name>Paul Smith</name>
<email>psmith@gnu.org</email>
</author>
<published>2010-07-13T01:20:10Z</published>
<link rel='alternate' type='text/html' href='https://git.pashev.ru/gunmake/commit/?id=9903cda2a734c2f86eefcff656aad032fbb79078'/>
<id>urn:sha1:9903cda2a734c2f86eefcff656aad032fbb79078</id>
<content type='text'>
</content>
</entry>
</feed>
