Moved zebrautl.h to idzebra/util.h.
[idzebra-moved-to-github.git] / win / makefile
index 4c9e651..2fe6dcb 100644 (file)
@@ -1,5 +1,5 @@
 # Zebra makefile for MS NMAKE
-# $Id: makefile,v 1.19 2002-11-26 22:04:13 adam Exp $
+# $Id: makefile,v 1.34 2005-03-30 09:25:26 adam Exp $
  
 ###########################################################
 ############### Parameters 
@@ -9,15 +9,15 @@ DEBUG=0   # 0 for release, 1 for debug
 
 # EXPAT is optional. It's required for grs.xml-filters.
 HAVE_EXPAT=1
-EXPAT_DIR= c:\Expat-1.95.4
+EXPAT_DIR=c:\Expat-1.95.8
 
 # iconv is optional
-HAVE_ICONV=0
-ICONV_DIR = c:\libiconv-1.7.0.1
+HAVE_ICONV=1
+ICONV_DIR=c:\iconv-1.9.1.win32
 
 default: all
 
-all: dirs zebralib zserver zindex
+all: dirs iconv zebralib zserver zindex 
 
 ###########################################################
 ############### Directories
@@ -35,8 +35,6 @@ YAZBINDIR=$(YAZDIR)\bin
 YAZ_DLL_SOURCE=$(YAZBINDIR)\yaz.dll
 YAZ_DLL_TARGET=$(BINDIR)\yaz.dll
 
-DEFAULT_PROFILE_PATH=0
-
 # BZIP2 settings. Uncomment and specify if you wish to use LIBBZIP2.
 # (C) 1996-1999 Julian Seward <jseward@acm.org> http://www.bzip2.org
 
@@ -73,6 +71,18 @@ TMPDIR=$(ROOTDIR)\win\tmp
 TMP=$(TMPDIR)
 TEMP=$(TMPDIR)
 
+# NSIS
+NSIS="c:\program files\nsis\makensis.exe"
+
+dist:
+       nmake DEBUG=1 clean
+       nmake DEBUG=0 clean
+       nmake DEBUG=0
+       $(NSIS) zebra.nsi
+
+nsis:
+       $(NSIS) zebra.nsi
+
 ###########################################################
 ############### Targets - what to make
 ###########################################################
@@ -109,9 +119,14 @@ EXPAT_DLL_TARGET=
 !if $(HAVE_ICONV)
 ICONV_DEF= /D HAVE_ICONV_H=1 /I"$(ICONV_DIR)\include"
 ICONV_LIB= $(ICONV_DIR)\lib\iconv.lib
+iconv: $(BINDIR)\iconv.dll
+
+$(BINDIR)\iconv.dll:
+       copy "$(ICONV_DIR)\lib\iconv.dll" $(BINDIR)
 !else
 ICONV_DEF= /D HAVE_ICONV_H=0
 ICONV_LIB=
+iconv:
 !endif
 
 ### C and CPP compiler  (the same thing)
@@ -127,6 +142,13 @@ COMMON_C_OPTIONS=          \
   /FR"$(OBJDIR)\\"         \
   /Fo"$(OBJDIR)\\"         \
   /Fd"$(OBJDIR)\\"         \
+  /DDEFAULT_PROFILE_PATH=0 \
+  /DDEFAULT_MODULE_PATH=0  \
+  /DIDZEBRA_STATIC_GRS_SGML=1 \
+  /DIDZEBRA_STATIC_TEXT=1  \
+  /DIDZEBRA_STATIC_GRS_XML=1 \
+  /DIDZEBRA_STATIC_GRS_REGX=1 \
+  /DIDZEBRA_STATIC_GRS_MARC=1 \
   $(BZIP2DEF)
 
 COMMON_C_INCLUDES= \
@@ -166,21 +188,17 @@ LINK_LIBS= kernel32.lib user32.lib   gdi32.lib   winspool.lib \
            oleaut32.lib uuid.lib     odbc32.lib  odbccp32.lib \
            wsock32.lib  advapi32.lib $(ICONV_LIB) $(EXPAT_LIB)
 
-COMMON_LNK_OPTIONS= /nologo \
-                    /machine:i386 \
-                                   /incremental:no
-
-#                    /subsystem:windows \
+COMMON_LNK_OPTIONS= /nologo /machine:i386 /incremental:no
 
 DEBUG_LNK_OPTIONS= /debug 
 
-RELEASE_LNK_OPTIONS=  /pdb:none
+RELEASE_LNK_OPTIONS= 
 
-ZEBRALIB_LINK_OPTIONS = -lib 
+ZEBRALIB_LINK_OPTIONS= -lib 
 
-ZSERVER_LINK_OPTIONS = /subsystem:console  
-ZINDEX_LINK_OPTIONS = /subsystem:console  
-APITEST_LINK_OPTIONS = /subsystem:console  
+ZSERVER_LINK_OPTIONS= /subsystem:console  
+ZINDEX_LINK_OPTIONS= /subsystem:console  
+APITEST_LINK_OPTIONS= /subsystem:console  
 
 # Final opt variables
 !if $(DEBUG)
