-# Copyright (C) 1994-2004, Index Data
+# Copyright (C) 1994-2005, Index Data ApS
# All rights reserved.
-# $Id: makefile,v 1.83 2004-08-18 10:47:48 adam Exp $
+# $Id: makefile,v 1.96 2005-09-09 11:28:48 adam Exp $
#
# Programmed by
-# HL: Heikki Levanto, Index Data
-#
+# Heikki Levanto & Adam Dickmeiss
###########################################################
############### Parameters
# libxml2
HAVE_LIBXML2=1
-LIBXML2_DIR=c:\libxml2-2.6.9.win32
+LIBXML2_DIR=c:\libxml2-2.6.20.win32
# zlib compression (used by libxml2)
-ZLIB_DIR = c:\zlib-1.1.4.win32
+ZLIB_DIR = c:\zlib-1.2.3.win32
# get WIN32 binaries libxml2 & iconv & zlib from here:
-# http://www.zlatkovic.com/projects/libxml/binaries.html
+# http://www.zlatkovic.com/libxml.en.html
# bison
HAVE_BISON=1
default: all
-all: dirs generate dll client ztest zoomsh utilprog iconv libxml2
+all: dirs generate dll client ztest zoomsh utilprog testprog iconv libxml2
NSIS="c:\program files\nsis\makensis.exe"
+HHC="c:\program files\html help workshop\hhc.exe"
-nsis:
+dist:
nmake DEBUG=1 clean
nmake DEBUG=0 clean
- nmake DEBUG=1 dll
nmake DEBUG=0
$(NSIS) yaz.nsi
+nsis:
+ $(NSIS) yaz.nsi
+
nsishelp:
$(NSIS)
generate: generated_files
+
+
###########################################################
############### Directories
###########################################################
BINDIR=$(ROOTDIR)\bin # We produce exes and dlls there
WINDIR=$(ROOTDIR)\win # all these Win make things
SRCDIR=$(ROOTDIR)\src # for the case we move them under src
+DOCDIR=$(ROOTDIR)\doc # where the doc is
# where we store intermediate files
!if $(DEBUG)
ZTESTDIR=$(ROOTDIR)\ZTEST
ZOOMDIR=$(ROOTDIR)\ZOOM
UTILDIR=$(ROOTDIR)\UTIL
+TESTDIR=$(ROOTDIR)\TEST
TMPDIR=$(ROOTDIR)\win\tmp
TMP=$(TMPDIR)
###########################################################
!if $(DEBUG)
-DLL=$(BINDIR)\yazdebug.dll
-IMPLIB=$(LIBDIR)\yazdebug.lib
+DLL=$(BINDIR)\yazd.dll
+IMPLIB=$(LIBDIR)\yazd.lib
!else
DLL=$(BINDIR)\yaz.dll
IMPLIB=$(LIBDIR)\yaz.lib
CQL2XCQL=$(BINDIR)\cql2xcql.exe
YAZ_MARCDUMP=$(BINDIR)\yaz-marcdump.exe
+TSTLOG=$(BINDIR)\tstlog.exe
+
# shortcut names defined here
dll: dirs generate $(DLL)
client: dirs generate $(CLIENT)
utilprog: $(CQL2PQF) $(CQL2XCQL) $(YAZ_MARCDUMP)
+testprog: $(TSTLOG)
+
+htmlhelp: $(DOCDIR)\htmlhelp.chm
+
###########################################################
############### Compiler and linker options
###########################################################
iconv: $(BINDIR)\iconv.dll
$(BINDIR)\iconv.dll:
- copy "$(ICONV_DIR)\lib\iconv.dll" $(BINDIR)
+ copy "$(ICONV_DIR)\bin\iconv.dll" $(BINDIR)
!else
ICONV_DEF= \
/D HAVE_ICONV_H=0
!if $(HAVE_LIBXML2)
LIBXML2_LIB="$(LIBXML2_DIR)\lib\libxml2.lib"
LIBXML2_DEF=/D HAVE_XML2=1 /I"$(LIBXML2_DIR)\include"
-libxml2: $(BINDIR)\libxml2.dll $(BINDIR)\zlib.dll
+libxml2: $(BINDIR)\libxml2.dll $(BINDIR)\zlib1.dll
$(BINDIR)\libxml2.dll:
- copy "$(LIBXML2_DIR)\lib\libxml2.dll" $(BINDIR)
+ copy "$(LIBXML2_DIR)\bin\libxml2.dll" $(BINDIR)
-$(BINDIR)\zlib.dll:
- copy "$(ZLIB_DIR)\lib\zlib.dll" $(BINDIR)
+$(BINDIR)\zlib1.dll:
+ copy "$(ZLIB_DIR)\bin\zlib1.dll" $(BINDIR)
!else
LIBXML2_LIB=
$(LIBXML2_DEF) \
/D "_WINDOWS" \
/D "WIN32" \
- /D "HAVE_WCHAR_H=1" \
/FR"$(OBJDIR)\\" \
/Fo"$(OBJDIR)\\" \
/Fd"$(OBJDIR)\\"
YAZ_MARCDUMP_OBJS = \
$(OBJDIR)\marcdump.obj
+TSTLOG_OBJS = \
+ $(OBJDIR)\tstlog.obj
+
YAZ_SERVER_OBJS= \
"$(OBJDIR)\eventl.obj" \
"$(OBJDIR)\requestq.obj" \
YAZ_ZUTIL_OBJS= \
$(OBJDIR)\diagbib1.obj \
+ $(OBJDIR)\diagsrw.obj \
+ $(OBJDIR)\diag-entry.obj \
$(OBJDIR)\zget.obj \
$(OBJDIR)\logrpn.obj \
$(OBJDIR)\pquery.obj \
{$(UTILDIR)}.c{$(OBJDIR)}.obj:
$(CPP) $(COPT) $<
+{$(TESTDIR)}.c{$(OBJDIR)}.obj:
+ $(CPP) $(COPT) $<
+
############### ASN-generated files
!if $(HAVE_TCL)
@cd $(SRCDIR)
$(TCL) charconv.tcl -p marc8 codetables.xml -o marc8.c
+$(SRCDIR)\diagbib1.c: $(SRCDIR)\bib1.csv
+ @cd $(SRCDIR)
+ $(TCL) csvtobib1.tcl
+
+$(SRCDIR)\diagsrw.c: $(SRCDIR)\srw.csv
+ @cd $(SRCDIR)
+ $(TCL) csvtosrw.tcl
+
!endif
!if $(HAVE_BISON)
<<
+$(TSTLOG) : "$(BINDIR)" $(TSTLOG_OBJS)
+ @echo Linking $(TSTLOG)
+ $(LINK) @<<
+ $(LNKOPT)
+ $(CLIENT_LINK_OPTIONS)
+ $(LINK_LIBS)
+ $(IMPLIB)
+ $(TSTLOG_OBJS)
+ /map:"$(LIBDIR)\tstlog.map"
+ /out:$(TSTLOG)
+<<
+
+$(DOCDIR)\htmlhelp.chm: $(DOCDIR)\htmlhelp.hhp
+ @cd $(DOCDIR)
+ -$(HHC) htmlhelp.hhp
+ @cd $(WINDIR)
+
# note that this links a lib, so it uses completely different options.
###########################################################