2013-06-16  Charles Wilson  <cygwin@cygwin.com>

	Release 0.4.2
	* BRANCHES, NEWS: Update documentation.
	* configure.ac: Bump version number.

2013-06-11  Charles Wilson  <cygwin@cygwin.com>

	Avoid PCA issues on W7
	* src/run2_gpl.c (run2_start_child): Ensure that
	target application is not automatically started as
	a "Program Compatibility Assistant" job by default.
	See http://cygwin.com/ml/cygwin-developers/2012-02/msg00022.html
	* src/run2_main.c (run2_start_gui_child): Ditto.
	* lib/launch.c (run2_find_directory): Fix bug in
	canonicalizing ~paths.
	(run2_find_executable): Ditto.
	* configure.ac: Use newer versions of autoconf
	and automake. Check signature of spawnv/_spawnv.
	* m4/acx_pthread.m4: Update to latest upstream.
	* m4/spawnv_signature.m4: New file.

2013-06-01  Charles Wilson  <cygwin@cygwin.com>

	Post-release version bump
	* BRANCHES: Update documentation.
	* configure.ac: Bump version number.

2009-12-28  Charles Wilson  <cygwin@cygwin.com>

	Release 0.4.0
	* config-run2-example.sh: New file.
	* README, NEWS: Update documentation.
	* configure.ac: Bump version number.
	* Makefile.am, src/Makefile.am, lib/Makefile.am: Move
	pkgdata_DATA elements to doc_DATA.

2009-12-28  Charles Wilson  <cygwin@cygwin.com>

	Improve checkX behavior when used as 'barrier' in startxwin.
	* lib/checkX.c (try_with_timeout): Handle case where
	pthread_cond_timedwait returns early, but because of
	something other than a timeout.
	(run2_usleep): New function.
	(open_display): Add delay before retrying XOpenDisplay(),
	if call is unsuccessful. Extensive comments.
	* TODO: Update documentation.
	* NEWS: Ditto.
	* THANKS: New file.

2009-12-28  Charles Wilson  <cygwin@cygwin.com>

	Avoid deprecated cygwin functions. Eliminate all compilation warnings.
	* lib/util.h (run2_pfopen, run2_fileExists): Change signature
	to use/return Ustr* rather than char*.
	* lib/util.c (run2_pfopen): Change signature and reimplement
	to use Ustr* rather than char*.
	(run2_fileExists): Change signature and reimplement to use Ustr*
	rather than char*. Use cygwin_create_path() and dynamically
	allocated buffers rather than deprecated interfaces.
	(ustr_check): Whitespace fixes.
	* lib/target.c (run2_create_cmdline_from_argv,
	run2_get_startin_directory): Use cygwin_create_path() and
	dynamically allocated buffers rather than deprecated interfaces.
	* lib/env.h: Add missing ;
	* lib/checkX.c (find_X11_lib): Ripple from run2_pfopen() and
	run2_fileExists() changes. Reimplement to use Ustr* internally.
	* src/run2_main.c (WinMain): Use GetModuleFileNameW to determine
	module path. Use cygwin_create_path() and dynamically allocated
	buffers rather than deprecated interfaces.
	(core_impl): Use cygwin_create_path() and dynamically allocated
	buffers rather than deprecated interfaces.
	* src/checkX_main.c (WinMain): Use GetModuleFileNameW to determine
	module path. Use cygwin_create_path() and dynamically allocated
	buffers rather than deprecated interfaces.
	* test/env_test.c: Add missing includes.
	(test1): Remove unused label.
	* test/target_test.c (test1): Remove unused variables.
	(test2): Ditto.
	(test3): Ditto.
	* test/confdata_test.c: Add missing includes.
	(dumplist): Mark unused.

2009-12-28  Charles Wilson  <cygwin@cygwin.com>

	Fix segfault when X display is unspecified.
	* src/run2_main.c (core_impl): Add info msg.
	* lib/checkX.c (test_Xserver): Validate function parameters.
	(run2_checkX): Detect unspecified X display -- use GDI, and
	inform user.

2009-12-28  Charles Wilson  <cygwin@cygwin.com>

	Fix unsigned underflow error when parsing short <Arg>s.
	* lib/confparse.c (handle_end_arg_core): Avoid unsigned
	underflow.

