# IR toolkit for tcl/tk
-# (c) Index Data 1995
+# (c) Index Data 1995-2004
# See the file LICENSE for details.
-# Sebastian Hammer, Adam Dickmeiss
-# $Id: Makefile.in,v 1.10 1995-06-26 14:46:24 adam Exp $
+# $Id: Makefile.in,v 1.64 2005-03-10 13:55:31 adam Exp $
SHELL=/bin/sh
# IrTcl Version
-VERSION=1.0b2
+VERSION=1.4.2
# Directory prefix with machine independent files (scripts, setup files, etc.)
prefix = @prefix@
# Directory prefix with machine dependent files (executables, libraries)
exec_prefix = @exec_prefix@
+DESTDIR=
+
+# Install directories
BINDIR=$(exec_prefix)/bin
LIBDIR=$(exec_prefix)/lib
MANDIR=$(prefix)/man
INCDIR=$(prefix)/include
IRTCLDIR=$(prefix)/lib/irtcl
-YAZDIR=@YAZDIR@
-MOSIDIR=@MOSIDIR@
-LIBS=@LIBS@ -lm
-
CC=@CC@
-# X11 libraries and include file paths
-XLIB=@XLIBSW@
-XINCLUDE=@XINCLUDES@
-
-# Tcl/Tk libraries
+# Tcl libraries and include files
TCLLIB=@TCLLIB@
+TCLINC=@TCLINC@
+
+# Tk & X11 libraries and include files
TKLIB=@TKLIB@
+TKINC=@TKINC@
-# MOSI directory with libmosi.a and source
-MOSILIB=@MOSILIB@
+# Shared libraries definitions
+SHLIB_CFLAGS = @SHLIB_CFLAGS@
+SHLIB_LD = @SHLIB_LD@
+SHLIB_SUFFIX = @SHLIB_SUFFIX@
+SHLIB_VERSION = @SHLIB_VERSION@
-# All YAZ libraries - including MOSI libraries.
-YAZLIB=$(YAZDIR)/lib/libyaz.a $(MOSILIB) $(YAZDIR)/lib/libutil.a
+# Where are YAZ libraries located?
+YAZLIB=@YAZLIB@
+# Where are YAZ header files located?
+YAZINC=@YAZINC@
# All include paths
-INCLUDE=-I$(YAZDIR)/include $(XINCLUDE) -I$(MOSIDIR) -I/usr/local/include
+INCLUDE=-I. $(YAZINC) $(TKINC) $(TCLINC)
# All command line options except CFLAGS
-DEFS=-DCCL2RPN=0 @DEFS@ -DMOSI=@MOSI@ -DIRTCLDIR=\"$(IRTCLDIR)\" \
+DEFS=-DCCL2RPN=0 @DEFS@ -DIRTCLDIR=\"$(IRTCLDIR)\" \
$(INCLUDE) -DIR_TCL_VERSION=\"$(VERSION)\"
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
-RANLIB = @RANLIB@
-O=ir-tcl.o marc.o
+RANLIB = @RANLIB@
-all: ir-tk ir-tcl
+O=ir-tcl.o marc.o queue.o mem.o grs.o explain.o select.o
-ir-tk: libirtcl.a tkinit.o
- $(CC) $(CFLAGS) tkinit.o -o ir-tk libirtcl.a $(YAZLIB) $(TKLIB) \
- $(TCLLIB) $(XLIB) $(LIBS)
+all: @ALL_SPEC@
ir-tcl: libirtcl.a tclmain.o
- $(CC) $(CFLAGS) tclmain.o -o ir-tcl libirtcl.a $(YAZLIB) $(TCLLIB) $(LIBS)
+ $(CC) $(CFLAGS) tclmain.o -o ir-tcl libirtcl.a $(YAZLIB) $(TCLLIB)
libirtcl.a: $(O)
rm -f libirtcl.a
ar qc libirtcl.a $(O)
$(RANLIB) libirtcl.a
-install: ir-tcl
- for d in $(IRTCLDIR) $(IRTCLDIR)/formats $(IRTCLDIR)/bitmaps; do \
- if [ ! -d $$d ]; then \
- echo Making $$d; \
- mkdir $$d; \
- chmod 755 $$d; \
+@SHLIB_IRTCL@: $(O)
+ rm -f @SHLIB_IRTCL@
+ ${SHLIB_LD} -o @SHLIB_IRTCL@ $(O) $(YAZLIB)
+
+WAISDIR=../freeWAIS-sf-2.0
+
+wais-tcl: libirtcl.a wais-tcl.o waismain.o
+ $(CC) $(CFLAGS) wais-tcl.o waismain.o -o wais-tcl libirtcl.a \
+ $(YAZLIB) $(WAISDIR)/ir/libwais.a $(TCLLIB)
+
+waismain.o: tclmain.c
+ $(CC) -c $(CFLAGS) -DUSE_WAIS=1 $(DEFS) tclmain.c -o waismain.o
+
+wais-tcl.o: wais-tcl.c
+ $(CC) -c $(CFLAGS) -I$(WAISDIR)/ir $(DEFS) wais-tcl.c
+
+install.man:
+ $(INSTALL) -d $(DESTDIR)$(MANDIR)/mann
+ @cd doc; if [ -d $(DESTDIR)$(MANDIR)/mann ]; then \
+ for p in *.n; do \
+ $(INSTALL_DATA) $$p $(DESTDIR)$(MANDIR)/mann; \
+ done; \
+ fi
+
+install: @ALL_SPEC@
+ $(INSTALL) -d $(DESTDIR)$(IRTCLDIR)/formats
+ $(INSTALL) -d $(DESTDIR)$(IRTCLDIR)/bitmaps
+ $(INSTALL) -d $(DESTDIR)$(IRTCLDIR)/doc
+ $(INSTALL) -d $(DESTDIR)$(BINDIR)
+ @if [ -f ir-tcl ]; then \
+ $(INSTALL_PROGRAM) ir-tcl $(DESTDIR)$(BINDIR); \
+ fi
+ @if [ -f @SHLIB_IRTCL@ ]; then \
+ $(INSTALL_PROGRAM) @SHLIB_IRTCL@ $(DESTDIR)$(IRTCLDIR); \
+ fi
+ $(INSTALL_DATA) libirtcl.a $(DESTDIR)$(LIBDIR)
+ $(INSTALL_DATA) ir-tcl.h $(DESTDIR)$(INCDIR)
+ @if [ -f ir-tk ]; then \
+ $(INSTALL_PROGRAM) ir-tk $(DESTDIR)$(BINDIR); \
+ fi
+ @echo "#! @IRCLIENT_SHELL@ -f" >head.bak; \
+ cat head.bak client.tcl| sed "s,^set libdir LIBDIR,set libdir $(IRTCLDIR)," >client.bak; \
+ $(INSTALL_PROGRAM) client.bak $(DESTDIR)$(BINDIR)/irclient; \
+ if [ -f $(DESTDIR)$(IRTCLDIR)/irtdb.tcl ]; then \
+ echo "irtdb.tcl already exists"; \
+ echo "Installing irtdb.tcl.n"; \
+ cp irtdb.tcl irtdb.tcl.n; \
+ $(INSTALL_DATA) irtdb.tcl.n $(DESTDIR)$(IRTCLDIR); \
+ rm irtdb.tcl.n; \
+ else \
+ echo "Installing irtdb.tcl"; \
+ $(INSTALL_DATA) irtdb.tcl $(DESTDIR)$(IRTCLDIR); \
+ fi
+ @for f in *.tcl; do \
+ $(INSTALL_DATA) $$f $(DESTDIR)$(IRTCLDIR); \
+ done
+ @for b in formats/*.tcl; do \
+ if [ -f $$b ]; then \
+ $(INSTALL_DATA) $$b $(DESTDIR)$(IRTCLDIR)/formats; \
+ fi; \
+ done
+ @for b in bitmaps/*; do \
+ if [ -f $$b ]; then \
+ $(INSTALL_DATA) $$b $(DESTDIR)$(IRTCLDIR)/bitmaps; \
fi; \
- done;
- $(INSTALL_PROGRAM) ir-tcl $(BINDIR)
- $(INSTALL_DATA) libirtcl.a $(LIBDIR)
- $(INSTALL_DATA) ir-tcl.h $(INCDIR)
- if [ -f ir-tk ]; then \
- $(INSTALL_PROGRAM) ir-tk $(BINDIR); \
- echo "#! $(BINDIR)/ir-tk -f" >head.bak; \
- cat head.bak client.tcl| sed "s,^set libdir LIBDIR,set libdir $(IRTCLDIR)," >client.bak; \
- $(INSTALL_PROGRAM) client.bak $(BINDIR)/irclient; \
- $(INSTALL_DATA) LICENSE clientrc.tcl $(IRTCLDIR); \
- $(INSTALL_DATA) formats/*.tcl $(IRTCLDIR)/formats; \
- $(INSTALL_DATA) bitmaps/book? $(IRTCLDIR)/bitmaps; \
- fi;
+ done
+ @for b in doc/*; do \
+ if [ -f $$b ]; then \
+ $(INSTALL_DATA) $$b $(DESTDIR)$(IRTCLDIR)/doc; \
+ fi; \
+ done
clean:
- rm -f *.[oa] ir-tk ir-tcl core gmon.out mon.out *.bak config.cache
+ rm -f *.[oa] ir-tk ir-tcl wais-tcl core
+ rm -f *mon.out *.bak config.cache @SHLIB_IRTCL@
autoconf:
-rm config.cache
autoconf
configure
-distribution:
- echo "Making distribution version $(VERSION). Did you commit?"
- autoconf
- if [ -d tmp ]; then \
- rm -fr tmp; \
- fi
- mkdir tmp; cd tmp; cvs export -f -D now ir-tcl
- cp configure tmp/ir-tcl
- cd tmp/ir-tcl/doc; make all
- cd tmp; mv ir-tcl ir-tcl-$(VERSION)
- cd tmp; tar zcf ../ir-tcl-$(VERSION).tar.gz ir-tcl-$(VERSION)
- rm -fr tmp
-
.c.o:
- $(CC) -c $(CFLAGS) $(DEFS) $<
-
-$(O) tkinit.o tclmain.o: ir-tcl.h ir-tclp.h
+ $(CC) -c $(CFLAGS) $(SHLIB_CFLAGS) $(DEFS) $<
+$(O) tkmain.o tclmain.o wais-tcl.o waismain.o: ir-tcl.h ir-tclp.h