[06ece8]: ChangeLog Maximize Restore History

Download this file

ChangeLog    939 lines (656 with data), 35.0 kB

2006-02-08  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* src/man.c, src/manpath.c, catopen/catopen.c (index): Omit function
	prototype when mapped to `strchr' function.

	* src/man.c, src/manpath.c, src/man-config.c, src/to_cat.c (rindex):
	Omit function prototype when mapped to `strrchr' function.

2006-02-01  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* src/win32/Makefile.in (GCC): Make it use AC_SUBSTed `CC'.

2006-01-24  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Clean up `make' rules for installing message catalogues.

	* aclocal.m4 (MAN_PROG_GENCAT): Improve descriptive commentary.
	(MAN_NLS_LOCALE_CACHE_INIT): Always define `locale', even when NLS
	support is disabled; do not canonicalise to Win32 form.
	(MAN_NLS_LOCALE_DIRECTORY): Modified to define...
	(locale_prefix, locale_path): ...these; new AC_SUBST variables.

	* configure: Regenerated.

	* msgs/Makefile.in (install): Rewrite all commands; based on...
	(locale, locale_prefix, locale_path): New AC_SUBSTed variables.
	(stamp.cat): Improved reporting of `make' progress.

	* msgs/inst.sh: Redundant file; deleted.

2006-01-16  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Update for building message catalogues with relocated gencat.

	* aclocal.m4 (MAN_PROG_GENCAT): New macro...
	(MAN_NLS_PREREQUISITES): ...AC_REQUIRE it.
	(MAN_PROG_GENCAT_PROVIDE, MAN_PROG_GENCAT_VALIDATE): New macros; used
	by MAN_PROG_GENCAT.
	(man_tools_required): New AC_SUBST variable; defined by...
	(MAN_AC_TOOLS_DEFAULT): New macro; AC_REQUIRED by MAN_PROG_GENCAT.

	* configure: Regenerated.

	* Makefile.in (gencat): Remove all references.
	(man_tools_required): Use it to specify tools to MAKE.

	* msgs/Makefile.in: Add copyright notice, etc.
	(GENCAT, MKMSGS): Define, and...
	(all): ...Use them; rewrite all commands; make dependent on...
	(stamp.cat): New target.
	(gencat): Redundant target; delete and remove all dependencies.

	* msgs/gencat207fix.sh, msgs/gencat.in: Redundant files; deleted.

2006-01-04  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Relocate gencat sources to tools directory.

	* gencat/Makefile.in: File deleted.
	* gencat/gencat.c, gencat/genlib.c: Files moved...
	* tools/gencat.c, tools/genlib.c: ...to here.
	* gencat/gencat.h, gencat/msgcat.h: Files moved...
	* tools/gencat.h, tools/msgcat.h: ...to here.
	* gencat: Directory pruned.

	* configure.ac (gencat/Makefile): Reference removed.
	* configure: Regenerated.

	* tools/Makefile.in (EXEFILES): Macro renamed...
	(DEFAULT_EXEFILES): ...to this.
	(all): Redefine in terms of...
	(all-default): New target; define rules to build DEFAULT_EXEFILES.
	(GENCAT_EXEFILES): New macro; declare `gencat' executables.
	(all-gencat): New target; define rules to build GENCAT_EXEFILES.
	(all-inclusive): New target; builds both all-default and all-gencat.

	* tools/gencat.c, tools/genlib.c: Use autoconf compatible conditional
	includes; avoid missing prototype warnings for static functions.

	* tools/genlib.c (bzero, bcopy): Redefine as macros.

2005-12-15  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Enable autoconf hooks for making message catalogues.

	* aclocal.m4 (MAN_NLS_LANGUAGE_SELECTION): New AC_SUBST variables...
	(make_messages, make_install_messages): ...defined.

	* Makefile.in: Use them.

	* configure: Regenerated.

2005-12-09  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* src/win32/wincmds.c (win32_run_command_sequence): Adapt SHELL
	identification logic, to match that used in the `spawncli' function
	from the MinGW `execwrap' library.

2005-12-09  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Improve `distclean' performance and integrity.

	* Makefile.in (CLEANFILES, DISTCLEANFILES): New variables.
	(distclean): Use both of them; remove dependence on `clean'.
	(clean): Use `CLEANFILES'.

	* src/Makefile.in (CLEANFILES, DISTCLEANFILES): New variables.
	(clean): Use `CLEANFILES'; add `*.stackdump' to list.
	(distclean, realclean): New targets; they are pseudonyms for...
	(spotless): ...use `CLEANFILES' and `DISTCLEANFILES';
	add `*.orig' and `*.rej' to list; remove dependence on `clean';
	recurse into `src/win32' subdirectory.

	* src/win32/Makefile.in (distclean, realclean, spotless): Merge;
	add `*.orig' and `*.rej' to list of files to delete.
	(RCSfile): Add to EOF tag line.

	* gencat/Makefile.in (distclean): Add `*.orig' and `*.rej' to list of
	files to be deleted.

	* msgs/Makefile.in (clean): Add `*.stackdump' to list of files to be
	deleted; add `EXEEXT' suffix to `gencat'.
	(distclean, realclean): New targets; they are pseudonyms for...
	(spotless): ...add `clean' as prerequisite; add `*.orig' and `*.rej'
	to list of files to delete.

	* man2html/Makefile.in (clean): Add `*.stackdump' to list of files to
	be deleted; add `EXEEXT' suffix to `man2html'.
	(distclean, realclean): New targets; they are pseudonyms for...
	(spotless): ...add `*.orig' and `*.rej' to list of files to delete.

	* tools/Makefile.in (REALCLEANFILES): Remove.
	(realclean, spotless): Divorce from `extraclean'; merge with...
	(distclean): ...this.
	(extraclean, maintainer-clean): Delete all commands.
	(DISTCLEANFILES): Add `*.orig' and `*.rej'.
	(DISTCLEANDIRS): Select all `auto*' entities in `srcdir'.

