Bump year
[ir-tcl-moved-to-github.git] / win / makefile
index b5e0a1d..d2148f2 100644 (file)
@@ -1,8 +1,8 @@
 # IRTCL makefile for MS NMAKE 
-# $Id: makefile,v 1.1 1999-09-10 10:02:29 adam Exp $
+# $Id: makefile,v 1.7 2006-05-01 12:50:06 adam Exp $
 #
 # Log at the end of the file
-VERSION=1.3
+VERSION=1.4.3
  
 ###########################################################
 ############### Parameters 
@@ -22,8 +22,9 @@ all: dirs irtcl
 ROOTDIR=..   # The home of IRTCL
 
 # TCL include files, libraries, etc.
-TCLINCL="c:\program files\tcl\include"
-TCLLIB="c:\program files\tcl\lib\tcl82.lib"
+TCLDIR=c:\tcl
+TCLINCL=$(TCLDIR)\include8.4
+TCLLIB=$(TCLDIR)\lib\tclstub84.lib
 
 # YAZ include files, libraries, etc.
 YAZDIR=$(ROOTDIR)\..\YAZ
@@ -62,16 +63,20 @@ irtcl : $(IRTCLDLL)
 # (if you set things up right!)
 
 COMMON_C_OPTIONS=          \
-  /nologo /W3 /GX /FD /c   \
-  /D "WIN32" /D "IR_TCL_VERSION=\"$(VERSION)\""  \
+  /nologo \
+  /W3 /EHsc /FD /c   \
+  /D "WIN32" \
+  /D "_CRT_SECURE_NO_DEPRECATE" \
+  /D "IR_TCL_VERSION=\"$(VERSION)\""  \
+  /D USE_TCL_STUBS=1       \
   /FR"$(OBJDIR)\\"         \
   /Fo"$(OBJDIR)\\"         \
   /Fd"$(OBJDIR)\\"
 
 COMMON_C_INCLUDES= \
-  /I$(SRCDIR) \
-  /I$(YAZINCL) \
-  /I$(TCLINCL) \
+  /I"$(SRCDIR)" \
+  /I"$(YAZINCL)" \
+  /I"$(TCLINCL)" \
 
 DEBUG_C_OPTIONS=  \
   /D "_DEBUG"      \
@@ -107,7 +112,6 @@ LINK_LIBS= kernel32.lib user32.lib   gdi32.lib   winspool.lib \
            wsock32.lib  advapi32.lib
 
 COMMON_LNK_OPTIONS= \
-       /nologo \
        /machine:i386 \
        /incremental:no
 
@@ -158,24 +162,46 @@ ALL_OBJS=$(IRTCL_OBJS)
 # source files. Funny way of doing it, but it works.
 
 {$(SRCDIR)}.cpp{$(OBJDIR)}.obj:
-       @$(CPP) $(COPT) $<
+       $(CPP) $(COPT) $<
 
 {$(SRCDIR)}.c{$(OBJDIR)}.obj:
-       @$(CPP) $(COPT) $<
+       $(CPP) $(COPT) $<
+
+###########################################################
+############### Resources
+###########################################################
+
+### The RC compiler (resource files)
+RSC=rc.exe
+COMMON_RC_OPTIONS= /l 0x406 /i"$(ROOTDIR)" 
+DEBUG_RC_OPTIONS=/d "_DEBUG"
+RELEASE_RC_OPTIONS=/d "NDEBUG"
+
+RES=$(OBJDIR)\irtcl.res
+RC=$(WINDIR)\irtcl.rc
+
+!if $(DEBUG)
+RSOPT=/d_DEBUG
+!else
+RSOPT=/d_NDEBUG
+!endif
+
+$(RES): $(RC)
+       $(RSC) $(RSOPT) /fo"$(RES)" $(RC) 
 
 ###########################################################
 ############### Linking
 ###########################################################
 
-$(IRTCLDLL) : "$(BINDIR)" $(IRTCL_OBJS) 
-       @echo Linking irtcl DLL $(IRTCLDLL)
-       $(LINK) $(IRTCL_LINK_OPTIONS) @<<
-               /nologo
-               $(IRTCL_OBJS) 
-               /out:$(IRTCLDLL) 
-               $(YAZLIB)
-               $(TCLLIB)
-<<
+$(IRTCLDLL) : "$(BINDIR)" $(IRTCL_OBJS) $(RES)
+       $(LINK) \
+               $(IRTCL_LINK_OPTIONS) \
+               /nologo \
+               $(IRTCL_OBJS)  \
+               $(RES) \
+               /out:"$(IRTCLDLL)" \
+               "$(YAZLIB)" \
+               "$(TCLLIB)"
 
 
 ###########################################################
@@ -185,10 +211,11 @@ $(IRTCLDLL) : "$(BINDIR)" $(IRTCL_OBJS)
 
 ############## clean
 clean:
-       del $(OBJDIR)\*.obj
-       del $(OBJDIR)\*.sbr
-       del $(TMPDIR)\*.
-       del $(IRTCLDLL)
+       -del $(OBJDIR)\*.obj
+       -del $(OBJDIR)\*.sbr
+       -del $(OBJDIR)\*.res
+       -del $(TMPDIR)\*.
+       -del $(IRTCLDLL)
 
 # Because DOS del will only accept one file name to delete,
 # the _H_ files work only on sets that have just one file.
@@ -213,7 +240,27 @@ $(ALL_OBJS): makefile
 ###########################################################
 #
 # $Log: makefile,v $
-# Revision 1.1  1999-09-10 10:02:29  adam
+# Revision 1.7  2006-05-01 12:50:06  adam
+# More verbose linking. Remove .res on clean
+#
+# Revision 1.6  2006/05/01 12:42:44  adam
+# Update for VS 2005.
+# Version 1.4.3.
+#
+# Revision 1.5  2004/04/26 09:31:00  adam
+# Update for 1.4.2
+#
+# Revision 1.4  2003/03/05 22:06:32  adam
+# TclStubs on WIN32
+#
+# Revision 1.3  2003/01/30 13:27:07  adam
+# Changed version to 1.4.1. Added WIN32 version resource.
+# IrTcl ignores unexpected PDU's, rather than die.
+#
+# Revision 1.2  2001/12/03 00:31:06  adam
+# Towards 1.4. Configure updates.
+#
+# Revision 1.1  1999/09/10 10:02:29  adam
 # Added MS NMAKE files - removed project files.
 #