2009-12-28  Charles Wilson  <cygwin@cygwin.com>

	Exit with non-zero status when xml fails to parse.
	* src/run2_main.c (realMain): Return non-zero error
	status when xml parsing fails. Whitespace fixes.
	* lib/confparse.c (handle_tgt_spec_attrs): In debug
	messages, print C strings, not Ustr*. Line length fixes.
	(handle_env_spec_attrs): Line length fixes.

2009-12-28  Charles Wilson  <cygwin@cygwin.com>

	Fix minor bug when global node specifies a target.
	* src/run2_main.c (core_impl): Also compute tgt_argv[].

2009-12-27  Charles Wilson  <cygwin@cygwin.com>

	Correct bug introduced by refactoring run2_canonicalize_argv0.
	* lib/target.c (run2_create_cmdline_from_argv): Fix thinko.
	Add debug message.
	(run2_create_argv_from_tgtspec): Add debug message.
	(run2_create_cmdline_from_tgtspec): Add debug message.

2009-12-27  Charles Wilson  <cygwin@cygwin.com>

	Eliminate most -Wall warnings.
	* cdsl/cdsl_map.c (cdsl_map_clear): Mark unused variable.
	* src/run2_gpl.c (run2_setup_invisible_console): Add parens.
	(run2_configure_startupinfo): Remove unused variable.
	(run2_start_child): Remove unused variable.
	* src/checkX_main.c: Update includes.
	(realMain): Remove unused variables.
	(WinMain): Remove unused variable. Add const via cast.
	* src/run2_main.c: Update includes.
	(WinMain): Remove unused variable. Add const via cast.
	* lib/confparser.c (xmlSchemaValidityWarning): Call run2's
	vwarnMsg(), instead of bsd vwarn().
	* lib/checkX.c (test_Xserver): Remove unused variable.
	(open_display): Fix formattting. Suppress warning.
	* lib/tokenizer.c (run2_split_string): Add parens.
	* lib/launch.c (run2_find_directory): Remove unused variables.
	* lib/util.c: Update includes.
	(run2_pfopen): Remove unused variable.
	* lib/confdata.c: Update includes.
	(indent_spacing, run2_selfoptions_print, run2_env_spec_copy,
	run2_env_spec_print, run2_ustr_dup_wrap): Remove unused variable.
	* lib/confparse.c (run2_xml_characters): Correct xmlChar type.
	(handle_tgt_spec_attrs): Mark unused variables. Explicit cast for
	strcmp.
	(handle_env_spec_attrs): Ditto.
	(run2_xml_startelementns): Explicit cast for strcmp.
	(wrong_closure): Ditto.
	(handle_end_arg_core): Correct xmlChar type. Explicit cast for
	strcmp.
	(run2_xml_endelementns): Remove unused variable.
	* lib/target.c: Update includes.
	(run2_create_argv_from_dlist): Remove unused variable. Clarify
	code for argc=1 special case.
	(run2_canonicalize_argv0): Remove unused variables.
	(run2_create_cmdline_from_argv): Remove unused variable.
	* lib/env.c (run2_apply_env_spec): Remove unused variable.

2009-12-27  Charles Wilson  <cygwin@cygwin.com>

	More synchronization with run.exe (handle GUI targets).
	* src/run2_gpl.h (run2_target_is_gui): New function.
	(run2_configure_startupinfo): Rename bHaveConsole arg.
	* src/run2_gpl.c: Update includes.
	(run2_target_is_gui): New function (from run.exe).
	(run2_configure_startupinfo): Rename bHaveConsole arg.
	(run2_start_child): Rename bHaveConsole variable.
	* src/run2_main.c: Update includes.
	(run2_start_gui_child): New function.
	(parse_args, realMain, core_impl, cleanup, dumpOpts):
	Make static.
	(core_impl): Create both quoted cmd string, and unix-style
	argv[] for target. Also compute explicitly the win32-style
	full path to target. Use run2_target_is_gui() to delegate
	to either run2_start_gui_child() or run2_start_child().
	* lib/target.h (run2_canonicalize_argv0): New fucntion.
	(run2_create_argv_from_tgtspec): New function.
	* lib/target.c (run2_canonicalize_argv0): New function, refactored
	from...
	(run2_create_cmdline_from_argv): here. Call it.
	(run2_create_argv_from_tgtspec): New function.

