1999-09-18  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* Swarm 2.0.1 released.

1999-09-02  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* TclInterp.m, TkInterp.m: Cruft for Tcl/Tk 8.2 and SUBDIR.

1999-08-28  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* Swarm 2.0 released.

1999-08-24    <mgd@HELEN>

	* tclObjc.h: Undef Windows definition of "interface" that gets
	defined via tcl.h.

1999-08-07  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* tclObjc.m (tclObjc_msgSendToClientData): Use PTRHEXFMT
	instead of POINTER_FMT_HEX_PREFIX switch ifdef.

1999-07-21  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* TclInterp.m (SUBDIR): Define per TCL_{MAJOR,MINOR}_VERSION.

	* TkInterp.m (SUBDIR): Define per TK_{MAJOR_MINOR}_VERSION.

	* TclInterp.m ([TclInterp -checkTclLibrary]): Check for SUBDIR
	instead of tcl8.0.

	* TkInterp.m ([TkInterp -checkTkLibrary]): Check for SUBDIR
	instead of tk8.0.

1999-07-09  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* TclInterp.m ([TclInterp -preInitWithArgc:argv:]): Handle
	Tcl 8.1 initialization using TclSetLibraryPath instead of
	a Tcl_SetVar on tcl_library.

1999-07-02  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* Makefile.am (CPPFLAGS): Add -DBUILDING_SWARM.

1999-06-20  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* tclObjc.m (tclObjc_msgSendToClientData): Rewritten to use
	FCall/FArguments.

	* Makefile.am (INCLUDES): Add .., $(srcdir)/.., and
	$(srcdir)/../defobj.

1999-06-17  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* tclObjc.m (tclObjc_msgSendToClientData): Handle void return
	(libffi and avcall).

1999-06-14  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* HashTable.m: Include swarmconfig.h.
	(hash_int): Use PTRUINT instead of unsigned int.
	(compare_ints): Use PTRINT instead of int.

	* tclObjc.m: Rip out all the __builtin_apply support.
	(dynamicCall): Remove.
	(tclObjc_msgSendToClientData): Rip out all the
	`special hack' stuff.  It's unportable, and libffi/avcall will do
	the job just fine. 
	Declare alloca.  Handle unsigned ints in libffi and avcall cases,
	return and arguments.
	(tclObjc_msgSendToClientData): Use macro for `imp' (closer to
	usages) to stop compiler warnings on alpha.

1999-06-06  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* Makefile.am (noinst_LTLIBRARIES, lib_LTLIBRARIES): Substitute
	{inst,noinst}LIBS.
	(EXTRA_LTLIBRARIES): New variable.
	(MODULE): New variable.

1999-05-29  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* Makefile.am (INCLUDES): Add $(top_builddir)/libobjc (for
	objc/externvar.h).

1999-05-24  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* Makefile.am (noinst_LTLIBRARIES): Switch from lib_LTLIBRARIES.

1999-04-28  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* tclObjc.m: Undef PACKAGE and VERSION after inclusion of ffi.h.
	Include misc.h instead of stdlib.h and string.h.

	* TkInterp.m: Include misc.h instead of unistd.h and stdlib.h.

	* TclInterp.m: Include misc.h instead of stdio.h, stdarg.h,
	string.h, stdlib.h, and unistd.h.

	* List.m: Include misc.h instead of stdlib.h.

1999-04-27  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* tclObjc.m (tclObjc_msgSendToClientData): Initialize argnum to zero
	to avoid warning on Irix.

1999-04-19  Marcus G. Daniels  <mgd@helen.santafe.edu>

	* tclObjc.m: Don't declare strchr.

1999-03-14  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* Makefile.am (libtclobjc_la_LIBADD), tclObjc.m: 
	Always ignore objc-malloc.

	* Makefile.am (INCLUDES): Include -I for libobjc.

1999-03-06  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* Makefile.am (OBJCFLAGS): Use @CFLAGS_NOWARN_IMPLICIT_INT@
	instead of -Wno-implicit-int.

1999-02-08  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* Makefile.am (REVISION): Bump.  Version 1.4.1.

1999-02-01  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* Makefile.am (TCL_LIBRARY, TK_LIBRARY): Don't compute from
	t{cl,k}Config.sh file.  Get value from autoconf substitution.

