X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=win%2Fmakefile;h=93d049ef9d12479183ca273cebed5624bb4e420d;hp=958914f97afa0714600001a6a0fb7120cf0f6b2d;hb=11d3339c3128f129598072d1372d4bcc4aaeab14;hpb=419a8eb0b2069682320ebab4868a3aac791731c3 diff --git a/win/makefile b/win/makefile index 958914f..93d049e 100644 --- a/win/makefile +++ b/win/makefile @@ -1,13 +1,11 @@ -# Copyright (C) 1994-2005, Index Data ApS +# Copyright (C) 1994-2006, Index Data ApS # All rights reserved. -# $Id: makefile,v 1.100 2006-02-09 12:36:18 adam Exp $ +# $Id: makefile,v 1.117 2006-08-03 09:27:23 adam Exp $ # # Programmed by # Heikki Levanto & Adam Dickmeiss -########################################################### -############### Parameters -########################################################### +# Parameters DEBUG=0 # 0 for release, 1 for debug @@ -18,11 +16,15 @@ HAVE_TCL=1 # iconv charcter conversion utility HAVE_ICONV=1 -ICONV_DIR = c:\iconv-1.9.1.win32 +ICONV_DIR = c:\iconv-1.9.2.win32 + +# libxslt +HAVE_LIBXSLT=1 +LIBXSLT_DIR=c:\libxslt-1.1.17.win32 # libxml2 HAVE_LIBXML2=1 -LIBXML2_DIR=c:\libxml2-2.6.20.win32 +LIBXML2_DIR=c:\libxml2-2.6.26.win32 # zlib compression (used by libxml2) ZLIB_DIR = c:\zlib-1.2.3.win32 @@ -36,7 +38,7 @@ BISON=bison default: all -all: dirs generate dll client ztest zoomsh utilprog testprog iconv libxml2 +all: dirs generate dll client ztest zoomsh utilprog testprog iconv libxml2 libxslt NSIS="c:\program files\nsis\makensis.exe" HHC="c:\program files\html help workshop\hhc.exe" @@ -55,11 +57,7 @@ nsishelp: generate: generated_files - - -########################################################### -############### Directories -########################################################### +# Directories # The current directory is supposed to be something like # ..../yaz/win, everything is relative to that ROOTDIR=.. # The home of yaz @@ -87,16 +85,14 @@ TESTDIR=$(ROOTDIR)\TEST TMPDIR=$(ROOTDIR)\win\tmp TMP=$(TMPDIR) -########################################################### -############### Targets - what to make -########################################################### +# Targets - what to make !if $(DEBUG) DLL=$(BINDIR)\yazd.dll -IMPLIB=$(LIBDIR)\yazd.lib +YAZ_IMPLIB=$(LIBDIR)\yazd.lib !else DLL=$(BINDIR)\yaz.dll -IMPLIB=$(LIBDIR)\yaz.lib +YAZ_IMPLIB=$(LIBDIR)\yaz.lib !endif CLIENT=$(BINDIR)\yaz-client.exe @@ -133,9 +129,7 @@ testprog: $(TSTLOG) htmlhelp: $(DOCDIR)\htmlhelp.chm -########################################################### -############### Compiler and linker options -########################################################### +# Modules and conditional flags, etc !if $(HAVE_ICONV) ICONV_DEF= \ @@ -157,7 +151,7 @@ iconv: !if $(HAVE_LIBXML2) LIBXML2_LIB="$(LIBXML2_DIR)\lib\libxml2.lib" -LIBXML2_DEF=/D HAVE_XML2=1 /I"$(LIBXML2_DIR)\include" +LIBXML2_DEF=/D YAZ_HAVE_XML2=1 /I"$(LIBXML2_DIR)\include" libxml2: $(BINDIR)\libxml2.dll $(BINDIR)\zlib1.dll $(BINDIR)\libxml2.dll: @@ -168,11 +162,28 @@ $(BINDIR)\zlib1.dll: !else LIBXML2_LIB= -LIBXML2_DEF=/D HAVE_XML2=0 +LIBXML2_DEF=/D YAZ_HAVE_XML2=0 libxml2: !endif +!if $(HAVE_LIBXSLT) +LIBXSLT_LIB="$(LIBXSLT_DIR)\lib\libxslt.lib" +LIBXSLT_DEF= \ + /D HAVE_XSLTSAVERESULTTOSTRING=1 \ + /D YAZ_HAVE_XSLT=1 \ + /I"$(LIBXSLT_DIR)\include" +libxslt: $(BINDIR)\libxslt.dll + +$(BINDIR)\libxslt.dll: + copy "$(LIBXSLT_DIR)\bin\libxslt.dll" $(BINDIR) + +!else +LIBXSLT_LIB= +LIBXSLT_DEF=/D YAZ_HAVE_XSLT=0 +libxslt: +!endif + ### C and CPP compiler (the same thing) # Note: $(CPP) has already been defined in the environment @@ -182,7 +193,9 @@ COMMON_C_OPTIONS= \ /nologo /W3 /EHsc /FD /c \ $(ICONV_DEF) \ $(LIBXML2_DEF) \ + $(LIBXSLT_DEF) \ /D "_CRT_SECURE_NO_DEPRECATE" \ + /D "_CRT_NONSTDC_NO_DEPRECATE" \ /D "_WINDOWS" \ /D "WIN32" \ /FR"$(OBJDIR)\\" \ @@ -194,7 +207,7 @@ COMMON_C_INCLUDES= \ DEBUG_C_OPTIONS= \ /D "_DEBUG" \ - /MDd /Od /YX /Zi /Gm + /MDd /Od /Zi /Gm RELEASE_C_OPTIONS= \ /D "NDEBUG" \ @@ -211,7 +224,6 @@ RELEASE_C_OPTIONS= \ # /MDd = Runtime library: Multithread DLL (debug) # /Od = Disable optimising (debug) # /O2 = Optimize for speed -# /YX = Automatic use of precomipled headers # /Gm = Minimal rebuild (some cpp class stuff) # /Zi = Program database for debuggers # /ZI = Pgm database with special "edit&continue" stuff - not available in C5 @@ -221,14 +233,10 @@ RELEASE_C_OPTIONS= \ LINK=link.exe LINK_LIBS= kernel32.lib user32.lib gdi32.lib \ - advapi32.lib uuid.lib \ - wsock32.lib advapi32.lib \ - $(ICONV_LIB) $(LIBXML2_LIB) + advapi32.lib uuid.lib wsock32.lib advapi32.lib \ + $(ICONV_LIB) $(LIBXML2_LIB) $(LIBXSLT_LIB) -COMMON_LNK_OPTIONS= /nologo \ - /subsystem:windows \ - /machine:i386 \ - /incremental:no +COMMON_LNK_OPTIONS= /nologo /subsystem:windows /machine:i386 /incremental:no DEBUG_LNK_OPTIONS= /debug @@ -236,8 +244,6 @@ RELEASE_LNK_OPTIONS= DLL_LINK_OPTIONS= /dll CLIENT_LINK_OPTIONS = /subsystem:console -SERVER_LINK_OPTIONS = -lib -ZTEST_LINK_OPTIONS = /subsystem:console COMMON_TCL_OPTIONS= ..\util\yaz-asncomp -I$(INCLDIR) -i yaz @@ -257,10 +263,13 @@ LNKOPT= $(COMMON_LNK_OPTIONS) $(RELEASE_LNK_OPTIONS) $(LNK_LIBS) TCLOPT= $(COMMON_TCL_OPTIONS) !endif +LINK_PROGRAM = $(LINK) $(LNKOPT) \ + $(CLIENT_LINK_OPTIONS) $(LINK_LIBS) $(YAZ_IMPLIB) -########################################################### -############### Source and object modules -########################################################### +LINK_DLL = $(LINK) $(LNKOPT) \ + $(LINK_LIBS) $(DLL_LINK_OPTIONS) + +# Source and object modules # Note: Ordinary source files are not specified here at # all, make finds them in suitable dirs. The object modules @@ -271,6 +280,11 @@ YAZ_CLIENT_OBJS= \ $(OBJDIR)\tabcomplete.obj \ $(OBJDIR)\admin.obj +ZTEST_OBJS= \ + $(OBJDIR)\read-marc.obj \ + $(OBJDIR)\read-grs.obj \ + $(OBJDIR)\ztest.obj + YAZ_ZOOMSH_OBJS = \ $(OBJDIR)\zoomsh.obj @@ -303,34 +317,26 @@ YAZ_MARCDUMP_OBJS = \ TSTLOG_OBJS = \ $(OBJDIR)\tstlog.obj -YAZ_SERVER_OBJS= \ - "$(OBJDIR)\eventl.obj" \ - "$(OBJDIR)\requestq.obj" \ - "$(OBJDIR)\service.obj" \ - "$(OBJDIR)\seshigh.obj" \ - "$(OBJDIR)\statserv.obj" \ - "$(OBJDIR)\tcpdchk.obj" - -ZTEST_OBJS= \ - "$(OBJDIR)\read-marc.obj" \ - "$(OBJDIR)\read-grs.obj" \ - "$(OBJDIR)\ztest.obj" - -YAZ_CCL_OBJS= \ +MISC_OBJS= \ + $(OBJDIR)\version.obj \ + $(OBJDIR)\nfa.obj \ + $(OBJDIR)\nfaxml.obj \ + $(OBJDIR)\eventl.obj \ + $(OBJDIR)\requestq.obj \ + $(OBJDIR)\service.obj \ + $(OBJDIR)\seshigh.obj \ + $(OBJDIR)\statserv.obj \ + $(OBJDIR)\tcpdchk.obj \ $(OBJDIR)\cclerrms.obj \ $(OBJDIR)\cclfind.obj \ $(OBJDIR)\cclptree.obj \ $(OBJDIR)\cclqfile.obj \ $(OBJDIR)\cclqual.obj \ $(OBJDIR)\cclstr.obj \ - $(OBJDIR)\ccltoken.obj - -YAZ_COMSTACK_OBJS= \ + $(OBJDIR)\ccltoken.obj \ $(OBJDIR)\comstack.obj \ $(OBJDIR)\tcpip.obj \ - $(OBJDIR)\waislen.obj - -YAZ_ODR_OBJS= \ + $(OBJDIR)\waislen.obj \ $(OBJDIR)\ber_any.obj \ $(OBJDIR)\ber_bit.obj \ $(OBJDIR)\ber_bool.obj \ @@ -356,10 +362,7 @@ YAZ_ODR_OBJS= \ $(OBJDIR)\odr_seq.obj \ $(OBJDIR)\odr_tag.obj \ $(OBJDIR)\odr_use.obj \ - $(OBJDIR)\odr_util.obj - -YAZ_UTIL_OBJS= \ - $(OBJDIR)\version.obj \ + $(OBJDIR)\odr_util.obj \ $(OBJDIR)\atoin.obj \ $(OBJDIR)\log.obj \ $(OBJDIR)\marcdisp.obj \ @@ -374,9 +377,11 @@ YAZ_UTIL_OBJS= \ $(OBJDIR)\matchstr.obj \ $(OBJDIR)\siconv.obj \ $(OBJDIR)\marc8.obj \ - $(OBJDIR)\test.obj - -YAZ_ZUTIL_OBJS= \ + $(OBJDIR)\marc8r.obj \ + $(OBJDIR)\record_conv.obj \ + $(OBJDIR)\retrieval.obj \ + $(OBJDIR)\libxml2_error.obj \ + $(OBJDIR)\test.obj \ $(OBJDIR)\diagbib1.obj \ $(OBJDIR)\diagsrw.obj \ $(OBJDIR)\diag-entry.obj \ @@ -398,7 +403,15 @@ YAZ_ZUTIL_OBJS= \ $(OBJDIR)\zoom-c.obj \ $(OBJDIR)\zoom-opt.obj \ $(OBJDIR)\initopt.obj \ - $(OBJDIR)\xmlquery.obj + $(OBJDIR)\xmlquery.obj \ + $(OBJDIR)\mime.obj \ + $(OBJDIR)\cql.obj \ + $(OBJDIR)\cqlstdio.obj \ + $(OBJDIR)\cqlstring.obj \ + $(OBJDIR)\cqltransform.obj \ + $(OBJDIR)\cqlutil.obj \ + $(OBJDIR)\cqlstrer.obj \ + $(OBJDIR)\xcqlutil.obj Z3950_OBJS= \ $(OBJDIR)\z-date.obj\ @@ -437,32 +450,12 @@ ILL_OBJS= \ $(OBJDIR)\ill-core.obj\ $(OBJDIR)\item-req.obj -YAZ_CQL_OBJS = \ - $(OBJDIR)\cql.obj \ - $(OBJDIR)\cqlstdio.obj \ - $(OBJDIR)\cqlstring.obj \ - $(OBJDIR)\cqltransform.obj \ - $(OBJDIR)\cqlutil.obj \ - $(OBJDIR)\cqlstrer.obj \ - $(OBJDIR)\xcqlutil.obj - -YAZ_OBJS =\ - $(YAZ_UTIL_OBJS) \ - $(YAZ_ODR_OBJS) \ - $(YAZ_COMSTACK_OBJS) \ +DLL_OBJS =\ + $(MISC_OBJS) \ $(Z3950_OBJS) \ $(ILL_OBJS) \ - $(YAZ_ZUTIL_OBJS) \ - $(YAZ_CCL_OBJS) \ - $(YAZ_CQL_OBJS) \ - $(YAZ_SERVER_OBJS) - -DLL_OBJS= $(YAZ_OBJS) -########################################################### -############### Generated C and H files -##### -###################################################### +# Generated C and H files Z3950_C_DIR=$(SRCDIR) ILL_C_DIR=$(SRCDIR) @@ -559,7 +552,9 @@ GENERATED_C_FILES= \ $(ESADMIN_C_FILES) \ $(CHARNEG_C_FILES) \ $(MTERM2_C_FILES) \ - $(OCLCUI_C_FILES) + $(OCLCUI_C_FILES) \ + $(ILL_CORE_C_FILES) \ + $(ITEM_REQ_C_FILES) GENERATED_H_FILES= \ $(Z3950V3_H_FILES) \ @@ -569,15 +564,17 @@ GENERATED_H_FILES= \ $(ESADMIN_H_FILES) \ $(CHARNEG_H_FILES) \ $(MTERM2_H_FILES) \ - $(OCLCUI_H_FILES) + $(OCLCUI_H_FILES) \ + $(ILL_CORE_H_FILES) \ + $(ITEM_REQ_H_FILES) generated_files: \ $(GENERATED_H_FILES) \ $(GENERATED_C_FILES) \ + $(SRCDIR)\diagsrw.c \ + $(SRCDIR)\diagbib1.c -########################################################### -############### Compiling -########################################################### +# Compiling # Note: This defines where to look for the necessary # source files. Funny way of doing it, but it works. @@ -607,7 +604,7 @@ generated_files: \ {$(TESTDIR)}.c{$(OBJDIR)}.obj: $(CPP) $(COPT) $< -############### ASN-generated files +# ASN-generated files !if $(HAVE_TCL) @@ -665,13 +662,17 @@ $(SRCDIR)\marc8.c: $(SRCDIR)\codetables.xml $(SRCDIR)\charconv.tcl @cd $(SRCDIR) $(TCL) charconv.tcl -p marc8 codetables.xml -o marc8.c +$(SRCDIR)\marc8r.c: $(SRCDIR)\codetables.xml $(SRCDIR)\charconv.tcl + @cd $(SRCDIR) + $(TCL) charconv.tcl -r -p marc8r codetables.xml -o marc8r.c + $(SRCDIR)\diagbib1.c: $(SRCDIR)\bib1.csv @cd $(SRCDIR) - $(TCL) csvtobib1.tcl + $(TCL) csvtobib1.tcl $(SRCDIR) $(SRCDIR)\diagsrw.c: $(SRCDIR)\srw.csv @cd $(SRCDIR) - $(TCL) csvtosrw.tcl + $(TCL) csvtosrw.tcl $(SRCDIR) !endif @@ -682,11 +683,8 @@ $(SRCDIR)\cql.c: $(SRCDIR)\cql.y !endif -########################################################### -############### Resources -########################################################### - -### The RC compiler (resource files) +# Resources +# The RC compiler (resource files) RSC=rc.exe COMMON_RC_OPTIONS= /l 0x406 /i"$(ROOTDIR)" DEBUG_RC_OPTIONS=/d "_DEBUG" @@ -704,233 +702,122 @@ RSOPT=/d_NDEBUG $(YAZ_RES): $(YAZ_RC) $(RSC) $(RSOPT) /fo"$(YAZ_RES)" $(YAZ_RC) -########################################################### -############### Linking -########################################################### - -$(DLL) $(IMPLIB): "$(BINDIR)" $(DLL_OBJS) $(YAZ_RES) - @echo Linking the dll $(DLL) - $(LINK) @<< - $(LNKOPT) - $(LINK_LIBS) - $(DLL_LINK_OPTIONS) - $(DLL_OBJS) - $(YAZ_RES) - /out:$(DLL) - /implib:"$(IMPLIB)" - /map:"$(LIBDIR)\yaz.map" -<< - -$(CLIENT) : "$(BINDIR)" $(YAZ_CLIENT_OBJS) - @echo Linking $(CLIENT) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_CLIENT_OBJS) - /map:"$(LIBDIR)\yaz-client.map" +# Linking + +$(DLL) $(YAZ_IMPLIB): "$(BINDIR)" $(DLL_OBJS) $(YAZ_RES) + $(LINK_DLL) \ + $(DLL_OBJS) \ + $(YAZ_RES) \ + /out:$(DLL) \ + /implib:"$(YAZ_IMPLIB)" \ + /map:"$(LIBDIR)\yaz.map" + +$(CLIENT) : "$(BINDIR)" $(YAZ_CLIENT_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_CLIENT_OBJS) \ + /map:"$(LIBDIR)\yaz-client.map" \ /out:$(CLIENT) -<< - -$(ZOOMSH) : "$(BINDIR)" $(YAZ_ZOOMSH_OBJS) - @echo Linking $(ZOOMSH) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_ZOOMSH_OBJS) - /map:"$(LIBDIR)\zoomsh.map" + +$(ZOOMSH) : "$(BINDIR)" $(YAZ_ZOOMSH_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_ZOOMSH_OBJS) \ + /map:"$(LIBDIR)\zoomsh.map" \ /out:$(ZOOMSH) -<< - -$(ZOOMTST1) : "$(BINDIR)" $(YAZ_ZOOMTST1_OBJS) - @echo Linking $(ZOOMTST1) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_ZOOMTST1_OBJS) - /map:"$(LIBDIR)\zoomtst1.map" + +$(ZOOMTST1) : "$(BINDIR)" $(YAZ_ZOOMTST1_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_ZOOMTST1_OBJS) \ + /map:"$(LIBDIR)\zoomtst1.map" \ /out:$(ZOOMTST1) -<< - -$(ZOOMTST2) : "$(BINDIR)" $(YAZ_ZOOMTST2_OBJS) - @echo Linking $(ZOOMTST2) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_ZOOMTST2_OBJS) - /map:"$(LIBDIR)\zoomtst2.map" + +$(ZOOMTST2) : "$(BINDIR)" $(YAZ_ZOOMTST2_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_ZOOMTST2_OBJS) \ + /map:"$(LIBDIR)\zoomtst2.map" \ /out:$(ZOOMTST2) -<< - -$(ZOOMTST3) : "$(BINDIR)" $(YAZ_ZOOMTST3_OBJS) - @echo Linking $(ZOOMTST3) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_ZOOMTST3_OBJS) - /map:"$(LIBDIR)\zoomtst3.map" + +$(ZOOMTST3) : "$(BINDIR)" $(YAZ_ZOOMTST3_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_ZOOMTST3_OBJS) \ + /map:"$(LIBDIR)\zoomtst3.map" \ /out:$(ZOOMTST3) -<< - -$(ZOOMTST4) : "$(BINDIR)" $(YAZ_ZOOMTST4_OBJS) - @echo Linking $(ZOOMTST4) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_ZOOMTST4_OBJS) - /map:"$(LIBDIR)\zoomtst4.map" + +$(ZOOMTST4) : "$(BINDIR)" $(YAZ_ZOOMTST4_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_ZOOMTST4_OBJS) \ + /map:"$(LIBDIR)\zoomtst4.map" \ /out:$(ZOOMTST4) -<< - -$(ZOOMTST5) : "$(BINDIR)" $(YAZ_ZOOMTST5_OBJS) - @echo Linking $(ZOOMTST5) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_ZOOMTST5_OBJS) - /map:"$(LIBDIR)\zoomtst5.map" + +$(ZOOMTST5) : "$(BINDIR)" $(YAZ_ZOOMTST5_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_ZOOMTST5_OBJS) \ + /map:"$(LIBDIR)\zoomtst5.map" \ /out:$(ZOOMTST5) -<< - -$(ZOOMTST6) : "$(BINDIR)" $(YAZ_ZOOMTST6_OBJS) - @echo Linking $(ZOOMTST6) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_ZOOMTST6_OBJS) - /map:"$(LIBDIR)\zoomtst6.map" + +$(ZOOMTST6) : "$(BINDIR)" $(YAZ_ZOOMTST6_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_ZOOMTST6_OBJS) \ + /map:"$(LIBDIR)\zoomtst6.map" \ /out:$(ZOOMTST6) -<< - -$(ZOOMTST7) : "$(BINDIR)" $(YAZ_ZOOMTST7_OBJS) - @echo Linking $(ZOOMTST7) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_ZOOMTST7_OBJS) - /map:"$(LIBDIR)\zoomtst7.map" + +$(ZOOMTST7) : "$(BINDIR)" $(YAZ_ZOOMTST7_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_ZOOMTST7_OBJS) \ + /map:"$(LIBDIR)\zoomtst7.map" \ /out:$(ZOOMTST7) -<< - -$(ZOOMTST8) : "$(BINDIR)" $(YAZ_ZOOMTST8_OBJS) - @echo Linking $(ZOOMTST8) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_ZOOMTST8_OBJS) - /map:"$(LIBDIR)\zoomtst8.map" + +$(ZOOMTST8) : "$(BINDIR)" $(YAZ_ZOOMTST8_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_ZOOMTST8_OBJS) \ + /map:"$(LIBDIR)\zoomtst8.map" \ /out:$(ZOOMTST8) -<< - - -$(ZOOMTST9) : "$(BINDIR)" $(YAZ_ZOOMTST9_OBJS) - @echo Linking $(ZOOMTST9) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_ZOOMTST9_OBJS) - /map:"$(LIBDIR)\zoomtst9.map" + + +$(ZOOMTST9) : "$(BINDIR)" $(YAZ_ZOOMTST9_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_ZOOMTST9_OBJS) \ + /map:"$(LIBDIR)\zoomtst9.map" \ /out:$(ZOOMTST9) -<< - -$(CQL2PQF) : "$(BINDIR)" $(YAZ_CQL2PQF_OBJS) - @echo Linking $(CQL2PQF) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_CQL2PQF_OBJS) - /map:"$(LIBDIR)\cql2pqf.map" + +$(CQL2PQF) : "$(BINDIR)" $(YAZ_CQL2PQF_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_CQL2PQF_OBJS) \ + /map:"$(LIBDIR)\cql2pqf.map" \ /out:$(CQL2PQF) -<< - -$(CQL2XCQL) : "$(BINDIR)" $(YAZ_CQL2XCQL_OBJS) - @echo Linking $(CQL2XCQL) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(YAZ_CQL2XCQL_OBJS) - /map:"$(LIBDIR)\cql2xcql.map" + +$(CQL2XCQL) : "$(BINDIR)" $(YAZ_CQL2XCQL_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(YAZ_CQL2XCQL_OBJS) \ + /map:"$(LIBDIR)\cql2xcql.map" \ /out:$(CQL2XCQL) -<< $(ZTEST) : "$(BINDIR)" $(ZTEST_OBJS) $(DLL) - @echo Linking $(ZTEST) - $(LINK) @<< - $(LNKOPT) - $(ZTEST_LINK_OPTIONS) - $(LINK_LIBS) - shell32.lib - $(IMPLIB) - $(ZTEST_OBJS) - /implib:"$(LIBDIR)\yaz-ztest.lib" - /map:"$(LIBDIR)\yaz-ztest.map" + $(LINK_PROGRAM) \ + $(ZTEST_OBJS) \ + /implib:"$(LIBDIR)\yaz-ztest.lib" \ + /map:"$(LIBDIR)\yaz-ztest.map" \ /out:$(ZTEST) -<< $(YAZ_MARCDUMP) : "$(BINDIR)" $(YAZ_MARCDUMP_OBJS) $(DLL) - @echo Linking $(YAZ_MARCDUMP) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - shell32.lib - $(IMPLIB) - $(YAZ_MARCDUMP_OBJS) - /map:"$(LIBDIR)\yaz-marcdump.map" + $(LINK_PROGRAM) \ + $(YAZ_MARCDUMP_OBJS) \ + /map:"$(LIBDIR)\yaz-marcdump.map" \ /out:$(YAZ_MARCDUMP) -<< - - -$(TSTLOG) : "$(BINDIR)" $(TSTLOG_OBJS) - @echo Linking $(TSTLOG) - $(LINK) @<< - $(LNKOPT) - $(CLIENT_LINK_OPTIONS) - $(LINK_LIBS) - $(IMPLIB) - $(TSTLOG_OBJS) - /map:"$(LIBDIR)\tstlog.map" + + +$(TSTLOG) : "$(BINDIR)" $(TSTLOG_OBJS) $(DLL) + $(LINK_PROGRAM) \ + $(TSTLOG_OBJS) \ + /map:"$(LIBDIR)\tstlog.map" \ /out:$(TSTLOG) -<< + +# Other rules $(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. - -########################################################### -############### Special operations -########################################################### - - -############## clean clean: -del $(BINDIR)\*.exe -del $(BINDIR)\*.dll @@ -958,16 +845,14 @@ realclean: clean # 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! -########### check directories and create if needed +# check directories and create if needed dirs: $(OBJDIR) $(WINDIR) $(LIBDIR) $(BINDIR) $(TMPDIR) $(OBJDIR) $(WINDIR) $(LIBDIR) $(BINDIR) $(TMPDIR): if not exist "$@/$(NUL)" mkdir "$@" -########################################################### -############### Explicit dependencies -########################################################### +# Explicit dependencies # force recompilation of everything, if makefile changed