@@ -213,21 +231,15 @@ APITEST_OBJS= \
        $(OBJDIR)\apitest.obj
 
 ZEBRALIB_OBJS= \
-       $(OBJDIR)\isam.obj \
        $(OBJDIR)\isamc.obj \
-       $(OBJDIR)\isamd.obj \
-       $(OBJDIR)\isutil.obj \
-       $(OBJDIR)\memory.obj \
        $(OBJDIR)\merge.obj \
-       $(OBJDIR)\merge-d.obj \
-       $(OBJDIR)\physical.obj \
-       $(OBJDIR)\rootblk.obj \
        $(OBJDIR)\zebra-lock.obj \
        $(OBJDIR)\attribute.obj \
        $(OBJDIR)\bfile.obj \
        $(OBJDIR)\bset.obj \
        $(OBJDIR)\cfile.obj \
        $(OBJDIR)\charmap.obj \
+       $(OBJDIR)\atoi_zn.obj \
        $(OBJDIR)\close.obj \
        $(OBJDIR)\commit.obj \
        $(OBJDIR)\compact.obj \
@@ -247,9 +259,12 @@ ZEBRALIB_OBJS= \
        $(OBJDIR)\lookup.obj \
        $(OBJDIR)\lookupec.obj \
        $(OBJDIR)\marcread.obj \
+       $(OBJDIR)\marcomp.obj \
+       $(OBJDIR)\inline.obj \
        $(OBJDIR)\mfile.obj \
        $(OBJDIR)\open.obj \
        $(OBJDIR)\passwddb.obj \
+       $(OBJDIR)\zvrank.obj \
        $(OBJDIR)\rank1.obj \
        $(OBJDIR)\readfile.obj \
        $(OBJDIR)\recctrl.obj \
@@ -259,13 +274,13 @@ ZEBRALIB_OBJS= \
        $(OBJDIR)\rectext.obj \
        $(OBJDIR)\regxread.obj \
        $(OBJDIR)\xmlread.obj \
+       $(OBJDIR)\danbibr.obj \
        $(OBJDIR)\res.obj \
        $(OBJDIR)\retrieve.obj \
        $(OBJDIR)\rsbool.obj \
        $(OBJDIR)\rset.obj \
-       $(OBJDIR)\rsisam.obj \
        $(OBJDIR)\rsisamc.obj \
-       $(OBJDIR)\rsm_or.obj \
+       $(OBJDIR)\rsmultiandor.obj \
        $(OBJDIR)\rsnull.obj \
        $(OBJDIR)\rstemp.obj \
        $(OBJDIR)\scan.obj \
@@ -277,14 +292,15 @@ ZEBRALIB_OBJS= \
        $(OBJDIR)\trunc.obj \
        $(OBJDIR)\zebraapi.obj \
        $(OBJDIR)\zebramap.obj \
+       $(OBJDIR)\zint.obj \
        $(OBJDIR)\zinfo.obj \
        $(OBJDIR)\zrpn.obj \
        $(OBJDIR)\zsets.obj \
        $(OBJDIR)\isams.obj \
        $(OBJDIR)\isamb.obj \
-       $(OBJDIR)\rsisamd.obj \
        $(OBJDIR)\rsisamb.obj \
        $(OBJDIR)\rsbetween.obj \
+       $(OBJDIR)\rsprox.obj \
        $(OBJDIR)\dir.obj \
        $(OBJDIR)\dirs.obj \
        $(OBJDIR)\extract.obj \
@@ -308,7 +324,8 @@ ZEBRALIB_OBJS= \
        $(OBJDIR)\d1_sutrs.obj \
        $(OBJDIR)\d1_tagset.obj \
        $(OBJDIR)\d1_varset.obj \
-       $(OBJDIR)\d1_write.obj
+       $(OBJDIR)\d1_write.obj \
+       $(OBJDIR)\xpath.obj
 
 ALL_OBJS=\
   $(ZEBRALIB_OBJS) \
@@ -428,7 +445,6 @@ clean:
        -del $(OBJDIR)\*.obj
        -del $(OBJDIR)\*.sbr
        -del $(BINDIR)\*.exe
-       -del $(BINDIR)\*.dll
        -del $(TMPDIR)\*.
        -del $(LIBDIR)\*.lib
 
@@ -440,7 +456,7 @@ $(OBJDIR) $(WINDIR) $(LIBDIR) $(BINDIR) $(TMPDIR):
        if not exist "$@/$(NUL)" mkdir "$@"
 
 $(YAZ_DLL_TARGET) : $(YAZ_DLL_SOURCE)
-       copy $(YAZ_DLL_SOURCE) $(YAZ_DLL_TARGET)
+       copy $(YAZBINDIR)\*.dll $(BINDIR)
 
 ###########################################################
 ############### Explicit dependencies