1999-01-25  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* TkInterp.m: Use __CYGWIN__ instead of __CYGWIN32__.

	* tclObjc.m (BUGGY_BUILTIN_APPLY): Set if __CYGWIN__. 

1999-01-22  Marcus G. Daniels  <mgd@pojoaque.santafe.edu>

	* TclInterp.m ([TclInterp -checkPath:subdirectory:file:]): Add
	subdirectory argument.
	([TclInterp -checkPath:subdirectory:file:]): Don't append / if
	there already is one, and return path (sans filename) in case of
	success.

	* T{cl,k}Interp.m ([T{cl,k}Interp -checkT{cl,k}Library]): Use above
	and secondaryPath as base for t{cl,k}8.0 instead of as an explicit
	path.

1999-01-20  Marcus G. Daniels  <mgd@chama.santafe.edu>

	* Makefile.am (CURRENT, AGE): Bump.  Clear revision.

1999-01-07  Marcus G. Daniels  <mgd@chama.santafe.edu>

	* Makefile.am (tcllibdir): Substitute.
	(TCL_VERSION): Extract from tclConfig.sh.
	(TCL_PREFIX): Extract from tclConfig.sh.
	(TCL_LIBRARY): Set to $(TCLPREFIX)/lib/tcl$(TCL_VERSION).
	(CPPFLAGS): Define TCL_LIBRARY.

	* TclInterp.m (checkLibrary): Default to TCL_LIBRARY cpp symbol
	if tcl_library is not set.

	* TkInterp.m ([TkInterp -preInitWithArgc:argv:]): Set up tclobjc_newTk
	global flag that is set by tkInit (if run).  Then, after Tk_Init,
	source tk.tcl if it is set.

1999-01-06  Marcus G. Daniels  <mgd@chama.santafe.edu>

	* TkInterp.m: Include stdlib.h.
	([TkInterp -checkTkLibrary]): Use TK_LIBRARY as base path for tk.tcl
	then try secondaryPath.
	([TkInterp -preInitWithArgc:argv:]): Don't retry.  Set them from
	check{Tcl,Tk} or fail.

	* TkInterp.h: Declare checkTkLibrary.

	* TclInterp.m ([TclInterp -preInitWithArgc:argv:]): Set tcl_library
	if path is set, else raise error.
	([TclInterp -checkTclLibrary]): Don't set tcl_library here.

	* Makefile.am (tklibdir): Substitute.
	(TK_VERSION): Extract from tkConfig.sh.
	(TK_PREFIX): Extract from tkConfig.sh.
	(TK_LIBRARY): Set to $(TKPREFIX)/lib/tk$(TK_VERSION).
	(CPPFLAGS): Define TK_LIBRARY.

1998-12-11  Marcus G. Daniels  <mgd@chama.santafe.edu>

	* Makefile.am: Add -Wno-implicit-int to OBJCFLAGS instead of
	CPPFLAGS.

1998-11-18  Marcus G. Daniels  <mgd@chama.santafe.edu>

	* Makefile.am (CPPFLAGS): Add -Wno-implicit-int.

1998-10-04  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* Makefile.am (REVISION): Increment.  Swarm 1.3.1 released.
	(INCLUDES): Include misc.

	* tclObjc.m (tclObjc_msgSendToClientData): Make i unsigned throughout.
	Cast argc to unsigned. 

	* TkInterp.m (StdinProc): Don't declare or define if __CYGWIN32__.

	* HashTable.m ([HashTable -read:]): Make i unsigned.

	* List.m ([List -deepen]): Likewise.
	([List -isEqual:]): Likewise.
	([List -indexOf:]): Likewise.
	([List -empty]): Likewise.
	([List -insertObject:at:]): Cast index to int.
	([List -removeObjectAt:]): Cast numElements to int.

	* objc-malloc.m: Include misc.h.  Use xmalloc, xrealloc, xcalloc,
	and XFREE instead of checking return and calling objc_fatal
	(a routine that is no longer public in libobjc.a).

1998-09-03  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* Makefile.am (CPPFLAGS): Add -DList=TclObjcList.

1998-08-24  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* Makefile.am (CURRENT,REVISION,AGE):  No changes.  Swarm 1.3 released.

1998-08-20  Marcus G. Daniels  <mgd@helen.santafe.edu>

	* TkInterp.m: Undef Tk_{Create,Delete}FileHandler before
	redefining as NOPs in Cygwin32 case. 

