Thu Oct 26 11:59:44 1995    <tytso@rsts-11.mit.edu>

	* configure.in (LDFALG_STATIC): Add temporary kludge for
		determining how to link executables statically.  For now,
		we assume that Linux systems only can link statically.

Fri Sep 22 18:23:55 1995    <tytso@rsts-11.mit.edu>

	* depfix.sed: Remove /usr/include lines which occur at the end of
		the dependency listing.

Mon Sep  4 21:40:22 1995  Remy Card  <card@bbj>

	* configure.in: Added support for the --enable-bsd-shlibs option.

Wed Aug  9 21:33:31 1995  Theodore Y. Ts'o  <tytso@dcl>

	* MCONFIG.in (LD): Add $(PURE) to the definition to make it easier
		to link executables using programs like purify.

Sat Aug  5 11:41:03 1995  Theodore Y. Ts'o  <tytso@lurch.mit.edu>

	* configure.in: Check to see if strdup() is present

	* INSTALL: Updated building and installation instructions to
		reflect the new configure system.

	* Makefile.in (install): When doing a general install, install the
		shared libraries as well by using the new target 
		install-shlibs-libs-recursive.

	* configure.in: If we are building on a Linux system, set $prefix
		to be '/' by default.

Sun Jul  9 13:38:20 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>

	* configure.in (checking type sizes): provide some default for
	type-sizes when cross-compiling, as we can't check them then.
	(SS_DIR, ET_DIR): Make these correct even when ${srcdir} is absolute.

Thu Jun 15 23:33:37 1995  Remy Card  <card@bbj>

	* Makefile.in (distclean-local): Added config.cache and
		include/linux/types.h.

	* configure.in: Added support for the --enable-elf option.
		Added a test to check for llseek() in the C library.

	* lib/Makefile.dll-lib: Fixed incorrect RM and LN calls.

	* lib/Makefile.elf-lib: New file, to create ELF shared libraries.

Sat Jun 10 19:52:51 1995  Theodore Y. Ts'o  <tytso@lurch.mit.edu>

	* configure.in: Create ET_DIR and SS_DIR, which gives the absolute
		pathname to the source directories of the lib/et and
		lib/ss.  (Can't just use $srcdir since that may be a
		relative path.)

Thu Jun  8 12:25:57 1995  Miles Bader  <miles@churchy.gnu.ai.mit.edu>

	* lib/Makefile.library ($(LIBRARY).a): Changed to work with the
	new makefiles.
	* lib/Makefile.dll-lib: Ditto.
	* lib/Makefile.profiled: Ditto.
	* lib/Makefile.checker: Ditto.

	* Add the include subdirectory to hold substitute include files
	for systems that need them.

	* Makefile.in: Rewritten to conform to GNU coding standards.
	* MCONFIG: Moved to MCONFIG.in, and totally changed to support
	GNU-style makefiles.
	* mkinstalldirs: New file, copied from /gd/gnu/lib.
	* config.guess: Ditto.
	* config.sub: Ditto.
	* install-sh: Ditto.

	* configure.in: Many new tests added.  --with-cc and --with-ccopts
	options removed as configure already supports a method to do this,
	and they were interfering with normal usage.

Sat Mar 11 18:23:45 1995  Theodore Y. Ts'o  <tytso@localhost>

	* Makefile.in (bin-tree): Add Makefile target which automatically
		generates the binary distribution for e2fsprogs.