2005-12-08  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Update distribution clean-up and packaging rule sets.

	* Makefile.in (CLEANDIRS, DISTDIRS, DISTCLEANDIRS): New variables.
	(clean, distclean): Rewrite all commands; loop on `CLEANDIRS'.
	(reallyclean): Target renamed...
	(realclean): ...to this; it remains a pseudonym for `distclean'.
	(BUILD, DISTNAME): New variables; together they define the base name
	for the distribution tarball.
	(ZIPCMD, ZIPEXT): New variables; define the compression method for the
	distribution tarball; default: `gzip' with `.gz' suffix.
	(LN_S): New variable; defined by autoconf; required to use `ln -s'
	command to assemble the distribution file tree.
	(distdir): New variable; it defines the subdirectory name for...
	(distdir): New target; make distribution file tree image directory.
	(distpackage): New target; it packages the `distdir' file tree image.
	(dist): Rewrite commands; use `distdir' and `distpackage'.
	(DISTR): Redundant variable; deleted.
	(RCSfile): Added EOF tag, and `vim' mode line.

	* man/Makefile.in: Add file header, with copyright notification.
	(clean): Original target renamed...
	(clean-here): ...to this; it operates in one subdirectory.
	(spotless): Original target renamed...
	(spotless-here): ...to this; it operates in one subdirectory; have it
	clean up `patch' reject reports and backups.
	(clean): New target; it is a pseudonym for `cleansubdirs'.
	(distclean realclean spotless): New targets; all are pseudonyms for
	`spotlesssubdirs'.
	(RCSfile): Added EOF tag, and `vim' mode line.

	* gencat/Makefile.in (distclean, realclean, spotless): New targets;
	all are pseudonyms for the same action; required to support the
	modified `distclean' operation in the top level `Makefile.in'.

2005-12-06  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Update installation rules for autoconf compatibility.

	* aclocal.m4 (MAN_ID_ENABLE): New macro.
	(MAN_SUID_ENABLE, MAN_SGID_ENABLE): New macros; they use MAN_ID_ENABLE
	to establish suid and sgid install preferences.
	(MAN_INSTALL_FLAGS): New macro; it passes the appropriate flags,
	established by MAN_SUID_ENABLE and MAN_SGID_ENABLE, to `make'.

	* configure.ac (MAN_SUID_ENABLE, MAN_SGID_ENABLE, MAN_INSTALL_FLAGS):
	Use them.

	* configure: Regenerated.

	* mkinstalldirs: New file; adapted from GNU automake standard, with
	support for `--require' option added.

	* src/Makefile.in: Use braces for all directory name assignments.
	(dest_prefix, bin_destdir, sbin_destdir): New definitions.
	(install): Use them; use `mkinstalldirs'.
	(clean): Don't fail on anticipated false test for EXEEXT.
	(CFLAGS): Let autoconf supply defaults.
	(RCSfile): Keyword added, in EOF tagline.

	* man/Makefile.in: Use braces for all directory name assignments.
	(abs_top_srcdir): New definition; let autoconf supply it.
	(INSTALL): Eliminate duplicate `-c' option; (already supplied by
	autoconf).
	(PREFIX): Removed.
	(dest_prefix, ALL_MANDIRS): New definitions.
	(install, installsubdirs): Use them; use `mkinstalldirs'.

	* man2html/Makefile.in: Use braces for all directory name assignments.
	(bindir, mandir): Use autoconf supplied definitions.
	(top_srcdir, prefix, exec_prefix, OBJEXT, EXEEXT, LN_S): New
	definitions; let autoconf supply them.
	(PREFIX): Removed.
	(OBJECTS): Use OBJEXT.
	(man2html): Add EXEEXT suffix.
	(FORCE): New PHONY target.
	(README): New target; copy README to builddir, if required.
	(install, install-man-scripts, install-glimpse-stuff, install-hman):
	Use `mkinstalldirs'; add `srcdir' references; avoid attempts to
	install CVS directory images. 