2009-12-27  Charles Wilson  <cygwin@cygwin.com>

	Move dynamic symbol loading into worker thread; other fixes.
	* lib/confdata.c (wrapper_ustr_io_putfile): New function.
	(w_ustr_io_putfile): Helper macro for above.
	(run2_selfoptions_create): Use it to silence warnings.
	(run2_env_spec_print): Ditto.
	(run2_env_print): Ditto.
	(run2_global_print): Ditto.
	(run2_tgt_spec_print): Ditto.
	(run2_tgtopts_print): Ditto.
	(run2_confdata_print): Ditto.
	* test/tokenizer_test.c (init): Fix off-by-one error.
	* lib/checkX.c (WorkerThreadData): Remove function pointers;
	add full path to X11 DLL.
	(test_Xserver): Pass full path to X11 DLL instead of function
	pointers.
	(adjust_path): Fix off-by-one error. Ensure string is null-
	terminated (paranoia).
	(load_X11_symbols): Pass full path to X11 DLL instead of function
	pointers. Duplicate strings to populate WorkerThreadData object.
	Ensure that WorkerThreadData members are nulled before free-ing
	storage.
	(try_with_timeout): Add new initialization mutex, and wait for
	it before entering main loop. Consolidate cleanup code.
	(open_display): Create local copy of WorkerThreadData. Load DLL
	and symbols here in the worker thread, rather than in the main
	thread. Use initialization mutex to synchronize startup with
	main thread.
	(run2_checkX): Don't load DLL or symbols here. Ripple from
	test_Xserver signature change.

2009-12-26  Charles Wilson  <cygwin@cygwin.com>

	Fix various bugs.
	* configure.ac: Check for math.h.
	* lib/checkX.c: Work around conflict between X11/Xlib.h and
	windows headers.
	* lib/util.c (run2_vmessage_): Ensure strings are null-
	terminated (paranoia).
	* lib/target.c (run2_create_cmdline_from_argv): Fix buffer
	overflow error.

2009-12-26  Charles Wilson  <cygwin@cygwin.com>

	Synchronize run2_gpl with recent run.exe improvements.
	* run2_gpl.c (setup_win_environ): Renamed to...
	(run2_setup_win_environ): this. Ripple to all callers.
	(run2_have_console): New function.
	(run2_setup_invisible_console): Add debug messages.
	(run2_configure_startupinfo): Synchronize with run.exe --
	add debug messages, allow caller to force use of pipes,
	and open CONIN$ and CONOUT$ explicitly for child std handles,
	if not using pipes.
	(run2_start_child): Implement W7 workaround.
	* run2_gpl.h (setup_win_environ): Renamed to...
	(void run2_setup_win_environ): this.
	(run2_have_console): New function.
	(run2_configure_startupinfo): Accept new bForceUsingPipes
	argument.

2009-12-25  Charles Wilson  <cygwin@cygwin.com>

	Fix segfault when display not specified.
	* src/run2_main.c (core_impl): Don't dereference sopt->displayname
	if null.
	* lib/confdata.c (run2_global_print): Use proper syntax for
	USTR1 (exposed when -DUSTR_DEBUG: binary length specifier must use
	lowercase hex digits).
	(run2_tgtopts_print): Ditto.
	(run2_confdata_print): Ditto.

2009-12-25  Charles Wilson  <cygwin@cygwin.com>

	Version 0.3.999
	* configure.ac: Post-branch version bump, in prep
	for 0.4.0 release.

2009-12-25  Charles Wilson  <cygwin@cygwin.com>

	Create branch-0.3.x (trunk devel will be cyg1.7 only)
	* BRANCHES: New file.

2009-12-01  Charles Wilson  <cygwin@cygwin.com>

	Version 0.3.3
	* configure.ac: Post-release version bump.

2009-12-01  Charles Wilson  <cygwin@cygwin.com>

	Release 0.3.2
	* configure.ac: Bump release version.
	* NEWS: Update documentation.

