Index: harvest/ChangeLog
diff -c harvest/ChangeLog:2.34 harvest/ChangeLog:2.36
*** harvest/ChangeLog:2.34	Mon Oct 27 17:56:25 1997
--- harvest/ChangeLog	Tue Nov  4 13:14:11 1997
***************
*** 1,4 ****
--- 1,9 ----
  Changes in current version
+  	- Altered Makefiles so that objects can be built outside of the
+ 	  current source directory when using a make that supports VPATH
+ 	  - such as gnumake. (Simon Wilkinson)
+ 	- Added support for sending Accept: headers to http.c in liburl.
+ 	  Currently sends Accept: */* (Simon Wilkinson)
  	- Fixed filter.c so both host and portnumber are made available for
            regular expressions (Wesley Alan Wright)
  	- Added a SWISH based indexing engine, which is considerably more
Index: harvest/SetupComponent
diff -c harvest/SetupComponent:2.1 harvest/SetupComponent:2.2
*** harvest/SetupComponent:2.1	Sun Mar 16 17:56:06 1997
--- harvest/SetupComponent	Tue Nov  4 13:14:14 1997
***************
*** 2,8 ****
  #
  #  SetupComponent - Add or delete components from the source tree.
  #
! #  SetupComponent,v 2.1 1997/03/16 22:56:06 sxw Exp
  #
  if test $# -ne 3; then
  	echo "Usage: ./SetupComponent add subsystem component";
--- 2,8 ----
  #
  #  SetupComponent - Add or delete components from the source tree.
  #
! #  SetupComponent,v 2.2 1997/11/04 18:14:14 sxw Exp
  #
  if test $# -ne 3; then
  	echo "Usage: ./SetupComponent add subsystem component";
***************
*** 35,49 ****
  
  if test "$cmd" = "add"; then
  	echo "Adding $component to $subsys."
! 	echo "$component" >> ./components/$subsys/BUILD
  	exit 0
  fi
  
  # delete
  tfile="/tmp/sc.$$"
! echo "Deleting $component to $subsys."
! grep -v "$component" ./components/$subsys/BUILD > $tfile
! cp $tfile ./components/$subsys/BUILD
! rm -f $tfile
! 
  exit 0
--- 35,54 ----
  
  if test "$cmd" = "add"; then
  	echo "Adding $component to $subsys."
! 	line="`cat ./components/$subsys/BUILD`"
! 	echo "$line $component" >./components/$subsys/BUILD
  	exit 0
  fi
  
  # delete
  tfile="/tmp/sc.$$"
! echo "Deleting $component from $subsys."
! line="`cat ./components/$subsys/BUILD`"
! newline=""
! for A in $line; do
! 	if [ "$A" != "$component" ] ; then
! 		newline="$newline $A"
! 	fi
! done
! echo $newline > ./components/$subsys/BUILD
  exit 0
Index: harvest/configure
diff -c harvest/configure:2.2 harvest/configure:2.3
*** harvest/configure:2.2	Thu Sep 11 13:14:31 1997
--- harvest/configure	Tue Nov  4 13:14:15 1997
***************
*** 450,456 ****
  
  # A filename unique to this package, relative to the directory that
  # configure is in, which we can look for to find out if srcdir is correct.
! ac_unique_file=Makefile
  
  # Find the source files, if location was not specified.
  if test -z "$srcdir"; then
--- 450,456 ----
  
  # A filename unique to this package, relative to the directory that
  # configure is in, which we can look for to find out if srcdir is correct.
! ac_unique_file=Makefile.in
  
  # Find the source files, if location was not specified.
  if test -z "$srcdir"; then
***************
*** 712,718 ****
  ac_given_srcdir=$srcdir
  ac_given_INSTALL="$INSTALL"
  
! trap 'rm -fr `echo "" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  EOF
  cat >> $CONFIG_STATUS <<EOF
  
--- 712,718 ----
  ac_given_srcdir=$srcdir
  ac_given_INSTALL="$INSTALL"
  
! trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  EOF
  cat >> $CONFIG_STATUS <<EOF
  
***************
*** 786,792 ****
  
  cat >> $CONFIG_STATUS <<EOF
  
! CONFIG_FILES=\${CONFIG_FILES-""}
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
--- 786,792 ----
  
  cat >> $CONFIG_STATUS <<EOF
  
! CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
Index: harvest/configure.in
diff -c harvest/configure.in:2.2 harvest/configure.in:2.3
*** harvest/configure.in:2.2	Thu Sep 11 13:14:32 1997
--- harvest/configure.in	Tue Nov  4 13:14:16 1997
***************
*** 1,5 ****
! AC_INIT(Makefile)
  AC_CONFIG_AUX_DIR(src)
  AC_PROG_INSTALL()
  AC_CONFIG_SUBDIRS(src components)
! AC_OUTPUT()
--- 1,5 ----
! AC_INIT(Makefile.in)
  AC_CONFIG_AUX_DIR(src)
  AC_PROG_INSTALL()
  AC_CONFIG_SUBDIRS(src components)
! AC_OUTPUT(Makefile)
Index: harvest/components/configure
diff -c harvest/components/configure:2.1 harvest/components/configure:2.2
*** harvest/components/configure:2.1	Thu Sep 11 12:14:03 1997
--- harvest/components/configure	Tue Nov  4 13:14:19 1997
***************
*** 450,456 ****
  
  # A filename unique to this package, relative to the directory that
  # configure is in, which we can look for to find out if srcdir is correct.
! ac_unique_file=Makefile
  
  # Find the source files, if location was not specified.
  if test -z "$srcdir"; then
--- 450,456 ----
  
  # A filename unique to this package, relative to the directory that
  # configure is in, which we can look for to find out if srcdir is correct.
! ac_unique_file=Makefile.in
  
  # Find the source files, if location was not specified.
  if test -z "$srcdir"; then
***************
*** 537,543 ****
  ac_config_sub=$ac_aux_dir/config.sub
  ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
  
! subdirs="admin gatherer broker"
  
  trap '' 1 2 15
  cat > confcache <<\EOF
--- 537,543 ----
  ac_config_sub=$ac_aux_dir/config.sub
  ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
  
! subdirs="admin broker gatherer"
  
  trap '' 1 2 15
  cat > confcache <<\EOF
***************
*** 651,657 ****
  
  ac_given_srcdir=$srcdir
  
! trap 'rm -fr `echo "" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  EOF
  cat >> $CONFIG_STATUS <<EOF
  
--- 651,657 ----
  
  ac_given_srcdir=$srcdir
  
! trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  EOF
  cat >> $CONFIG_STATUS <<EOF
  
***************
*** 723,729 ****
  
  cat >> $CONFIG_STATUS <<EOF
  
! CONFIG_FILES=\${CONFIG_FILES-""}
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
--- 723,729 ----
  
  cat >> $CONFIG_STATUS <<EOF
  
! CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
***************
*** 814,820 ****
      esac
    done
  
!   for ac_config_dir in admin gatherer broker; do
  
      # Do not complain, so a configure script can configure whichever
      # parts of a large source tree are present.
--- 814,820 ----
      esac
    done
  
!   for ac_config_dir in admin broker gatherer; do
  
      # Do not complain, so a configure script can configure whichever
      # parts of a large source tree are present.
Index: harvest/components/configure.in
diff -c harvest/components/configure.in:2.1 harvest/components/configure.in:2.2
*** harvest/components/configure.in:2.1	Thu Sep 11 12:14:04 1997
--- harvest/components/configure.in	Tue Nov  4 13:14:20 1997
***************
*** 1,3 ****
! AC_INIT(Makefile)
! AC_CONFIG_SUBDIRS(admin gatherer broker)
! AC_OUTPUT()
--- 1,3 ----
! AC_INIT(Makefile.in)
! AC_CONFIG_SUBDIRS(admin broker gatherer)
! AC_OUTPUT(Makefile)
Index: harvest/components/admin/configure
diff -c harvest/components/admin/configure:2.1 harvest/components/admin/configure:2.2
*** harvest/components/admin/configure:2.1	Thu Sep 11 12:14:06 1997
--- harvest/components/admin/configure	Tue Nov  4 13:14:23 1997
***************
*** 450,456 ****
  
  # A filename unique to this package, relative to the directory that
  # configure is in, which we can look for to find out if srcdir is correct.
! ac_unique_file=Makefile
  
  # Find the source files, if location was not specified.
  if test -z "$srcdir"; then
--- 450,456 ----
  
  # A filename unique to this package, relative to the directory that
  # configure is in, which we can look for to find out if srcdir is correct.
! ac_unique_file=Makefile.in
  
  # Find the source files, if location was not specified.
  if test -z "$srcdir"; then
***************
*** 537,543 ****
  ac_config_sub=$ac_aux_dir/config.sub
  ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
  
! subdirs="`cat ./BUILD`"
  
  trap '' 1 2 15
  cat > confcache <<\EOF
--- 537,543 ----
  ac_config_sub=$ac_aux_dir/config.sub
  ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
  
! subdirs="`cat $srcdir/BUILD`"
  
  trap '' 1 2 15
  cat > confcache <<\EOF
***************
*** 651,657 ****
  
  ac_given_srcdir=$srcdir
  
! trap 'rm -fr `echo "" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  EOF
  cat >> $CONFIG_STATUS <<EOF
  
--- 651,657 ----
  
  ac_given_srcdir=$srcdir
  
! trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  EOF
  cat >> $CONFIG_STATUS <<EOF
  
***************
*** 723,729 ****
  
  cat >> $CONFIG_STATUS <<EOF
  
! CONFIG_FILES=\${CONFIG_FILES-""}
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
--- 723,729 ----
  
  cat >> $CONFIG_STATUS <<EOF
  
! CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
***************
*** 814,820 ****
      esac
    done
  
!   for ac_config_dir in `cat ./BUILD`; do
  
      # Do not complain, so a configure script can configure whichever
      # parts of a large source tree are present.
--- 814,820 ----
      esac
    done
  
!   for ac_config_dir in `cat $srcdir/BUILD`; do
  
      # Do not complain, so a configure script can configure whichever
      # parts of a large source tree are present.
Index: harvest/components/admin/configure.in
diff -c harvest/components/admin/configure.in:2.1 harvest/components/admin/configure.in:2.2
*** harvest/components/admin/configure.in:2.1	Thu Sep 11 12:14:06 1997
--- harvest/components/admin/configure.in	Tue Nov  4 13:14:24 1997
***************
*** 1,3 ****
! AC_INIT(Makefile)
! AC_CONFIG_SUBDIRS(`cat ./BUILD`)
! AC_OUTPUT()
--- 1,3 ----
! AC_INIT(Makefile.in)
! AC_CONFIG_SUBDIRS(`cat $srcdir/BUILD`)
! AC_OUTPUT(Makefile)
Index: harvest/components/admin/standard/configure
diff -c harvest/components/admin/standard/configure:2.0 harvest/components/admin/standard/configure:2.1
*** harvest/components/admin/standard/configure:2.0	Sun Mar 16 16:56:08 1997
--- harvest/components/admin/standard/configure	Tue Nov  4 13:14:28 1997
***************
*** 838,843 ****
--- 838,844 ----
  ac_given_INSTALL="$INSTALL"
  
  trap 'rm -fr `echo "\
+ 	Makefile \
  	simple-scripts/Makefile \
  " | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  EOF
***************
*** 922,927 ****
--- 923,929 ----
  cat >> $CONFIG_STATUS <<EOF
  
  CONFIG_FILES=\${CONFIG_FILES-"\
+ 	Makefile \
  	simple-scripts/Makefile \
  "}
  EOF
Index: harvest/components/admin/standard/configure.in
diff -c harvest/components/admin/standard/configure.in:2.1 harvest/components/admin/standard/configure.in:2.2
*** harvest/components/admin/standard/configure.in:2.1	Fri Mar 21 12:18:51 1997
--- harvest/components/admin/standard/configure.in	Tue Nov  4 13:14:29 1997
***************
*** 1,7 ****
  dnl
  dnl  Configuration input file for standard Harvest broker components
  dnl
! dnl  configure.in,v 2.1 1997/03/21 17:18:51 sxw Exp
  dnl
  
  AC_PREREQ(2.12)
--- 1,7 ----
  dnl
  dnl  Configuration input file for standard Harvest broker components
  dnl
! dnl  configure.in,v 2.2 1997/11/04 18:14:29 sxw Exp
  dnl
  
  AC_PREREQ(2.12)
***************
*** 52,56 ****
--- 52,57 ----
  rm -f core 
  
  AC_OUTPUT(\
+ 	Makefile \
  	simple-scripts/Makefile \
  )
Index: harvest/components/admin/standard/simple-scripts/Makefile.in
diff -c harvest/components/admin/standard/simple-scripts/Makefile.in:2.3 harvest/components/admin/standard/simple-scripts/Makefile.in:2.4
*** harvest/components/admin/standard/simple-scripts/Makefile.in:2.3	Tue Sep 16 13:58:27 1997
--- harvest/components/admin/standard/simple-scripts/Makefile.in	Tue Nov  4 13:14:30 1997
***************
*** 1,6 ****
! # Makefile.in,v 2.3 1997/09/16 17:58:27 sxw Exp
  #
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,9 ----
! # Makefile.in,v 2.4 1997/11/04 18:14:30 sxw Exp
  #
  
+ srcdir = @srcdir@
+ VPATH  = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 24,27 ****
  	-rm -f Makefile
  
  install:	all
! 	$(INSTALL_BIN) harvest-check.pl $(INSTALL_LIBDIR)
--- 27,30 ----
  	-rm -f Makefile
  
  install:	all
! 	$(INSTALL_BIN) $(srcdir)/harvest-check.pl $(INSTALL_LIBDIR)
Index: harvest/components/broker/BUILD
diff -c harvest/components/broker/BUILD:2.1 harvest/components/broker/BUILD:2.2
*** harvest/components/broker/BUILD:2.1	Mon Oct 27 17:47:04 1997
--- harvest/components/broker/BUILD	Tue Nov  4 13:14:31 1997
***************
*** 1,2 ****
! standard
! swish
--- 1 ----
! standard swish
Index: harvest/components/broker/configure
diff -c harvest/components/broker/configure:2.1 harvest/components/broker/configure:2.2
*** harvest/components/broker/configure:2.1	Thu Sep 11 12:14:11 1997
--- harvest/components/broker/configure	Tue Nov  4 13:14:33 1997
***************
*** 450,456 ****
  
  # A filename unique to this package, relative to the directory that
  # configure is in, which we can look for to find out if srcdir is correct.
! ac_unique_file=Makefile
  
  # Find the source files, if location was not specified.
  if test -z "$srcdir"; then
--- 450,456 ----
  
  # A filename unique to this package, relative to the directory that
  # configure is in, which we can look for to find out if srcdir is correct.
! ac_unique_file=Makefile.in
  
  # Find the source files, if location was not specified.
  if test -z "$srcdir"; then
***************
*** 537,543 ****
  ac_config_sub=$ac_aux_dir/config.sub
  ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
  
! subdirs="`cat ./BUILD`"
  
  trap '' 1 2 15
  cat > confcache <<\EOF
--- 537,543 ----
  ac_config_sub=$ac_aux_dir/config.sub
  ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
  
! subdirs="`cat $srcdir/BUILD`"
  
  trap '' 1 2 15
  cat > confcache <<\EOF
***************
*** 651,657 ****
  
  ac_given_srcdir=$srcdir
  
! trap 'rm -fr `echo "" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  EOF
  cat >> $CONFIG_STATUS <<EOF
  
--- 651,657 ----
  
  ac_given_srcdir=$srcdir
  
! trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  EOF
  cat >> $CONFIG_STATUS <<EOF
  
***************
*** 723,729 ****
  
  cat >> $CONFIG_STATUS <<EOF
  
! CONFIG_FILES=\${CONFIG_FILES-""}
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
--- 723,729 ----
  
  cat >> $CONFIG_STATUS <<EOF
  
! CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
***************
*** 814,820 ****
      esac
    done
  
!   for ac_config_dir in `cat ./BUILD`; do
  
      # Do not complain, so a configure script can configure whichever
      # parts of a large source tree are present.
--- 814,820 ----
      esac
    done
  
!   for ac_config_dir in `cat $srcdir/BUILD`; do
  
      # Do not complain, so a configure script can configure whichever
      # parts of a large source tree are present.
Index: harvest/components/broker/configure.in
diff -c harvest/components/broker/configure.in:2.1 harvest/components/broker/configure.in:2.2
*** harvest/components/broker/configure.in:2.1	Thu Sep 11 12:14:12 1997
--- harvest/components/broker/configure.in	Tue Nov  4 13:14:34 1997
***************
*** 1,3 ****
! AC_INIT(Makefile)
! AC_CONFIG_SUBDIRS(`cat ./BUILD`)
! AC_OUTPUT()
--- 1,3 ----
! AC_INIT(Makefile.in)
! AC_CONFIG_SUBDIRS(`cat $srcdir/BUILD`)
! AC_OUTPUT(Makefile)
Index: harvest/components/broker/standard/configure
diff -c harvest/components/broker/standard/configure:2.6 harvest/components/broker/standard/configure:2.7
*** harvest/components/broker/standard/configure:2.6	Thu Sep 18 14:01:13 1997
--- harvest/components/broker/standard/configure	Tue Nov  4 13:14:37 1997
***************
*** 1444,1449 ****
--- 1444,1450 ----
  ac_given_INSTALL="$INSTALL"
  
  trap 'rm -fr `echo "\
+ 	Makefile \
  	WWW/Makefile \
          WWW/BrokerAdmin.pl \
  	WWW/nph-search \
***************
*** 1543,1548 ****
--- 1544,1550 ----
  cat >> $CONFIG_STATUS <<EOF
  
  CONFIG_FILES=\${CONFIG_FILES-"\
+ 	Makefile \
  	WWW/Makefile \
          WWW/BrokerAdmin.pl \
  	WWW/nph-search \
Index: harvest/components/broker/standard/configure.in
diff -c harvest/components/broker/standard/configure.in:2.7 harvest/components/broker/standard/configure.in:2.8
*** harvest/components/broker/standard/configure.in:2.7	Thu Sep 18 14:01:14 1997
--- harvest/components/broker/standard/configure.in	Tue Nov  4 13:14:38 1997
***************
*** 1,7 ****
  dnl
  dnl  Configuration input file for standard Harvest broker components
  dnl
! dnl  configure.in,v 2.7 1997/09/18 18:01:14 sxw Exp
  dnl
  
  AC_PREREQ(2.12)
--- 1,7 ----
  dnl
  dnl  Configuration input file for standard Harvest broker components
  dnl
! dnl  configure.in,v 2.8 1997/11/04 18:14:38 sxw Exp
  dnl
  
  AC_PREREQ(2.12)
***************
*** 105,110 ****
--- 105,111 ----
  rm -f core 
  
  AC_OUTPUT(\
+ 	Makefile \
  	WWW/Makefile \
          WWW/BrokerAdmin.pl \
  	WWW/nph-search \
Index: harvest/components/broker/standard/WWW/Makefile.in
diff -c harvest/components/broker/standard/WWW/Makefile.in:2.11 harvest/components/broker/standard/WWW/Makefile.in:2.12
*** harvest/components/broker/standard/WWW/Makefile.in:2.11	Thu Sep 18 14:03:44 1997
--- harvest/components/broker/standard/WWW/Makefile.in	Tue Nov  4 13:14:40 1997
***************
*** 1,9 ****
  #
  # Broker CGIs
  #
! # Makefile.in,v 2.11 1997/09/18 18:03:44 sxw Exp
  #
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,12 ----
  #
  # Broker CGIs
  #
! # Makefile.in,v 2.12 1997/11/04 18:14:40 sxw Exp
  #
  
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 22,29 ****
  #  Add -DDONT_FORMAT_KEYWORDS if you don't want to format Keywords values
  DISPLAY_FLAGS	= 
  
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG 
! CFLAGS		= $(DEBUG) -I../../../../src/common/include
  LDFLAGS		= -L../../../../src/common/lib
  LIBS		= $(XTRA_LIBS)
  UTIL		= util.o
--- 25,34 ----
  #  Add -DDONT_FORMAT_KEYWORDS if you don't want to format Keywords values
  DISPLAY_FLAGS	= 
  
+ INCLUDE		= -I../../../../src/common/include \
+ 		  -I$(srcdir)/../../../../src/common/include
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG 
! CFLAGS		= $(DEBUG)  $(INCLUDE)
  LDFLAGS		= -L../../../../src/common/lib
  LIBS		= $(XTRA_LIBS)
  UTIL		= util.o
***************
*** 34,43 ****
  all:	util.o $(PROGS) BrokerRestart
  
  DisplayObject:	DisplayObject.o $(UTIL)
! 	$(CC) -o $@ $@.o $(UTIL) $(LDFLAGS) -ltemplate -lurl -lutil -lmd5 -lgdbm $(LIBS)
  
  DisplayObject.o:	DisplayObject.c
! 	$(CC) $(CFLAGS) $(DISPLAY_FLAGS) -c DisplayObject.c
  
  BrokerRestart:	BrokerRestart.o
  	$(CC) -o $@ $@.o $(LDFLAGS) $(LIBS)
--- 39,49 ----
  all:	util.o $(PROGS) BrokerRestart
  
  DisplayObject:	DisplayObject.o $(UTIL)
! 	$(CC) -o $@ $@.o $(UTIL) $(LDFLAGS) \
! 	-ltemplate -lurl -lutil -lmd5 -lgdbm $(LIBS)
  
  DisplayObject.o:	DisplayObject.c
! 	$(CC) $(CFLAGS) $(DISPLAY_FLAGS) -c $<
  
  BrokerRestart:	BrokerRestart.o
  	$(CC) -o $@ $@.o $(LDFLAGS) $(LIBS)
***************
*** 69,76 ****
  		mkdir $(INSTALL_CGI)/lib; \
  		chmod go+x $(INSTALL_CGI)/lib; \
  	fi
! 	$(INSTALL_FILE) BrokerQuery.cf $(INSTALL_CGI)/lib; 
! 	$(INSTALL_FILE) Sample.cf $(INSTALL_CGI)/lib; 
  
  
  
--- 75,82 ----
  		mkdir $(INSTALL_CGI)/lib; \
  		chmod go+x $(INSTALL_CGI)/lib; \
  	fi
! 	$(INSTALL_FILE) $(srcdir)/BrokerQuery.cf $(INSTALL_CGI)/lib; 
! 	$(INSTALL_FILE) $(srcdir)/Sample.cf $(INSTALL_CGI)/lib; 
  
  
  
Index: harvest/components/broker/standard/glimpse/Makefile.in
diff -c harvest/components/broker/standard/glimpse/Makefile.in:2.5 harvest/components/broker/standard/glimpse/Makefile.in:2.6
*** harvest/components/broker/standard/glimpse/Makefile.in:2.5	Thu Sep 11 12:14:15 1997
--- harvest/components/broker/standard/glimpse/Makefile.in	Tue Nov  4 13:14:41 1997
***************
*** 33,39 ****
  COMPRESSSRC	= $(srcdir)/$(COMPRESSDIR)
  
  CFLAGS		= @CFLAGS@ -DSTRUCTURED_QUERIES=1 -DISO_CHAR_SET=1 -DAGREP_POINTER=1 $(DEBUG_TOP)
! ALL_CFLAGS      = $(CFLAGS) $(DEFS) -I$(INDEXSRC) -I$(AGREPSRC) -I$(TEMPLATESRC)/include
  LINKFLAGS	= @LDFLAGS@ -I$(INDEXSRC) -I$(AGREPSRC) -I$(TEMPLATESRC)/include
  
  .c.o:
--- 33,39 ----
  COMPRESSSRC	= $(srcdir)/$(COMPRESSDIR)
  
  CFLAGS		= @CFLAGS@ -DSTRUCTURED_QUERIES=1 -DISO_CHAR_SET=1 -DAGREP_POINTER=1 $(DEBUG_TOP)
! ALL_CFLAGS      = $(CFLAGS) $(DEFS) -I$(srcdir) -I$(INDEXSRC) -I$(AGREPSRC) -I$(TEMPLATESRC)/include
  LINKFLAGS	= @LDFLAGS@ -I$(INDEXSRC) -I$(AGREPSRC) -I$(TEMPLATESRC)/include
  
  .c.o:
Index: harvest/components/broker/standard/glimpse/index/Makefile.in
diff -c harvest/components/broker/standard/glimpse/index/Makefile.in:2.0 harvest/components/broker/standard/glimpse/index/Makefile.in:2.1
*** harvest/components/broker/standard/glimpse/index/Makefile.in:2.0	Sun Mar 16 16:59:25 1997
--- harvest/components/broker/standard/glimpse/index/Makefile.in	Tue Nov  4 13:14:42 1997
***************
*** 37,44 ****
  LIBTEMPLATEDIR  = $(TEMPLATEDIR)/lib
  LIBUTIL		= util
  
  CFLAGS = @CFLAGS@ -O -DSTRUCTURED_QUERIES=1 -DISO_CHAR_SET $(DEBUG_TOP)
! ALL_CFLAGS    = $(CFLAGS) $(DEFS) -I$(AGREPSRC) -I$(TEMPLATESRC)/include
  LINKFLAGS	= @LINKFLAGS@ -I$(INDEXSRC) -I$(AGREPSRC) -I$(TEMPLATESRC)/include
  
  .c.o:
--- 37,47 ----
  LIBTEMPLATEDIR  = $(TEMPLATEDIR)/lib
  LIBUTIL		= util
  
+ INCLUDE		= -I$(AGREPSRC) -I$(srcdir)/$(TEMPLATESRC)/include \
+ 		  -I$(TEMPLATESRC)/include
+ 
  CFLAGS = @CFLAGS@ -O -DSTRUCTURED_QUERIES=1 -DISO_CHAR_SET $(DEBUG_TOP)
! ALL_CFLAGS    = $(CFLAGS) $(DEFS) $(INCLUDE)
  LINKFLAGS	= @LINKFLAGS@ -I$(INDEXSRC) -I$(AGREPSRC) -I$(TEMPLATESRC)/include
  
  .c.o:
Index: harvest/components/broker/swish/Makefile.in
diff -c harvest/components/broker/swish/Makefile.in:1.1 harvest/components/broker/swish/Makefile.in:1.2
*** harvest/components/broker/swish/Makefile.in:1.1	Mon Oct 27 16:13:47 1997
--- harvest/components/broker/swish/Makefile.in	Tue Nov  4 13:14:43 1997
***************
*** 20,27 ****
  TEMPLATEDIR = ../../../src/common
  TEMPLATESRC = $(srcdir)/$(TEMPLATEDIR)
  
! CFLAGS = @CFLAGS@ -I$(TEMPLATESRC)/include
! LDFLAGS = @LDFLAGS@ -L$(TEMPLATESRC)/lib
  
  OBJS=	check.o file.o index.o search.o error.o \
  	hash.o list.o mem.o string.o merge.o swish.o
--- 20,27 ----
  TEMPLATEDIR = ../../../src/common
  TEMPLATESRC = $(srcdir)/$(TEMPLATEDIR)
  
! CFLAGS = @CFLAGS@ -I$(TEMPLATEDIR)/include -I$(TEMPLATESRC)/include
! LDFLAGS = @LDFLAGS@ -L$(TEMPLATEDIR)/lib
  
  OBJS=	check.o file.o index.o search.o error.o \
  	hash.o list.o mem.o string.o merge.o swish.o
Index: harvest/components/broker/swish/check.c
diff -c harvest/components/broker/swish/check.c:1.2 harvest/components/broker/swish/check.c:1.3
*** harvest/components/broker/swish/check.c:1.2	Mon Oct 27 16:13:48 1997
--- harvest/components/broker/swish/check.c	Fri Oct 31 11:28:09 1997
***************
*** 11,16 ****
--- 11,17 ----
  
  #include "swish.h"
  #include "check.h"
+ #include "hash.h"
  
  /* Should a word be indexed? Consults the stopword hash list
  ** and checks if the word is of a reasonable length...
***************
*** 18,95 ****
  ** please let me know...
  */
  