1998-08-14  Marcus G. Daniels  <mgd@helen.santafe.edu>

	* tclObjc.m (dynamic_call): Wrap call to __builtin_apply with this
	to get around -O2 compilation core dump with gcc-2.7.2.
	(tclObjc_msgSendToClientData): Use it.

1998-08-12  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* tclObjc.m: Include avcall.h or ffi.h per BUGGY_BUILTIN_APPLY
	and USE_AVCALL.
	(tclObjc_msgSendToClientData): Add support for 
	(getObjectReturn, getPointerReturn, getIntegerReturn, 
	getUIntegerReturn, getShortReturn, getUShortReturn, getLongReturn,
	getULongReturn, getCharReturn, getUCharReturn, getStringReturn, 
	getFloatReturn, getDoubleReturn): Add support for libffi and avcall for
	when __builtin_apply is buggy.
	(getPointerReturn): Return void * instead of unsigned.
	(tclObjc_msgSendToClientData): Use %p instead of %x for pointer,
	per POINTER_FMT_HEX_PREFIX.
	(tclObjc_msgSendToClientData): Use ffi_type_uint for _C_UCHR.
	Move prep_cif immediately before ffi_call.
	Add casts as appropriate to resultString sprintf arguments.
	(getUCharReturn): Cast to unsigned int, not unsigned char
	in libffi case.

	* Makefile.am (FFIINCLUDES): New substituted variable.
	(INCLUDES): Add FFIINCLUDES.

1998-08-11  Marcus G. Daniels  <mgd@helen.santafe.edu>

	* Makefile.am: Add SUFFIXES = .m since we aren't including 
	Makefile.rules.  (tclobjc_HEADERS): Add tclObjc.h.

	* tclObjc.m: Include swarmconfig.h instead of config.h.

	* List.m: Include stdlib.h.

	* TclInterp.m: Include string.h.

	* TkInterp.m: Include unistd.h.

	* tclObjc.m: Include stdlib.h and string.h.

1998-08-10  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* tclObjc.h: Renamed from tclObjc.h.in; no longer an extracted file.
	(TCLOBJC_VERSION): Bump to 1.4.

	* tclObjc.m: Include config.h.