2009-11-20  Charles Wilson  <cygwin@cygwin.com>

	Correct Ustr vs. char* issue.
	* lib/confdata.c (validVarName): Fix string length bug.

2009-11-20  Charles Wilson  <cygwin@cygwin.com>

	Avoid warnings during configure.
	* m4/check_stdcall_funcs.m4: Use correct decoration
	to avoid warning.

2009-11-20  Charles Wilson  <cygwin@cygwin.com>

	Ripple from interface changes.
	* README: Update.
	* TODO: Update.
	* src/run2_main.c: Use ustr in limited ways, also
	to adapt to signature changes in confparser.h.

2009-11-14  Charles Wilson  <cygwin@cygwin.com>

	Begin to use ustr library for string handling
	* NEWS: Update documentation.
	* TODO: Ditto.
	* configure.ac: Require libustr and ustr.h.
	* lib/util.h: Declare ustr_check() and USTR_CHECK.
	* lib/util.c (ustr_check): New function.
	* lib/confdata.h (run2_env_spec_t): Change type of set to Ustr *.
	(run2_tgt_spec_t): Change type of filename and startin to Ustr *.
	(run2_selfoptions_print, run2_env_spec_print, run2_env_print,
	run2_global_print, run2_tgt_spec_print, run2_tgtopts_print,
	run2_confdata_print, run2_selfoptions_add_arg, run2_env_spec_set,
	run2_env_spec_prepend, run2_env_spec_append, run2_env_get_var,
	run2_tgt_spec_add_arg, run2_tgt_spec_set_filename,
	run2_tgt_spec_set_startin): Change signature to accept Ustr *.
	* lib/confdata.c (indent_spacing): Return new Ustr*.
	Use Ustr internally.
	(run2_args_print):  Use Ustr internally.
	(run2_selfoptions_print): Change name parameter to
	Ustr *. Use Ustr internally.
	(run2_env_spec_copy): Use Ustr internally.
	(run2_env_spec_delete): Use ustr_free as appropriate.
	(run2_env_spec_print): Change name parameter to
	Ustr *. Use Ustr internally.
	(run2_env_print): Ditto.
	(run2_global_print): Ditto.
	(run2_tgt_spec_print): Ditto.
	(run2_tgtopts_print): Ditto.
	(run2_confdata_print): Ditto.
	(hasNonWS): Operate on Ustr*.
	(run2_add_arg): Change caller and entry parameters to
	Ustr *. Use Ustr internally. Args are now stored in the
	list implicitly as Ustr.
	(run2_selfoptions_add_arg): Change entry parameter to
	Ustr *. Use Ustr internally.
	(run2_env_spec_set): Change set parameter to Ustr *. Use
	Ustr internally.
	(run2_env_spec_prepend): Change prepend parameter to Ustr *.
	Use Ustr internally.
	(run2_env_spec_append): Change append parameter to Ustr *.
	Use Ustr internally.
	(stricmp_wrap): Removed. Replaced by...
	(run2_ustricmp_wrap): this. New function.
	(run2_strdup_wrap): Renamed to...
	(run2_ustr_dup_wrap): this. Use Ustr internally.
	(run2_ustr_free_wrap): New function.
	(validVarName): Change s parameter to Ustr *. Use Ustr
	internally.
	(run2_env_get_var): Change varname parameter to Ustr *. Use
	Ustr internally. environment cdsl_map now implicitly uses
	Ustr for keys and values.
	(run2_tgt_spec_add_arg): Change entry parameter to Ustr *.
	Use Ustr internally.
	(run2_tgt_spec_set_filename): Change filename parameter to
	Ustr *. Use Ustr internally.
	(run2_tgt_spec_set_startin): Change startin parameter to
	Ustr *. Use Ustr internally.
	* lib/confparse.c (handle_tgt_spec_attrs): Use Ustr internally when
	interacting with confdata functions.
	(handle_env_spec_attrs): Ditto.
	(handle_end_selfoptions_arg): Ditto.
	(handle_end_global_target_arg): Ditto.
	(handle_end_gdi_target_arg): Ditto.
	(handle_end_x11_target_arg): Ditto.
	* lib/target.h (run2_create_cmdline_from_argv): Correct constness.
	* lib/target.c (run2_create_argv_from_dlist): Extract arg values
	as Ustr.
	(run2_create_cmdline_from_argv): Interpret tgtspec->filename as Ustr.
	Correct constness.
	(run2_get_startin_directory): Interpret tgtspec->startin as Ustr.
	* lib/env.c (run2_apply_env_spec): Interpret cdsl_map values as Ustr.
	(run2_apply_env): Interpret cdsl_map keys as Ustr.
	* lib/target.h (run2_create_cmdline_from_argv): Correct constness.
	* test/confdata_test.c: Ripple from interface changes; most confdata
	methods now take Ustr*.
	* test/confparse_test.c (main): Ditto.
	* test/target_test.c: Ditto.
	* test/env_test.c: Ditto.