2005-11-14  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Define filename extensions for installed manpages.

	* aclocal.m4 (MANSECT_FILENAME_EXT, MAN_SECTION_FILEXT): New macros.

	* configure.ac (man1ext, man5ext, man8ext): Use MANSECT_FILENAME_EXT
	to define them.

	* configure: Regenerated.

2005-10-31  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Configure C compiler warning options (bug fix).

	* aclocal.m4 (MAN_AC_PROG_CC_OPTIONS_INITIALISE): Extraneous `)'
	deleted; replaced by `,'.

	* configure: Regenerated.

2005-10-31  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Configure C compiler warning options.

	* aclocal.m4 (MAN_AC_PROG_CC_OPTIONS_INITIALISE):...
	(MAN_AC_PROG_CC_OPTIONS, MAN_AC_PROG_CC_WARN): New macros.

	* configure.ac (CWARN, CWARNNP): Define, using macros
	MAN_AC_PROG_CC_OPTIONS_INITIALISE and MAN_AC_PROG_CC_OPTIONS.

	* configure: Regenerated.

	* src/Makefile.in (CWARN, CWARNNP): Let configure define them.
	* src/win32/Makefile.in (CWARN): Let configure define it.
	* man2html/Makefile.in (CWARN): Ditto.

	* tools/configure.ac (CWARN): Use MAN_AC_PROG_CC_WARN to define.
	* tools/configure: Regenerated.

	* tools/Makefile.in (CWARN): Let tools/configure define it.

2005-10-13  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* man/Makefile.in (MANPAGE_SED_TRANSFORM): Add `browser' and
	`htmlpager' substitutions.

2005-10-13  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Handle semicolon vs. colon selection for Win32 MANPATH.

	* aclocal.m4 (MAN_PATH_SEPARATOR): New macro; it defines the
	`@path_separator_char@' substitution value.

	* configure.ac: Use it.

	* configure: Regenerated.

	* src/apropos.sh (path_separator_char): New substitution.
	* src/Makefile.in (apropos, whatis): Use it.

2005-10-10  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* aclocal.m4 (MAN_PROG_AWK): New macro.
	* configure.ac (MAN_PROG_AWK): Use it...
	(AC_PROG_AWK): ...instead of this.

	* configure: Regenerated.

2005-10-06  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* src/man.c (make_roff_command): Add note about version specific line
	length adjustment in groff versions 1.18 through 1.19.1.

2005-10-06  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Make long option handling comply with autoconf standards.

	* aclocal.m4 (MAN_GETOPT_LONG): New macro.
	* configure.ac: Use it.

	* configure, config.h.in: Regenerated.

	* src/man-getopt.c (NOGETOPT): Delete references; replace with...
	(HAVE_GETOPT_H, HAVE_GETOPT_LONG): ...these, as appropriate.

2005-10-05  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Avoid building Win32 components for non-Win32 hosts.

	* aclocal.m4 (WIN32_AC_NATIVE_HOST, WIN32_AC_NEED_LIBS): New macros.

	* configure.ac (WIN32_AC_NEED_LIBS): Use it...
	(win32/libexec.a): ...to specify this dependency.

	* configure: Regenerated.

	* src/Makefile (WIN32LIBS): Use autoconf substitution.

2005-10-05  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Automatically detect and configure for cross compiling.

	* tools: New directory.

	* tools/configure.ac: New file.

	* tools/configure: New file; generated.

	* src/makemsg.c: Remove...
	* tools/makemsg.c: ...to here.
	(compat.h): No longer included.
	(config.h): Include conditionally.
	(index rindex): Conditionally define to use strchr & strrchr.

	* aclocal.m4 (MAN_AC_PROG_CC_VARS, MAN_AC_CONFIG_NATIVE):...
	(MAN_AC_ARG_VAR_PROPAGATE): New macros.

	* configure.ac (MAN_AC_CONFIG_NATIVE): Use it.

	* configure: Regenerated.

	* Makefile.in (tools): New target...
	(all): ...schedule it for `make' in tools directory.
	(clean, spotless): Add tools directory.
	(FORCE): New PHONY target; all primary targets require it.

	* src/Makefile.in (BUILD_CC): Redundant variable; removed.
	(makemsg): Redundant target; removed.  Use version in tools directory,
	when required to execute.

	* msgs/Makefile.in (top_builddir): Defined.
	(makemsg): Use version in tools directory.

	* msgs/README (makemsg): Refer to version in tools directory,
	not in src.

