Update.
[ir-tcl-moved-to-github.git] / Makefile.in
1 # IR toolkit for tcl/tk
2 # (c) Index Data 1995-1999
3 # See the file LICENSE for details.
4 # Sebastian Hammer, Adam Dickmeiss
5 # $Id: Makefile.in,v 1.49 1999-02-11 09:13:23 adam Exp $
6 SHELL=/bin/sh
7
8 # IrTcl Version
9 VERSION=1.3
10
11 # Directory prefix with machine independent files (scripts, setup files, etc.)
12 prefix = @prefix@
13
14 # Directory prefix with machine dependent files (executables, libraries)
15 exec_prefix = @exec_prefix@
16
17 BINDIR=$(exec_prefix)/bin
18 LIBDIR=$(exec_prefix)/lib
19 MANDIR=$(prefix)/man
20 INCDIR=$(prefix)/include
21 IRTCLDIR=$(prefix)/lib/irtcl
22
23 YAZDIR=@YAZDIR@
24
25 CC=@CC@
26
27 # Tcl libraries and include files
28 TCLLIB=@TCLLIB@
29 TCLINC=@TCLINC@
30
31 # Tk & X11 libraries and include files
32 TKLIB=@TKLIB@
33 TKINC=@TKINC@
34
35 # Shared libraries definitions
36 SHLIB_CFLAGS = @SHLIB_CFLAGS@
37 SHLIB_LD = @SHLIB_LD@
38 SHLIB_SUFFIX = @SHLIB_SUFFIX@
39 SHLIB_VERSION = @SHLIB_VERSION@
40
41 # MOSI settings, directory with libmosi.a and source
42 MOSI=@MOSI@
43 MOSIDIR=@MOSIDIR@
44 MOSILIB=@MOSILIB@
45 MOSIINC=@MOSIINC@
46
47 # All YAZ libraries - including MOSI libraries.
48 YAZLIB=$(YAZDIR)/lib/libyaz.a $(MOSILIB)
49
50 # All include paths
51 INCLUDE=-I. -I$(YAZDIR)/z39.50 -I$(YAZDIR)/include $(TKINC) $(TCLINC) $(MOSIINC)
52
53 # All command line options except CFLAGS
54 DEFS=-DCCL2RPN=0 @DEFS@ -DMOSI=$(MOSI) -DIRTCLDIR=\"$(IRTCLDIR)\" \
55         $(INCLUDE) -DIR_TCL_VERSION=\"$(VERSION)\"
56
57 INSTALL = @INSTALL@
58 INSTALL_PROGRAM = @INSTALL_PROGRAM@
59 INSTALL_DATA = @INSTALL_DATA@
60
61 RANLIB = @RANLIB@
62
63 O=ir-tcl.o marc.o queue.o mem.o grs.o explain.o select.o
64
65 all: @ALL_SPEC@
66
67 ir-tk: libirtcl.a tkmain.o
68         $(CC) $(CFLAGS) tkmain.o -o ir-tk libirtcl.a $(YAZLIB) $(TKLIB) 
69
70 ir-tcl: libirtcl.a tclmain.o
71         $(CC) $(CFLAGS) tclmain.o -o ir-tcl libirtcl.a $(YAZLIB) $(TCLLIB) 
72
73 libirtcl.a: $(O)
74         rm -f libirtcl.a
75         ar qc libirtcl.a $(O)
76         $(RANLIB) libirtcl.a
77
78 @SHLIB_IRTCL@: $(O)
79         rm -f @SHLIB_IRTCL@
80         ${SHLIB_LD} -o @SHLIB_IRTCL@ $(O) $(YAZLIB)
81
82 WAISDIR=../freeWAIS-sf-2.0
83
84 wais-tcl: libirtcl.a wais-tcl.o waismain.o
85         $(CC) $(CFLAGS) wais-tcl.o waismain.o -o wais-tcl libirtcl.a \
86                 $(YAZLIB)  $(WAISDIR)/ir/libwais.a $(TCLLIB)
87
88 waismain.o: tclmain.c
89         $(CC) -c $(CFLAGS) -DUSE_WAIS=1 $(DEFS) tclmain.c -o waismain.o
90
91 wais-tcl.o: wais-tcl.c
92         $(CC) -c $(CFLAGS) -I$(WAISDIR)/ir $(DEFS) wais-tcl.c
93
94 install.man:
95         @echo "Installation of man-pages"
96         @if [ ! -d $(MANDIR) ]; then \
97                 echo Making $(MANDIR); \
98                 mkdir $(MANDIR); \
99         fi
100         @if [ ! -d $(MANDIR)/mann ]; then \
101                 echo Making $(MANDIR)/mann; \
102                 mkdir $(MANDIR)/mann; \
103         fi
104         @cd doc; if [ -d $(MANDIR)/mann ]; then \
105                 for p in *.n; do \
106                         echo "Installing $$p"; \
107                         $(INSTALL_DATA) $$p $(MANDIR)/mann; \
108                 done; \
109         fi
110
111 install: @ALL_SPEC@
112         @for d in $(IRTCLDIR) $(IRTCLDIR)/formats $(IRTCLDIR)/bitmaps; do \
113                 if [ ! -d $$d ]; then \
114                         echo Making $$d; \
115                         mkdir $$d; \
116                         chmod 755 $$d; \
117                 fi; \
118         done;
119         @if [ -f ir-tcl ]; then \
120                 echo "Installing ir-tcl"; \
121                 $(INSTALL_PROGRAM) ir-tcl $(BINDIR); \
122         fi
123         @if [ -f @SHLIB_IRTCL@ ]; then \
124                 echo "Installing @SHLIB_IRTCL@"; \
125                 $(INSTALL_PROGRAM) @SHLIB_IRTCL@ $(IRTCLDIR); \
126         fi
127         @echo "Installing libirtcl.a"
128         @$(INSTALL_DATA) libirtcl.a $(LIBDIR)
129         @echo "Installing ir-tcl.h"
130         @$(INSTALL_DATA) ir-tcl.h $(INCDIR)
131         @if [ -f ir-tk ]; then \
132                 echo "Installing ir-tk"; \
133                 $(INSTALL_PROGRAM) ir-tk $(BINDIR); \
134         fi; \
135         echo "Installing irclient"; \
136         echo "#! $(BINDIR)/@IRCLIENT_SHELL@ -f" >head.bak; \
137         cat head.bak client.tcl| sed "s,^set libdir LIBDIR,set libdir $(IRTCLDIR)," >client.bak; \
138         $(INSTALL_PROGRAM) client.bak $(BINDIR)/irclient; \
139         if [ -f $(IRTCLDIR)/irtdb.tcl ]; then \
140                 echo "irtdb.tcl already exists"; \
141                 echo "Installing irtdb.tcl.n"; \
142                 cp irtdb.tcl irtdb.tcl.n; \
143                 $(INSTALL_DATA) irtdb.tcl.n $(IRTCLDIR); \
144                 rm irtdb.tcl.n; \
145         else \
146                 echo "Installing irtdb.tcl"; \
147                 $(INSTALL_DATA) irtdb.tcl $(IRTCLDIR); \
148         fi; \
149         for f in *.tcl; do \
150                 echo "Installing $$f"; \
151                 $(INSTALL_DATA) $$f $(IRTCLDIR); \
152         done; \
153         echo "Installing LICENSE" ; \
154         $(INSTALL_DATA) LICENSE $(IRTCLDIR); \
155         echo "Installing display format scripts"; \
156         for b in formats/*.tcl; do \
157                 if [ -f $$b ]; then \
158                         $(INSTALL_DATA) $$b $(IRTCLDIR)/formats; \
159                 fi; \
160         done; \
161         echo "Installing bitmaps"; \
162         for b in bitmaps/*; do \
163                 if [ -f $$b ]; then \
164                         $(INSTALL_DATA) $$b $(IRTCLDIR)/bitmaps; \
165                 fi; \
166         done
167
168 clean:
169         rm -f *.[oa] ir-tk ir-tcl wais-tcl core 
170         rm -f *mon.out *.bak config.cache @SHLIB_IRTCL@
171
172 autoconf:
173         -rm config.cache
174         autoconf
175         configure
176
177 distribution:
178         echo "Making distribution version $(VERSION). Did you commit?"
179         autoconf
180         if [ -d tmp ]; then \
181                 rm -fr tmp; \
182         fi
183         mkdir tmp; cd tmp; cvs export -f -D now ir-tcl
184         rm tmp/ir-tcl/wais-tcl.c
185         cp configure tmp/ir-tcl
186         cd tmp; mv ir-tcl ir-tcl-$(VERSION)
187         cd tmp; tar zcf ../ir-tcl-$(VERSION).tar.gz ir-tcl-$(VERSION)
188         cd tmp; mv ir-tcl-$(VERSION) ir-tcl
189         cd tmp/ir-tcl/doc; make all
190         mv tmp/ir-tcl/doc/ir-tcl.txt .; gzip -f ir-tcl.txt
191         mv tmp/ir-tcl/doc/ir-tcl.ps .; gzip -f ir-tcl.ps
192         cd tmp/ir-tcl; mkdir irtcl; cp doc/*.html CHANGELOG irtcl
193         cd tmp/ir-tcl; tar zcf ../../irtclhtml.tar.gz irtcl
194         rm -fr tmp
195
196 .c.o:
197         $(CC) -c $(CFLAGS) $(SHLIB_CFLAGS) $(DEFS) $<
198
199 $(O) tkmain.o tclmain.o wais-tcl.o waismain.o: ir-tcl.h ir-tclp.h
200