*** empty log message ***
[yaz-moved-to-github.git] / Makefile
index ef18971..18c317c 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,7 @@
-# Copyright (C) 1994, Index Data I/S 
+# Copyright (C) 1995-1998, Index Data I/S 
 # All rights reserved.
 # Sebastian Hammer, Adam Dickmeiss
-# $Id: Makefile,v 1.24 1995-09-29 17:01:34 quinn Exp $
+# $Id: Makefile,v 1.38 1998-04-02 14:33:29 adam Exp $
 
 # Uncomment the lines below to enable mOSI communcation.
 #ODEFS=-DUSE_XTIMOSI
@@ -9,27 +9,53 @@
 #LIBMOSI=../../xtimosi/src/libmosi.a ../lib/librfc.a
 #XMOSI=xmosi.o
 
-CDEFS=$(ODEFS)
+CDEFS=$(ODEFS) 
+
+#INCLUDE=-I../z39.50 -I. -I../include
+#MOD=z39.50
+
+INCLUDE=-I. -I../include
+MOD=asn
+
 #CC=
 SHELL=/bin/sh
 MAKE=make
-SUBDIR=util odr asn $(RFC1006) ccl comstack client server makelib
+SUBDIR=$(MOD) util odr $(RFC1006) ccl comstack retrieval client server ztest makelib
 # Add external libraries to the ELIBS macro
 ELIBS=
-CONTROL=RANLIB="ranlib" ELIBS=$(ELIBS)
+# For Solaris add use:
+#ELIBS=-lnsl -lsocket
+
+CONTROL=RANLIB="ranlib" ELIBS="$(ELIBS)"
+
+# Installation directories, etc.
+#  Binaries
+BINDIR=/usr/local/bin
+#  Public libraries and header files
+LIBDIR=/usr/local/lib
+INCDIR=/usr/local/include
+#  Misc tables, etc.
+YAZDIR=/usr/local/lib/yaz
 
 all:
-       for i in $(SUBDIR); do cd $$i; if $(MAKE) $(CONTROL)\
-       CFLAGS="$(CFLAGS) $(CDEFS)" LIBMOSI="$(LIBMOSI)" XMOSI="$(XMOSI)";\
+       for i in $(SUBDIR); do cd $$i; if $(MAKE) $(CONTROL) \
+       INCLUDE="$(INCLUDE)" CFLAGS="$(CFLAGS)" CDEFS="$(CDEFS)" LIBMOSI="$(LIBMOSI)" XMOSI="$(XMOSI)";\
        then cd ..; else exit 1; fi; done
 
 dep depend:
-       for i in $(SUBDIR); do cd $$i; if $(MAKE) depend; then cd ..; else exit 1; fi; done
+       for i in $(SUBDIR); do cd $$i; if $(MAKE) INCLUDE="$(INCLUDE)" CDEFS="$(CDEFS)" depend;\
+                then cd ..; else exit 1; fi; done
 
 clean:
        for i in $(SUBDIR); do (cd $$i; $(MAKE) clean); done
        -rm lib/*.a
 
+oclean:
+       for i in $(SUBDIR); do (cd $$i; rm -f *.o); done
+       mv lib/libyaz.a .; rm -f lib/*.a; mv libyaz.a lib
+       cd client; strip client
+       cd server; strip ztest
+
 cleanup:
        rm -f `find $(SUBDIR) -name "*.[oa]" -print`
        rm -f `find $(SUBDIR) -name "core" -print`
@@ -59,6 +85,52 @@ gnudepend:
                sed 's/^depend: depend1/depend: depend2/g' >Makefile.tmp;then \
                mv -f Makefile.tmp Makefile; fi); done
 
+install: all install.misc install.lib install.bin
+
+install.bin:
+       @if [ ! -d $(BINDIR) ]; then \
+               echo "Making directory $(BINDIR)"; \
+               mkdir $(BINDIR); \
+       fi
+       @echo "Installing client -> $(BINDIR)"; \
+       cp client/client $(BINDIR)/client; chmod 755 $(BINDIR)/client
+       @echo "Installing ztest -> $(BINDIR)"; \
+       cp server/ztest $(BINDIR)/ztest; chmod 755 $(BINDIR)/ztest
+
+install.lib:
+       @if [ ! -d $(LIBDIR) ]; then \
+               echo "Making directory $(LIBDIR)"; \
+               mkdir $(LIBDIR); \
+       fi
+       @echo "Installing libyaz.a -> $(LIBDIR)"; \
+       cp lib/libyaz.a $(LIBDIR)/libyaz.a; \
+       chmod 644 $(LIBDIR)/libyaz.a
+       @if [ -f lib/librfc.a ]; then \
+               echo "Installing librfc.a -> $(LIBDIR)"; \
+               cp lib/librfc.a $(LIBDIR)/librfc.a; \
+               chmod 644 $(LIBDIR)/librfc.a; \
+        fi
+       @if [ ! -d $(INCDIR) ]; then \
+               echo "Making directory $(INCDIR)"; \
+               mkdir $(INCDIR); \
+       fi
+       @cd include; for f in *.h; do \
+               echo "Installing $$f -> $(INCDIR)"; \
+               cp $$f $(INCDIR)/$$f; chmod 644 $(INCDIR)/$$f; \
+       done
+
+install.misc:
+       @if [ ! -d $(YAZDIR) ]; then \
+               echo "Making directory $(YAZDIR)"; \
+               mkdir $(YAZDIR); \
+       fi
+       @cd tab; for f in *; do \
+               if [ -f $$f ]; then \
+                       echo "Installing $$f -> $(YAZDIR)"; \
+                       cp $$f $(YAZDIR)/$$f; chmod 644 $(YAZDIR)/$$f; \
+               fi; \
+       done
+
 wc:
        wc `find . -name '*.[ch]'`
-       
+