2005-09-05  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Autoconfiscate `man-1.6' additions.

	* aclocal.m4 (man_path_transform): New macro; it defines the
	correlation between path names, and ther corresponding substitution
	variable names.
	(MANPATH_DEFAULT_INCLUDE, MANPATH_MAP_DEFAULT, MANPATH_MAP_ALIAS):...
	(MANPATH_MAP_CANONICAL): Use `man_path_transform'.
	(MAN_LANGUAGE_LIST): Use `m4_normalize' instead of `m4_bpatsubst'.

	* configure.ac (MANSECT_SEARCH_ORDER): Add 1p, 3p and 0p.
	(MANPATH_DEFAULT_INCLUDE): Add /usr/local/share/man, /usr/lib/*/man,
	/usr/share/*/man, /opt/*/man;  remove /opt/teTeX/man,
	/usr/lib/perl5/man, /usr/share/perl5/man, /usr/share/tcl-8.0/man,
	/usr/share/tk-8.0/man, usr/share/tix-4.1/man, /usr/share/coas/man.
	(MANPATH_MAP_ALIAS): Add /usr/local/man to /usr/local/share/man
	remapping for FHS.
	(MANPATH_MAP_DEFAULT): Minor table formatting change.
	(MAN_FILTER_PREFERRED): Add `lynx' as BROWSER, `lynx -dump' as
	HTMLPAGER.
	(MAN_FILTER_ALTERNATE): Make BROWSER fallback to PAGER, HTMLPAGER
	fallback to CAT.

	* configure: Regenerated.

	* src/man.conf.in (MANPATH): Remove substitution references for
	/opt/teTeX/man, /usr/lib/perl5/man, /usr/share/perl5/man,
	/usr/share/tcl-8.0/man, /usr/share/tk-8.0/man, usr/share/tix-4.1/man,
	/usr/share/coas/man.

2005-08-22  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Resolve conflicts from merge of `man-1.6' release.

	* Makefile.in: Merge differences.
	(dist): GNU standard target retained.

	* configure: Keep PRE-MAN-1-6 `autoconfiscated' implementation.

	* man/Makefile.in: Merge differences.

	* man/*/makewhatis.8: Remove.

	* man2html/Makefile.in: Merge differences.
	(CFLAGS): Keep autoconf/VPATH compatible.
	(CWARN): Separate warning flags out of CFLAGS.
	(install): Keep MAN-1-6 implementation.

	* man2html/man2html.c: Merge differences.

	* src/Makefile.in: Merge differences.
	(CFLAGS, CWARN): Keep warning flags separate, per PRE-MAN-1-6.
	(GREPSILENT): Keep PRE-MAN-1-6 implementation; Win32 needs it for
	correct disposal of unwanted output; (can't assume /dev/null).
	(makemsg): Use $(srcdir) for VPATH support; pass CFLAGS and DEFS, so
	we can handle build platform specifics.
	(apropos, whatis): Remove pager reference, but keep `grepsilent'
	implementation, per PRE-MAN-1-6.

	* src/gripes.c, src/man-config.c, src/util.c: Merge differences.
	
	* src/man-getopt.c: Merge differences.
	(mysetenv): Use HAVE_SETENV to select `setenv' or `putenv' usage.
	(BROWSER, HTMLPAGER): Handle them.
	(HTMLHTMLPAGER and -D): Typo; correct it to...
	(HTMLPAGER and -H): ...this.

	* src/man.c: Merge differences.
	(do_global_apropos): Keep PRE-MAN-1-6 implementation of GREPSILENT.
	(do_win32, DO_WIN32): Make note to maybe move to `compat.h'.

	* src/man.conf.in: Keep PRE-MAN-1-6 implementation and formatting.
	(MANPATH): Added hooks for globbed MANPATH directories.
	(BROWSER, HTMLPAGER): Added.

	* src/paths.h.in: Keep PRE-MAN-1-6 implementation and formatting.
	(BROWSER, HTMLPAGER): Added.

2005-08-18  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Import changes from official `man-1.6' release.

	* All files (PRE-MAN-1-6): Tag assigned prior to import.
	(MAN-1-6): Tag assigned on import.

2005-08-18  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Fix handling of path names as topic selectors on Win32.

	* src/man.c (main): Handle non-option arguments as possible
	POSIX_STYLE_PATH specifications, converted as required for Win32.
	(man): Use IS_ABSOLUTE_PATH macro to check if `name' argument is an
	absolute path name, so we catch both POSIX and Win32 style path names;
	make `fullname' a POSIX_STYLE_PATH.

	* src/compat.h, src/win32/winposix.c (win32path_transform): Remove
	`const' qualifier from function return type.

2005-08-16  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Add NLS support hooks for autoconf managed configure.

	* aclocal.m4 (MAN_NLS_HEADERS, MAN_NLS_FUNCTIONS):...
	(MAN_NLS_PREREQUSITES): New macros; check for prerequisite header
	files and library functions for NLS support.
	(MAN_NLS_LOCALE_DIRECTORY): New macro; identify the root of the
	message catalogue repository.
	(MAN_NLS_LOCALE_CACHE_INIT, MAN_NLS_LOCALE_CACHE_OVERRIDE): New
	macros; used internally by MAN_NLS_LOCALE_DIRECTORY only.
	(MAN_NLS_LANGUAGE_SELECTION): New macro; implement the
	`--with-languages=LIST' option for `configure'.
	(MAN_LANGUAGE_LIST, MAN_LANGUAGE_HELP_STRING):...
	(MAN_LANGUAGES_AVAILABLE): New macros; used internally by
	MAN_NLS_LANGUAGE_SELECTION to deduce and display the list of available
	languages, by inspecting the content of the `man' directory in the
	distributed package.
	(MAN_AS_HELP_DEFAULT, SQ, MAN_AS_HELP_APPEND): New `m4' macros;
	complement AS_HELP_STRING, for displaying default choices, single
	quoted literals, and extended help messages.
	(MAN_CONFDIR, MAN_CONFIG_FILE, MAN_FILTER_PREFERRED): Minor `help'
	string changes.
	(MAN_NROFF_SGR_CHECK): Remove semicolon from `result' string.

	* configure.ac (MAN_NLS_LOCALE_DIRECTORY, MAN_NLS_LANGUAGE_SELECTION):
	Deploy; (these also force the MAN_NLS_PREREQUISITES check).

	* configure: Regenerated.

	* src/compat.h (NONLS): Leave config.h to specify it.

	* config.h.in: Regenerated.

	* man/Makefile.in: Add VPATH support; use ${srcdir} references to make
	it work.

2005-08-05  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* man/ja/man.man (@man_config_fils@): Typing error; corrected...
	(@man_config_file@): ...to this.

2005-07-27  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Set compiled location for `apropos' and `whatis'.

	* src/Makefile.in (bindir, sbindir, prefix, exec_prefix): Defined.
	(stamp.h): Add substitution for ${bindir}.

	* src/paths.h.in (APROPOS, WHATIS): Define in terms of ${bindir}.

2005-07-27  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Configure compression and decompression filters.

	* aclocal.m4 (MAN_COMPRESS_WITH): New macro.
	(MAN_SET_DEFAULT_DECOMPRESSION_FILTER): New macro.

	* configure.ac (COMPRESS): Define using MAN_COMPRESS_WITH; this sets
	the @compress@ and @compress_ext@ substitutions.
	(MAN_SET_DEFAULT_DECOMPRESSION_FILTER): Use it to define DO_COMPRESS
	symbol and @decompress@ substitution.
	(GUNZIP, BZIP2, PCAT, ZCAT, FCAT, UNYABBA): Define using
	MAN_FILTER_PREFERRED.
	(MAN_GREP_SILENT): Relocate; add comment.

	* configure, config.h.in: Regenerated.

2005-07-26  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Avoid using `col' in conjunction with `groff'.

	* aclocal.m4 (MAN_DISABLE_COL_WITH_GROFF): New macro...
	* configure.ac: Use it.

	* configure: Regenerated.

	* src/man.conf.in (@nocol@): Redundant substitution; removed.

2005-07-26  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Handle nroff SGR output quirks for groff >= 1.18.

	* aclocal.m4 (MAN_NROFF_SGR_CHECK): New macro; used by...
	(MAN_DISABLE_NROFF_SGR): New macro.
	(MAN_FILTER_PREFERRED): Modified `help' string.
	(MAN_AC_PATH_COMMAND_RESOLVE): Use braces in ${#}, ${@}.

	* configure.ac (MAN_DISABLE_NROFF_SGR): Use it.

	* configure: Regenerated.

	* src/man.conf.in: Update note about groff colour support.

2005-07-08  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Implement autoconf checks for filter programs.

	* aclocal.m4 (MAN_AC_PATH_PROG_CHECKING, MAN_AC_PATH_RESOLVE)...
	(MAN_AC_PATH_COMMAND_RESOLVE, MAN_AC_PATH_PROG_RESULT): New macros;
	use them to implement...
	(MAN_AC_PATH_COMMAND, MAN_AC_PATH_COMMAND_OVERRIDE_CACHE): New macros;
	they provide a modified reimplementation of autoconf's AC_PATH_PROG,
	but preserving arguments which follow the resolved path, and offering
	the capability to override any previously cached result.  Use them to
	implement...
	(MAN_FILTER_CONFIGURE_PREFERRED, MAN_FILTER_CONFIGURE_ALTERNATE): New
	internal macros; use them to implement...
	(MAN_FILTER_PREFERRED, MAN_FILTER_ALTERNATE): New macros.

	* configure.ac (MAN_FILTER_PREFERRED, MAN_FILTER_ALTERNATE): Use them
	to specify filter command substitutions for src/man.conf and
	src/paths.h.

	* configure: Regenerated.

2005-07-08  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* Makefile.in: add accreditation for original authors.

2005-07-04  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Define MANPATH_MAP and other general comment improvements.

	* aclocal.m4 (MAN_STANDARD_ENABLE): Improve comments.
	Use PREFIX instead of ${prefix}, in help string.
	(MANSECT_SEARCH_ORDER): Add comment.  Simplify help string.
	(MANPATH_DEFAULT_INCLUDE): Add comment.
	(MANPATH_DEFAULT_SUBST): MAP argument removed.  Add comment.  Improve
	text of "checking" message.
	(MANPATH_MAP_DEFAULT, MANPATH_MAP_ALIAS): New macros.
	(MANPATH_MAP_CANONICAL, MANPATH_MAP_DEFINE, MANPATH_MAP_CACHE_ASSIGN):
	New internal macros; they facilitate the implementation of
	MANPATH_MAP_DEFAULT.
	(MANPATH_REMAP): New internal macro; it facilitates the implementation
	of MANPATH_MAP_ALIAS.

	* configure.ac (MANPATH_MAP_DEFAULT, MANPATH_MAP_ALIAS): Deploy them
	to define the default MANPATH_MAP, with FHS specific remap of /usr/man
	to /usr/share/man.

	* configure: Regenerated.

	* src/man.conf.in (MANPATH_MAP): Define autoconf substitutions.

2005-06-27  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* aclocal.m4 (MAN_STANDARD_ENABLE): New macro; used by...
	(MAN_FHS_ENABLE, MAN_FSSTND_ENABLE): New macros; they request
	FHS or FSSTND conformance, when configured with `--enable-fhs'
	or `--enable-fsstnd' respectively, (subject to `--enable-fhs'
	overriding `--enable-fsstnd').

	* configure.ac (MAN_FHS_ENABLE, MAN_FSSTND_ENABLE): Invoke them.

	* configure: Regenerated.

	* src/man.conf.in (FHS, FSSTND): New syntax.
	(MANBIN, MANPATH): Tidy column alignment.
	(MANBIN): Resolve location according to `${prefix}'.

2005-06-24  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Configure automatic MANPATH generation feature.

	* aclocal.m4 (MANPATH_DEFAULT_SUBST): New macro; used by...
	(MANPATH_DEFAULT_INCLUDE): New macro.

	* configure.ac (MANPATH_DEFAULT_INCLUDE): Use it to specify the
	standard paths, and the optional paths, which are assigned to MANPATH
	by src/man.conf.in.

	* configure: Regenerated.

	* src/man.conf (MANPATH): Transform the path name entries into
	autoconf substitution fields, to be filled out by configure; add space
	after initial `#', when key is occluded.
	(NOAUTOPATH, NOCACHE, MANDEFOPTIONS): Normally occluded; add space
	after occluding `#'.

	* src/Makefile.in (stamp.h): Add dependency on src/man.conf;
	adapt sed script, in associated commands, to clean up __undef__(path)
	substitutions specified by the MANPATH_DEFAULT_INCLUDE macro.

2005-06-24  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Configure MANSECT specification.

	* aclocal.m4 (MANSECT_SEARCH_ORDER): New macro.

	* configure.ac (MANSECT_SEARCH_ORDER): Use it to specify the default
	man sections search order, as defined by the MANSECT key in
	src/man.conf.in and src/paths.h.in.

	* configure: Regenerated.

2005-06-24  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* src/paths.h.in: Tidy layout.

2005-06-14  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Add support for Win32 command invocation using a UNIXy shell.

	* src/win32: New directory.

	* src/winposix.c: Removed...
	* src/win32/winposix.c: ...and relocated to here.

	* src/win32/wincmds.c: New file; it spawns a UNIXy shell to execute a
	specified command sequence.

	* src/win32/quotearg.c: New file; adapted from "groff" code, it
	ensures that all arguments passed in a Win32 spawn or exec function
	call are properly quoted; (Microsoft's default behaviour is broken).

	* src/win32/execvw.c: New file; compile it to generate a wrapper for
	the "spawnvp" function, which ensures that all arguments are properly
	quoted.

	* src/win32/execlw.c: New file; compile it to generate a wrapper for
	the "spawnlp" function, redirecting its action through the wrapped
	"spawnvp" function.

	* src/win32/getenvp.c: New file; included for completness, it is
	required by execlw.c, when generating wrapper functions which pass an
	explicit "envp" argument; it is not required by "man".

	* src/win32/winexec.h: New file; it transparently redirects all calls
	to Microsoft's spawn and exec functions through appropriate wrappers,
	to ensure proper argument quoting.

	* src/win32/Makefile.in: New file; processed by configure to generate
	Makefile, it defines the rules for building a library of Win32 wrapper
	functions.

	* src/Makefile.in (win32/libexec.a): New target; use it to build a
	Win32 support function library in src/win32.
	(WIN32LIBS): New variable; it specifies the support libraries to be
	linked in a Win32 build.
	(WIN32LIBEXEC): New variable; it sets the name for the support
	library, (libexec.a), to be built in src/win32.
	(WIN32LIBOBJS): New variable; use it to define the list of object
	modules to include in WIN32LIBEXEC.
	(FORCE): New dummy target; use it to force building of WIN32LIBEXEC.

	* src/compat.h (RUN_COMMAND_SEQUENCE): New macro; it invokes the
	"win32run_command_sequence" function to spawn commands on Win32
	platforms, or the "system" function otherwise.

	* src/util.c (system1): Use RUN_COMMAND_SEQUENCE macro.

	* configure.ac (process.h): Add check for header; it is required to
	use the Win32 spawn and exec functions.

	* configure: Regenerated.

2005-06-10  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Configure silent output capability for "grep" command.

	* aclocal.m4 (MAN_GREP_SILENT): New macro.
	(WIN32_AC_NULLDEV): New macro; MAN_GREP_SILENT uses it to identify the
	name of the null device, used for redirection of discarded output from
	grep; this should be `nul' for Win32, or `/dev/null' elsewhere.

	* configure.ac: Invoke MAN_GREP_SILENT.

	* configure: Regenerated.

	* src/Makefile.in (GREPSILENT): Correct quoting.

2005-06-09  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Add autoconf support for configuration file specification.

	* aclocal.m4: New file; it defines package specific autoconf macros.

	* configure.ac: Add specification for man configuration file; it is
	defined using the MAN_CONFIG_FILE macro, and optionally also the
	MAN_CONFIG_FILE_DEFAULT and MAN_CONFDIR_DEFAULT macros from
	aclocal.m4.

	* configure: Regenerated.

	* src/Makefile.in (INCLUDES): Pass them to $(CC) in $(DEFS).
	(stamp.h): New dummy target; use it to update paths.h.

2005-06-06  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* src/manpath.c (prmanpath): Use PATH_SEPARATOR_CHAR; previously it
	always used ':' to separate MANPATH components.

2005-06-06  Keith Marshall  <keithmarshall@users.sourceforge.net>

	WinPOSIX bug fixes and API enhancements.

	* src/winposix (win32posix): Function renamed...
	(win32path_transform): ...to this.
	(win32path_is_absolute): New function; it checks if a specified Win32
	path name is absolute.

	* src/compat.h (isabspath): Macro renamed...
	(IS_ABSOLUTE_PATH): ...to this.
	(POSIX_STYLE_PATH): New macro; use it to invoke the
	win32path_transform function, when required.
	(PATH_SEPARATOR_CHAR): Fix it, for non-Win32 hosts; had ';',
	should be ':'.

	* src/manpath.c: Use POSIX_STYLE_PATH and IS_ABSOLUTE_PATH macros.

	* src/util.c: Use POSIX_STYLE_PATH macro.

2005-06-03  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* man2html/Makefile.in (top_builddir): New identifier; have autoconf
	supply its value.
	(CWARN): New identifier; define it as the warning flags, which were
	previously included in CFLAGS.
	(CFLAGS): Redefined; include $(CWARN), add -I$(top_builddir)/src
	(man2html): Make it depend on $(top_builddir)/src/version.h, rather
	than ../src/version.h.
	(hman): Locate hman.sh in $(srcdir).

	* man2html/man2html.c (version.h): Don't specify path.

2005-06-03  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Set package versioning from configure.ac.

	* configure.ac (AC_INIT): Supply PACKAGE_NAME and PACKAGE_VERSION
	parameter values; PACKAGE_NAME=man, PACKAGE_VALUE=1.5m3.

	* configure: Regenerated.

	* version: Redundant file; removed.

	* src/Makefile.in (package, version): New identifiers; initialise them
	from PACKAGE_NAME and PACKAGE_VERSION respectively.
	(version.h): Make it depend on configure.ac; insert $(version).
	(apropos, whatis, makewhatis): Identify as $(package)-$(version).

	* src/man.conf.in: Identify as PACKAGE_NAME-PACKAGE_VERSION.

	* man2html/Makefile.in (package, version): New identifiers; initialise
	them from PACKAGE_NAME and PACKAGE_VERSION.
	(hman): Identify as $(package)-$(version).
	(VPATH): Defined to autoconf specified $(srcdir).

2005-06-02  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Make code in src directory compile on Win32/MinGW platform.

	* configure.ac (AC_CONFIG_FILES): add src/man.conf.

	* configure: Regenerated.

	* src/Makefile.in (apropos.sh): Use $(srcdir) to find it.

	* src/compat.h: New file; it defines platform specific dependencies
	for use within C compilation units.

	* src/makemsg.c (compat.h): Include unconditionally.
	(stdlib.h, unistd.h, string.h): Include conditionally.

	* src/man.c (compat.h): Include unconditionally.
	(locale.h, stdlib.h, string.h, sys/file.h, sys/stat.h, unistd.h):
	Previously included unconditionally; make them conditional.
	(strings.h): Include conditionally, unless we already have string.h.
	(GREPSILENT): Change from single character definition to string;
	format it using "%s".  (Rationale: UNIX SysV grep can't use -q or -s
	to suppress output; must redirect to null device stream).
	(setlocale): Some platforms don't define LC_MESSAGES; don't use it
	when we don't have it.  Similarly for LC_CTYPE.

	* src/manpath.c (compat.h): Include unconditionally.
	(stdlib.h, string.h, sys/types.h, sys/stat.h, unistd.h): Previously
	included unconditionally; make them conditional.
	(split, split2): Use win32posix() function to ensure that Win32 path
	names include only slashes, and no backslashes;
	Use PATH_SEPARATOR_CHAR, defined in compat.h, to locate point at which
	to split a path list; previously these assumed splitting at a colon.
	(add_to_list): Use isabspath(dir) macro, defined in compat.h, to check
	if dir is specified with absolute path name; previously required first
	character to be a slash.

	* src/man-config.c, src/to_cat.c (compat.h): Include unconditionally.
	(stdlib.h, string.h): Include conditionally; were previously included
	unconditionally.

	* src/man-getopt.c (compat.h): Include unconditionally.
	(stdlib.h, string.h, unistd.h): Include conditionally; were previously
	included unconditionally.
	(man_getopt): Use setenv() if configure defined HAVE_SETENV; else use
	putenv(); previously used dedicated logic for specific platforms.

	* src/gripes.c (compat.h): Include unconditionally.
	(stdarg.h, stdlib.h): Include conditionally; were previously included
	unconditionally.
	(mantexts): Don't declare it when NONLS is in effect.

	* src/glob.c (compat.h): Include unconditionally.
	(config.h): Included by compat.h; don't care if SHELL defined.

	* src/util.c (compat.h): Include unconditionally.
	(stdarg.h, stdlib.h, string.h, unistd.h): Include conditionally; were
	previously included unconditionally.
	(sys/stat.h, sys/types.h, sys/wait.h): Likewise.
	(man-config.h): Include unconditionally; previously not included.  It
	prototypes the getval() function, used to get the name of the SHELL,
	which _WIN32 will spawnlp() in system1().
	(winexec.h): Include it when configure says HAVE_PROCESS_H; it is a
	wrapper for process.h, to work around an argument parsing bug in
	Win32's spawnlp(), and similar functions.
	(mkprogname): Use win32posix() to avoid backslashes in Win32 style
	path names.
	(noprivileges): Don't call setreuid() or setregid() in _WIN32.
	(system1): Use spawnlp() rather than system(), in _WIN32, to invoke
	the man command pipeline.
	(my_system): Never use fork() in _WIN32; never run asynchronous _WIN32
	pipelines, therefore no need to call wait().
	(my_popen): FILE variable `r' unused in _WIN32; don't declare it.

	* src/winposix.c: New file; it defines the win32posix() function, used
	to replace backslashes with slashes, in Win32 path names.

2005-06-02  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* src/Makefile.in (INCLUDES): Add "-I.".
	(top_srcdir): Correct definition, and...
	(msg.c, gripedefs.h): ...use it to locate msgs/mess.en.
	(man.c, glob.c): Use $(srcdir) to locate source.

2005-06-01  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Adaptation to autoconf configuration and build framework.

	* install-sh: New file;  autoconf generated configure requires it;
	source it from autoconf 2.59 distribution.

	* Makefile.in, src/Makefile.in: Add comments in file headers,
	to bring them up to a GPL conforming standard.
	Add standard autoconf path name substitutions; use them.
	(OBJEXT, EXEEXT): Added autoconf substitutions; use them.
	(VPATH): Defined to autoconf specified $(srcdir).

	* gencat/Makefile: Renamed...
	* gencat/Makefile.in: ...to this; need it so for VPATH support.

2005-05-31  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* All files: Tagged MAN-1-5M2-AC; this is the starting point for
	autoconf managed implementation.

2005-05-31  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Switch to autoconf management of configure script.

	* All files: Tagged MAN-1-5M2-PRE-AC prior to switch.

	* configure.ac: New file; generated by autoscan; reorganised, and
	copyright notice added.

	* config.h.in: New file; generated by autoheader.

	* configure: Regenerated.

2005-05-31  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* man/it/makewhatis.8 ($Id$): make it match man-1.5m2 release.

2005-05-26  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Started recording ChangeLog entries.
	
	* ChangeLog: New file.

2005-05-26  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Initial import based on man-1.5m2 distribution.

	* All files (MAN-IMPORT): Tag assigned for `vendor' branch.
	(MAN-1-5M2-MINGW): Tag assigned for initial state of `trunk'.