2009-11-14  Lothar Brendel  <lottas.junk@geekmail.de>

	Improve detection of just-launching X Server
	* lib/checkX.c (open_display): Continue checking for
	X Server until receive valid response, or parent
	thread indicates timeout via xopenTrying.
	(try_with_timeout): Arrange for worker thread to
	continue to contact X Server until full timeout
	duration has elapsed.

2009-11-14  Charles Wilson  <cygwin@cygwin.com>

	* configure.ac: Bump version number (odd micro
	level = development).

2009-06-14  Charles Wilson  <cygwin@cygwin.com>

	Update documentation.
	* NEWS: Update.
	* README: Update.
	* TODO: New.

2009-06-14  Charles Wilson  <cygwin@cygwin.com>

	New 'run2' utility.
	* lib/launch.h: New (completely different from removed version).
	* lib/launch.c: New (this version derived from libtool cwrapper).
	* licenses/libtool.txt: New.
	* src/run2_gpl.c: New (derived from run-1.1.10).
	* src/run2_gpl.h: New (ditto).
	* src/run2_main.c: New.
	* src/run2.1: New.
	* licenses/run2-app.GPLv2: New.
	* Makefile.am: Rollup all associated changes from today's commits.
	* configure.ac: Ditto (change package name to 'run2').
	* src/Makefile.am: Ditto.
	* src/checkX.1: Fix typos. Change package name.

2009-06-14  Charles Wilson  <cygwin@cygwin.com>

	No longer link -liberty.
	* src/getopt.h_: New.
	* src/getopt_long.c: New.
	* src/getopt_decls.h: Removed.
	* src/libiberty_decls.h: Removed.
	* licenses/getopt.txt: New.
	* lib/checkX.c: Don't include libiberty_decls.h.
	Make many variables and functions static.
	(adjust_path): Use run2_strdup, run2_malloc.
	(find_X11_lib): Use run2_strdup.
	(test_Xserver): Use run2_strdup. Exit status messages now
	uses infoMsg.
	* src/checkX_main.c: Don't include getopt_decls.h nor
	libiberty_decls.h. Change verbosity options.
	(realMain): Refactor option handling to...
	(parse_args): here.
	(WinMain): Use run2_split_string instead of libibery
	parse_argv. Use run2_freeargv instead of libiberty freeargv.

2009-06-14  Charles Wilson  <cygwin@cygwin.com>

	Add icons.
	* src/resources: New directory.
	* src/resources/X-boxed.ico: New.
	* src/resources/X.Org_Logo.ico: New.
	* src/resources/X.Org_Logo.svg: New.
	* src/resources/blue-rocket.ico: New.
	* src/resources/blue-rocket.svg: New.
	* src/resources/konsole.ico: New.
	* src/resources/run.ico: New.
	* src/resources/rxvt.ico: New.
	* src/resources/yellow-rocket.ico: New.
	* src/resources/yellow-rocket.svg: New.
	* src/resources/README: New.
	* licenses/konsole-ico.LGPLv2.1: New.
	* src/src/run2_res.rc.in: New.

2009-06-14  Charles Wilson  <cygwin@cygwin.com>

	Create licenses directory.
	* licenses: New directory.
	* LICENSE: Moved to...
	* licenses/LICENSE: here.
	* COPYING: New.