! int isokword(word)
!       char *word;
  {
          int i, same, hasnumber, hasvowel, hascons,
  		numberrow, vowelrow, consrow;
  	char lastchar;
  
! 	if (word[0] == '\0')
! 		return 0;
  
!         if (isstopword(word))
!                 return 0;
          if (strlen(word) < MINWORDLIMIT || strlen(word) > MAXWORDLIMIT)
                  return 0;
  
- 	lastchar = ':';
- 	same = 0;
- 	hasnumber = hasvowel = hascons = 0;
- 	numberrow = vowelrow = consrow = 0;
- 	for (i = 0; word[i] != '\0'; i++) {
- 		if (word[i] == lastchar) {
- 			same++;
- 			if (same > IGNORESAME)
- 				return 0;
- 		}
- 		else
- 			same = 0;
- 		if (isdigit(word[i])) {
- 			hasnumber = 1;
- 			numberrow++;
- 			if (numberrow > IGNOREROWN)
- 				return 0;
- 			vowelrow = 0;
- 			consrow = 0;
- 		}
- 		else if (isvowel(word[i])) {
- 			hasvowel = 1;
- 			vowelrow++;
- 			if (vowelrow > IGNOREROWV)
- 				return 0;
- 			numberrow = 0;
- 			consrow = 0;
- 		}
- 		else if (!ispunct(word[i])) {
- 			hascons = 1;
- 			consrow++;
- 			if (consrow > IGNOREROWC)
- 				return 0;
- 			numberrow = 0;
- 			vowelrow = 0;
- 		}
- 		lastchar = word[i];
- 	}
- 
- 	if (IGNOREALLV)
- 		if (hasvowel && !hascons)
- 			return 0;
- 	if (IGNOREALLC)
- 		if (hascons && !hasvowel)
- 			return 0;
- 	if (IGNOREALLN)
- 		if (hasnumber && !hasvowel && !hascons)
- 			return 0;
- 
  	return 1;
  }
  
  /* Does a word have valid characters?
  */
  
! int hasokchars(word)
!      char *word;
  {
  	int i, j;
  	char c;
--- 19,43 ----
  ** please let me know...
  */
  
! int isokword(char *word)
  {
          int i, same, hasnumber, hasvowel, hascons,
  		numberrow, vowelrow, consrow;
  	char lastchar;
  
! 	if (word[0] == '\0') return 0;
  
!         if (isstopword(word)) return 0;
          if (strlen(word) < MINWORDLIMIT || strlen(word) > MAXWORDLIMIT)
                  return 0;
  
  	return 1;
  }
  
  /* Does a word have valid characters?
  */
  
! int hasokchars(char *word)
  {
  	int i, j;
  	char c;
***************
*** 115,122 ****
  /* Is a letter a vowel?
  */
  
! int isvowel(c)
!      char c;
  {
  	if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')
  		return 1;
--- 63,69 ----
  /* Is a letter a vowel?
  */
  
! int isvowel(char c)
  {
  	if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u')
  		return 1;
Index: harvest/components/broker/swish/check.h
diff -c harvest/components/broker/swish/check.h:1.2 harvest/components/broker/swish/check.h:1.3
*** harvest/components/broker/swish/check.h:1.2	Mon Oct 27 16:13:49 1997
--- harvest/components/broker/swish/check.h	Fri Oct 31 11:28:11 1997
***************
*** 9,15 ****
  ** Heavily modified for Harvest
  */
  
! int isokword();
! int isvowel();
! int hasokchars();
  
--- 9,15 ----
  ** Heavily modified for Harvest
  */
  
! int isokword(char *);
! int isvowel(char);
! int hasokchars(char *);
  
Index: harvest/components/broker/swish/file.c
diff -c harvest/components/broker/swish/file.c:1.2 harvest/components/broker/swish/file.c:1.3
*** harvest/components/broker/swish/file.c:1.2	Mon Oct 27 16:13:53 1997
--- harvest/components/broker/swish/file.c	Fri Oct 31 11:28:12 1997
***************
*** 11,16 ****
--- 11,18 ----
  
  #include "swish.h"
  #include "file.h"
+ #include "mem.h"
+ #include "string.h"
  
  /* Is a file a directory?
  */
***************
*** 85,350 ****
      metaEntryList = newEntry;
  
    return metaEntryList;
- }
- 
- /* Reads the configuration file and puts all the right options
- ** in the right variables and structures.
- */
- 
- void getdefaults(conffile, hasdir, hasindex, plimit, flimit, hasverbose)
-      char *conffile;
-      int *hasdir;
-      int *hasindex;
-      int *plimit;
-      int *flimit;
-      int hasverbose;
- {
-         int skiplen, gotdir, gotindex;
-         char *c, line[MAXSTRLEN], value[MAXSTRLEN];
-         FILE *fp;
- 
- 	gotdir = gotindex = 0;
- 
-         if ((fp = fopen(conffile, "r")) == NULL  ||
-              !isfile(conffile) ) {
- 		sprintf(errorstr,
- 		"Couldn't open the configuration file \"%s\".", conffile);
-                 progerr(errorstr);
- 	}
-         while (fgets(line, MAXSTRLEN, fp) != NULL) {
-                 if (line[0] == '#' || line[0] == '\n')
-                         continue;
-                 if (c = (char *) lstrstr(line, "IndexDir")) {
-                         c += strlen("IndexDir");
-                         while (!*hasdir) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
-                                         dirlist = (struct swline *)
-                                         addswline(dirlist, value);
- 					gotdir = 1;
-                                 }
-                         }
-                 }
-                 else if (c = (char *) lstrstr(line, "IndexFile")) {
-                         c += strlen("IndexFile");
-                         while (!*hasindex) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
-                                         indexlist = (struct swline *)
-                                         addswline(indexlist, value);
- 					gotindex = 1;
-                                 }
-                         }
-                 }
- /* IndexVerbose is supported for backwards compatibility */
- 		else if (c = (char *) lstrstr(line, "IndexVerbose")) {
-                         c += strlen("IndexVerbose");
-                         strcpy(value, (char *) getword(c, &skiplen));
- 			verbose = (lstrstr(value, "yes")) ? 3 : 0;
- 		}
- 		else if (c = (char *) lstrstr(line, "IndexReport")) {
-                         c += strlen("IndexReport");
-                         strcpy(value, (char *) getword(c, &skiplen));
-                         if (!skiplen | value[0] == '\0' || value[0] == '\n')
-                                 continue;
-                         else {
-                                 c += skiplen;
- 				if (!hasverbose)
- 					verbose = atoi(value);
-                         }
- 		}
-                 else if (c = (char *) lstrstr(line, "IndexOnly")) {
-                         c += strlen("IndexOnly");
-                         while (1) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
-                                         suffixlist = (struct swline *)
-                                         addswline(suffixlist, value);
-                                 }
-                         }
-                 }
-                 else if (c = (char *) lstrstr(line, "NoContents")) {
-                         c += strlen("NoContents");
-                         while (1) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
-                                         nocontentslist = (struct swline *)
-                                         addswline(nocontentslist, value);
-                                 }
-                         }
-                 }
-                 else if (c = (char *) lstrstr(line, "MetaNames")) {
-                         c += strlen("MetaNames");
-                         while (1) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
-                                         metaEntryList = (struct metaEntry *)
-                                         addMetaEntry(metaEntryList, value);
- 				      }
- 			      }
- 		      }
-                 else if ((c = (char *) lstrstr(line, "pathname contains")) &&
- 		(char *) lstrstr(line, "FileRules")) {
-                         c += strlen("pathname contains");
-                         while (1) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
-                                         pathconlist = (struct swline *)
-                                         addswline(pathconlist, value);
-                                 }
-                         }
-                 }
-                 else if ((c = (char *) lstrstr(line, "directory contains")) &&
- 		(char *) lstrstr(line, "FileRules")) {
-                         c += strlen("directory contains");
-                         while (1) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
-                                         dirconlist = (struct swline *)
-                                         addswline(dirconlist, value);
-                                 }
-                         }
-                 }
-                 else if ((c = (char *) lstrstr(line, "filename contains")) &&
- 		(char *) lstrstr(line, "FileRules")) {
-                         c += strlen("filename contains");
-                         while (1) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
-                                         fileconlist = (struct swline *)
-                                         addswline(fileconlist, value);
-                                 }
-                         }
-                 }
-                 else if ((c = (char *) lstrstr(line, "title contains")) &&
- 		(char *) lstrstr(line, "FileRules")) {
-                         c += strlen("title contains");
-                         while (1) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
-                                         titconlist = (struct swline *)
-                                         addswline(titconlist, value);
-                                 }
-                         }
-                 }
-                 else if ((c = (char *) lstrstr(line, "filename is")) &&
- 		(char *) lstrstr(line, "FileRules")) {
-                         c += strlen("filename is");
-                         while (1) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
-                                         fileislist = (struct swline *)
-                                         addswline(fileislist, value);
-                                 }
-                         }
-                 }
-                 else if (c = (char *) lstrstr(line, "IgnoreWords")) {
-                         c += strlen("IgnoreWords");
-                         while (1) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
- 					if (lstrstr(value, "SwishDefault"))
- 						readdefaultstopwords();
- 					else
- 						addstophash(value);
-                                 }
-                         }
-                 }
-                 else if ((c = (char *) lstrstr(line, "IgnoreLimit"))) {
-                         c += strlen("IgnoreLimit");
-                         strcpy(value, (char *) getword(c, &skiplen));
-                         if (!skiplen | value[0] == '\0' || value[0] == '\n')
-                                 continue;
-                         else {
-                                 c += skiplen;
- 				*plimit = atoi(value);
-                         }
-                         strcpy(value, (char *) getword(c, &skiplen));
-                         if (!skiplen | value[0] == '\0' || value[0] == '\n')
-                                 continue;
-                         else {
-                                 c += skiplen;
- 				*flimit = atoi(value);
-                         }
-                 }
-                 else if (c = (char *) lstrstr(line, "ReplaceRules")) {
-                         c += strlen("ReplaceRules");
-                         while (1) {
-                                 strcpy(value, (char *) getword(c, &skiplen));
-                                 if (!skiplen | value[0] == '\0' ||
-                                 value[0] == '\n')
-                                         break;
-                                 else {
-                                         c += skiplen;
-                                         replacelist = (struct swline *)
-                                         addswline(replacelist, value);
-                                 }
-                         }
-                 }
-                 else if ((char *) getconfvalue(line, "FollowSymLinks",
- 		value) != NULL)
-                         followsymlinks = (lstrstr(value, "yes")) ? 1 : 0;
-                 else if ((char *) getconfvalue(line, "IndexName",
- 		value) != NULL)
-                         strcpy(indexn, value);
-                 else if ((char *) getconfvalue(line, "IndexDescription",
- 		value) != NULL)
-                         strcpy(indexd, value);
-                 else if ((char *) getconfvalue(line, "IndexPointer",
- 		value) != NULL)
-                         strcpy(indexp, value);
-                 else if ((char *) getconfvalue(line, "IndexAdmin",
- 		value) != NULL)
-                         strcpy(indexa, value);
-         }
-         fclose(fp);
- 
- 	if (gotdir && !(*hasdir))
- 		*hasdir = 1;
- 	if (gotindex && !(*hasindex))
- 		*hasindex = 1;
  }
--- 87,90 ----
Index: harvest/components/broker/swish/hash.c
diff -c harvest/components/broker/swish/hash.c:1.1 harvest/components/broker/swish/hash.c:1.2
*** harvest/components/broker/swish/hash.c:1.1	Sun Oct 12 16:32:58 1997
--- harvest/components/broker/swish/hash.c	Fri Oct 31 11:28:13 1997
***************
*** 10,15 ****
--- 10,17 ----
  
  #include "swish.h"
  #include "hash.h"
+ #include "string.h"
+ #include "mem.h"
  
  /* Hashes a string.
  */
***************
*** 199,208 ****
  ** else make a new entry.
  */
  
! void mergeresulthashlist(filenum, rank, structure)
       int filenum;
       int rank;