1998-07-22  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* tclObjc.m (ATDELIMCHAR): Switch back to `@', until BLT 2.4 is
	for real.

1998-07-21  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* configure.in (INCPLACES, LIBPLACES): Add /Cygnus/B19/{include,lib}.

1998-07-19  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* tclObjc.m (ATDELIMCHAR): New macro.  Used in 
	tclObjc_objectToName and tclObjcToObject as delimiter between
	name and address.  Also used in TclObjc_Init.

1998-07-15  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* Makefile.in: Bump TCLOBJC_VERSION to 1.4.

	* configure.in (TCLLIBNAME): Update for Tcl/Tk 8.1.

1998-06-30  Marcus G. Daniels  <mgd@ute.santafe.edu>

	* TkInterp.m ([TkInterp -initWithArgc:argv:]): Put "update"
	in writable buffer before handing it to Tcl_Eval.

	* TclInterp.m ([TclInterp -preInitWithArgc:argv:]): Move buffer
	to where it is used for setting argc.

1998-04-07  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* checkT{cl,k}.m (main): Constify argv.

1998-03-16  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* NEWS: Update for 1.3.
	
	* TkInterp.m ([TkInterp -preInitWithArgc:argv:]): Recreate
	interpreter until Tcl and Tk library files have been located, or fail.

	* TclInterp.m: Include stdlib.h and unistd.h.
	([TclInterp -setSecondaryLibraryPath:],	[TclInterp -checkPath:file:],
	[TclInterp -checkTclLibrary]): New methods.
	([TclInterp -preInitWithArgc:argv:]): Call checkTclLibrary after
	interpreter is created to make best effort that there's a
	valid tcl_library.
	([TclInterp -preInitWithArgc:argv:]): Cast argument to ckfree
	to void * to avoid warning.

	* TclInterp.h (TclInterp): New instance variable secondaryPath 
	and setter.  Declare new methods checkTclLibrary and checkPath:file:.

1998-03-14  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* Makefile.in (TCLOBJC_GCC_VERSION): Remove.

	* Makefile.in, tclObjc.h.in (TCLOBJC_VERSION): Change to 1.3.

	* TkInterp.m: Make Tk_{Create,Delete}FileHandler NOPs with cygwin.

1998-03-07  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* TclInterp.m (eval:): Increase size of cmd buffer from 4k to 32k.
	
1998-02-20  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* TclInterp.h, TclInterp.m, TkInterp.m: Constify argv in
	initWithArgc:argv: and preInitWithArgc:argv:.

1998-01-30  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* checkTcl.m (main): Change [Tcl alloc] to [TclInterp alloc].

	* checkTk.m (main): Change [Tk alloc] to [TkInterp alloc].

1998-01-27  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* TclInterp.[hm]: Class renamed from Tcl to TclInterp.
	
	* TkInterp.[hm]: Class renamed from Tk to TkInterp.

1998-01-18  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* configure.in: Change from Tk to TkInterp in --with-tk conditional.
	Check for TclInterp.m in AC_INIT.
	Substitute TkInterp_o and TkInterp_h instead of Tk_o and Tk_h.

	* Makefile.in (SRCS,OBJS,HDRS,DISTFILES): Change from Tcl.[hm] to
	TclInterp.[hm].
	(tclObjc.o TclInterp.o): Change from tclObjc.o Tcl.o.
	(SRCS,OBJS,HDRS,DISTFILES): Change from Tk.[hm] to TkInterp.[hm]
	(and @TKInterp_o@).

1997-12-16  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* Makefile.in: Use $(findstring -DHAVE_OBJC_MALLOC,$(DEFS)) instead
	of @HAVE_OBJC_MALLOC@.

	* configure.in: Remove substitution of HAVE_OBJC_MALLOC.

1997-12-13  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* tclObjc.m: If HAVE_OBJC_MALLOC, include <objc/objc-api.h>
	so that objc_malloc, etc. will be declared, otherwise include
	our objc-malloc.h.

	* configure.in: Check for libobjc, objc_malloc in libobjc and
	then substitute HAVE_OBJC_MALLOC.

	* Makefile.in (SRCS): Use $(OBJC_MALLOC_SRC) not @OBJC_MALLOC_SRC@.
	(OBJS): Use $(OBJC_MALLOC_OBJ) not @OBJC_MALLOC_OBJ@.
	(HAVE_OBJC_MALLOC): Define from configure substitution.
	(OBJC_MALLOC_SRC, OBJC_MALLOC_OBJ): Define if HAVE_OBJC_MALLOC
	is empty.

1997-12-09  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* Tcl.m ([Tcl -registerObject:withName:]): Cast value: argument
	to insertKey: value: to eliminate warning.
	([Tcl - promptAndEval]): Cast cmd to char * to eliminate warning
	(Tcl_CommandComplete, Tcl_RecordAndEval).

	* Tk.m: Disable synchronize and display for recent versions of Tk.
	([Tk -preInitWithArgc:argv:]): Constify return.
	([Tk -preInitWithArgc:argv:]): Constify fileName.
	([Tk -promptAndEval]:): Constify cmd and line.
	(StdinProc): Constify cmd.
	(StdinProc): Cast cmd to char * to eliminate warning
	(Tcl_CommandComplete).
	(StdinProc): Cast cmd to char * to eliminate warning
	(Tcl_RecordAndEval).

	* Tcl.m ([Tcl -preInitWithArgc:argv:]): Constify return.
	([Tcl -initWithArgc:argv:]): Constify fileName and msg.
	([Tcl -eval:]:) Constify first argument.	
	([Tcl -globalEval:]:) Constify first argument.

	* Tcl.h: Constify return of preInitWithArgc.
	Constify first argument of eval and globalEval.

1997-12-07  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* configure.in: Add -lpthread to LIBS if it is there.  This
	is needed for the thread-safe Objective C runtime of gcc-2.8.

1997-12-06  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* Makefile.in (TCLLIBS, LIBS): Add -lobjc.

	* configure.in: Add -ldl to LIBS if it is there.

	* NEWS: Version notes.

	* Makefile.in (TCLOBJC_VERSION): Bump version.
	* tclObjc.h.in: Likewise.

	* Makefile.in (doCheckTcl): Add $(srcdir) prefix before check.tcl.
	(doCheckTk): Likewise.

1997-12-03  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* configure.in (INCPLACES, LIBPLACES): Quote $tclInstalledDir
	because it may be empty.
	(INCPLACES): Append other potential tk include directories after
	existing list, otherwise if there are several Tk trees, a user's
	request for a particular Tk tree may get overridden.
	(LIBPLACES): Use "`dirname $TKINCDIR`/lib", not "`dirname
	$TKINCDIR/lib`", for guessing a library pathname from include
	pathname.

1997-12-02  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* configure.in:  Replace instances of "test ! -z" with
	"test -n".

	* Tk.m (tk_iter): Cope with Tk >= 8.0.
	([Tk -preInitWithArgc:argv:]): Likewise.
	([Tk -promptAndEval]): Likewise.

	* Tcl.h (TCLVERSIONLT74, TCLVERSIONGT74): Fix logic for Tcl >= 8.0.

	* configure.in (INCPLACES, LIBPLACES): Added tcl8.0 and tk8.0.
	(TCLLIBNAME): Added check for 80/8.0 (automatic search and manual
	request).
	(TKLIBNAME): Likewise.

	* Makefile.in (tclObjc.o Tcl.o): Changed rule "tclObjc.m: tclObjc.h"
	to "tclObjc.o Tcl.o: tclObjc.h" (needed now that there isn't a 
	tclObjc.h file).

1997-11-30  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* configure.in (INCPLACES): Add tcl7.6 and tk4.2.
	(LIBPLACES): Likewise.
	(TCLLIBNAME): Replace conditions for checking for different
	versions of tcl with a loop over the versions and shared/static
	library suffixes.
	(TCLLIBNAME): Likewise.

	* Makefile.in (ALL_INCLUDE_FLAGS): Add -I. to find tclObjc.h if
	doing a --srcdir build.
	(HDRS): Remove tclObjc.h.
	(DISTFILES): Rename tclObjc.h to tclObjc.h.in.
	(install): Add explicit install command for tclObjc.h.
	(uninstall): Add tclObjc.h after HDRS.  Change $file to $$file.
	(tclObjc.h): Change to read from tclObjc.h.in, using no temporary
	files.

1997-11-27  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* configure.in: Fix typo; check for libtk.a was looking for libk.a.

1997-11-19  Marcus G. Daniels  <mgd@wijiji.santafe.edu>

	* Makefile.in (OBJS): Replace literal objc-malloc.[mo] with
	@OBJC_MALLOC_SRC@, @OBJC_MALLOC_OBJ@.
	(install): Fix HDRS install target to work with $(srcdir).

	* configure.in: Add check for objc_malloc in libobjc.a. Don't compile
	objc-malloc.m if it already exists.

Fri Sep 12 14:46    1997  glen e. p. ropella <gepr@santafe.edu>

        * tclObjc.m: changed %u to %p for 64-bit compatibility
        * tclObjc.m: changed for new ObjC compatibility.

Wed Nov 20 1996 glen e. p. ropella <gepr@santafe.edu>

	* Modified Tcl.m to account for the variable tcl_rcFileName
	being a Tcl variable instead of a C variable.

Mon Oct 28 1996 glen e. p. ropella <gepr@santafe.edu>

	* Modified Tcl.[hm] and Tk.m to account for changes in
	Tcl between 7.4 and 7.5 and changes in Tk between 4.0 and 
	4.1.  These include the renaming of the tcl_RcFileName to
	tcl_rcFileName and changes from the variable tk_NumMainWindows
	to Tk_GetNumMainWindows.  Also, allowed Tk_Init to create the
	main window for the raster in Tk.m and filled in the "w" 
	variable with what it generated.

Wed Dec 13 18:04:33 1995  Nelson Minar  <nelson@santafe.edu>

	* .texi: removed the .texi sources, because I'm not keeping them
	up to date.

	* configure.in: remove check for tcl version: assumes tcl7.4
	or newer.

	* tclObjc.h: replace Class * with Class, to be consistent
	with gcc 2.7.0.

	* INSTALL: updated instructions to reflect changes.
	
Tue Aug  8 00:09:15 1995  Nelson Minar  <nelson@santafe.edu>

	* configure.in: modernize configure.in

	* Makefile.in: changed "clean" targets around a bit to be more
	friendly.

	* Tcl.m: changed declaration of tcl_RcFileName to match
	tcl7.4 library organization.
	
	* Tcl.m: added in support for printing out all commands before
	they are sent to Tcl_Eval (debugging aid).

	* Tk.h, Tk.m: add mainWindow method

	* Beginning of Nelson's libtclobjc maintainance

	