2009-06-14  Charles Wilson  <cygwin@cygwin.com>

	Created convenience library.
	Add support for XML parsing, with tests.
	* lib: New directory.
	* lib/Makefile.am: New.
	* lib/confdata.c: New.
	* lib/confdata.h: New.
	* lib/confparse.c: New.
	* lib/confparse.h: New.
	* lib/confparser.c: New.
	* lib/confparser.h: New.
	* lib/env.c: New.
	* lib/env.h: New.
	* lib/target.c: New.
	* lib/target.h: New.
	* lib/tokenizer.c: New.
	* lib/tokenizer.h: New.
	* lib/run2.xsd: New.
	* src/util.h: Moved to
	* lib/util.h: ...here. Changed message behavior (errorMsg,
	warnMsg, infoMsg, debugMsg. New fatalMsg). Prefix all functions
	with run2_ namespace.
	(set_silent_mode, set_debug_mode): Removed. Replaced with...
	(run2_set_verbose_level): this.
	(run2_extend_str, run2_strtol, run2_get_homedir,
	run2_freeargv, run2_strdup, run2_malloc, 
	run2_set_program_name, run2_get_program_name, run2_basename,
	run2_malloc_exit, run2_error, run2_malloc, run2_realloc): New.
	* src/util.c: Moved to
	* lib/util.c: ...here. Changed message behavior (errorMsg,
	warnMsg, infoMsg, debugMsg. New fatalMsg). Prefix all functions
	with run2_ namespace.
	(set_silent_mode, set_debug_mode): Removed. Replaced with...
	(run2_set_verbose_level): this.
	(run2_extend_str, run2_strtol, run2_get_homedir,
	run2_freeargv, run2_strdup, run2_malloc, 
	run2_set_program_name, run2_get_program_name, run2_basename,
	run2_malloc_exit, run2_error, run2_malloc, run2_realloc): New.
	* src/checkX.h: Moved to
	* lib/checkX.h: ...here. Prefix all functions with run2_ namespace.
	* src/checkX.c: Moved to
	* lib/checkX.c: ...here. Prefix all functions with run2_ namespace.
	* src/launch.c: Removed.
	* src/launch.h: Removed.
	* test: New directory.
	* test/Makefile.am: New.
	* test/confdata_test.c: New.
	* test/confparse_test.c: New.
	* test/env_test.c: New.
	* test/target_test.c: New.
	* test/tokenizer_test.c: New.
	* src/run2-demo.xml: New.

2009-06-14  Charles Wilson  <cygwin@cygwin.com>

	Added C Data Structures Library components.
	* cdsl: New directory.
	* cdsl/Makefile.am: New.
	* cdsl/cdsl_dlist.h: New.
	* cdsl/cdsl_dlist.c: New.
	* cdsl/cdsl_rbtree.h: New.
	* cdsl/cdsl_rbtree.c: New.
	* cdsl/cdsl_map.h: New.
	* cdsl/cdsl_map.c: New.

2006-11-11  Charles Wilson  <cygwin@cygwin.com>

	release version 0.1.1
	reautotool using autoconf-2.60 and automake-1.10

	* configure.ac: bump version number. check for assert
	* Makefile.in: regenerate
	* aclocal.m4: regenerate
	* config.h.in: regenerate
	* configure: regerenate
	* build-aux/compile: new file
	* src/Makefile.am: add dist_man_MANS.  include new files
	in checkX_SOURCES. Add launch.h and launch.c to EXTRA_DIST
	for now.
	* src/Makefile.in: regenerate
	* src/checkX.1: new file
	* src/checkX.h: new file
	* src/checkX.c: moved many functions to other files.
	Now implements only one visible function, checkX().
	* src/getopt_decls.h: new file.  Handles the odd
	declaration requirements when linking to libiberty
	on cygwin and using getopt.
	* src/libiberty_decls.h: new file. declares functions
	imported from libiberty as built on cygwin.
	* src/checkx_main.c: new file. Contains only option-
	parsing code, main, and WinMain.  Delegates core behavior
	to checkX(). Add new -v|--version option.
	* src/util.h: new file
	* src/util.c: new file. Contains functions for debug and
	runtime messages, either MSWin popup or stdio, as well
	as other utility functions.

	* src/launch.c: new file. Contains functions related to
	launching subprocesses on cygwin.  Not used in build, yet.
	* src/launch.h: new file

2006-05-04  Charles Wilson  <cygwin@cygwin.com>

	Initial coding.