-      int structure;
  {
          unsigned hashval;
          struct result *rp, *newrp;
--- 201,209 ----
  ** else make a new entry.
  */
  
! void mergeresulthashlist(filenum, rank)
       int filenum;
       int rank;
  {
          unsigned hashval;
          struct result *rp, *newrp;
***************
*** 215,221 ****
  	while (rp != NULL) {
  		if (rp->filenum == filenum) {
  			rp->rank += rank;
- 			rp->structure |= structure;
  			return;
  		}
  		rp = rp->next;
--- 216,221 ----
***************
*** 224,230 ****
          newrp = (struct result *) emalloc(sizeof(struct result));
          newrp->filenum = filenum;
          newrp->rank = rank;
- 	newrp->structure = structure;
          newrp->next = resulthashlist[hashval];
          resulthashlist[hashval] = newrp;
  }
--- 224,229 ----
Index: harvest/components/broker/swish/index.c
diff -c harvest/components/broker/swish/index.c:1.2 harvest/components/broker/swish/index.c:1.3
*** harvest/components/broker/swish/index.c:1.2	Mon Oct 27 16:13:55 1997
--- harvest/components/broker/swish/index.c	Fri Oct 31 11:28:14 1997
***************
*** 14,68 ****
  #include "hash.h"
  #include "util.h"
  #include "template.h"
! 
  
  /* Recursively goes into a directory and calls the word-indexing
  ** functions for each file that's found.
  */
  
! void indexadir(dir)
!      char *dir;
  {
!         DIR *dfd;
  #ifdef NEXTSTEP
!         struct direct *dp;
  #else
!         struct dirent *dp;
  #endif
! 	static char s[MAXFILELEN], title[MAXSTRLEN];
!         struct sortentry *sortfilelist, *sortdirlist;
! 
!         sortfilelist = sortdirlist = NULL;
! 
!         if (dir[strlen(dir) - 1] == '/')
!                 dir[strlen(dir) - 1] = '\0';
! 
!         if ((dfd = opendir(dir)) == NULL)
!                 return;
! 
!         while ((dp = readdir(dfd)) != NULL) {
! 
!                 if ((dp->d_name)[0] == '.')
!                         continue;
! 
!                 sprintf(s, "%s%s%s", dir, dir[strlen(dir) - 1] == '/' ?
!                 "" : "/", dp->d_name);
! 
!                 if (!isdirectory(s)) {
! 			title[0]='\0';
!                         sortfilelist = (struct sortentry *)
!                         addsortentry(sortfilelist, s, title);
!                 }
!                 else {
!                         sortdirlist = (struct sortentry *)
!                         addsortentry(sortdirlist, s, s);
!                 }
!         }
  
!         closedir(dfd);
  
-         printfiles(sortfilelist);
-         printdirs(sortdirlist);
  }
  
  /* Calls the word-indexing function for a single file.
--- 14,82 ----
  #include "hash.h"
  #include "util.h"
  #include "template.h"
! #include "file.h"
! #include "string.h"
! #include "mem.h"
! #include "error.h"
! #include "check.h"
! #include "search.h"
  
  /* Recursively goes into a directory and calls the word-indexing
  ** functions for each file that's found.
  */
  
! void indexadir(char *dir)
  {
!   DIR *dfd;
  #ifdef NEXTSTEP
!   struct direct *dp;
  #else
!   struct dirent *dp;
  #endif
!   static char s[MAXFILELEN];
!   struct fileentry *list=NULL;
!   struct fileentry *current=NULL,*tmp;
!   
!   if (dir[strlen(dir) - 1] == '/')
!     dir[strlen(dir) - 1] = '\0';
!   
!   if ((dfd = opendir(dir)) == NULL)
!     return;
!   
!   while ((dp = readdir(dfd)) != NULL) {
!     
!     if ((dp->d_name)[0] == '.')
!       continue;
!     
!     sprintf(s, "%s%s%s", dir, dir[strlen(dir) - 1] == '/' ?
! 	    "" : "/", dp->d_name);
!     
!     if (!isdirectory(s)) {
!       countwords(s);
!     }
!     else {
!       tmp=emalloc(sizeof(struct fileentry));
!       tmp->filename= (char *)strdup(s);
!       tmp->next=NULL;
!       if (current==NULL)
! 	list=tmp;
!       else
! 	current->next=tmp;
!       current=tmp;
!     }
!   }
  
!   closedir(dfd);
!   
!   while (list!=NULL) {
!     printf("Doing %s\n",list->filename);
!     indexadir(list->filename);
!     free(list->filename);
!     current=list;
!     list=list->next;
!     free(current);
!   }
  
  }
  
  /* Calls the word-indexing function for a single file.
***************
*** 71,186 ****
  void indexafile(path)
       char *path;
  {
!         char title[MAXSTRLEN];
!         struct sortentry *fileentry;
! 
!         if (path[strlen(path) - 1] == '/')
!                 path[strlen(path) - 1] = '\0';
! 
! 	title[0]='\0';
! 
!         fileentry = (struct sortentry *) emalloc(sizeof(struct sortentry));
!         fileentry->filename = (char *) mystrdup(path);
!         fileentry->title = (char *) mystrdup(title);
!         fileentry->left = fileentry->right = NULL;
! 
!         printfiles(fileentry);
! }
! 
! /* Indexes the words in the tree of files in alphabetical order.
! */
! 
! void printfiles(e)
!      struct sortentry *e;
! {
!         int wordcount;
! 	char *s;
! 
!         if (e != NULL) {
!                 printfiles(e->left);
!                 if (verbose == 3) {
! 			if ((s = (char *) strrchr(e->filename, '/')) == NULL)
!                         	printf("  %s", e->filename);
! 			else
!                         	printf("  %s", s + 1);
! 		}
!                 wordcount = countwords(e->filename, e->title);
!                 if (verbose == 3) {
!                         if (wordcount)
!                                 printf(" (%d words)\n", wordcount);
!                         else
!                                 printf(" (no words)\n");
!                         fflush(stdout);
!                 }
! 		free(e->filename);
! 		free(e->title);
!                 printfiles(e->right);
! 		free(e);
!         }
  }
  
- /* Prints out the directory names as things are getting indexed.
- ** Calls indexadir() so directories in the tree are indexed,
- ** in alphabetical order...
- */
- 
- void printdirs(e)
-      struct sortentry *e;
- {
-         if (e != NULL) {
-                 printdirs(e->left);
-                 if (verbose == 3)
-                         printf("\nIn dir \"%s\":\n", e->filename);
-                 else if (verbose == 2)
-                         printf("Checking dir \"%s\"...\n", e->filename);
-                 indexadir(e->filename);
- 		free(e->filename);
- 		free(e->title);
-                 printdirs(e->right);
- 		free(e);
-         }
- }
- 
- /* Stores file names in alphabetical order so they can be
- ** indexed alphabetically. No big whoop.
- */
- 
- struct sortentry *addsortentry(e, filename, title)
-      struct sortentry *e;
-      char *filename;
-      char *title;
- {
-         if (e == NULL) {
-                 e = (struct sortentry *) emalloc(sizeof(struct sortentry));
-                 e->filename = (char *) mystrdup(filename);
-                 e->title = (char *) mystrdup(title);
-                 e->left = e->right = NULL;
-         }
-         else {
-                 if (strcmp(e->filename, filename) > 0)
-                         e->left = (struct sortentry *)
-                         addsortentry(e->left, filename, title);
-                 else
-                         e->right = (struct sortentry *)
-                         addsortentry(e->right, filename, title);
-         }
- 
-         return e;
- }
  
  /* Adds a word to the master index tree.
  */
  
! struct entry *addentry(e, word, filenum, emphasized, structure, metaName)
       struct entry *e;
       char *word;
       int filenum;
!      int emphasized;
!      int structure;
!      int metaName;
  {
    int isbigger;
!   struct location *tp, *oldtp;
    
    if (e == NULL) {
      e = (struct entry *) emalloc(sizeof(struct entry));
--- 85,105 ----
  void indexafile(path)
       char *path;
  {
! 	countwords(path);
  }
  
  
  /* Adds a word to the master index tree.
  */
  
! struct entry *addentry(e, word, filenum, attribute)
       struct entry *e;
       char *word;
       int filenum;
!      int attribute;
  {
    int isbigger;
!   struct location *tp, *oldtp=NULL;
    
    if (e == NULL) {
      e = (struct entry *) emalloc(sizeof(struct entry));
***************
*** 190,256 ****
        emalloc(sizeof(struct location));
      e->locationlist->filenum = filenum;
      e->locationlist->frequency = 1;
!     e->locationlist->emphasized = emphasized;
!     e->locationlist->structure = structure;
!     e->locationlist->metaName = metaName;
      e->locationlist->next = NULL;
      e->left = e->right = NULL;
      totalwords++;
    }
    else {
!     isbigger = wordcompare(e->word, word);
!     if (isbigger == 0) {
!       tp = e->locationlist;
!       while (tp != NULL) {
! 	if (tp->filenum == filenum && tp->metaName == metaName) 
! 	  break;
! 	oldtp = tp;
! 	tp = tp->next;
!       }
!       if (tp == NULL) {
! 	tp = (struct location *) emalloc(sizeof(struct
! 						location));
! 	tp->filenum = filenum;
! 	tp->frequency = 1;
! 	tp->emphasized = emphasized;
! 	tp->structure = structure;
! 	tp->metaName = metaName;
! 	tp->next = NULL;
! 	oldtp->next = tp;
! 	if (!emphasized)
! 	  e->tfrequency = e->tfrequency + 1;
!       }
!       else {
! 	if ( (tp->filenum == filenum) 
! 	    && (tp->metaName == metaName) ) {
! 	  tp->frequency = tp->frequency + 1;
! 	  if (emphasized)
! 	    tp->emphasized =
! 	      tp->emphasized + 1;
! 	  tp->structure |= structure;
! 	}
!       }
      }
-     else if (isbigger > 0)
-       e->left = (struct entry *)
- 	addentry(e->left, word, filenum, emphasized,
- 		 structure, metaName);
-     else
-       e->right = (struct entry *)
- 	addentry(e->right, word, filenum, emphasized,
- 		 structure, metaName);
    }
-   
    return e;
  }
  
  /* Adds a file to the master list of files and file numbers.
  */
  
! struct file *addtofilelist(filep, filename, title, size)
       struct file *filep;
       char *filename;
-      char *title;
       int size;
  {
          struct file *newnode;
--- 109,166 ----
        emalloc(sizeof(struct location));
      e->locationlist->filenum = filenum;
      e->locationlist->frequency = 1;
!     e->locationlist->attribute = attribute;
      e->locationlist->next = NULL;
      e->left = e->right = NULL;
      totalwords++;
+ 
+     return(e);
+ 
    }
    else {
! 
!     isbigger = strcmp(e->word, word);
!     
!     if (isbigger > 0) {
!       e->left = addentry(e->left, word, filenum, attribute);
!       return(e);
!     }
!     
!     if (isbigger < 0) {
!       e->right = addentry(e->right, word, filenum, attribute);
!       return(e);
!     }
!     
!     /* Don't need this - it must be true ---- if (isbigger == 0) */
! 
!     tp = e->locationlist;
!     while (tp != NULL && !(tp->filenum == filenum && 
!                            tp->attribute == attribute)) {
!       oldtp = tp;
!       tp = tp->next;
!     }
!     if (tp == NULL) {	
!       tp = (struct location *) emalloc(sizeof(struct location));
!       tp->filenum = filenum;
!       tp->frequency = 1;
!       tp->attribute = attribute;
!       tp->next = NULL;
!       oldtp->next = tp;
!       e->tfrequency = e->tfrequency + 1;
!     }
!     else {
! 	tp->frequency = tp->frequency + 1;
      }
    }
    return e;
  }
  
  /* Adds a file to the master list of files and file numbers.
  */
  
! struct file *addtofilelist(filep, filename, size)
       struct file *filep;
       char *filename;
       int size;
  {
          struct file *newnode;
***************
*** 258,264 ****
  
          newnode = (struct file *) emalloc(sizeof(struct file));
          newnode->filename = (char *) mystrdup(filename);
-         newnode->title = (char *) mystrdup(title);
          newnode->size = size;
          newnode->next = NULL;
  
--- 168,173 ----
***************
*** 307,315 ****
  ** to the appropriate structures.
  */
  
! int countwords(filename, title)
       char *filename;
-      char *title;
  {
  	int ftotalwords;
  	Template *template;
--- 216,223 ----
  ** to the appropriate structures.
  */
  
! int countwords(filename)
       char *filename;
  {
  	int ftotalwords;
  	Template *template;
***************
*** 322,328 ****
  
          ftotalwords = 0;
  
!         filelist = addtofilelist(filelist, filename, title, getsize(filename));
          filenum++;
          if (!(filenum % 128))
                  filenum++;
--- 230,236 ----
  
          ftotalwords = 0;
  
!         filelist = addtofilelist(filelist, filename, getsize(filename));
          filenum++;
          if (!(filenum % 128))
                  filenum++;
***************
*** 332,343 ****
  	if (template==NULL) 
  	   progerr("Badly formed SOIF file found");
  	else {
! 	   ftotalwords+=add_attrval(filenum,"url",template->url,sizeof(template->url));
  	   
  	   for (walker = template->list; walker ; walker=walker->next) {
  	      if (walker->data->vsize == 0) continue;
!               ftotalwords+=add_attrval(filenum,walker->data->attribute,walker->data->value,
! 			   walker->data->vsize);
             }
          }
          free_template(template);
--- 240,254 ----
  	if (template==NULL) 
  	   progerr("Badly formed SOIF file found");
  	else {
! 	   ftotalwords+=add_attrval(filenum,"url",template->url,
! 				    sizeof(template->url));
  	   
  	   for (walker = template->list; walker ; walker=walker->next) {
  	      if (walker->data->vsize == 0) continue;
! 	      if (!strcmp(walker->data->attribute,"md5")) continue;
!               ftotalwords+=add_attrval(filenum,walker->data->attribute,
! 				       walker->data->value,
! 			               walker->data->vsize);
             }
          }
          free_template(template);
***************
*** 348,399 ****
  }
  
  int add_attrval(int filenum, char *attr, char *val, size_t valsize) {
!         int c, i, inword, ftotalwords, emphasized, structure;
! 	int metaName;
!         char word[MAXWORDLEN];
! 	int ptr;
! 
! 	ftotalwords=0;
! 	i = 0;
!         inword = 0;
!         emphasized = 0;
! 	structure = 1;
! 	metaName = 1;
! 	ptr = 0;
! 
!         while (ptr <valsize) {
! 	  c=val[ptr]; ptr++;
! 
!           if (!inword) {
!              if (iswordchar(c)) {
!                 i = 0;
!                 word[i++] = c;
! 		if (i == MAXWORDLEN) i--;
!                 inword = 1;
!              }
!           }
!           else {
!              if (!iswordchar(c)) {
!                 word[i++] = '\0';
! 		if (i == MAXWORDLEN) word[--i] = '\0';
!                 for (i = 0; word[i]; i++)
!                    word[i] = tolower(word[i]);
! 		i = 0;
!                 if (hasokchars(word) && isokword(word)) {
!                    entrylist = (struct entry *) addentry(entrylist, word,
!                                                          filenum, emphasized, 
!                                                          structure, metaName);
!                    ftotalwords++;
!                 }
!                 inword = 0;
!              }
!              else {
!                 word[i++] = c;
! 	        if (i == MAXWORDLEN) i--;
! 	     }
! 	  }
  	}
! 	return(ftotalwords);
  }
  
  /* Removes words that occur in over _plimit_ percent of the files and
--- 259,309 ----
  }
  
  int add_attrval(int filenum, char *attr, char *val, size_t valsize) {
!   int c, i, inword, ftotalwords, validchar;
!   int attribute;
!   char word[MAXWORDLEN];
!   int ptr;
!   
!   ftotalwords=0;
!   i = 0;
!   inword = 0;
!   attribute = 1;
!   ptr = 0;
!   validchar = 0;
!   
!   while (ptr < valsize) {
!     c=val[ptr]; ptr++;
!     validchar = isalpha(c);
!     
! 
!     if (!inword) {
!       if (validchar) {
! 	word[0] = tolower(c);
! 	i = 1;
! 	inword = 1;
!       }
!     }
!     else {
!       if (!validchar || ptr==valsize ) {
! 	if (validchar) {
! 	  word[i++] = tolower(c);
! 	  if (i == MAXWORDLEN) i--;
  	}
! 	word[i++] = '\0';
! 	if (i>MINWORDLIMIT && !isstopword(word)) {
! 	  entrylist = (struct entry *) addentry(entrylist, word,
! 						filenum, attribute);
! 	  ftotalwords++;
! 	}
! 	inword = 0;
!       }
!       else {
! 	word[i++] = tolower(c);
! 	if (i == MAXWORDLEN) i--;
!       }
!     }
!   }
!   return(ftotalwords);
  }
  
  /* Removes words that occur in over _plimit_ percent of the files and
***************
*** 523,532 ****
  			while (lp != NULL) {
  				compress(lp->filenum, fp);
  				rank = getrank(lp->frequency, ep->tfrequency,
! 				gettotalwords(lp->filenum), lp->emphasized);
  				compress(rank, fp);
! 				compress(lp->structure, fp);
! 				compress(lp->metaName, fp);
  				lp = lp->next;
                  	}
                  	fputc(0, fp);
--- 433,441 ----
  			while (lp != NULL) {
  				compress(lp->filenum, fp);
  				rank = getrank(lp->frequency, ep->tfrequency,
! 				gettotalwords(lp->filenum), 0);
  				compress(rank, fp);
! 				compress(lp->attribute, fp);
  				lp = lp->next;
                  	}
                  	fputc(0, fp);
***************
*** 569,576 ****
  	offsets[FILELISTPOS] = ftell(fp);
          while (filep != NULL) {
  		addtofilehashlist(i++, ftell(fp));
!                 fprintf(fp, "%s \"%s\" %d\n", ruleparse(filep->filename),
!                 filep->title, filep->size);
                  filep = filep->next;
          }
  }
--- 478,485 ----
  	offsets[FILELISTPOS] = ftell(fp);
          while (filep != NULL) {
  		addtofilehashlist(i++, ftell(fp));
!                 fprintf(fp, "%s %d\n", ruleparse(filep->filename), 
! 			filep->size);
                  filep = filep->next;
          }
  }
Index: harvest/components/broker/swish/index.h
diff -c harvest/components/broker/swish/index.h:1.1 harvest/components/broker/swish/index.h:1.2
*** harvest/components/broker/swish/index.h:1.1	Sun Oct 12 16:33:01 1997
--- harvest/components/broker/swish/index.h	Fri Oct 31 11:28:15 1997
***************
*** 4,11 ****
--- 4,15 ----
  ** Kevin Hughes, kevinh@eit.com 
  ** 3/11/94
  **
+ ** Released under the GPL by EIT
+ **
+ ** Modified for Harvest
  */
  
+ int add_attrval(int, char *, char *, size_t);
  int getMeta();
  int parseMetaData();
  void createMetaEntryList();
Index: harvest/components/broker/swish/list.c
diff -c harvest/components/broker/swish/list.c:1.1 harvest/components/broker/swish/list.c:1.2
*** harvest/components/broker/swish/list.c:1.1	Sun Oct 12 16:33:01 1997
--- harvest/components/broker/swish/list.c	Fri Oct 31 11:28:16 1997
***************
*** 5,10 ****
--- 5,12 ----
  
  #include "swish.h"
  #include "list.h"
+ #include "mem.h"
+ #include "string.h"
  
  struct swline *addswline(rp, line)
       struct swline *rp;
Index: harvest/components/broker/swish/mem.c
diff -c harvest/components/broker/swish/mem.c:1.1 harvest/components/broker/swish/mem.c:1.2
*** harvest/components/broker/swish/mem.c:1.1	Sun Oct 12 16:33:03 1997
--- harvest/components/broker/swish/mem.c	Fri Oct 31 11:28:16 1997
***************
*** 7,12 ****
--- 7,13 ----
  
  #include "swish.h"
  #include "mem.h"
+ #include "error.h"
  
  /* Error-checking malloc()...
  */
Index: harvest/components/broker/swish/mem.h
diff -c harvest/components/broker/swish/mem.h:1.1 harvest/components/broker/swish/mem.h:1.2
*** harvest/components/broker/swish/mem.h:1.1	Sun Oct 12 16:33:04 1997
--- harvest/components/broker/swish/mem.h	Fri Oct 31 11:28:17 1997
***************
*** 3,9 ****
  ** All Rights Reserved.
  ** Kevin Hughes, kevinh@eit.com 
  ** 3/11/94
  */
  
! void *emalloc();
! void *erealloc();
--- 3,13 ----
  ** All Rights Reserved.
  ** Kevin Hughes, kevinh@eit.com 
  ** 3/11/94
+ **
+ ** Release under the GPL by EIT
+ **
+ ** Modified for Harvest
  */
  
! void *emalloc(int);
! void *erealloc(void *,int);
Index: harvest/components/broker/swish/merge.c
diff -c harvest/components/broker/swish/merge.c:1.1 harvest/components/broker/swish/merge.c:1.2
*** harvest/components/broker/swish/merge.c:1.1	Sun Oct 12 16:33:05 1997
--- harvest/components/broker/swish/merge.c	Fri Oct 31 11:28:18 1997
***************
*** 4,20 ****
  ** Kevin Hughes, kevinh@eit.com 
  ** 3/11/94
  **
! ** Fixed the merge option -M
! ** G. Hill 3/7/97
  **
! ** Changed readindexline, mergeindexentries, printindexentry and
! ** added marknumMerge, addtoresultlistMerge, markentrylistMerge,
! ** ismarkedMerge to add support for METADATA
! ** G. Hill 3/26/97 ghill@library.berkeley.edu
  */
  
  #include "swish.h"
  #include "merge.h"
  
  /* The main merge functions - it accepts three file names.
  ** This is a bit hairy. It basically acts as a zipper,
--- 4,23 ----
  ** Kevin Hughes, kevinh@eit.com 
  ** 3/11/94
  **
! ** Released under the GPL by EIT
  **
! ** Heavily hacked for Harvest
  */
  
  #include "swish.h"
  #include "merge.h"
+ #include "error.h"
+ #include "file.h"
+ #include "search.h"
+ #include "string.h"
+ #include "index.h"
+ #include "hash.h"
+ #include "mem.h"
  
  /* The main merge functions - it accepts three file names.
  ** This is a bit hairy. It basically acts as a zipper,
***************
*** 29,35 ****
  	int i, j, indexfilenum1, indexfilenum2, result, totalfiles,
  		skipwords, skipfiles;
  	long limit1, limit2, fileinfo1, fileinfo2, offsetstart;
- 	long metainfo1, metainfo2;
  	char line[MAXSTRLEN];
  	struct indexentry *ip1, *ip2, *ip3;
  	struct indexentry *buffer1, *buffer2;
--- 32,37 ----
***************
*** 160,166 ****
  		else if (ip2 == NULL)
  		  result = -1;
  		else
! 		  result = wordcompare(ip1->word, ip2->word);
  		if (!result) {
  			ip3 = (struct indexentry *) mergeindexentries(ip1, ip2);
  			printindexentry(ip3, fp3);
--- 162,168 ----
  		else if (ip2 == NULL)
  		  result = -1;
  		else
! 		  result = strcmp(ip1->word, ip2->word);
  		if (!result) {
  			ip3 = (struct indexentry *) mergeindexentries(ip1, ip2);
  			printindexentry(ip3, fp3);
***************
*** 270,281 ****
  ** in a result structure.
  */
  
! struct indexentry *readindexline(fp, limit,metaFile)
!      FILE *fp;
!      long limit;
!      struct metaMergeEntry *metaFile;
  {
!         int i, c, x, countnum, rank, filenum, structure,metaName;
          char fileword[MAXWORDLEN];
          struct resultMerge *rp;
  	struct indexentry *ip;
--- 272,281 ----
  ** in a result structure.
  */
  
! struct indexentry *readindexline(FILE *fp, long limit, 
! 				 struct metaMergeEntry * metaFile)
  {
!         int i, c, x, countnum, rank=0, filenum=0, attribute;
          char fileword[MAXWORDLEN];
          struct resultMerge *rp;
  	struct indexentry *ip;
***************
*** 318,338 ****
                                  countnum++;
                          }
                          else if (countnum == 3) {
!                                 structure = x;
! 				countnum++;
!                         }
! 			else if (countnum ==4) {
! 			        metaName = x;
  				/*Need to modify metaName with new list*/
  				for(tmp=metaFile;tmp;tmp=tmp->next) {
! 				  if (tmp->oldIndex == metaName) {
! 				    metaName = tmp->newIndex;
  				    break;
  				  }
  				}
                                  rp = (struct resultMerge *)
                                  addtoresultlistMerge(rp, filenum,
! 				rank, structure,metaName);
  				countnum = 1;
                          }
                  }
--- 318,334 ----
                                  countnum++;
                          }
                          else if (countnum == 3) {
! 			        attribute = x;
  				/*Need to modify metaName with new list*/
  				for(tmp=metaFile;tmp;tmp=tmp->next) {
! 				  if (tmp->oldIndex == attribute) {
! 				    attribute = tmp->newIndex;
  				    break;
  				  }
  				}
                                  rp = (struct resultMerge *)
                                  addtoresultlistMerge(rp, filenum,
! 				rank, attribute);
  				countnum = 1;
                          }
                  }
***************
*** 456,464 ****
  ** to a word found in both index files.
  */
  
! struct indexentry *mergeindexentries(ip1, ip2)
!      struct indexentry *ip1;
!      struct indexentry *ip2;
  {
  	struct resultMerge *newrp, *rp1, *rp2;
  	struct indexentry *ep;
--- 452,459 ----
  ** to a word found in both index files.
  */
  
! struct indexentry *mergeindexentries(struct indexentry *ip1, 
! 				     struct indexentry *ip2)
  {
  	struct resultMerge *newrp, *rp1, *rp2;
  	struct indexentry *ep;
***************
*** 469,480 ****
  
  	while (rp1 != NULL) {
  		newrp = (struct resultMerge *) addtoresultlistMerge(newrp,
! 		rp1->filenum, rp1->rank, rp1->structure,rp1->metaName);
  		rp1 = rp1->next;
  	}
  	while (rp2 != NULL) {
  		newrp = (struct resultMerge *) addtoresultlistMerge(newrp,
! 		rp2->filenum, rp2->rank, rp2->structure,rp2->metaName);
  		rp2 = rp2->next;
  	}
  
--- 464,475 ----
  
  	while (rp1 != NULL) {
  		newrp = (struct resultMerge *) addtoresultlistMerge(newrp,
! 		rp1->filenum, rp1->rank, rp1->attribute);
  		rp1 = rp1->next;
  	}
  	while (rp2 != NULL) {
  		newrp = (struct resultMerge *) addtoresultlistMerge(newrp,
! 		rp2->filenum, rp2->rank, rp2->attribute);
  		rp2 = rp2->next;
  	}
  
***************
*** 493,499 ****
       struct indexentry *ip;
       FILE *fp;
  {
! 	int i, num, metaName;
  	struct resultMerge *rp;
  
  	for (i = 0; indexchars[i] != '\0'; i++)
--- 488,494 ----
       struct indexentry *ip;
       FILE *fp;
  {
! 	int i, num, attribute;
  	struct resultMerge *rp;
  
  	for (i = 0; indexchars[i] != '\0'; i++)
***************
*** 504,516 ****
  	rp = ip->result;
  	while (rp != NULL) {
  		num = rp->filenum;
! 		metaName = rp->metaName;
! 		if (!ismarkedMerge(num,metaName)) {
! 			marknumMerge(num,metaName);
  			compress(num, fp);
  			compress(rp->rank, fp);
! 			compress(rp->structure, fp);
! 			compress(rp->metaName,fp);
  		}
  		rp = rp->next;
  	}
--- 499,510 ----
  	rp = ip->result;
  	while (rp != NULL) {
  		num = rp->filenum;
! 		attribute = rp->attribute;
! 		if (!ismarkedMerge(num,attribute)) {
! 			marknumMerge(num,attribute);
  			compress(num, fp);
  			compress(rp->rank, fp);
! 			compress(rp->attribute,fp);
  		}
  		rp = rp->next;
  	}
***************
*** 582,590 ****
  }
  
  /* Same thing but for merge only */
! void marknumMerge(num, metaName)
       int num;
!      int metaName;
  {
          unsigned hashval;
          char tmpstr[MAXSTRLEN];
--- 576,584 ----
  }
  
  /* Same thing but for merge only */
! void marknumMerge(num, attribute)
       int num;
!      int attribute;
  {
          unsigned hashval;
          char tmpstr[MAXSTRLEN];
***************
*** 592,598 ****
   
          mp = (struct markentryMerge *) emalloc(sizeof(struct markentryMerge));
          mp->num = num;
! 	mp->metaName = metaName;
   
          sprintf(tmpstr, "%d", num);
          hashval = bighash(tmpstr);
--- 586,592 ----
   
          mp = (struct markentryMerge *) emalloc(sizeof(struct markentryMerge));
          mp->num = num;
! 	mp->attribute = attribute;
   
          sprintf(tmpstr, "%d", num);
          hashval = bighash(tmpstr);
***************
*** 623,631 ****
  }
  
  
! int ismarkedMerge(num,metaName)
!      int num;
!      int metaName;
  {
          unsigned hashval;
          char tmpstr[MAXSTRLEN];
--- 617,623 ----
  }
  
  
! int ismarkedMerge(int num,int attribute)
  {
          unsigned hashval;
          char tmpstr[MAXSTRLEN];
***************
*** 636,642 ****
          mp = markentrylistMerge[hashval];
   
          while (mp != NULL) {
!                 if ( (mp->num == num) && (mp->metaName == metaName) )
                          return 1;
                  mp = mp->next;
  	      }
--- 628,634 ----
          mp = markentrylistMerge[hashval];
   
          while (mp != NULL) {
!                 if ( (mp->num == num) && (mp->attribute == attribute) )
                          return 1;
                  mp = mp->next;
  	      }
***************
*** 762,774 ****
  /* Similar to addtoresultlist, but also adding the meta name
  */
  
! struct resultMerge *addtoresultlistMerge(rp, filenum, rank, 
! 					 structure, metaName)
!      struct resultMerge *rp;
!      int filenum;
!      int rank;
!      int structure;
!      int metaName;
  {
          struct resultMerge *newnode;
          static struct resultMerge *head;
--- 754,761 ----
  /* Similar to addtoresultlist, but also adding the meta name
  */
  
! struct resultMerge *addtoresultlistMerge(struct resultMerge *rp, 
! 					 int filenum, int rank,int attribute)
  {
          struct resultMerge *newnode;
          static struct resultMerge *head;
***************
*** 776,783 ****
          newnode = (struct resultMerge *) emalloc(sizeof(struct resultMerge));
          newnode->filenum = filenum;
          newnode->rank = rank;
!         newnode->structure = structure;
! 	newnode->metaName = metaName;
          newnode->next = NULL;
   
          if (rp == NULL)
--- 763,769 ----
          newnode = (struct resultMerge *) emalloc(sizeof(struct resultMerge));
          newnode->filenum = filenum;
          newnode->rank = rank;
! 	newnode->attribute = attribute;
          newnode->next = NULL;
   
          if (rp == NULL)
Index: harvest/components/broker/swish/merge.h
diff -c harvest/components/broker/swish/merge.h:1.1 harvest/components/broker/swish/merge.h:1.2
*** harvest/components/broker/swish/merge.h:1.1	Sun Oct 12 16:33:05 1997
--- harvest/components/broker/swish/merge.h	Fri Oct 31 11:28:19 1997
***************
*** 17,24 ****
  struct resultMerge{
          int filenum;
  	int rank;
! 	int structure;
! 	int metaName;
  	struct resultMerge *next;
  };
  
--- 17,23 ----
  struct resultMerge{
          int filenum;
  	int rank;
! 	int attribute;
  	struct resultMerge *next;
  };
  
***************
*** 42,48 ****
  
  struct markentryMerge {
          int num;
! 	int metaName;
  	struct markentryMerge *next;
  };	
  
--- 41,47 ----
  
  struct markentryMerge {
          int num;
! 	int attribute;
  	struct markentryMerge *next;
  };	
  
Index: harvest/components/broker/swish/search.c
diff -c harvest/components/broker/swish/search.c:1.1 harvest/components/broker/swish/search.c:1.2
*** harvest/components/broker/swish/search.c:1.1	Sun Oct 12 16:33:06 1997
--- harvest/components/broker/swish/search.c	Fri Oct 31 11:28:20 1997
***************
*** 4,33 ****
  ** Kevin Hughes, kevinh@eit.com 
  ** 3/11/94
  **
! ** Changes in expandstar and parseterm to fix the wildcard * problem.
! ** G. Hill, ghill@library.berkeley.edu  3/11/97
  **
! ** Changes in notresultlist, parseterm, and fixnot to fix the NOT problem
! ** G. Hill, ghill@library.berkeley.edu 3/13/97
! **
! ** Changes in search, parseterm, fixnot, operate, getfileinfo
! ** to support METADATA
! ** G. Hill 3/18/97 ghill@library.berkeley.edu
  */
  
  #include "swish.h"
  #include "search.h"
  #include "file.h"
  
  /* The main search function.
  ** Parentheses are stripped out, things made lowercase,
  ** extra blanks removed, etc.
  */
  
! void search(words, indexlist, structure)
       char *words;
       struct swline *indexlist;
-      int structure;
  {
    int i, j, metaName;
    float num;
--- 4,31 ----
  ** Kevin Hughes, kevinh@eit.com 
  ** 3/11/94
  **
! ** Released under the GPL by EIT
  **
! ** Heavily hacked for Harvest
  */
  
  #include "swish.h"
  #include "search.h"
  #include "file.h"
+ #include "list.h"
+ #include "string.h"
+ #include "hash.h"
+ #include "merge.h"
+ #include "mem.h"
  
  /* The main search function.
  ** Parentheses are stripped out, things made lowercase,
  ** extra blanks removed, etc.
  */
  
! void search(words, indexlist)
       char *words;
       struct swline *indexlist;
  {
    int i, j, metaName;
    float num;
***************
*** 154,161 ****
      
      sortresultlist = NULL;
      while (resultlist != NULL) {
!       if (resultlist->structure & structure)
! 	sortresultlist = (struct sortresult *)
  	  addsortresult(sortresultlist, resultlist->rank,
  			lookupfile(resultlist->filenum, fp));
        resultlist = resultlist->next;
--- 152,158 ----
      
      sortresultlist = NULL;
      while (resultlist != NULL) {
!       sortresultlist = (struct sortresult *)
  	  addsortresult(sortresultlist, resultlist->rank,
  			lookupfile(resultlist->filenum, fp));
        resultlist = resultlist->next;
***************
*** 595,609 ****
  ** it calls getfileinfo(), which does the real searching.
  */
  
! struct result *operate(rp, rulenum, word, fp, metaName)
!      struct result *rp;
!      int rulenum;
!      int metaName;
!      char *word;
!      FILE *fp;
  {
          int i, found;
! 	struct result *newrp, *returnrp;
  
  	if (isstopword(word) && !isrule(word)) {
  		if (rulenum == OR_RULE && rp != NULL)
--- 592,602 ----
  ** it calls getfileinfo(), which does the real searching.
  */
  
! struct result *operate(struct result *rp, int rulenum, char *word, FILE *fp, 
! 		       int attribute)
  {
          int i, found;
! 	struct result *newrp, *returnrp=NULL;
  
  	if (isstopword(word) && !isrule(word)) {
  		if (rulenum == OR_RULE && rp != NULL)
***************
*** 624,645 ****
  			return rp;
  	}
  
! 	newrp = (struct result *) getfileinfo(word, fp, metaName);
  	if (rulenum == AND_RULE)
! 		returnrp = (struct result *) andresultlists(rp, newrp);
  	else if (rulenum == OR_RULE)
! 		returnrp = (struct result *) orresultlists(rp, newrp);
  	else if (rulenum == NOT_RULE)
! 		returnrp = (struct result *) notresultlist(newrp, fp);
  	return returnrp;
  }
  
  /* Looks up a file name in the index file.
  */
  
! char *lookupfile(filenum, fp)
!      int filenum;
!      FILE *fp;
  {
          static char line[MAXSTRLEN];
  
--- 617,636 ----
  			return rp;
  	}
  
! 	newrp = getfileinfo(word, fp, attribute);
  	if (rulenum == AND_RULE)
! 		returnrp = andresultlists(rp, newrp);
  	else if (rulenum == OR_RULE)
! 		returnrp = orresultlists(rp, newrp);
  	else if (rulenum == NOT_RULE)
! 		returnrp = notresultlist(newrp, fp);
  	return returnrp;
  }
  
  /* Looks up a file name in the index file.
  */
  
! char *lookupfile(int filenum, FILE *fp)
  {
          static char line[MAXSTRLEN];
  
***************
*** 653,664 ****
  ** If not found, NULL is returned.
  */
  
! struct result *getfileinfo(word, fp, metaName)
!      char *word;
!      FILE *fp;
!      int metaName;
  {
! 	int i, c, x, countnum, rank, filenum, structure;
          char fileword[MAXWORDLEN];
          struct result *rp;
  
--- 644,652 ----
  ** If not found, NULL is returned.
  */
  
! struct result *getfileinfo(char *word, FILE *fp, int attribute)
  {
! 	int i, c, x, countnum, rank = 0, filenum = 0;
          char fileword[MAXWORDLEN];
          struct result *rp;
  
***************
*** 706,718 ****
  				countnum++;
  			}
  			else if (countnum == 3) {
!               			  structure = x;
! 		        	  countnum++;
! 			}
! 			else if (countnum == 4) {
! 			  if ( x == metaName )
! 			    rp = (struct result *)
! 			      addtoresultlist(rp,filenum, rank,structure);
  			  countnum = 1;
  			}
  		      }
--- 694,701 ----
  				countnum++;
  			}
  			else if (countnum == 3) {
! 			  if ( x == attribute )
! 			    rp = addtoresultlist(rp,filenum, rank);
  			  countnum = 1;
  			}
  		      }
***************
*** 792,799 ****
                          if (r1->filenum == tmpnode->filenum)
                                  newnode = (struct result *)
                                  addtoresultlist(newnode, r1->filenum,
!                                 (r1->rank + tmpnode->rank) / 2,
! 				r1->structure & tmpnode->structure);
                          tmpnode = tmpnode->next;
                  }
                  r1 = r1->next;
--- 775,781 ----
                          if (r1->filenum == tmpnode->filenum)
                                  newnode = (struct result *)
                                  addtoresultlist(newnode, r1->filenum,
!                                 (r1->rank + tmpnode->rank) / 2);
                          tmpnode = tmpnode->next;
                  }
                  r1 = r1->next;
***************
*** 822,839 ****
  
  	initresulthashlist();
  	while (r1 != NULL) {
! 		mergeresulthashlist(r1->filenum, r1->rank, r1->structure);
  		r1 = r1->next;
  	}
  	while (r2 != NULL) {
! 		mergeresulthashlist(r2->filenum, r2->rank, r2->structure);
  		r2 = r2->next;
  	}
  	for (i = 0; i < HASHSIZE; i++) {
  		rp = resulthashlist[i];
  		while (rp != NULL) {
  			newnode = (struct result *) addtoresultlist(newnode,
! 			rp->filenum, rp->rank, rp->structure);
  			rp = rp->next;
  		}
  	}
--- 804,821 ----
  
  	initresulthashlist();
  	while (r1 != NULL) {
! 		mergeresulthashlist(r1->filenum, r1->rank);
  		r1 = r1->next;
  	}
  	while (r2 != NULL) {
! 		mergeresulthashlist(r2->filenum, r2->rank);
  		r2 = r2->next;
  	}
  	for (i = 0; i < HASHSIZE; i++) {
  		rp = resulthashlist[i];
  		while (rp != NULL) {
  			newnode = (struct result *) addtoresultlist(newnode,
! 			rp->filenum, rp->rank);
  			rp = rp->next;
  		}
  	}
***************
*** 876,886 ****
  /* Adds a file number and rank to a list of results.
  */
  
! struct result *addtoresultlist(rp, filenum, rank, structure)
       struct result *rp;
       int filenum;
       int rank;
-      int structure;
  {
          struct result *newnode;
          static struct result *head;
--- 858,867 ----
  /* Adds a file number and rank to a list of results.
  */
  
! struct result *addtoresultlist(rp, filenum, rank)
       struct result *rp;
       int filenum;
       int rank;
  {
          struct result *newnode;
          static struct result *head;
***************
*** 888,895 ****
          newnode = (struct result *) emalloc(sizeof(struct result));
          newnode->filenum = filenum;
          newnode->rank = rank;
-         newnode->structure = structure;
          newnode->next = NULL;
  
          if (rp == NULL)
                  rp = newnode;
--- 869,877 ----
          newnode = (struct result *) emalloc(sizeof(struct result));
          newnode->filenum = filenum;
          newnode->rank = rank;
          newnode->next = NULL;
+ 
+ 	printf("Added one\n");
  
          if (rp == NULL)
                  rp = newnode;
Index: harvest/components/broker/swish/string.c
diff -c harvest/components/broker/swish/string.c:1.2 harvest/components/broker/swish/string.c:1.3
*** harvest/components/broker/swish/string.c:1.2	Mon Oct 27 16:13:56 1997
--- harvest/components/broker/swish/string.c	Fri Oct 31 11:28:21 1997
***************
*** 11,16 ****
--- 11,17 ----
  
  #include "swish.h"
  #include "string.h"
+ #include "mem.h"
  
  /* My own case-insensitive strstr().
  */
Index: harvest/components/broker/swish/string.h
diff -c harvest/components/broker/swish/string.h:1.1 harvest/components/broker/swish/string.h:1.2
*** harvest/components/broker/swish/string.h:1.1	Sun Oct 12 16:33:08 1997
--- harvest/components/broker/swish/string.h	Fri Oct 31 11:28:22 1997
***************
*** 5,21 ****
  ** 3/11/94
  */
  
! char *lstrstr();
! char *getword();
! char *getconfvalue();
! char *parsetitle();
! char *mystrdup();
! int iswordchar();
! char *replace();
! int wordcompare();
! char *convertentities();
! char *getent();
! char *converttonamed();
! int hasnumbered();
! char *converttoascii();
! int hasnonascii();
--- 5,20 ----
  ** 3/11/94
  */
  
! char *lstrstr(char *, char *);
! char *getword(char *, int *);
! char *getconfvalue(char *, char *, char *);
! char *mystrdup(char *);
! int iswordchar(char);
! char *replace(char *, char *, char *);
! int wordcompare(char *, char *);
! char *convertentities(char *);
! char *getent(char *, int *);
! char *converttonamed(char *);
! int hasnumbered(char *);
! char *converttoascii(char *);
! int hasnonascii(char *);
Index: harvest/components/broker/swish/swish.c
diff -c harvest/components/broker/swish/swish.c:1.1 harvest/components/broker/swish/swish.c:1.2
*** harvest/components/broker/swish/swish.c:1.1	Sun Oct 12 16:33:09 1997
--- harvest/components/broker/swish/swish.c	Fri Oct 31 11:28:23 1997
***************
*** 14,19 ****
--- 14,27 ----
  
  #define MAIN_FILE
  #include "swish.h"
+ #include "index.h"
+ #include "error.h"
+ #include "file.h"
+ #include "search.h"
+ #include "string.h"
+ #include "hash.h"
+ #include "merge.h"
+ #include "list.h"
  
  int main(argc, argv)
       int argc;
***************
*** 24,33 ****
  	char tmpindex1[MAXFILELEN], tmpindex2[MAXFILELEN],
  		index1[MAXSTRLEN], index2[MAXSTRLEN],
  		index3[MAXSTRLEN], index4[MAXSTRLEN];
!         int i, j, hasindex, hasdir, hasconf, hasverbose, structure,
  		totalfiles, stopwords, index, decode, merge, pos,
  	        hasMetaName;
! 	long offsetstart, starttime, stoptime, plimit, flimit;
          FILE *fp1, *fp2;
          struct file *filep;
          struct entry *entryp;
--- 32,41 ----
  	char tmpindex1[MAXFILELEN], tmpindex2[MAXFILELEN],
  		index1[MAXSTRLEN], index2[MAXSTRLEN],
  		index3[MAXSTRLEN], index4[MAXSTRLEN];
!         int i, j, hasindex, hasdir, hasconf, hasverbose, 
  		totalfiles, stopwords, index, decode, merge, pos,
  	        hasMetaName;
! 	long offsetstart, starttime = 0, stoptime, plimit, flimit;
          FILE *fp1, *fp2;
          struct file *filep;
          struct entry *entryp;
***************
*** 48,54 ****
          verbose = VERBOSE;
  	plimit = PLIMIT;
  	flimit = FLIMIT;
- 	structure = 1;
          wordlist[0] = '\0';
  	structstr[0] = '\0';
  	indexn[0] = '\0';
--- 56,61 ----
***************
*** 130,136 ****
  			if ((argv + 1)[0] == '\0')
  				progerr("Specify tag fields (HBtheca).");
  			else {
- 				structure = 0;
                          	strcpy(structstr, (++argv)[0]);
                          	argc--;
  			}
--- 137,142 ----
***************
*** 209,221 ****
  
  	}
          else if (index) {
- 
-                 if (hasconf)
- 			while (conflist != NULL) {
-                         	getdefaults(conflist->line, &hasdir, &hasindex,
- 				&plimit, &flimit, hasverbose);
- 				conflist = conflist->next;
- 			}
  		if (!hasindex)
  			indexlist = (struct swline *)
  			addswline(indexlist, INDEXFILE);
--- 215,220 ----
***************
*** 229,234 ****
--- 228,235 ----
  		if (verbose)
  			starttime = getthetime();
  
+ 		readdefaultstopwords();
+ 
  		while (dirlist != NULL) {
  			if (isdirectory(dirlist->line)) {
  				if (verbose >= 2)
***************
*** 329,340 ****
  
  		if (indexlist == NULL)
  			progerr("Specify index files and an output file.");
-                 if (hasconf)
- 			while (conflist != NULL) {
-                         	getdefaults(conflist->line, &hasdir, &hasindex,
- 				&plimit, &flimit, hasverbose);
- 				conflist = conflist->next;
- 			}
  
  		tmplist = indexlist;
  		for (i = 0; tmplist != NULL; i++) {
--- 330,335 ----
***************
*** 379,421 ****
  	}
          else {
  
- 		for (i = 0; structstr[i] != '\0'; i++)
- 			switch (structstr[i]) {
- 			case 'H':
- 				structure |= IN_HEAD;
- 				break;
- 			case 'B':
- 				structure |= IN_BODY;
- 				break;
- 			case 't':
- 				structure |= IN_TITLE;
- 				break;
- 			case 'h':
- 				structure |= IN_HEADER;
- 				break;
- 			case 'e':
- 				structure |= IN_EMPHASIZED;
- 				break;
- 			case 'c':
- 				structure |= IN_COMMENTS;
- 				break;
- 			default:
- 				structure |= IN_FILE;
- 				break;
- 			}
- 
  		if (maxhits <= 0)
  			maxhits = -1;
  		if (!hasindex)
  			indexlist = (struct swline *)
  			addswline(indexlist, INDEXFILE);
! 		if (hasMetaName)
! 		  while (conflist != NULL) {
! 		    getdefaults(conflist->line, &hasdir, &hasindex,
!                                 &plimit, &flimit, hasverbose);
! 		    conflist = conflist->next;
! 		  }
! 		search(wordlist, indexlist, structure);
  
  	}
  
--- 374,385 ----
  	}
          else {
  
  		if (maxhits <= 0)
  			maxhits = -1;
  		if (!hasindex)
  			indexlist = (struct swline *)
  			addswline(indexlist, INDEXFILE);
! 		search(wordlist, indexlist);
  
  	}
  
Index: harvest/components/broker/swish/swish.h
diff -c harvest/components/broker/swish/swish.h:1.2 harvest/components/broker/swish/swish.h:1.3
*** harvest/components/broker/swish/swish.h:1.2	Mon Oct 27 16:13:57 1997
--- harvest/components/broker/swish/swish.h	Fri Oct 31 11:28:24 1997
***************
*** 4,11 ****
  ** Kevin Hughes, kevinh@eit.com 
  ** 3/11/94
  **
- ** Added support for METADATA
- ** G. Hill  ghill@library.berkeley.edu   3/18/97
  */
  
  #include <stdio.h>
--- 4,9 ----
***************
*** 25,31 ****
  
  #define VERSION "1.1.1"
  #define INDEXFILE "index.swish"
! #define INDEXHEADER "# SWISH format 1.1"
  
  #define MAXFILELEN 1000
  #define MAXSTRLEN 1000
--- 23,29 ----
  
  #define VERSION "1.1.1"
  #define INDEXFILE "index.swish"
! #define INDEXHEADER "# SWISH format 1.1 - SOIF"
  
  #define MAXFILELEN 1000
  #define MAXSTRLEN 1000
***************
*** 82,94 ****
  struct result {
          int filenum;
          int rank;
- 	int structure;
          struct result *next;
  };
  
  struct file {
          char *filename;
-         char *title;
          int size;
          struct file *next;
  };
--- 80,90 ----
***************
*** 102,110 ****
  struct location {
          int filenum;
          int frequency;
!         int emphasized;
! 	int structure;
! 	int metaName;
          struct location *next;
  };
  
--- 98,104 ----
  struct location {
          int filenum;
          int frequency;
! 	int attribute;
          struct location *next;
  };
  
***************
*** 116,126 ****
          struct entry *right;
  };
  
! struct sortentry {
          char *filename;
!         char *title;
!         struct sortentry *left;
!         struct sortentry *right;
  };
  
  struct swline {
--- 110,118 ----
          struct entry *right;
  };
  
! struct fileentry {
          char *filename;
!         struct fileentry *next;
  };
  
  struct swline {
***************
*** 290,299 ****
  extern char *entities[];
  #endif
  
- #ifdef MAIN_FILE
  int main();
  void usage();
  void printversion();
  void printrunning();
  long getthetime();
- #endif
--- 282,289 ----
Index: harvest/components/broker/swish/swish_config.h
diff -c harvest/components/broker/swish/swish_config.h:1.1 harvest/components/broker/swish/swish_config.h:1.2
*** harvest/components/broker/swish/swish_config.h:1.1	Mon Oct 27 16:13:58 1997
--- harvest/components/broker/swish/swish_config.h	Fri Oct 31 11:28:25 1997
***************
*** 51,57 ****
  ** This can be AND_RULE or OR_RULE.
  */
  
! #define MINWORDLIMIT 2
  
  /* This is the minimum length of a word. Anything shorter will not
  ** be indexed.
--- 51,57 ----
  ** This can be AND_RULE or OR_RULE.
  */
  
! #define MINWORDLIMIT 3
  
  /* This is the minimum length of a word. Anything shorter will not
  ** be indexed.
***************
*** 99,105 ****
  /* IGNORESAME is the maximum times a character can repeat in a word.
  */
  
! #define WORDCHARS "abcdefghijklmnopqrstuvwxyz=�����������������������،�����ݟ��������������������������������������&#;0123456789.@\\|/,-'[]{}()~!@$%^_+?"
  
  /* WORDCHARS is a string of characters which SWISH permits to
  ** be in words. Any strings which do not include these characters
--- 99,105 ----
  /* IGNORESAME is the maximum times a character can repeat in a word.
  */
  
! #define WORDCHARS "abcdefghijklmnopqrstuvwxyz�����������������������،�����ݟ��������������������������������������"
  
  /* WORDCHARS is a string of characters which SWISH permits to
  ** be in words. Any strings which do not include these characters
Index: harvest/components/gatherer/BUILD
diff -c harvest/components/gatherer/BUILD:2.0 harvest/components/gatherer/BUILD:2.1
*** harvest/components/gatherer/BUILD:2.0	Sun Mar 16 16:59:58 1997
--- harvest/components/gatherer/BUILD	Tue Nov  4 13:14:44 1997
***************
*** 1 ****
! standard
--- 1 ----
! standard WordPerfect
Index: harvest/components/gatherer/configure
diff -c harvest/components/gatherer/configure:2.1 harvest/components/gatherer/configure:2.2
*** harvest/components/gatherer/configure:2.1	Thu Sep 11 12:14:17 1997
--- harvest/components/gatherer/configure	Tue Nov  4 13:14:47 1997
***************
*** 450,456 ****
  
  # A filename unique to this package, relative to the directory that
  # configure is in, which we can look for to find out if srcdir is correct.
! ac_unique_file=Makefile
  
  # Find the source files, if location was not specified.
  if test -z "$srcdir"; then
--- 450,456 ----
  
  # A filename unique to this package, relative to the directory that
  # configure is in, which we can look for to find out if srcdir is correct.
! ac_unique_file=Makefile.in
  
  # Find the source files, if location was not specified.
  if test -z "$srcdir"; then
***************
*** 537,543 ****
  ac_config_sub=$ac_aux_dir/config.sub
  ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
  
! subdirs="`cat ./BUILD`"
  
  trap '' 1 2 15
  cat > confcache <<\EOF
--- 537,543 ----
  ac_config_sub=$ac_aux_dir/config.sub
  ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
  
! subdirs="`cat $srcdir/BUILD`"
  
  trap '' 1 2 15
  cat > confcache <<\EOF
***************
*** 651,657 ****
  
  ac_given_srcdir=$srcdir
  
! trap 'rm -fr `echo "" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  EOF
  cat >> $CONFIG_STATUS <<EOF
  
--- 651,657 ----
  
  ac_given_srcdir=$srcdir
  
! trap 'rm -fr `echo "Makefile" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  EOF
  cat >> $CONFIG_STATUS <<EOF
  
***************
*** 723,729 ****
  
  cat >> $CONFIG_STATUS <<EOF
  
! CONFIG_FILES=\${CONFIG_FILES-""}
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
--- 723,729 ----
  
  cat >> $CONFIG_STATUS <<EOF
  
! CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
***************
*** 814,820 ****
      esac
    done
  
!   for ac_config_dir in `cat ./BUILD`; do
  
      # Do not complain, so a configure script can configure whichever
      # parts of a large source tree are present.
--- 814,820 ----
      esac
    done
  
!   for ac_config_dir in `cat $srcdir/BUILD`; do
  
      # Do not complain, so a configure script can configure whichever
      # parts of a large source tree are present.
Index: harvest/components/gatherer/configure.in
diff -c harvest/components/gatherer/configure.in:2.1 harvest/components/gatherer/configure.in:2.2
*** harvest/components/gatherer/configure.in:2.1	Thu Sep 11 12:14:18 1997
--- harvest/components/gatherer/configure.in	Tue Nov  4 13:14:48 1997
***************
*** 1,3 ****
! AC_INIT(Makefile)
! AC_CONFIG_SUBDIRS(`cat ./BUILD`)
! AC_OUTPUT()
--- 1,3 ----
! AC_INIT(Makefile.in)
! AC_CONFIG_SUBDIRS(`cat $srcdir/BUILD`)
! AC_OUTPUT(Makefile)
Index: harvest/components/gatherer/Rainbow/Makefile.in
diff -c harvest/components/gatherer/Rainbow/Makefile.in:2.1 harvest/components/gatherer/Rainbow/Makefile.in:2.2
*** harvest/components/gatherer/Rainbow/Makefile.in:2.1	Thu Sep 11 12:14:19 1997
--- harvest/components/gatherer/Rainbow/Makefile.in	Tue Nov  4 13:14:49 1997
***************
*** 1,7 ****
! # Makefile.in,v 2.1 1997/09/11 16:14:19 sxw Exp
  #
  #  Makefile for the SGML summarizers for the Essence system.
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,10 ----
! # Makefile.in,v 2.2 1997/11/04 18:14:49 sxw Exp
  #
  #  Makefile for the SGML summarizers for the Essence system.
  #
+ srcdir = @srcdir@
+ VPATH  = @srcdir@
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 25,35 ****
  	fi
  	@for f in $(SCRIPTS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
! 		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
  	done
  	@for f in $(SGMLS_LIB_FILES); do \
  		echo $(INSTALL_FILE) $$f $(SGMLS_LIBDIR)/$$f; \
! 		$(INSTALL_FILE) $$f $(SGMLS_LIBDIR)/$$f; \
  	done
  	if test -r rbmaker/rbmaker.`uname -sr | sed -e 's/ /_/g'`; then \
  		$(INSTALL_BIN) rbmaker/rbmaker.`uname -sr | sed -e 's/ /_/g'` $(INSTALL_UTILDIR)/rbmaker; \
--- 28,38 ----
  	fi
  	@for f in $(SCRIPTS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
! 		$(INSTALL_BIN) $(srcdir)/$$f $(INSTALL_UTILDIR)/$$f; \
  	done
  	@for f in $(SGMLS_LIB_FILES); do \
  		echo $(INSTALL_FILE) $$f $(SGMLS_LIBDIR)/$$f; \
! 		$(INSTALL_FILE) $(srcdir)/$$f $(SGMLS_LIBDIR)/$$f; \
  	done
  	if test -r rbmaker/rbmaker.`uname -sr | sed -e 's/ /_/g'`; then \
  		$(INSTALL_BIN) rbmaker/rbmaker.`uname -sr | sed -e 's/ /_/g'` $(INSTALL_UTILDIR)/rbmaker; \
Index: harvest/components/gatherer/Rainbow/configure
diff -c harvest/components/gatherer/Rainbow/configure:2.0 harvest/components/gatherer/Rainbow/configure:2.1
*** harvest/components/gatherer/Rainbow/configure:2.0	Sun Mar 16 17:00:13 1997
--- harvest/components/gatherer/Rainbow/configure	Tue Nov  4 13:14:50 1997
***************
*** 1,8 ****
  #! /bin/sh
  
  # Guess values for system-dependent variables and create Makefiles.
! # Generated automatically using autoconf version 2.4 
! # Copyright (C) 1992, 1993, 1994 Free Software Foundation, Inc.
  #
  # This configure script is free software; the Free Software Foundation
  # gives unlimited permission to copy, distribute and modify it.
--- 1,8 ----
  #! /bin/sh
  
  # Guess values for system-dependent variables and create Makefiles.
! # Generated automatically using autoconf version 2.12 
! # Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
  #
  # This configure script is free software; the Free Software Foundation
  # gives unlimited permission to copy, distribute and modify it.
***************
*** 34,42 ****
--- 34,57 ----
  verbose=
  x_includes=NONE
  x_libraries=NONE
+ bindir='${exec_prefix}/bin'
+ sbindir='${exec_prefix}/sbin'
+ libexecdir='${exec_prefix}/libexec'
+ datadir='${prefix}/share'
+ sysconfdir='${prefix}/etc'
+ sharedstatedir='${prefix}/com'
+ localstatedir='${prefix}/var'
+ libdir='${exec_prefix}/lib'
+ includedir='${prefix}/include'
+ oldincludedir='/usr/include'
+ infodir='${prefix}/info'
+ mandir='${prefix}/man'
  
  # Initialize some other variables.
  subdirs=
+ MFLAGS= MAKEFLAGS=
+ # Maximum number of lines to put in a shell here document.
+ ac_max_here_lines=12
  
  ac_prev=
  for ac_option
***************
*** 58,66 ****
  
    case "$ac_option" in
  
!   -build | --build | --buil | --bui | --bu | --b)
      ac_prev=build ;;
!   -build=* | --build=* | --buil=* | --bui=* | --bu=* | --b=*)
      build="$ac_optarg" ;;
  
    -cache-file | --cache-file | --cache-fil | --cache-fi \
--- 73,86 ----
  
    case "$ac_option" in
  
!   -bindir | --bindir | --bindi | --bind | --bin | --bi)
!     ac_prev=bindir ;;
!   -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
!     bindir="$ac_optarg" ;;
! 
!   -build | --build | --buil | --bui | --bu)
      ac_prev=build ;;
!   -build=* | --build=* | --buil=* | --bui=* | --bu=*)
      build="$ac_optarg" ;;
  
    -cache-file | --cache-file | --cache-fil | --cache-fi \
***************
*** 70,75 ****
--- 90,101 ----
    | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
      cache_file="$ac_optarg" ;;
  
+   -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+     ac_prev=datadir ;;
+   -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
+   | --da=*)
+     datadir="$ac_optarg" ;;
+ 
    -disable-* | --disable-*)
      ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
      # Reject names that are not valid shell variable names.
***************
*** 120,131 ****
  Directory and file names:
    --prefix=PREFIX         install architecture-independent files in PREFIX
                            [$ac_default_prefix]
!   --exec-prefix=PREFIX    install architecture-dependent files in PREFIX
                            [same as prefix]
    --srcdir=DIR            find the sources in DIR [configure dir or ..]
    --program-prefix=PREFIX prepend PREFIX to installed program names
    --program-suffix=SUFFIX append SUFFIX to installed program names
!   --program-transform-name=PROGRAM run sed PROGRAM on installed program names
  Host type:
    --build=BUILD           configure for building on BUILD [BUILD=HOST]
    --host=HOST             configure for HOST [guessed]
--- 146,174 ----
  Directory and file names:
    --prefix=PREFIX         install architecture-independent files in PREFIX
                            [$ac_default_prefix]
!   --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
                            [same as prefix]
+   --bindir=DIR            user executables in DIR [EPREFIX/bin]
+   --sbindir=DIR           system admin executables in DIR [EPREFIX/sbin]
+   --libexecdir=DIR        program executables in DIR [EPREFIX/libexec]
+   --datadir=DIR           read-only architecture-independent data in DIR
+                           [PREFIX/share]
+   --sysconfdir=DIR        read-only single-machine data in DIR [PREFIX/etc]
+   --sharedstatedir=DIR    modifiable architecture-independent data in DIR
+                           [PREFIX/com]
+   --localstatedir=DIR     modifiable single-machine data in DIR [PREFIX/var]
+   --libdir=DIR            object code libraries in DIR [EPREFIX/lib]
+   --includedir=DIR        C header files in DIR [PREFIX/include]
+   --oldincludedir=DIR     C header files for non-gcc in DIR [/usr/include]
+   --infodir=DIR           info documentation in DIR [PREFIX/info]
+   --mandir=DIR            man documentation in DIR [PREFIX/man]
    --srcdir=DIR            find the sources in DIR [configure dir or ..]
    --program-prefix=PREFIX prepend PREFIX to installed program names
    --program-suffix=SUFFIX append SUFFIX to installed program names
!   --program-transform-name=PROGRAM
!                           run sed PROGRAM on installed program names
! EOF
!     cat << EOF
  Host type:
    --build=BUILD           configure for building on BUILD [BUILD=HOST]
    --host=HOST             configure for HOST [guessed]
***************
*** 137,144 ****
    --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
    --x-includes=DIR        X include files are in DIR
    --x-libraries=DIR       X library files are in DIR
- --enable and --with options recognized:$ac_help
  EOF
      exit 0 ;;
  
    -host | --host | --hos | --ho)
--- 180,189 ----
    --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
    --x-includes=DIR        X include files are in DIR
    --x-libraries=DIR       X library files are in DIR
  EOF
+     if test -n "$ac_help"; then
+       echo "--enable and --with options recognized:$ac_help"
+     fi
      exit 0 ;;
  
    -host | --host | --hos | --ho)
***************
*** 146,151 ****
--- 191,234 ----
    -host=* | --host=* | --hos=* | --ho=*)
      host="$ac_optarg" ;;
  
+   -includedir | --includedir | --includedi | --included | --include \
+   | --includ | --inclu | --incl | --inc)
+     ac_prev=includedir ;;
+   -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+   | --includ=* | --inclu=* | --incl=* | --inc=*)
+     includedir="$ac_optarg" ;;
+ 
+   -infodir | --infodir | --infodi | --infod | --info | --inf)
+     ac_prev=infodir ;;
+   -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+     infodir="$ac_optarg" ;;
+ 
+   -libdir | --libdir | --libdi | --libd)
+     ac_prev=libdir ;;
+   -libdir=* | --libdir=* | --libdi=* | --libd=*)
+     libdir="$ac_optarg" ;;
+ 
+   -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+   | --libexe | --libex | --libe)
+     ac_prev=libexecdir ;;
+   -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+   | --libexe=* | --libex=* | --libe=*)
+     libexecdir="$ac_optarg" ;;
+ 
+   -localstatedir | --localstatedir | --localstatedi | --localstated \
+   | --localstate | --localstat | --localsta | --localst \
+   | --locals | --local | --loca | --loc | --lo)
+     ac_prev=localstatedir ;;
+   -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+   | --localstate=* | --localstat=* | --localsta=* | --localst=* \
+   | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
+     localstatedir="$ac_optarg" ;;
+ 
+   -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+     ac_prev=mandir ;;
+   -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+     mandir="$ac_optarg" ;;
+ 
    -nfp | --nfp | --nf)
      # Obsolete; use --without-fp.
      with_fp=no ;;
***************
*** 158,163 ****
--- 241,255 ----
    | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
      no_recursion=yes ;;
  
+   -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+   | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+   | --oldin | --oldi | --old | --ol | --o)
+     ac_prev=oldincludedir ;;
+   -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+   | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+   | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+     oldincludedir="$ac_optarg" ;;
+ 
    -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
      ac_prev=prefix ;;
    -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
***************
*** 198,203 ****
--- 290,312 ----
    | -silent | --silent | --silen | --sile | --sil)
      silent=yes ;;
  
+   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+     ac_prev=sbindir ;;
+   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+   | --sbi=* | --sb=*)
+     sbindir="$ac_optarg" ;;
+ 
+   -sharedstatedir | --sharedstatedir | --sharedstatedi \
+   | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+   | --sharedst | --shareds | --shared | --share | --shar \
+   | --sha | --sh)
+     ac_prev=sharedstatedir ;;
+   -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+   | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+   | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+   | --sha=* | --sh=*)
+     sharedstatedir="$ac_optarg" ;;
+ 
    -site | --site | --sit)
      ac_prev=site ;;
    -site=* | --site=* | --sit=*)
***************
*** 208,213 ****
--- 317,329 ----
    -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
      srcdir="$ac_optarg" ;;
  
+   -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+   | --syscon | --sysco | --sysc | --sys | --sy)
+     ac_prev=sysconfdir ;;
+   -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+   | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+     sysconfdir="$ac_optarg" ;;
+ 
    -target | --target | --targe | --targ | --tar | --ta | --t)
      ac_prev=target ;;
    -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
***************
*** 217,223 ****
      verbose=yes ;;
  
    -version | --version | --versio | --versi | --vers)
!     echo "configure generated by autoconf version 2.4"
      exit 0 ;;
  
    -with-* | --with-*)
--- 333,339 ----
      verbose=yes ;;
  
    -version | --version | --versio | --versi | --vers)
!     echo "configure generated by autoconf version 2.12"
      exit 0 ;;
  
    -with-* | --with-*)
***************
*** 263,269 ****
    -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
      ;;
  
!   *) 
      if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
        echo "configure: warning: $ac_option: invalid host type" 1>&2
      fi
--- 379,385 ----
    -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
      ;;
  
!   *)
      if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
        echo "configure: warning: $ac_option: invalid host type" 1>&2
      fi
***************
*** 319,329 ****
  done
  
  # NLS nuisances.
! # Only set LANG and LC_ALL to C if already set.
! # These must not be set unconditionally because not all systems understand
! # e.g. LANG=C (notably SCO).
! if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
  if test "${LANG+set}"   = set; then LANG=C;   export LANG;   fi
  
  # confdefs.h avoids OS command line length limits that DEFS can exceed.
  rm -rf conftest* confdefs.h
--- 435,448 ----
  done
  
  # NLS nuisances.
! # Only set these to C if already set.  These must not be set unconditionally
! # because not all systems understand e.g. LANG=C (notably SCO).
! # Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
! # Non-C LC_CTYPE values break the ctype check.
  if test "${LANG+set}"   = set; then LANG=C;   export LANG;   fi
+ if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
+ if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
+ if test "${LC_CTYPE+set}"    = set; then LC_CTYPE=C;    export LC_CTYPE;    fi
  
  # confdefs.h avoids OS command line length limits that DEFS can exceed.
  rm -rf conftest* confdefs.h
***************
*** 383,390 ****
  ac_ext=c
  # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
  ac_cpp='$CPP $CPPFLAGS'
! ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5 2>&5'
! ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5 2>&5'
  
  if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
    # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
--- 502,510 ----
  ac_ext=c
  # CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
  ac_cpp='$CPP $CPPFLAGS'
! ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
! ac_link='${CC-cc} -o conftest $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
! cross_compiling=$ac_cv_prog_cc_cross
  
  if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
    # Stardent Vistra SVR4 grep lacks -e, says ghazi@caip.rutgers.edu.
***************
*** 399,405 ****
  fi
  
  
! # From configure.in Revision: 1.2 
  
  
  if test -n "$prefix"; then
--- 519,525 ----
  fi
  
  
! # From configure.in 1.3
  
  
  if test -n "$prefix"; then
***************
*** 448,458 ****
  # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
  # ./install, which can be erroneously created by make from ./install.sh.
  echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
  if test -z "$INSTALL"; then
  if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
    echo $ac_n "(cached) $ac_c" 1>&6
  else
!     IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS="${IFS}:"
    for ac_dir in $PATH; do
      # Account for people who put trailing slashes in PATH elements.
      case "$ac_dir/" in
--- 568,579 ----
  # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
  # ./install, which can be erroneously created by make from ./install.sh.
  echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
+ echo "configure:572: checking for a BSD compatible install" >&5
  if test -z "$INSTALL"; then
  if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
    echo $ac_n "(cached) $ac_c" 1>&6
  else
!     IFS="${IFS= 	}"; ac_save_IFS="$IFS"; IFS="${IFS}:"
    for ac_dir in $PATH; do
      # Account for people who put trailing slashes in PATH elements.
      case "$ac_dir/" in
***************
*** 475,485 ****
        ;;
      esac
    done
!   IFS="$ac_save_ifs"
!   # As a last resort, use the slow shell script.
!   test -z "$ac_cv_path_install" && ac_cv_path_install="$ac_install_sh"
  fi
!   INSTALL="$ac_cv_path_install"
  fi
  echo "$ac_t""$INSTALL" 1>&6
  
--- 596,613 ----
        ;;
      esac
    done
!   IFS="$ac_save_IFS"
! 
  fi
!   if test "${ac_cv_path_install+set}" = set; then
!     INSTALL="$ac_cv_path_install"
!   else
!     # As a last resort, use the slow shell script.  We don't cache a
!     # path for INSTALL within a source directory, because that will
!     # break other packages using the cache if that directory is
!     # removed, or if the path is relative.
!     INSTALL="$ac_install_sh"
!   fi
  fi
  echo "$ac_t""$INSTALL" 1>&6
  
***************
*** 509,519 ****
  # --recheck option to rerun configure.
  #
  EOF
  # Ultrix sh set writes to stderr and can't be redirected directly,
  # and sets the high bit in the cache file unless we assign to the vars.
  (set) 2>&1 |
!   sed -n "s/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=\${\1='\2'}/p" \
!   >> confcache
  if cmp -s $cache_file confcache; then
    :
  else
--- 637,661 ----
  # --recheck option to rerun configure.
  #
  EOF
+ # The following way of writing the cache mishandles newlines in values,
+ # but we know of no workaround that is simple, portable, and efficient.
+ # So, don't put newlines in cache variables' values.
  # Ultrix sh set writes to stderr and can't be redirected directly,
  # and sets the high bit in the cache file unless we assign to the vars.
  (set) 2>&1 |
!   case `(ac_space=' '; set) 2>&1` in
!   *ac_space=\ *)
!     # `set' does not quote correctly, so add quotes (double-quote substitution
!     # turns \\\\ into \\, and sed turns \\ into \).
!     sed -n \
!       -e "s/'/'\\\\''/g" \
!       -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
!     ;;
!   *)
!     # `set' quotes correctly as required by POSIX, so do not add quotes.
!     sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
!     ;;
!   esac >> confcache
  if cmp -s $cache_file confcache; then
    :
  else
***************
*** 545,551 ****
  # Protect against shell expansion while executing Makefile rules.
  # Protect against Makefile macro expansion.
  cat > conftest.defs <<\EOF
! s%#define \([A-Za-z_][A-Za-z0-9_]*\) \(.*\)%-D\1=\2%g
  s%[ 	`~#$^&*(){}\\|;'"<>?]%\\&%g
  s%\[%\\&%g
  s%\]%\\&%g
--- 687,693 ----
  # Protect against shell expansion while executing Makefile rules.
  # Protect against Makefile macro expansion.
  cat > conftest.defs <<\EOF
! s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%-D\1=\2%g
  s%[ 	`~#$^&*(){}\\|;'"<>?]%\\&%g
  s%\[%\\&%g
  s%\]%\\&%g
***************
*** 580,586 ****
      echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
      exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
    -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
!     echo "$CONFIG_STATUS generated by autoconf version 2.4"
      exit 0 ;;
    -help | --help | --hel | --he | --h)
      echo "\$ac_cs_usage"; exit 0 ;;
--- 722,728 ----
      echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
      exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
    -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
!     echo "$CONFIG_STATUS generated by autoconf version 2.12"
      exit 0 ;;
    -help | --help | --hel | --he | --h)
      echo "\$ac_cs_usage"; exit 0 ;;
***************
*** 594,603 ****
  trap 'rm -fr `echo "\
  	Makefile \
  " | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
  
! # Protect against being on the right side of a sed subst in config.status. 
! sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\\\&%]/\\\\&/g; 
!  s/@@/%@/; s/@@/@%/; s/@g$/%g/' > conftest.subs <<\CEOF
  $ac_vpsub
  $extrasub
  s%@CFLAGS@%$CFLAGS%g
--- 736,747 ----
  trap 'rm -fr `echo "\
  	Makefile \
  " | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
+ EOF
+ cat >> $CONFIG_STATUS <<EOF
  
! # Protect against being on the right side of a sed subst in config.status.
! sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
!  s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
  $ac_vpsub
  $extrasub
  s%@CFLAGS@%$CFLAGS%g
***************
*** 609,614 ****
--- 753,770 ----
  s%@exec_prefix@%$exec_prefix%g
  s%@prefix@%$prefix%g
  s%@program_transform_name@%$program_transform_name%g
+ s%@bindir@%$bindir%g
+ s%@sbindir@%$sbindir%g
+ s%@libexecdir@%$libexecdir%g
+ s%@datadir@%$datadir%g
+ s%@sysconfdir@%$sysconfdir%g
+ s%@sharedstatedir@%$sharedstatedir%g
+ s%@localstatedir@%$localstatedir%g
+ s%@libdir@%$libdir%g
+ s%@includedir@%$includedir%g
+ s%@oldincludedir@%$oldincludedir%g
+ s%@infodir@%$infodir%g
+ s%@mandir@%$mandir%g
  s%@INSTALL_TOPDIR@%$INSTALL_TOPDIR%g
  s%@INSTALL_LIBDIR@%$INSTALL_LIBDIR%g
  s%@INSTALL_BINDIR@%$INSTALL_BINDIR%g
***************
*** 618,623 ****
--- 774,815 ----
  
  CEOF
  EOF
+ 
+ cat >> $CONFIG_STATUS <<\EOF
+ 
+ # Split the substitutions into bite-sized pieces for seds with
+ # small command number limits, like on Digital OSF/1 and HP-UX.
+ ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
+ ac_file=1 # Number of current file.
+ ac_beg=1 # First line for current file.
+ ac_end=$ac_max_sed_cmds # Line after last line for current file.
+ ac_more_lines=:
+ ac_sed_cmds=""
+ while $ac_more_lines; do
+   if test $ac_beg -gt 1; then
+     sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
+   else
+     sed "${ac_end}q" conftest.subs > conftest.s$ac_file
+   fi
+   if test ! -s conftest.s$ac_file; then
+     ac_more_lines=false
+     rm -f conftest.s$ac_file
+   else
+     if test -z "$ac_sed_cmds"; then
+       ac_sed_cmds="sed -f conftest.s$ac_file"
+     else
+       ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
+     fi
+     ac_file=`expr $ac_file + 1`
+     ac_beg=$ac_end
+     ac_end=`expr $ac_end + $ac_max_sed_cmds`
+   fi
+ done
+ if test -z "$ac_sed_cmds"; then
+   ac_sed_cmds=cat
+ fi
+ EOF
+ 
  cat >> $CONFIG_STATUS <<EOF
  
  CONFIG_FILES=\${CONFIG_FILES-"\
***************
*** 626,639 ****
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
!   # Support "outfile[:infile]", defaulting infile="outfile.in".
    case "$ac_file" in
!   *:*) ac_file_in=`echo "$ac_file"|sed 's%.*:%%'`
         ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
    *) ac_file_in="${ac_file}.in" ;;
    esac
  
!   # Adjust relative srcdir, etc. for subdirectories.
  
    # Remove last slash and all that follows it.  Not all systems have dirname.
    ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
--- 818,831 ----
  EOF
  cat >> $CONFIG_STATUS <<\EOF
  for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
!   # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
    case "$ac_file" in
!   *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
         ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
    *) ac_file_in="${ac_file}.in" ;;
    esac
  
!   # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
  
    # Remove last slash and all that follows it.  Not all systems have dirname.
    ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
***************
*** 661,666 ****
--- 853,859 ----
    [/$]*) INSTALL="$ac_given_INSTALL" ;;
    *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
    esac
+ 
    echo creating "$ac_file"
    rm -f "$ac_file"
    configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
***************
*** 669,684 ****
  # $configure_input" ;;
    *) ac_comsub= ;;
    esac
    sed -e "$ac_comsub
  s%@configure_input@%$configure_input%g
  s%@srcdir@%$srcdir%g
  s%@top_srcdir@%$top_srcdir%g
  s%@INSTALL@%$INSTALL%g
! " -f conftest.subs $ac_given_srcdir/$ac_file_in > $ac_file
  fi; done
! rm -f conftest.subs
  
  
  
  exit 0
  EOF
--- 862,883 ----
  # $configure_input" ;;
    *) ac_comsub= ;;
    esac
+ 
+   ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
    sed -e "$ac_comsub
  s%@configure_input@%$configure_input%g
  s%@srcdir@%$srcdir%g
  s%@top_srcdir@%$top_srcdir%g
  s%@INSTALL@%$INSTALL%g
! " $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
  fi; done
! rm -f conftest.s*
  
+ EOF
+ cat >> $CONFIG_STATUS <<EOF
  
+ EOF
+ cat >> $CONFIG_STATUS <<\EOF
  
  exit 0
  EOF
Index: harvest/components/gatherer/WordPerfect/configure
diff -c harvest/components/gatherer/WordPerfect/configure:2.0 harvest/components/gatherer/WordPerfect/configure:2.1
*** harvest/components/gatherer/WordPerfect/configure:2.0	Sun Mar 16 17:01:02 1997
--- harvest/components/gatherer/WordPerfect/configure	Tue Nov  4 13:14:53 1997
***************
*** 1073,1078 ****
--- 1073,1079 ----
  ac_given_INSTALL="$INSTALL"
  
  trap 'rm -fr `echo "\
+ 	Makefile \
  	wp2x-2.3/Makefile \
  	wp2x-2.3/cfgs/Makefile \
  " | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
***************
*** 1161,1166 ****
--- 1162,1168 ----
  cat >> $CONFIG_STATUS <<EOF
  
  CONFIG_FILES=\${CONFIG_FILES-"\
+ 	Makefile \
  	wp2x-2.3/Makefile \
  	wp2x-2.3/cfgs/Makefile \
  "}
Index: harvest/components/gatherer/WordPerfect/configure.in
diff -c harvest/components/gatherer/WordPerfect/configure.in:2.0 harvest/components/gatherer/WordPerfect/configure.in:2.1
*** harvest/components/gatherer/WordPerfect/configure.in:2.0	Sun Mar 16 17:01:04 1997
--- harvest/components/gatherer/WordPerfect/configure.in	Tue Nov  4 13:14:54 1997
***************
*** 1,9 ****
! dnl
! dnl  Configuration input file for Harvest uses autoconf 1.11.
! dnl
! dnl  Darren Hardy, hardy@cs.colorado.edu, July 1994
! dnl
! dnl  configure.in,v 1.6 1995/07/20 02:09:48 hardy Exp
  dnl
  
  AC_PREREQ(2.12)
--- 1,4 ----
! dnl configure.in,v 2.1 1997/11/04 18:14:54 sxw Exp
  dnl
  
  AC_PREREQ(2.12)
***************
*** 62,67 ****
--- 57,63 ----
  rm -f core 
  
  AC_OUTPUT(\
+ 	Makefile \
  	wp2x-2.3/Makefile \
  	wp2x-2.3/cfgs/Makefile \
  )
Index: harvest/components/gatherer/WordPerfect/wp2x-2.3/Makefile.in
diff -c harvest/components/gatherer/WordPerfect/wp2x-2.3/Makefile.in:2.1 harvest/components/gatherer/WordPerfect/wp2x-2.3/Makefile.in:2.2
*** harvest/components/gatherer/WordPerfect/wp2x-2.3/Makefile.in:2.1	Thu Sep 11 12:14:22 1997
--- harvest/components/gatherer/WordPerfect/wp2x-2.3/Makefile.in	Tue Nov  4 13:14:55 1997
***************
*** 1,8 ****
  #
  #  Makefile for wp2x as a component to the Harvest Gatherer
  #
! #  Makefile.in,v 2.1 1997/09/11 16:14:22 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR  = $(prefix)/bin
  INSTALL_LIBDIR  = $(prefix)/lib
--- 1,11 ----
  #
  #  Makefile for wp2x as a component to the Harvest Gatherer
  #
! #  Makefile.in,v 2.2 1997/11/04 18:14:55 sxw Exp
  #
+ srcdir = @srcdir@
+ VPATH  = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR  = $(prefix)/bin
  INSTALL_LIBDIR  = $(prefix)/lib
***************
*** 38,45 ****
  		mkdir $(WP2X_DIR); \
  	fi
  	$(INSTALL_BIN) wp2x $(INSTALL_UTILDIR)
! 	$(INSTALL_BIN) wp2x.sh $(INSTALL_UTILDIR)
! 	$(INSTALL_BIN) WordPerfect.sum $(INSTALL_UTILDIR)
  	(cd $(CFGDIR); make install)
  
  clean:
--- 41,48 ----
  		mkdir $(WP2X_DIR); \
  	fi
  	$(INSTALL_BIN) wp2x $(INSTALL_UTILDIR)
! 	$(INSTALL_BIN) $(srcdir)/wp2x.sh $(INSTALL_UTILDIR)
! 	$(INSTALL_BIN) $(srcdir)/WordPerfect.sum $(INSTALL_UTILDIR)
  	(cd $(CFGDIR); make install)
  
  clean:
Index: harvest/components/gatherer/standard/configure
diff -c harvest/components/gatherer/standard/configure:2.1 harvest/components/gatherer/standard/configure:2.2
*** harvest/components/gatherer/standard/configure:2.1	Fri May 30 13:49:10 1997
--- harvest/components/gatherer/standard/configure	Tue Nov  4 13:14:57 1997
***************
*** 1462,1472 ****
  	SGML/sgmls/Makefile \
  	dvi2tty/Makefile \
  	ps2txt/Makefile \
  	pstext/libs/Makefile \
- 	pstext/libs/src/sio/Makefile \
  	pstext/libs/src/Makefile \
  	pstext/libs/src/str/Makefile \
- 	pstext/Makefile \
  	pstext/pstext/Makefile \
  	skim/Makefile \
  	summarizers/Makefile \
--- 1462,1472 ----
  	SGML/sgmls/Makefile \
  	dvi2tty/Makefile \
  	ps2txt/Makefile \
+ 	pstext/Makefile \
  	pstext/libs/Makefile \
  	pstext/libs/src/Makefile \
+ 	pstext/libs/src/sio/Makefile \
  	pstext/libs/src/str/Makefile \
  	pstext/pstext/Makefile \
  	skim/Makefile \
  	summarizers/Makefile \
***************
*** 1575,1585 ****
  	SGML/sgmls/Makefile \
  	dvi2tty/Makefile \
  	ps2txt/Makefile \
  	pstext/libs/Makefile \
- 	pstext/libs/src/sio/Makefile \
  	pstext/libs/src/Makefile \
  	pstext/libs/src/str/Makefile \
- 	pstext/Makefile \
  	pstext/pstext/Makefile \
  	skim/Makefile \
  	summarizers/Makefile \
--- 1575,1585 ----
  	SGML/sgmls/Makefile \
  	dvi2tty/Makefile \
  	ps2txt/Makefile \
+ 	pstext/Makefile \
  	pstext/libs/Makefile \
  	pstext/libs/src/Makefile \
+ 	pstext/libs/src/sio/Makefile \
  	pstext/libs/src/str/Makefile \
  	pstext/pstext/Makefile \
  	skim/Makefile \
  	summarizers/Makefile \
Index: harvest/components/gatherer/standard/configure.in
diff -c harvest/components/gatherer/standard/configure.in:2.2 harvest/components/gatherer/standard/configure.in:2.3
*** harvest/components/gatherer/standard/configure.in:2.2	Fri May 30 13:49:11 1997
--- harvest/components/gatherer/standard/configure.in	Tue Nov  4 13:15:02 1997
***************
*** 3,9 ****
  dnl
  dnl  Darren Hardy, hardy@cs.colorado.edu, July 1994
  dnl
! dnl  configure.in,v 2.2 1997/05/30 17:49:11 sxw Exp
  dnl
  
  AC_PREREQ(2.12)
--- 3,9 ----
  dnl
  dnl  Darren Hardy, hardy@cs.colorado.edu, July 1994
  dnl
! dnl  configure.in,v 2.3 1997/11/04 18:15:02 sxw Exp
  dnl
  
  AC_PREREQ(2.12)
***************
*** 97,107 ****
  	SGML/sgmls/Makefile \
  	dvi2tty/Makefile \
  	ps2txt/Makefile \
  	pstext/libs/Makefile \
- 	pstext/libs/src/sio/Makefile \
  	pstext/libs/src/Makefile \
  	pstext/libs/src/str/Makefile \
- 	pstext/Makefile \
  	pstext/pstext/Makefile \
  	skim/Makefile \
  	summarizers/Makefile \
--- 97,107 ----
  	SGML/sgmls/Makefile \
  	dvi2tty/Makefile \
  	ps2txt/Makefile \
+ 	pstext/Makefile \
  	pstext/libs/Makefile \
  	pstext/libs/src/Makefile \
+ 	pstext/libs/src/sio/Makefile \
  	pstext/libs/src/str/Makefile \
  	pstext/pstext/Makefile \
  	skim/Makefile \
  	summarizers/Makefile \
Index: harvest/components/gatherer/standard/SGML/Makefile.in
diff -c harvest/components/gatherer/standard/SGML/Makefile.in:2.2 harvest/components/gatherer/standard/SGML/Makefile.in:2.3
*** harvest/components/gatherer/standard/SGML/Makefile.in:2.2	Thu Sep 11 12:14:26 1997
--- harvest/components/gatherer/standard/SGML/Makefile.in	Tue Nov  4 13:15:03 1997
***************
*** 1,8 ****
  #
  #  Makefile for the SGML summarizers for the Harvest Indexer
  #
! # Makefile.in,v 2.2 1997/09/11 16:14:26 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,12 ----
  #
  #  Makefile for the SGML summarizers for the Harvest Indexer
  #
! # Makefile.in,v 2.3 1997/11/04 18:15:03 sxw Exp
  #
+ 
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 28,39 ****
  
  this-install:
  	@for f in $(SCRIPTS); do \
! 		if [ -f $$f ]; then \
! 			echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
! 			$(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
! 		fi; \
  	done
! 	cp -rp sgmls-lib $(INSTALL_UTILDIR)
  
  this-distclean:
  	-rm -f Makefile
--- 32,41 ----
  
  this-install:
  	@for f in $(SCRIPTS); do \
! 		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
! 		$(INSTALL_BIN) $(srcdir)/$$f $(INSTALL_UTILDIR); \
  	done
! 	cp -rp $(srcdir)/sgmls-lib $(INSTALL_UTILDIR)
  
  this-distclean:
  	-rm -f Makefile
Index: harvest/components/gatherer/standard/SGML/sgmls/Makefile.in
diff -c harvest/components/gatherer/standard/SGML/sgmls/Makefile.in:2.2 harvest/components/gatherer/standard/SGML/sgmls/Makefile.in:2.3
*** harvest/components/gatherer/standard/SGML/sgmls/Makefile.in:2.2	Thu Sep 11 12:14:28 1997
--- harvest/components/gatherer/standard/SGML/sgmls/Makefile.in	Tue Nov  4 13:15:04 1997
***************
*** 1,4 ****
! #
  prefix = @prefix@
  INSTALL_BINDIR  = $(prefix)/bin
  INSTALL_LIBDIR  = $(prefix)/lib
--- 1,8 ----
! # Makefile.in,v 2.3 1997/11/04 18:15:04 sxw Exp
! 
! srcdir = @srcdir@
! VPATH = $(srcdir)
! 
  prefix = @prefix@
  INSTALL_BINDIR  = $(prefix)/bin
  INSTALL_LIBDIR  = $(prefix)/lib
***************
*** 14,20 ****
  DEBUG           = $(DEBUG_TOP) #-O #-g #-DDEBUG
  DEBUG_LIBS      =
  
! CFLAGS          = $(DEBUG)
  
  # You shouldn't need to change anything after this point.
  
--- 18,24 ----
  DEBUG           = $(DEBUG_TOP) #-O #-g #-DDEBUG
  DEBUG_LIBS      =
  
! CFLAGS          = $(DEBUG) -I. -I$(srcdir)
  
  # You shouldn't need to change anything after this point.
  
***************
*** 111,119 ****
  	@echo Generating config.h from unix.cfg.
  	@echo If this fails, copy unix.cfg to config.h and then edit config.h.
  	@echo This may take a minute or two...
! 	chmod +x configure
  	CC="$(CC)" CFLAGS="$(CFLAGS)" LIBS="$(LIBS)" prefix="$(prefix)" \
! 	  ./configure
  
  lextabe.c: genlex
  	-rm -f lextabe.c
--- 115,123 ----
  	@echo Generating config.h from unix.cfg.
  	@echo If this fails, copy unix.cfg to config.h and then edit config.h.
  	@echo This may take a minute or two...
! 	chmod +x $(srcdir)/configure
  	CC="$(CC)" CFLAGS="$(CFLAGS)" LIBS="$(LIBS)" prefix="$(prefix)" \
! 	config="$(srcdir)/unix.cfg"  $(srcdir)/configure
  
  lextabe.c: genlex
  	-rm -f lextabe.c
Index: harvest/components/gatherer/standard/SGML/sgmls/configure
diff -c harvest/components/gatherer/standard/SGML/sgmls/configure:2.1 harvest/components/gatherer/standard/SGML/sgmls/configure:2.2
*** harvest/components/gatherer/standard/SGML/sgmls/configure:2.1	Mon Apr 21 16:10:13 1997
--- harvest/components/gatherer/standard/SGML/sgmls/configure	Tue Nov  4 13:15:05 1997
***************
*** 610,616 ****
  	edit="$edit -e '/DEFAULT_PATH/s;/usr/local;$prefix;g'"
  fi
  
! eval sed $edit unix.cfg ">config.out"
  
  mv config.out config.h
  
--- 610,616 ----
  	edit="$edit -e '/DEFAULT_PATH/s;/usr/local;$prefix;g'"
  fi
  
! eval sed $edit $config ">config.out"
  
  mv config.out config.h
  
Index: harvest/components/gatherer/standard/dvi2tty/Makefile.in
diff -c harvest/components/gatherer/standard/dvi2tty/Makefile.in:2.1 harvest/components/gatherer/standard/dvi2tty/Makefile.in:2.2
*** harvest/components/gatherer/standard/dvi2tty/Makefile.in:2.1	Thu Sep 11 12:14:29 1997
--- harvest/components/gatherer/standard/dvi2tty/Makefile.in	Tue Nov  4 13:15:06 1997
***************
*** 1,5 ****
--- 1,10 ----
  # Makefile for dvi2tty and disdvi       23/01/89   M.J.E. Mol
  #
+ # Makefile.in,v 2.2 1997/11/04 18:15:06 sxw Exp
+ 
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
Index: harvest/components/gatherer/standard/ps2txt/Makefile.in
diff -c harvest/components/gatherer/standard/ps2txt/Makefile.in:2.2 harvest/components/gatherer/standard/ps2txt/Makefile.in:2.3
*** harvest/components/gatherer/standard/ps2txt/Makefile.in:2.2	Thu Sep 11 12:14:30 1997
--- harvest/components/gatherer/standard/ps2txt/Makefile.in	Tue Nov  4 13:15:07 1997
***************
*** 1,6 ****
  # Makefile for ps2txt
  #
! # Makefile.in,v 2.2 1997/09/11 16:14:30 sxw Exp
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
--- 1,9 ----
  # Makefile for ps2txt
  #
! # Makefile.in,v 2.3 1997/11/04 18:15:07 sxw Exp
! 
! srcdir = @srcdir@
! VPATH = $(srcdir)
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
Index: harvest/components/gatherer/standard/pstext/libs/Makefile.in
diff -c harvest/components/gatherer/standard/pstext/libs/Makefile.in:2.2 harvest/components/gatherer/standard/pstext/libs/Makefile.in:2.3
*** harvest/components/gatherer/standard/pstext/libs/Makefile.in:2.2	Thu Sep 11 12:14:32 1997
--- harvest/components/gatherer/standard/pstext/libs/Makefile.in	Tue Nov  4 13:15:09 1997
***************
*** 1,4 ****
! # Makefile.in,v 2.2 1997/09/11 16:14:32 sxw Exp
  
  SUBDIRS	= src
  
--- 1,4 ----
! # Makefile.in,v 2.3 1997/11/04 18:15:09 sxw Exp
  
  SUBDIRS	= src
  
***************
*** 13,19 ****
  INSTALL_FILE 	= @INSTALL_DATA@
  RANLIB		= @RANLIB@
  
! all: do-all this-all
  clean: do-clean this-clean
  distclean: do-distclean this-distclean
  install: do-install 
--- 13,19 ----
  INSTALL_FILE 	= @INSTALL_DATA@
  RANLIB		= @RANLIB@
  
! all: this-all do-all 
  clean: do-clean this-clean
  distclean: do-distclean this-distclean
  install: do-install 
***************
*** 21,28 ****
  this-all:
  	@if [ ! -d ./lib ]; then \
  		mkdir ./lib; \
- 	else \
- 		echo "lib directory already made."; \
  	fi;
  
  this-clean:
--- 21,26 ----
Index: harvest/components/gatherer/standard/pstext/libs/src/sio/Makefile.in
diff -c harvest/components/gatherer/standard/pstext/libs/src/sio/Makefile.in:2.2 harvest/components/gatherer/standard/pstext/libs/src/sio/Makefile.in:2.3
*** harvest/components/gatherer/standard/pstext/libs/src/sio/Makefile.in:2.2	Thu Sep 11 12:14:36 1997
--- harvest/components/gatherer/standard/pstext/libs/src/sio/Makefile.in	Tue Nov  4 13:15:10 1997
***************
*** 3,9 ****
  # and conditions for redistribution.
  
  #
! # Makefile.in,v 2.2 1997/09/11 16:14:36 sxw Exp
  #
  
  # 
--- 3,9 ----
  # and conditions for redistribution.
  
  #
! # Makefile.in,v 2.3 1997/11/04 18:15:10 sxw Exp
  #
  
  # 
***************
*** 18,23 ****
--- 18,26 ----
  #     checkout    --> checkout all files
  #     dist        --> distribution support
  #
+ 
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
  
  NAME           = sio
  VERSION        = 1.6.2
Index: harvest/components/gatherer/standard/pstext/libs/src/str/Makefile.in
diff -c harvest/components/gatherer/standard/pstext/libs/src/str/Makefile.in:2.2 harvest/components/gatherer/standard/pstext/libs/src/str/Makefile.in:2.3
*** harvest/components/gatherer/standard/pstext/libs/src/str/Makefile.in:2.2	Thu Sep 11 12:14:37 1997
--- harvest/components/gatherer/standard/pstext/libs/src/str/Makefile.in	Tue Nov  4 13:15:11 1997
***************
*** 3,9 ****
  # and conditions for redistribution.
  
  #
! # Makefile.in,v 2.2 1997/09/11 16:14:37 sxw Exp
  #
  
  # 
--- 3,9 ----
  # and conditions for redistribution.
  
  #
! # Makefile.in,v 2.3 1997/11/04 18:15:11 sxw Exp
  #
  
  # 
***************
*** 19,24 ****
--- 19,27 ----
  #     dist        --> distribution support
  #
  
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  NAME           = str
  VERSION        = 1.3.3
  
***************
*** 40,46 ****
  #
  LIBDIR         = ../../lib
  MANDIR         = ../../man
! INCLUDEDIR     = ../../include
  
  #
  # Available flags
--- 43,49 ----
  #
  LIBDIR         = ../../lib
  MANDIR         = ../../man
! INCLUDEDIR     = $(srcdir)/../../include
  
  #
  # Available flags
Index: harvest/components/gatherer/standard/pstext/pstext/Makefile.in
diff -c harvest/components/gatherer/standard/pstext/pstext/Makefile.in:2.2 harvest/components/gatherer/standard/pstext/pstext/Makefile.in:2.3
*** harvest/components/gatherer/standard/pstext/pstext/Makefile.in:2.2	Thu Sep 11 12:14:38 1997
--- harvest/components/gatherer/standard/pstext/pstext/Makefile.in	Tue Nov  4 13:15:12 1997
***************
*** 3,9 ****
  # and conditions for redistribution.
  
  #
! # Makefile.in,v 2.2 1997/09/11 16:14:38 sxw Exp
  #
  
  #
--- 3,9 ----
  # and conditions for redistribution.
  
  #
! # Makefile.in,v 2.3 1997/11/04 18:15:12 sxw Exp
  #
  
  #
***************
*** 12,17 ****
--- 12,19 ----
  #     install     --> install the program
  #     clean       --> cleanup
  #
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
  
  NAME              = pstext
  VERSION           = 1.0.9
***************
*** 35,41 ****
  OBJECTS           = $(OBJS) $(OPT_OBJECT)
  
  
! INCLUDEDIR        = -I../libs/include
  INSTALLDIR        = $(BINDIR)
  
  
--- 37,43 ----
  OBJECTS           = $(OBJS) $(OPT_OBJECT)
  
  
! INCLUDEDIR        = -I$(srcdir)/../libs/include
  INSTALLDIR        = $(BINDIR)
  
  
Index: harvest/components/gatherer/standard/skim/Makefile.in
diff -c harvest/components/gatherer/standard/skim/Makefile.in:2.1 harvest/components/gatherer/standard/skim/Makefile.in:2.2
*** harvest/components/gatherer/standard/skim/Makefile.in:2.1	Thu Sep 11 12:14:39 1997
--- harvest/components/gatherer/standard/skim/Makefile.in	Tue Nov  4 13:15:13 1997
***************
*** 1,4 ****
! # Makefile.in,v 2.1 1997/09/11 16:14:39 sxw Exp
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,8 ----
! # Makefile.in,v 2.2 1997/11/04 18:15:13 sxw Exp
! 
! srcdir = @srcdir@
! VPATH = $(srcdir)
! 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
Index: harvest/components/gatherer/standard/summarizers/Makefile.in
diff -c harvest/components/gatherer/standard/summarizers/Makefile.in:2.4 harvest/components/gatherer/standard/summarizers/Makefile.in:2.5
*** harvest/components/gatherer/standard/summarizers/Makefile.in:2.4	Thu Sep 25 10:00:38 1997
--- harvest/components/gatherer/standard/summarizers/Makefile.in	Tue Nov  4 13:15:14 1997
***************
*** 1,7 ****
  #
  #  Makefile for the standard Harvest Gatherer summarizers
  #
! # Makefile.in,v 2.4 1997/09/25 14:00:38 sxw Exp
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
--- 1,10 ----
  #
  #  Makefile for the standard Harvest Gatherer summarizers
  #
! # Makefile.in,v 2.5 1997/11/04 18:15:14 sxw Exp
! 
! srcdir = @srcdir@
! VPATH = $(srcdir)
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
***************
*** 20,27 ****
  DEBUG_LDFLAGS   =
  DEBUG_LIBS      =
  INCLUDE         = -I../../../../src/common/include \
! 		  -I../../../../src/gatherer/enumerate \
! 		  -I../include
  CFLAGS          = $(DEBUG) $(INCLUDE)
  LIBDIR          = ../../../../src/common/lib
  LDFLAGS         = -L$(LIBDIR)
--- 23,31 ----
  DEBUG_LDFLAGS   =
  DEBUG_LIBS      =
  INCLUDE         = -I../../../../src/common/include \
! 		  -I$(srcdir)/../../../../src/common/include \
! 		  -I$(srcdir)/../../../../src/gatherer/enumerate \
! 		  -I$(srcdir)/../include
  CFLAGS          = $(DEBUG) $(INCLUDE)
  LIBDIR          = ../../../../src/common/lib
  LDFLAGS         = -L$(LIBDIR)
***************
*** 72,78 ****
  install:	all
  	@for f in $(SCRIPTS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
! 		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
  	done
  	@for f in $(PROGS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
--- 76,82 ----
  install:	all
  	@for f in $(SCRIPTS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
! 		$(INSTALL_BIN) $(srcdir)/$$f $(INSTALL_UTILDIR)/$$f; \
  	done
  	@for f in $(PROGS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
Index: harvest/components/gatherer/standard/support/Makefile.in
diff -c harvest/components/gatherer/standard/support/Makefile.in:2.2 harvest/components/gatherer/standard/support/Makefile.in:2.3
*** harvest/components/gatherer/standard/support/Makefile.in:2.2	Thu Sep 11 14:06:04 1997
--- harvest/components/gatherer/standard/support/Makefile.in	Tue Nov  4 13:15:16 1997
***************
*** 1,10 ****
  #
  #  Makefile for Essence support programs
  #
! #  Makefile.in,v 2.2 1997/09/11 18:06:04 sxw Exp
  #
  ######################################################################
  
  prefix=@prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_UTILDIR	= $(INSTALL_LIBDIR)/gatherer
--- 1,13 ----
  #
  #  Makefile for Essence support programs
  #
! #  Makefile.in,v 2.3 1997/11/04 18:15:16 sxw Exp
  #
  ######################################################################
  
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix=@prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_UTILDIR	= $(INSTALL_LIBDIR)/gatherer
***************
*** 27,35 ****
  all:		$(SCRIPTS) $(BINS)
  
  install:	all
! 	@for f in $(BINS) $(SCRIPTS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  	done
  
  clean:
--- 30,42 ----
  all:		$(SCRIPTS) $(BINS)
  
  install:	all
! 	@for f in $(BINS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
+ 	done
+ 	@for f in $(SCRIPTS); do \
+ 		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
+ 		$(INSTALL_BIN) $(srcdir)/$$f $(INSTALL_UTILDIR); \
  	done
  
  clean:
Index: harvest/components/gatherer/standard/unbinhex/Makefile.in
diff -c harvest/components/gatherer/standard/unbinhex/Makefile.in:2.1 harvest/components/gatherer/standard/unbinhex/Makefile.in:2.2
*** harvest/components/gatherer/standard/unbinhex/Makefile.in:2.1	Thu Sep 11 12:14:43 1997
--- harvest/components/gatherer/standard/unbinhex/Makefile.in	Tue Nov  4 13:15:17 1997
***************
*** 1,4 ****
! # Makefile.in,v 2.1 1997/09/11 16:14:43 sxw Exp
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
--- 1,7 ----
! # Makefile.in,v 2.2 1997/11/04 18:15:17 sxw Exp
! 
! srcdir = @srcdir@
! VPATH = $(srcdir)
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
Index: harvest/components/gatherer/standard/unbinhex/crc/Makefile.in
diff -c harvest/components/gatherer/standard/unbinhex/crc/Makefile.in:2.1 harvest/components/gatherer/standard/unbinhex/crc/Makefile.in:2.2
*** harvest/components/gatherer/standard/unbinhex/crc/Makefile.in:2.1	Thu Sep 11 12:14:44 1997
--- harvest/components/gatherer/standard/unbinhex/crc/Makefile.in	Tue Nov  4 13:15:18 1997
***************
*** 1,4 ****
! # Makefile.in,v 2.1 1997/09/11 16:14:44 sxw Exp
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
--- 1,7 ----
! # Makefile.in,v 2.2 1997/11/04 18:15:18 sxw Exp
! 
! srcdir = @srcdir@
! VPATH = $(srcdir)
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
Index: harvest/components/gatherer/standard/unbinhex/fileio/Makefile.in
diff -c harvest/components/gatherer/standard/unbinhex/fileio/Makefile.in:2.1 harvest/components/gatherer/standard/unbinhex/fileio/Makefile.in:2.2
*** harvest/components/gatherer/standard/unbinhex/fileio/Makefile.in:2.1	Thu Sep 11 12:14:46 1997
--- harvest/components/gatherer/standard/unbinhex/fileio/Makefile.in	Tue Nov  4 13:15:19 1997
***************
*** 1,4 ****
! # Makefile.in,v 2.1 1997/09/11 16:14:46 sxw Exp
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
--- 1,7 ----
! # Makefile.in,v 2.2 1997/11/04 18:15:19 sxw Exp
! 
! srcdir = @srcdir@
! VPATH = $(srcdir)
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
Index: harvest/components/gatherer/standard/unbinhex/hexbin/Makefile.in
diff -c harvest/components/gatherer/standard/unbinhex/hexbin/Makefile.in:2.1 harvest/components/gatherer/standard/unbinhex/hexbin/Makefile.in:2.2
*** harvest/components/gatherer/standard/unbinhex/hexbin/Makefile.in:2.1	Thu Sep 11 12:14:47 1997
--- harvest/components/gatherer/standard/unbinhex/hexbin/Makefile.in	Tue Nov  4 13:15:20 1997
***************
*** 1,4 ****
! # Makefile.in,v 2.1 1997/09/11 16:14:47 sxw Exp
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
--- 1,7 ----
! # Makefile.in,v 2.2 1997/11/04 18:15:20 sxw Exp
! 
! srcdir = @srcdir@
! VPATH = $(srcdir)
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
***************
*** 37,43 ****
  install:	all
  	$(INSTALL_BIN) $(PROG) $(INSTALL_UTILDIR)
  
- hexbin.o:	globals.h
  hexbin.o:	crc.h
  hexbin.o:	readline.h
  hexbin.o:	../util/masks.h
--- 40,45 ----
Index: harvest/components/gatherer/standard/unbinhex/util/Makefile.in
diff -c harvest/components/gatherer/standard/unbinhex/util/Makefile.in:2.1 harvest/components/gatherer/standard/unbinhex/util/Makefile.in:2.2
*** harvest/components/gatherer/standard/unbinhex/util/Makefile.in:2.1	Thu Sep 11 12:14:50 1997
--- harvest/components/gatherer/standard/unbinhex/util/Makefile.in	Tue Nov  4 13:15:21 1997
***************
*** 1,4 ****
! # Makefile.in,v 2.1 1997/09/11 16:14:50 sxw Exp
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
--- 1,7 ----
! # Makefile.in,v 2.2 1997/11/04 18:15:21 sxw Exp
! 
! srcdir = @srcdir@
! VPATH = $(srcdir)
  
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
Index: harvest/src/Makefile.in
diff -c harvest/src/Makefile.in:2.2 harvest/src/Makefile.in:2.3
*** harvest/src/Makefile.in:2.2	Sun Oct 12 16:04:03 1997
--- harvest/src/Makefile.in	Tue Nov  4 13:15:23 1997
***************
*** 1,10 ****
  #
  #  Makefile for the Harvest source tree
  # 
! #  Makefile.in,v 2.2 1997/10/12 20:04:03 sxw Exp
  #
  #  --------------------------------------------------------------------
  
  SUBDIRS	= common gatherer broker
  
  prefix = @prefix@
--- 1,13 ----
  #
  #  Makefile for the Harvest source tree
  # 
! #  Makefile.in,v 2.3 1997/11/04 18:15:23 sxw Exp
  #
  #  --------------------------------------------------------------------
  
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  SUBDIRS	= common gatherer broker
  
  prefix = @prefix@
***************
*** 27,35 ****
  install: this-install do-install 
  
  this-install: install-mkdir
! 	/bin/sh make-symlinks.sh "$(prefix)"
! 	$(INSTALL_BIN) Harvest $(INSTALL_BINDIR)/Harvest 
! 	$(INSTALL_BIN) RunHarvest $(prefix)/RunHarvest
  
  this-distclean:
  	-rm -f config.status config.log config.cache Makefile
--- 30,38 ----
  install: this-install do-install 
  
  this-install: install-mkdir
! 	/bin/sh $(srcdir)/make-symlinks.sh "$(prefix)"
! 	$(INSTALL_BIN) $(srcdir)/Harvest $(INSTALL_BINDIR)/Harvest 
! 	$(INSTALL_BIN) $(srcdir)/RunHarvest $(prefix)/RunHarvest
  
  this-distclean:
  	-rm -f config.status config.log config.cache Makefile
Index: harvest/src/broker/Makefile.in
diff -c harvest/src/broker/Makefile.in:2.4 harvest/src/broker/Makefile.in:2.5
*** harvest/src/broker/Makefile.in:2.4	Mon Oct 27 17:47:06 1997
--- harvest/src/broker/Makefile.in	Tue Nov  4 13:15:24 1997
***************
*** 1,8 ****
  #
  #  Makefile for the Harvest Broker
  #
! #  Makefile.in,v 2.4 1997/10/27 22:47:06 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,12 ----
  #
  #  Makefile for the Harvest Broker
  #
! #  Makefile.in,v 2.5 1997/11/04 18:15:24 sxw Exp
  #
+ 
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 30,46 ****
  #		  Grass/index.o
  #		  PLWeb/index.o
  
  INDEX_SUPPORT	= -DUSE_GLIMPSE -DUSE_WAIS -DUSE_SWISH
  #		  -DUSE_NEBULA
  #		  -DUSE_VERITY
  #		  -DUSE_PLWEB
  
! CFLAGS		= $(DEBUG) -I../common/include -I.
  LDFLAGS		= -L../common/lib
  LIBS		= -ltemplate -lutil $(DEBUG_LIBS) $(LEXLIB) $(XTRA_LIBS)
  
! PROGS		= broker CreateBroker
! UTILS		= dumpregistry brkclient mkbrokerstats.pl info-to-html.pl
  OBJS		= lex.yy.o y.tab.o \
  		  admin.o brkutil.o collector.o event.o gid.o \
  		  log.o parser.o query_man.o registry.o \
--- 34,58 ----
  #		  Grass/index.o
  #		  PLWeb/index.o
  
+ INDEX_DIRS	= Glimpse Wais Swish
+ #		  Netfind
+ #		  Grass
+ #		  PLWeb
+ 
  INDEX_SUPPORT	= -DUSE_GLIMPSE -DUSE_WAIS -DUSE_SWISH
  #		  -DUSE_NEBULA
  #		  -DUSE_VERITY
  #		  -DUSE_PLWEB
  
! INCLUDE		= -I../common/include -I$(srcdir)/../common/include -I. \
! 		  -I$(srcdir)
! CFLAGS		= $(DEBUG) $(INCLUDE)
  LDFLAGS		= -L../common/lib
  LIBS		= -ltemplate -lutil $(DEBUG_LIBS) $(LEXLIB) $(XTRA_LIBS)
  
! PROGS		= broker 
! UTILS		= dumpregistry brkclient 
! SCRIPTS		= mkbrokerstats.pl info-to-html.pl
  OBJS		= lex.yy.o y.tab.o \
  		  admin.o brkutil.o collector.o event.o gid.o \
  		  log.o parser.o query_man.o registry.o \
***************
*** 57,99 ****
  #
  
  
! all:	broker CreateBroker $(UTILS)
  
  broker:	$(OBJS)
  	$(CC) -o $@ $(OBJS) $(LDFLAGS) $(LIBS)
  
  main.o: main.c
! 	$(CC) -c -o $@ $(INDEX_SUPPORT) $(CFLAGS) main.c
  
  Wais/index.o:	Wais/index.c
! 	$(CC) $(CFLAGS) -c -o $@ Wais/index.c
  
  # ptr to the WAIS, Inc.'s client-toolkit directory
  WAIS_CLTDIR = /usr/local/wais/current/client-toolkit
  Wais/waisquery.o:	Wais/waisquery.c
! 	$(CC) -I$(WAIS_CLTDIR)/include $(CFLAGS) -c -o $@ Wais/waisquery.c
  
  broker.inline-wais:	$(OBJS) Wais/waisquery.o
! 	$(CC) $(CFLAGS) -DUSE_WAIS_INLINE -c -o $@ Wais/index.c
  	$(CC) -o $@ $(OBJS) Wais/waisquery.o $(LDFLAGS) $(LIBS) -L$(WAIS_CLTDIR)/lib -lCli -lCliZ1988 -lCliZV2 -lm
  
  Glimpse/index.o:	Glimpse/index.c
! 	$(CC) $(CFLAGS) -c -o $@ Glimpse/index.c
  
  Grass/index.o:	Grass/index.c
! 	$(CC) $(CFLAGS) -c -o $@ Grass/index.c
  
  Swish/index.o:                Swish/index.c
! 	$(CC) $(CFLAGS) -c -o $@ Swish/index.c
  
  dumpregistry:	stor_reg.o dumpregistry.o brkutil.o gid.o
  	$(CC) -o $@ stor_reg.o dumpregistry.o brkutil.o gid.o $(LDFLAGS) $(LIBS)
  
  y.tab.c y.tab.h:	query.y 
! 	$(YACC) $(YFLAGS) query.y
  
  lex.yy.c:	query.l y.tab.h
! 	$(LEX) $(LFLAGS) query.l
  
  clean:
  	-rm -f core *.o broker gather dumpregistry brkclient y.tab.c y.tab.h lex.yy.c tags $(INDEX_OBJS)
--- 69,119 ----
  #
  
  
! all:	indexdirs broker CreateBroker $(UTILS)
! 
! indexdirs: 
! 	@for dir in $(INDEX_DIRS); do \
! 		if test ! -d $$dir; then \
! 			mkdir $$dir; \
! 			chmod a+x $$dir; \
! 		fi \
! 	done
  
  broker:	$(OBJS)
  	$(CC) -o $@ $(OBJS) $(LDFLAGS) $(LIBS)
  
  main.o: main.c
! 	$(CC) -c -o $@ $(INDEX_SUPPORT) $(CFLAGS) $<
  
  Wais/index.o:	Wais/index.c
! 	$(CC) $(CFLAGS) -c -o $@ $<
  
  # ptr to the WAIS, Inc.'s client-toolkit directory
  WAIS_CLTDIR = /usr/local/wais/current/client-toolkit
  Wais/waisquery.o:	Wais/waisquery.c
! 	$(CC) -I$(WAIS_CLTDIR)/include $(CFLAGS) -c -o $@ $<
  
  broker.inline-wais:	$(OBJS) Wais/waisquery.o
! 	$(CC) $(CFLAGS) -DUSE_WAIS_INLINE -c -o $@ $<
  	$(CC) -o $@ $(OBJS) Wais/waisquery.o $(LDFLAGS) $(LIBS) -L$(WAIS_CLTDIR)/lib -lCli -lCliZ1988 -lCliZV2 -lm
  
  Glimpse/index.o:	Glimpse/index.c
! 	$(CC) $(CFLAGS) -c -o $@ $<
  
  Grass/index.o:	Grass/index.c
! 	$(CC) $(CFLAGS) -c -o $@ $<
  
  Swish/index.o:                Swish/index.c
! 	$(CC) $(CFLAGS) -c -o $@ $<
  
  dumpregistry:	stor_reg.o dumpregistry.o brkutil.o gid.o
  	$(CC) -o $@ stor_reg.o dumpregistry.o brkutil.o gid.o $(LDFLAGS) $(LIBS)
  
  y.tab.c y.tab.h:	query.y 
! 	$(YACC) $(YFLAGS) $<
  
  lex.yy.c:	query.l y.tab.h
! 	$(LEX) $(LFLAGS) $(srcdir)/query.l
  
  clean:
  	-rm -f core *.o broker gather dumpregistry brkclient y.tab.c y.tab.h lex.yy.c tags $(INDEX_OBJS)
***************
*** 106,122 ****
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
  		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
  	done
  	@for f in $(PROGS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_BINDIR)/$$f; \
  		$(INSTALL_BIN) $$f $(INSTALL_BINDIR)/$$f; \
  	done
  	@for f in ctime.pl; do \
  		echo $(INSTALL_FILE) $$f $(INSTALL_LIBDIR)/$$f; \
! 		$(INSTALL_FILE) $$f $(INSTALL_LIBDIR)/$$f; \
  	done
! 	-find example/brokers -type d -print | xargs chmod go+x
! 	-find example/brokers -type f -print | xargs chmod go+r
! 	cd example; find brokers -depth -print | cpio -pdvu $(prefix)/
  
  brkclient:	brkclient.o
  	$(CC) -o $@ $@.o $(LDFLAGS) $(XTRA_LIBS)
--- 126,147 ----
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
  		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
  	done
+ 	@for f in $(SCRIPTS); do \
+ 		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR)/$$f; \
+ 		$(INSTALL_BIN) $(srcdir)/$$f $(INSTALL_UTILDIR)/$$f; \
+ 	done
  	@for f in $(PROGS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_BINDIR)/$$f; \
  		$(INSTALL_BIN) $$f $(INSTALL_BINDIR)/$$f; \
  	done
+ 	$(INSTALL_BIN) $(srcdir)/CreateBroker $(INSTALL_BINDIR)/CreateBroker	
  	@for f in ctime.pl; do \
  		echo $(INSTALL_FILE) $$f $(INSTALL_LIBDIR)/$$f; \
! 		$(INSTALL_FILE) $(srcdir)/$$f $(INSTALL_LIBDIR)/$$f; \
  	done
! 	-find $(srcdir)/example/brokers -type d -print | xargs chmod go+x
! 	-find $(srcdir)/example/brokers -type f -print | xargs chmod go+r
! 	cd $(srcdir)/example; find brokers -depth -print | cpio -pdvu $(prefix)/
  
  brkclient:	brkclient.o
  	$(CC) -o $@ $@.o $(LDFLAGS) $(XTRA_LIBS)
Index: harvest/src/common/Makefile.in
diff -c harvest/src/common/Makefile.in:2.2 harvest/src/common/Makefile.in:2.3
*** harvest/src/common/Makefile.in:2.2	Thu Sep 11 13:14:33 1997
--- harvest/src/common/Makefile.in	Tue Nov  4 13:15:25 1997
***************
*** 1,7 ****
  #
  #  Makefile for the common source directory
  #
! #  Makefile.in,v 2.2 1997/09/11 17:14:33 sxw Exp
  #
  SUBDIRS		= md5 util url template regex
  
--- 1,7 ----
  #
  #  Makefile for the common source directory
  #
! #  Makefile.in,v 2.3 1997/11/04 18:15:25 sxw Exp
  #
  SUBDIRS		= md5 util url template regex
  
***************
*** 24,30 ****
  distclean: do-distclean this-distclean
  install: do-install
  
! this-all:	all-gdbm
  
  this-clean:
  	@(cd gdbm; $(MAKE) $(MFLAGS) clean)
--- 24,30 ----
  distclean: do-distclean this-distclean
  install: do-install
  
! this-all:	lib-dir all-gdbm
  
  this-clean:
  	@(cd gdbm; $(MAKE) $(MFLAGS) clean)
***************
*** 38,44 ****
  #
  #  Compiles and installs gdbm from scratch.  Works with gdbm-1.7.3
  #
! all-gdbm:
  	@echo Making all in gdbm
  	rm -f gdbm/autoconf.h
  	@if (cd gdbm; $(LN_S) ../include/autoconf.h autoconf.h; \
--- 38,44 ----
  #
  #  Compiles and installs gdbm from scratch.  Works with gdbm-1.7.3
  #
! all-gdbm: 
  	@echo Making all in gdbm
  	rm -f gdbm/autoconf.h
  	@if (cd gdbm; $(LN_S) ../include/autoconf.h autoconf.h; \
***************
*** 47,52 ****
--- 47,59 ----
  	$(INSTALL_FILE) gdbm/gdbm.h include/gdbm.h; \
  	$(INSTALL_FILE) gdbm/libgdbm.a lib/libgdbm.a; \
  	$(RANLIB) lib/libgdbm.a
+ 
+ lib-dir: 
+ 	@if test ! -d lib; then \
+ 		mkdir lib; \
+ 		echo chmod a+x lib; \
+ 		chmod a+x lib; \
+ 	fi;
  
  DO_X = do-clean do-distclean do-all do-install
  
Index: harvest/src/common/md5/Makefile.in
diff -c harvest/src/common/md5/Makefile.in:2.3 harvest/src/common/md5/Makefile.in:2.4
*** harvest/src/common/md5/Makefile.in:2.3	Thu Sep 11 12:15:01 1997
--- harvest/src/common/md5/Makefile.in	Tue Nov  4 13:15:26 1997
***************
*** 1,8 ****
  #
  #  Makefile for MD5 library code and example
  #
! #  Makefile.in,v 2.3 1997/09/11 16:15:01 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,12 ----
  #
  #  Makefile for MD5 library code and example
  #
! #  Makefile.in,v 2.4 1997/11/04 18:15:26 sxw Exp
  #
+ 
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
Index: harvest/src/common/regex/Makefile.in
diff -c harvest/src/common/regex/Makefile.in:2.1 harvest/src/common/regex/Makefile.in:2.2
*** harvest/src/common/regex/Makefile.in:2.1	Thu Sep 11 12:15:02 1997
--- harvest/src/common/regex/Makefile.in	Tue Nov  4 13:15:28 1997
***************
*** 1,8 ****
  #
  #  Makefile for POSIX regex library code
  #
! #  Makefile.in,v 2.1 1997/09/11 16:15:02 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,12 ----
  #
  #  Makefile for POSIX regex library code
  #
! #  Makefile.in,v 2.2 1997/11/04 18:15:28 sxw Exp
  #
+ 
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 14,21 ****
  INSTALL_FILE 	= @INSTALL_DATA@
  RANLIB		= @RANLIB@
  
  DEBUG		= $(DEBUG_TOP)
! CFLAGS		= $(DEBUG) -I../include
  LIBDIR		= ../lib
  LIBFILE		= libregex.a
  
--- 18,26 ----
  INSTALL_FILE 	= @INSTALL_DATA@
  RANLIB		= @RANLIB@
  
+ INCLUDES	= -I$(srcdir)/../include -I../include
  DEBUG		= $(DEBUG_TOP)
! CFLAGS		= $(DEBUG) $(INCLUDES)
  LIBDIR		= ../lib
  LIBFILE		= libregex.a
  
Index: harvest/src/common/template/Makefile.in
diff -c harvest/src/common/template/Makefile.in:2.2 harvest/src/common/template/Makefile.in:2.3
*** harvest/src/common/template/Makefile.in:2.2	Sun Oct 12 18:22:26 1997
--- harvest/src/common/template/Makefile.in	Tue Nov  4 13:15:31 1997
***************
*** 1,8 ****
  #
  #  Makefile for the SOIF template processing code
  #
! #  Makefile.in,v 2.2 1997/10/12 22:22:26 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,12 ----
  #
  #  Makefile for the SOIF template processing code
  #
! #  Makefile.in,v 2.3 1997/11/04 18:15:31 sxw Exp
  #
+ 
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 16,26 ****
  RANLIB		= @RANLIB@
  XTRA_LIBS	= @XTRA_LIBS@
  LN_S		= @LN_S@
  
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG
  DEBUG_LIBS	=
  
! CFLAGS		= $(DEBUG) -I../include
  OBJS 		= template.o
  LIBDIR		= ../lib
  LDFLAGS		= -L$(LIBDIR)
--- 20,31 ----
  RANLIB		= @RANLIB@
  XTRA_LIBS	= @XTRA_LIBS@
  LN_S		= @LN_S@
+ INCLUDES	= -I../include -I$(srcdir)/../include
  
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG
  DEBUG_LIBS	=
  
! CFLAGS		= $(DEBUG) $(INCLUDES)
  OBJS 		= template.o
  LIBDIR		= ../lib
  LDFLAGS		= -L$(LIBDIR)
***************
*** 42,54 ****
  	-rm -f Makefile
  
  install: all
! 	@for f in $(BINS) $(SCRIPTS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  	done
  	@for f in soif.pl soif-mem-efficient.pl; do \
  		echo $(INSTALL_FILE) $$f $(INSTALL_LIBDIR); \
! 		$(INSTALL_FILE) $$f $(INSTALL_LIBDIR); \
  	done
  
  install-lib:	$(LIBDIR)/$(LIBFILE)
--- 47,63 ----
  	-rm -f Makefile
  
  install: all
! 	@for f in $(BINS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  	done
+ 	@for f in $(SCRIPTS); do \
+ 		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
+ 		$(INSTALL_BIN) $(srcdir)/$$f $(INSTALL_UTILDIR); \
+ 	done
  	@for f in soif.pl soif-mem-efficient.pl; do \
  		echo $(INSTALL_FILE) $$f $(INSTALL_LIBDIR); \
! 		$(INSTALL_FILE) $(srcdir)/$$f $(INSTALL_LIBDIR); \
  	done
  
  install-lib:	$(LIBDIR)/$(LIBFILE)
Index: harvest/src/common/url/Makefile.in
diff -c harvest/src/common/url/Makefile.in:2.7 harvest/src/common/url/Makefile.in:2.8
*** harvest/src/common/url/Makefile.in:2.7	Thu Sep 11 13:14:35 1997
--- harvest/src/common/url/Makefile.in	Tue Nov  4 13:15:32 1997
***************
*** 1,8 ****
  #
  #  Makefile for simple liburl
  #
! #  Makefile.in,v 2.7 1997/09/11 17:14:35 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,12 ----
  #
  #  Makefile for simple liburl
  #
! #  Makefile.in,v 2.8 1997/11/04 18:15:32 sxw Exp
  #
+ 
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 14,19 ****
--- 18,24 ----
  INSTALL_FILE 	= @INSTALL_DATA@
  RANLIB		= @RANLIB@
  XTRA_LIBS	= @XTRA_LIBS@
+ INCLUDES	= -I../include -I$(srcdir)/../include -I.
  
  PERL		= @PERL@
  
***************
*** 47,56 ****
  #CCACHE_LDFLAGS	=
  #CCACHE_LIBS	=
  
! CFLAGS		= $(DEBUG) $(CACHE_FLAGS) -I../include
  OBJS 		= rfc850.o rfc1738.o gopher.o ftp.o http.o url.o news.o \
  		  url_relative.o $(CACHE_OBJS) $(CCACHE_OBJS) localmap.o
! PROGS		= gopherget.pl newsget.pl test-socket-ph.pl ftpget
  UTILS		= urlget urlpurge
  LIBDIR		= ../lib
  LDFLAGS		= -L$(LIBDIR) $(CACHE_LDFLAGS) $(CCACHE_LDFLAGS)
--- 52,62 ----
  #CCACHE_LDFLAGS	=
  #CCACHE_LIBS	=
  
! CFLAGS		= $(DEBUG) $(CACHE_FLAGS) $(INCLUDES)
  OBJS 		= rfc850.o rfc1738.o gopher.o ftp.o http.o url.o news.o \
  		  url_relative.o $(CACHE_OBJS) $(CCACHE_OBJS) localmap.o
! SCRIPTS		= gopherget.pl newsget.pl test-socket-ph.pl
! PROGS		= ftpget
  UTILS		= urlget urlpurge
  LIBDIR		= ../lib
  LDFLAGS		= -L$(LIBDIR) $(CACHE_LDFLAGS) $(CCACHE_LDFLAGS)
***************
*** 79,85 ****
  ftpget.o: mime_table.h
  
  mime_table.h: mime.table mk-mime-table-h.pl
! 	$(PERL) mk-mime-table-h.pl < mime.table > $@ || rm -f $@
  
  socket.ph:	mk-socket-ph
  	./mk-socket-ph > $@
--- 85,92 ----
  ftpget.o: mime_table.h
  
  mime_table.h: mime.table mk-mime-table-h.pl
! 	$(PERL) $(srcdir)/mk-mime-table-h.pl < $(srcdir)/mime.table > $@ \
! 	|| rm -f $@
  
  socket.ph:	mk-socket-ph
  	./mk-socket-ph > $@
***************
*** 95,101 ****
  	-rm -f Makefile
  
  install:	all
! 	@for f in $(PROGS) $(GENPROGS) $(UTILS) $(PERLS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_LIBDIR); \
  		$(INSTALL_BIN) $$f $(INSTALL_LIBDIR); \
  	done
--- 102,112 ----
  	-rm -f Makefile
  
  install:	all
! 	@for f in $(SCRIPTS) $(PERLS); do \
! 		echo $(INSTALL_BIN) $$f $(INSTALL_LIBDIR); \
! 		$(INSTALL_BIN) $(srcdir)/$$f $(INSTALL_LIBDIR); \
! 	done
! 	@for f in $(PROGS) $(GENPROGS) $(UTILS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_LIBDIR); \
  		$(INSTALL_BIN) $$f $(INSTALL_LIBDIR); \
  	done
Index: harvest/src/common/url/http.c
diff -c harvest/src/common/url/http.c:2.3 harvest/src/common/url/http.c:2.5
*** harvest/src/common/url/http.c:2.3	Tue Jul  1 15:33:33 1997
--- harvest/src/common/url/http.c	Fri Oct 31 12:11:06 1997
***************
*** 1,4 ****
! static char rcsid[] = "http.c,v 2.3 1997/07/01 19:33:33 sxw Exp";
  /*
   *  http.c - URL processing for http-specific URLs.  HTTP/1.0 compliant.
   *
--- 1,4 ----
! static char rcsid[] = "http.c,v 2.5 1997/10/31 17:11:06 sxw Exp";
  /*
   *  http.c - URL processing for http-specific URLs.  HTTP/1.0 compliant.
   *
***************
*** 268,273 ****
--- 268,274 ----
  	char *bufp = NULL;
  	char *host = NULL;
  	char *http_proxy = getenv("http_proxy");
+ 	char *accept = getenv("HARVEST_HTTP_ACCEPT");
  	char *p = NULL;
  	char *request = 0;
  	char *t = NULL;
***************
*** 344,349 ****
--- 345,359 ----
  /* A minor HTTP/1.1 addition - make Harvest send the Host: header --JLa */
          sprintf(buf, "Host: %s\r\n",up->host);
          add_buffer(reqbuf, buf, strlen(buf));
+ /* Send an Accept: Header. This is part of HTTP/1.0 */
+ 	if (accept==NULL) {
+ 	  sprintf(buf, "Accept: */*\r\n");
+ 	  add_buffer(reqbuf, buf, strlen(buf));
+ 	}
+ 	else if (accept[0]!='\0') {
+ 	  sprintf(buf, "Accept: %s\n",accept);
+ 	  add_buffer(reqbuf, buf, strlen(buf));
+ 	}
  	if (up->lmt > 0) {
  		sprintf(buf, "If-Modified-Since: %s\r\n", mkrfc850(&(up->lmt)));
  		add_buffer(reqbuf, buf, strlen(buf));
Index: harvest/src/common/util/Makefile.in
diff -c harvest/src/common/util/Makefile.in:2.1 harvest/src/common/util/Makefile.in:2.2
*** harvest/src/common/util/Makefile.in:2.1	Thu Sep 11 12:15:06 1997
--- harvest/src/common/util/Makefile.in	Tue Nov  4 13:15:33 1997
***************
*** 1,8 ****
  #
  #  Makefile for the utilities source directory 
  #
! #  Makefile.in,v 2.1 1997/09/11 16:15:06 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,12 ----
  #
  #  Makefile for the utilities source directory 
  #
! #  Makefile.in,v 2.2 1997/11/04 18:15:33 sxw Exp
  #
+ 
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 15,21 ****
  RANLIB		= @RANLIB@
  
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG
! INCLUDE		= -I../include
  CFLAGS		= $(DEBUG) $(INCLUDE)
  
  LIBFILE		= libutil.a 
--- 19,25 ----
  RANLIB		= @RANLIB@
  
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG
! INCLUDE		= -I../include -I$(srcdir)/../include
  CFLAGS		= $(DEBUG) $(INCLUDE)
  
  LIBFILE		= libutil.a 
Index: harvest/src/gatherer/Makefile.in
diff -c harvest/src/gatherer/Makefile.in:2.2 harvest/src/gatherer/Makefile.in:2.3
*** harvest/src/gatherer/Makefile.in:2.2	Thu Sep 11 12:15:07 1997
--- harvest/src/gatherer/Makefile.in	Tue Nov  4 13:15:34 1997
***************
*** 1,7 ****
  #
  #  Makefile for the Gatherer source directory
  #
! #  Makefile.in,v 2.2 1997/09/11 16:15:07 sxw Exp
  #
  SUBDIRS		= essence db enumerate gatherd mgmt example
  
--- 1,7 ----
  #
  #  Makefile for the Gatherer source directory
  #
! #  Makefile.in,v 2.3 1997/11/04 18:15:34 sxw Exp
  #
  SUBDIRS		= essence db enumerate gatherd mgmt example
  
***************
*** 17,23 ****
  RANLIB		= @RANLIB@
  DEBUG_TOP	= @DEBUG_TOP@
  
! all: do-all
  clean: do-clean this-clean
  distclean: do-distclean this-distclean
  install: do-install
--- 17,23 ----
  RANLIB		= @RANLIB@
  DEBUG_TOP	= @DEBUG_TOP@
  
! all: lib-dir do-all
  clean: do-clean this-clean
  distclean: do-distclean this-distclean
  install: do-install
***************
*** 29,34 ****
--- 29,40 ----
  this-clean:
  	-rm -f lib/*.a lib/core
  
+ lib-dir:
+ 	@if test ! -d lib; then \
+ 	        mkdir lib; \
+ 	        chmod a+x lib; \
+ 	fi;
+ 	
  DO_X = do-clean do-distclean do-all do-install
  
  $(DO_X):
Index: harvest/src/gatherer/db/Makefile.in
diff -c harvest/src/gatherer/db/Makefile.in:2.1 harvest/src/gatherer/db/Makefile.in:2.2
*** harvest/src/gatherer/db/Makefile.in:2.1	Thu Sep 11 12:15:08 1997
--- harvest/src/gatherer/db/Makefile.in	Tue Nov  4 13:15:36 1997
***************
*** 1,8 ****
  #
  #  Makefile for the database manipulation source directory 
  #
! #  Makefile.in,v 2.1 1997/09/11 16:15:08 sxw Exp
  #
  SUBDIRS		= gdbmutil
  
  prefix = @prefix@
--- 1,11 ----
  #
  #  Makefile for the database manipulation source directory 
  #
! #  Makefile.in,v 2.2 1997/11/04 18:15:36 sxw Exp
  #
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  SUBDIRS		= gdbmutil
  
  prefix = @prefix@
***************
*** 29,35 ****
  DEFINES		=
  
  LIBDIR		= ../../common/lib
! INCLUDE		= -I../../common/include $(GDBM_INCLUDE)
  LDFLAGS		= -L$(LIBDIR) $(GDBM_LDFLAGS)
  LIBS		= -ltemplate -lutil $(GDBM_LIBS) $(DEBUG_LIBS) $(XTRA_LIBS)
  
--- 32,39 ----
  DEFINES		=
  
  LIBDIR		= ../../common/lib
! INCLUDE		= -I$(srcdir)/../../common/include -I../../common/include \
! 		  $(GDBM_INCLUDE)
  LDFLAGS		= -L$(LIBDIR) $(GDBM_LDFLAGS)
  LIBS		= -ltemplate -lutil $(GDBM_LIBS) $(DEBUG_LIBS) $(XTRA_LIBS)
  
***************
*** 55,70 ****
  	-rm -f Makefile
  
  this-install:	this-all 
! 	@for f in $(PROGS) $(SCRIPTS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  	done
  
  mergedb template2db rmbinary consoldb cleandb extractdb expiredb:	
! 	$(CC) $(CFLAGS) -o $@ $@.c $(LDFLAGS) $(LIBS)
  
  dbcheck:	
! 	$(CC) $(CFLAGS) -o $@ $@.c $(LDFLAGS) -lurl -lmd5 $(LIBS)
  
  mergedb:	mergedb.c 
  template2db:	template2db.c
--- 59,78 ----
  	-rm -f Makefile
  
  this-install:	this-all 
! 	@for f in $(PROGS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  	done
+ 	@for f in $(SCRIPTS); do \
+ 		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
+ 		$(INSTALL_BIN) $(srcdir)/$$f $(INSTALL_UTILDIR); \
+ 	done
  
  mergedb template2db rmbinary consoldb cleandb extractdb expiredb:	
! 	$(CC) $(CFLAGS) -o $@ $(srcdir)/$@.c $(LDFLAGS) $(LIBS)
  
  dbcheck:	
! 	$(CC) $(CFLAGS) -o $@ $(srcdir)/$@.c $(LDFLAGS) -lurl -lmd5 $(LIBS)
  
  mergedb:	mergedb.c 
  template2db:	template2db.c
Index: harvest/src/gatherer/db/gdbmutil/Makefile.in
diff -c harvest/src/gatherer/db/gdbmutil/Makefile.in:2.1 harvest/src/gatherer/db/gdbmutil/Makefile.in:2.2
*** harvest/src/gatherer/db/gdbmutil/Makefile.in:2.1	Thu Sep 11 12:15:10 1997
--- harvest/src/gatherer/db/gdbmutil/Makefile.in	Tue Nov  4 13:15:37 1997
***************
*** 1,6 ****
--- 1,9 ----
  #
  #  Makefile for the GDBM database utilities source directory 
  #
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 25,31 ****
  DEFINES		=
  
  LIBDIR		= ../../../common/lib
! INCLUDE		= -I../../../common/include $(GDBM_INCLUDE)
  LDFLAGS		= -L$(LIBDIR) $(GDBM_LDFLAGS)
  LIBS		= -lutil $(GDBM_LIBS) $(DEBUG_LIBS) $(XTRA_LIBS)
  
--- 28,35 ----
  DEFINES		=
  
  LIBDIR		= ../../../common/lib
! INCLUDE		= -I../../../common/include -I$(srcdir)/../../../common/include \
! 		  $(GDBM_INCLUDE)
  LDFLAGS		= -L$(LIBDIR) $(GDBM_LDFLAGS)
  LIBS		= -lutil $(GDBM_LIBS) $(DEBUG_LIBS) $(XTRA_LIBS)
  
Index: harvest/src/gatherer/enumerate/Makefile.in
diff -c harvest/src/gatherer/enumerate/Makefile.in:2.2 harvest/src/gatherer/enumerate/Makefile.in:2.3
*** harvest/src/gatherer/enumerate/Makefile.in:2.2	Thu Sep 11 12:15:11 1997
--- harvest/src/gatherer/enumerate/Makefile.in	Tue Nov  4 13:15:38 1997
***************
*** 1,8 ****
  #
  #  Makefile for the enumerators
  #
! #  Makefile.in,v 2.2 1997/09/11 16:15:11 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,11 ----
  #
  #  Makefile for the enumerators
  #
! #  Makefile.in,v 2.3 1997/11/04 18:15:38 sxw Exp
  #
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 21,27 ****
  DEBUG_LDFLAGS	=
  DEBUG_LIBS	= 
  
! INCLUDE		= -I../../common/include -I../include
  CFLAGS		= $(DEBUG) $(INCLUDE)
  LIBDIR		= ../../common/lib
  LDFLAGS		= -L$(LIBDIR)
--- 24,31 ----
  DEBUG_LDFLAGS	=
  DEBUG_LIBS	= 
  
! INCLUDE		= -I../../common/include -I../include \
! 		  -I$(srcdir)/../../common/include -I$(srcdir)/../include
  CFLAGS		= $(DEBUG) $(INCLUDE)
  LIBDIR		= ../../common/lib
  LDFLAGS		= -L$(LIBDIR)
***************
*** 45,61 ****
  install:	all install-bin
  	@for f in $(GLIBFILES); do \
  		echo $(INSTALL_FILE) $$f $(INSTALL_UTILDIR); \
! 		$(INSTALL_FILE) $$f $(INSTALL_UTILDIR); \
  	done
  
  install-bin:	$(PROGS)
! 	@for f in $(PROGS) $(SCRIPTS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  	done
  	@for f in $(PERLS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_LIBDIR); \
! 		$(INSTALL_BIN) $$f $(INSTALL_LIBDIR); \
  	done
  
  
--- 49,69 ----
  install:	all install-bin
  	@for f in $(GLIBFILES); do \
  		echo $(INSTALL_FILE) $$f $(INSTALL_UTILDIR); \
! 		$(INSTALL_FILE) $(srcdir)/$$f $(INSTALL_UTILDIR); \
  	done
  
  install-bin:	$(PROGS)
! 	@for f in $(PROGS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  	done
+ 	@for f in $(SCRIPTS); do \
+ 		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
+ 		$(INSTALL_BIN) $(srcdir)/$$f $(INSTALL_UTILDIR); \
+ 	done
  	@for f in $(PERLS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_LIBDIR); \
! 		$(INSTALL_BIN) $(srcdir)/$$f $(INSTALL_LIBDIR); \
  	done
  
  
Index: harvest/src/gatherer/essence/Makefile.in
diff -c harvest/src/gatherer/essence/Makefile.in:2.2 harvest/src/gatherer/essence/Makefile.in:2.3
*** harvest/src/gatherer/essence/Makefile.in:2.2	Thu Sep 11 12:15:12 1997
--- harvest/src/gatherer/essence/Makefile.in	Tue Nov  4 13:15:39 1997
***************
*** 1,8 ****
  #
  #  Makefile for the Essence source directory 
  #
! #  Makefile.in,v 2.2 1997/09/11 16:15:12 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,11 ----
  #
  #  Makefile for the Essence source directory 
  #
! #  Makefile.in,v 2.3 1997/11/04 18:15:39 sxw Exp
  #
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 67,73 ****
  # Objects relating to Post-processing 
  PPOBJS		= post_process.o lex.yy.o y.tab.o
  
! INCLUDE		= -I../../common/include -I../include
  
  CFLAGS		= $(DEBUG) $(INCLUDE)
  ALL_CFLAGS	= $(CFLAGS) $(GDBM_FLAGS) $(REGEX_FLAGS) 
--- 70,77 ----
  # Objects relating to Post-processing 
  PPOBJS		= post_process.o lex.yy.o y.tab.o
  
! INCLUDE		= -I$(srcdir)/../../common/include -I../../common/include \
! 		  -I$(srcdir)/../include -I.
  
  CFLAGS		= $(DEBUG) $(INCLUDE)
  ALL_CFLAGS	= $(CFLAGS) $(GDBM_FLAGS) $(REGEX_FLAGS) 
***************
*** 84,91 ****
  CONFIGS		= byname-$(REGEX_TYPE).cf \
  		  bycontent-$(REGEX_TYPE).cf \
  		  byurl-$(REGEX_TYPE).cf \
! 		  stoplist.cf \
! 		  $(FILEDIR)/magic 
  MAIN		= main.o
  PROGS		= essence 
  
--- 88,94 ----
  CONFIGS		= byname-$(REGEX_TYPE).cf \
  		  bycontent-$(REGEX_TYPE).cf \
  		  byurl-$(REGEX_TYPE).cf \
! 		  stoplist.cf
  MAIN		= main.o
  PROGS		= essence 
  
***************
*** 129,138 ****
  	done
  	@for f in $(CONFIGS); do \
  		echo $(INSTALL_FILE) $$f $(INSTALL_UTILDIR); \
! 		$(INSTALL_FILE) $$f $(INSTALL_UTILDIR); \
  	done
! 	$(INSTALL_FILE) quick-sum.cf $(INSTALL_UTILDIR)
! 	$(INSTALL_BIN) quick-sum $(INSTALL_UTILDIR)
  	-$(RM) $(INSTALL_UTILDIR)/byname.cf $(INSTALL_UTILDIR)/bycontent.cf \
  	       $(INSTALL_UTILDIR)/byurl.cf
  	$(MV)   $(INSTALL_UTILDIR)/byname-$(REGEX_TYPE).cf \
--- 132,142 ----
  	done
  	@for f in $(CONFIGS); do \
  		echo $(INSTALL_FILE) $$f $(INSTALL_UTILDIR); \
! 		$(INSTALL_FILE) $(srcdir)/$$f $(INSTALL_UTILDIR); \
  	done
! 	$(INSTALL_FILE) $(FILEDIR)/magic $(INSTALL_UTILDIR)
! 	$(INSTALL_FILE) $(srcdir)/quick-sum.cf $(INSTALL_UTILDIR)
! 	$(INSTALL_BIN) $(srcdir)/quick-sum $(INSTALL_UTILDIR)
  	-$(RM) $(INSTALL_UTILDIR)/byname.cf $(INSTALL_UTILDIR)/bycontent.cf \
  	       $(INSTALL_UTILDIR)/byurl.cf
  	$(MV)   $(INSTALL_UTILDIR)/byname-$(REGEX_TYPE).cf \
***************
*** 170,190 ****
  	 else exit 1; fi;
  
  recognize.o:	recognize.c
! 	$(CC) $(CFLAGS) $(REGEX_FLAGS) -c recognize.c
  
  summarize.o:	summarize.c
! 	$(CC) $(CFLAGS) $(REGEX_FLAGS) -c summarize.c
  
  main.o:	main.c
! 	$(CC) $(CFLAGS) $(REGEX_FLAGS) -DUSE_INSTALL_LIBDIR=\"$(INSTALL_UTILDIR)\" -c main.c
  
  db.o:	db.c
! 	$(CC) $(CFLAGS) $(GDBM_FLAGS) -c db.c
  
  $(PPOBJS): y.tab.h
  
  y.tab.c y.tab.h:	pp_rules.y
! 	$(YACC) $(YFLAGS) pp_rules.y
  
  lex.yy.c:	pp_rules.l y.tab.h
! 	$(LEX) $(LFLAGS) pp_rules.l
--- 174,194 ----
  	 else exit 1; fi;
  
  recognize.o:	recognize.c
! 	$(CC) $(CFLAGS) $(REGEX_FLAGS) -c $<
  
  summarize.o:	summarize.c
! 	$(CC) $(CFLAGS) $(REGEX_FLAGS) -c $<
  
  main.o:	main.c
! 	$(CC) $(CFLAGS) $(REGEX_FLAGS) -DUSE_INSTALL_LIBDIR=\"$(INSTALL_UTILDIR)\" -c $<
  
  db.o:	db.c
! 	$(CC) $(CFLAGS) $(GDBM_FLAGS) -c $<
  
  $(PPOBJS): y.tab.h
  
  y.tab.c y.tab.h:	pp_rules.y
! 	$(YACC) $(YFLAGS) $<
  
  lex.yy.c:	pp_rules.l y.tab.h
! 	$(LEX) $(LFLAGS) $(srcdir)/pp_rules.l
Index: harvest/src/gatherer/essence/file/Makefile.in
diff -c harvest/src/gatherer/essence/file/Makefile.in:2.1 harvest/src/gatherer/essence/file/Makefile.in:2.2
*** harvest/src/gatherer/essence/file/Makefile.in:2.1	Thu Sep 11 12:15:13 1997
--- harvest/src/gatherer/essence/file/Makefile.in	Tue Nov  4 13:15:40 1997
***************
*** 2,7 ****
--- 2,10 ----
  #  Makefile for the file(1) command used with Essence
  #  Copyright (c) Ian F. Darwin 86/09/01 - see LEGAL.NOTICE.
  #
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 15,50 ****
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG
  
  MAGIC		= $(INSTALL_LIBDIR)/magic
! MAGIC_FILES	= magdir/aa \
! 		  magdir/aalocal \
! 		  magdir/archive \
! 		  magdir/bib \
! 		  magdir/c \
! 		  magdir/commands \
! 		  magdir/compress \
! 		  magdir/dec \
! 		  magdir/diff \
! 		  magdir/ditroff \
! 		  magdir/faces \
! 		  magdir/fonts \
! 		  magdir/frame \
! 		  magdir/gif \
! 		  magdir/gnu \
! 		  magdir/html \
! 		  magdir/magic \
! 		  magdir/mail.news \
! 		  magdir/misc \
! 		  magdir/misc2 \
! 		  magdir/next \
! 		  magdir/postscript \
! 		  magdir/rasterfile \
! 		  magdir/sccs \
! 		  magdir/soif \
! 		  magdir/sun \
! 		  magdir/tiff \
! 		  magdir/troff 
  
! INCLUDES        = -I. -I../../../common/include
  CFLAGS          = $(DEBUG) $(LIBDEFS) $(INCLUDES)
  OBJS 		= file.o apprentice.o fsmagic.o softmagic.o ascmagic.o \
  		  is_tar.o print.o 
--- 18,54 ----
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG
  
  MAGIC		= $(INSTALL_LIBDIR)/magic
! MAGIC_FILES	= $(srcdir)/magdir/aa \
! 		  $(srcdir)/magdir/aalocal \
! 		  $(srcdir)/magdir/archive \
! 		  $(srcdir)/magdir/bib \
! 		  $(srcdir)/magdir/c \
! 		  $(srcdir)/magdir/commands \
! 		  $(srcdir)/magdir/compress \
! 		  $(srcdir)/magdir/dec \
! 		  $(srcdir)/magdir/diff \
! 		  $(srcdir)/magdir/ditroff \
! 		  $(srcdir)/magdir/faces \
! 		  $(srcdir)/magdir/fonts \
! 		  $(srcdir)/magdir/frame \
! 		  $(srcdir)/magdir/gif \
! 		  $(srcdir)/magdir/gnu \
! 		  $(srcdir)/magdir/html \
! 		  $(srcdir)/magdir/magic \
! 		  $(srcdir)/magdir/mail.news \
! 		  $(srcdir)/magdir/misc \
! 		  $(srcdir)/magdir/misc2 \
! 		  $(srcdir)/magdir/next \
! 		  $(srcdir)/magdir/postscript \
! 		  $(srcdir)/magdir/rasterfile \
! 		  $(srcdir)/magdir/sccs \
! 		  $(srcdir)/magdir/soif \
! 		  $(srcdir)/magdir/sun \
! 		  $(srcdir)/magdir/tiff \
! 		  $(srcdir)/magdir/troff 
  
! INCLUDES        = -I. -I$(srcdir)/../../../common/include \
! 		  -I../../../common/include
  CFLAGS          = $(DEBUG) $(LIBDEFS) $(INCLUDES)
  OBJS 		= file.o apprentice.o fsmagic.o softmagic.o ascmagic.o \
  		  is_tar.o print.o 
***************
*** 74,77 ****
  		-rm -f Makefile
  
  file.o:		file.c
! 	$(CC) $(CFLAGS) -DMAGIC='"$(MAGIC)"' -c file.c
--- 78,81 ----
  		-rm -f Makefile
  
  file.o:		file.c
! 	$(CC) $(CFLAGS) -DMAGIC='"$(MAGIC)"' -c $<
Index: harvest/src/gatherer/example/Makefile.in
diff -c harvest/src/gatherer/example/Makefile.in:2.2 harvest/src/gatherer/example/Makefile.in:2.3
*** harvest/src/gatherer/example/Makefile.in:2.2	Thu Sep 11 12:15:14 1997
--- harvest/src/gatherer/example/Makefile.in	Tue Nov  4 13:15:41 1997
***************
*** 1,9 ****
  #
  #  Makefile for the Gatherer example directory
  #
! #  Makefile.in,v 2.2 1997/09/11 16:15:14 sxw Exp
  #
  
  prefix = @prefix@
  INSTALL_TOPDIR	= $(prefix)
  INSTALL_BINDIR	= $(prefix)/bin
--- 1,12 ----
  #
  #  Makefile for the Gatherer example directory
  #
! #  Makefile.in,v 2.3 1997/11/04 18:15:41 sxw Exp
  #
  
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_TOPDIR	= $(prefix)
  INSTALL_BINDIR	= $(prefix)/bin
***************
*** 17,29 ****
  RANLIB		= @RANLIB@
  
  all:
! 	chmod 755 gatherers/*/RunGatherer
  
  # copy the example gatherers into the libdir
  install:	all
  #	cp -rp gatherers $(INSTALL_TOPDIR)
  #	find $(INSTALL_TOPDIR)/gatherers -name "*.in" -print -exec rm -f {} \;
! 	find gatherers -name '*.in' -prune -o -type f -print | cpio -pdu $(prefix)/ 2>/dev/null
  
  clean:
  
--- 20,35 ----
  RANLIB		= @RANLIB@
  
  all:
! 	chmod 755 $(srcdir)/gatherers/*/RunGatherer
  
  # copy the example gatherers into the libdir
  install:	all
  #	cp -rp gatherers $(INSTALL_TOPDIR)
  #	find $(INSTALL_TOPDIR)/gatherers -name "*.in" -print -exec rm -f {} \;
! 	(cd $(srcdir) ; \
! 	 find gatherers -name '*.in' -prune -o -type f -print | \
! 	 cpio -pdu $(prefix)/ 2>/dev/null; \
! 	)
  
  clean:
  
Index: harvest/src/gatherer/gatherd/Makefile.in
diff -c harvest/src/gatherer/gatherd/Makefile.in:2.2 harvest/src/gatherer/gatherd/Makefile.in:2.3
*** harvest/src/gatherer/gatherd/Makefile.in:2.2	Thu Sep 11 12:15:15 1997
--- harvest/src/gatherer/gatherd/Makefile.in	Tue Nov  4 13:15:43 1997
***************
*** 1,8 ****
  #
  #  Makefile for the Gatherer-Collector server interface.
  #
! #  Makefile.in,v 2.2 1997/09/11 16:15:15 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,11 ----
  #
  #  Makefile for the Gatherer-Collector server interface.
  #
! #  Makefile.in,v 2.3 1997/11/04 18:15:43 sxw Exp
  #
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 20,31 ****
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG
  DEBUG_LIBS	= 
  CFLAGS 		= $(DEBUG) $(INCLUDE)
! INCLUDE		= -I../../common/include 
  LDFLAGS		= -L../../common/lib 
  LIBS		= -ltemplate -lutil -lgdbm $(DEBUG_LIBS) $(XTRA_LIBS)
  OBJS		= gatherd.o collect.o
  PROGS		= gather 
! UTILS		= gatherd mkindex mkcompressed kill-gatherd
  
  all:		$(PROGS) $(UTILS)
  
--- 23,35 ----
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG
  DEBUG_LIBS	= 
  CFLAGS 		= $(DEBUG) $(INCLUDE)
! INCLUDE		= -I../../common/include -I$(srcdir)/../../common/include 
  LDFLAGS		= -L../../common/lib 
  LIBS		= -ltemplate -lutil -lgdbm $(DEBUG_LIBS) $(XTRA_LIBS)
  OBJS		= gatherd.o collect.o
  PROGS		= gather 
! UTILS		= gatherd mkindex 
! SCRIPTS		= mkcompressed kill-gatherd
  
  all:		$(PROGS) $(UTILS)
  
***************
*** 37,42 ****
--- 41,50 ----
  	@for f in $(UTILS); do \
  		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
  		$(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
+ 	done
+ 	@for f in $(SCRIPTS); do \
+ 		echo $(INSTALL_BIN) $$f $(INSTALL_UTILDIR); \
+ 		$(INSTALL_BIN) $(srcdir)/$$f $(INSTALL_UTILDIR); \
  	done
  	-rm -f $(INSTALL_UTILDIR)/in.gatherd
  	(cd $(INSTALL_UTILDIR) && $(LN_S) gatherd in.gatherd)
Index: harvest/src/gatherer/mgmt/Makefile.in
diff -c harvest/src/gatherer/mgmt/Makefile.in:2.2 harvest/src/gatherer/mgmt/Makefile.in:2.3
*** harvest/src/gatherer/mgmt/Makefile.in:2.2	Thu Sep 11 12:15:18 1997
--- harvest/src/gatherer/mgmt/Makefile.in	Tue Nov  4 13:15:44 1997
***************
*** 1,8 ****
  #
  #  Makefile for the Gatherer management and configuration software
  #
! #  Makefile.in,v 2.2 1997/09/11 16:15:18 sxw Exp
  #
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
--- 1,12 ----
  #
  #  Makefile for the Gatherer management and configuration software
  #
! #  Makefile.in,v 2.3 1997/11/04 18:15:44 sxw Exp
  #
+ 
+ srcdir = @srcdir@
+ VPATH = $(srcdir)
+ 
  prefix = @prefix@
  INSTALL_BINDIR	= $(prefix)/bin
  INSTALL_LIBDIR	= $(prefix)/lib
***************
*** 18,24 ****
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG
  DEBUG_LDFLAGS	=
  DEBUG_LIBS	= 
! INCLUDE		= -I../../common/include 
  CFLAGS		= $(DEBUG) $(INCLUDE)
  LIBDIR		= ../../common/lib
  LDFLAGS		= -L$(LIBDIR) 
--- 22,28 ----
  DEBUG		= $(DEBUG_TOP) #-O #-g #-DDEBUG
  DEBUG_LDFLAGS	=
  DEBUG_LIBS	= 
! INCLUDE		= -I../../common/include -I$(srcdir)/../../common/include 
  CFLAGS		= $(DEBUG) $(INCLUDE)
  LIBDIR		= ../../common/lib
  LDFLAGS		= -L$(LIBDIR) 
