# Copyright (C) 1993-2004, Index Data ApS
# All rights reserved.
-# $Id: makefile,v 1.2 2004-03-30 18:14:14 adam Exp $
+# $Id: makefile,v 1.3 2004-03-30 18:58:40 adam Exp $
###########################################################
############### Parameters
default: all
-all: dirs dll proxy iconv libxml2 libxslt yaz
+all: dirs generated dll zclient proxy iconv libxml2 libxslt yaz
NSIS="c:\program files\nsis\makensis-bz2.exe"
YAZPROXY_IMPLIB=$(LIBDIR)\yazproxy.lib
YAZPROXY=$(BINDIR)\yaz-proxy.exe
+ZCLIENT=$(BINDIR)\zclient.exe
# shortcut names defined here
dll: $(YAZPP_DLL) $(YAZPROXY_DLL)
proxy: $(YAZPROXY)
+zclient: $(ZCLIENT)
###########################################################
############### Compiler and linker options
"$(OBJDIR)\yaz-z-server-update.obj" \
"$(OBJDIR)\yaz-z-databases.obj" \
"$(OBJDIR)\yaz-z-cache.obj" \
- "$(OBJDIR)\yaz-cql2rpn.obj"
+ "$(OBJDIR)\yaz-cql2rpn.obj" \
+ "$(OBJDIR)\zexcept.obj" \
+ "$(OBJDIR)\zconn.obj" \
+ "$(OBJDIR)\zquery.obj" \
+ "$(OBJDIR)\zrs.obj" \
+ "$(OBJDIR)\zrec.obj"
YAZPROXY_DLL_OBJS = \
"$(OBJDIR)\yaz-proxy.obj" \
"$(OBJDIR)\yaz-proxy-config.obj" \
"$(OBJDIR)\yaz-bw.obj"
+ZCLIENT_OBJS = \
+ "$(OBJDIR)\zclient.obj"
+
###########################################################
############### Compiling
###########################################################
# Note: This defines where to look for the necessary
# source files. Funny way of doing it, but it works.
-# yaz proxy
{$(PROXYDIR)}.cpp{$(OBJDIR)}.obj:
@$(CPP) $(COPT) $<
-# Various YAZ source directories
{$(SRCDIR)}.cpp{$(OBJDIR)}.obj:
$(CPP) $(COPT) $<
/map:"$(LIBDIR)\yaz-proxy.map"
/out:$(YAZPROXY)
<<
-# note that this links a lib, so it uses completely different options.
+
+$(ZCLIENT) : "$(BINDIR)" $(ZCLIENT_OBJS) $(YAZPP_IMPLIB)
+ @echo Linking $(ZCLIENT)
+ $(LINK) @<<
+ $(LNKOPT)
+ $(CLIENT_LINK_OPTIONS)
+ $(LINK_LIBS)
+ $(YAZPP_IMPLIB)
+ $(IMPLIB)
+ $(ZCLIENT_OBJS)
+ /map:"$(LIBDIR)\zclient.map"
+ /out:$(ZCLIENT)
+<<
+
###########################################################
-############### Special operations
+############### Generated SOurce files
###########################################################
+generated: $(ZOOMDIR)\zoom.h
+
+"$(ZOOMDIR)\zoom.h": "$(ZOOMDIR)\master-header"
+ sed "s/^* / /; s/^*/ /" "$(ZOOMDIR)\master-header" >"$(ZOOMDIR)\zoom.h"
############## clean
clean:
-del $(OBJDIR)\*.OBJ
realclean: clean
+ -del $(ZOOMDIR)\zoom.h
+
# Because DOS del will only accept one file name to delete,
# the _H_ files work only on sets that have just one file.
# Z3950_H_FILES had to be spelled out. One more point for MS!