For win, generate yazpp3.dll instead of yazpp2.dll.
[yazpp-moved-to-github.git] / win / makefile
index 09fec77..ce31be2 100644 (file)
@@ -1,10 +1,11 @@
 # Copyright (C) 1999-2006, Index Data ApS
 # All rights reserved.
-# $Id: makefile,v 1.18 2007-01-11 12:18:55 adam Exp $
+# $Id: makefile,v 1.21 2008-02-21 10:16:26 adam Exp $
 
 # Parameters 
 
 DEBUG=0   # 0 for release, 1 for debug
+USE_MANIFEST = 0 # Can be enabled Visual Studio 2005
 
 # YAZ
 YAZ_DIR=..\..\yaz
@@ -45,20 +46,20 @@ TMP=$(TMPDIR)
 # Targets - what to make
 
 !if $(DEBUG)
-YAZPP_DLL=$(BINDIR)\yazpp_1_d.dll
-YAZPP_IMPLIB=$(LIBDIR)\yazpp_1_d.lib
-YAZD=yazd
+DLL=$(BINDIR)\yazpp3d.dll
+YAZPP_IMPLIB=$(LIBDIR)\yazpp3d.lib
+YAZD=yaz3d
 !else
-YAZPP_DLL=$(BINDIR)\yazpp_1.dll
-YAZPP_IMPLIB=$(LIBDIR)\yazpp_1.lib
-YAZD=yaz
+DLL=$(BINDIR)\yazpp3.dll
+YAZPP_IMPLIB=$(LIBDIR)\yazpp3.lib
+YAZD=yaz3
 !endif
 
 ZCLIENT=$(BINDIR)\zclient.exe
 MY_CLIENT=$(BINDIR)\yaz-my-client.exe
 
 # shortcut names defined here
-dll: $(YAZPP_DLL)
+dll: $(DLL)
 zclient: $(ZCLIENT)
 myclient: $(MY_CLIENT)
 
@@ -140,7 +141,7 @@ LNKOPT= $(COMMON_LNK_OPTIONS) $(RELEASE_LNK_OPTIONS) $(LNK_LIBS)
 
 # Source and object modules
 
-YAZPP_DLL_OBJS = \
+DLL_OBJS = \
    "$(OBJDIR)\gdu.obj" \
    "$(OBJDIR)\gduqueue.obj" \
    "$(OBJDIR)\pdu-observer.obj" \
@@ -193,32 +194,28 @@ RSOPT=/d_DEBUG
 RSOPT=/d_NDEBUG
 !endif
 
-$(YAZPP_DLL) $(YAZPP_IMPLIB): "$(BINDIR)" $(YAZPP_DLL_OBJS)
-       $(LINK) \
-               $(LNKOPT) \
-               $(LINK_LIBS) \
-               $(DLL_LINK_OPTIONS) \
-               $(YAZPP_DLL_OBJS) \
-               /out:"$(YAZPP_DLL)" \
-               /implib:"$(YAZPP_IMPLIB)" 
+!if $(USE_MANIFEST)
+MT=mt.exe /nologo
+!else
+MT=echo
+!endif
+
+
+LINK_DLL = $(LINK) $(LNKOPT) $(LINK_LIBS) $(DLL_LINK_OPTIONS)
+LINK_PROGRAM = $(LINK) $(LNKOPT) $(CLIENT_LINK_OPTIONS) $(LINK_LIBS) $(YAZPP_IMPLIB)
+
+
+$(DLL) $(YAZPP_IMPLIB): "$(BINDIR)" $(DLL_OBJS)
+       $(LINK_DLL) $(DLL_OBJS) /out:$@ /implib:"$(YAZPP_IMPLIB)" 
+       $(MT) -manifest $@.manifest -outputresource:$@;2
 
 $(MY_CLIENT) : "$(BINDIR)" $(MY_CLIENT_OBJS) $(YAZPP_IMPLIB)
-       $(LINK) \
-               $(LNKOPT) \
-               $(CLIENT_LINK_OPTIONS) \
-               $(LINK_LIBS)  \
-               $(YAZPP_IMPLIB) \
-               $(MY_CLIENT_OBJS) \
-               /out:$(MY_CLIENT)
+       $(LINK_PROGRAM) $(MY_CLIENT_OBJS) /out:$@
+       $(MT) -manifest $@.manifest -outputresource:$@;1
 
 $(ZCLIENT) : "$(BINDIR)" $(ZCLIENT_OBJS) $(YAZPP_IMPLIB)
-       $(LINK) \
-               $(LNKOPT) \
-               $(CLIENT_LINK_OPTIONS) \
-               $(LINK_LIBS) \
-               $(YAZPP_IMPLIB) \
-               $(ZCLIENT_OBJS) \
-               /out:$(ZCLIENT)
+       $(LINK_PROGRAM) $(ZCLIENT_OBJS) /out:$@
+       $(MT) -manifest $@.manifest -outputresource:$@;1
 
 generated: $(ZOOMDIR)\zoom.h