OSDN Git Service

Please enter the commit message for your changes. Lines starting
[eos/base.git] / util / src / TclTk / tcl8.6.12 / pkgs / itcl4.2.2 / win / makefile.vc
1 #------------------------------------------------------------- -*- makefile -*-\r
2 #\r
3 # Makefile for ITcl\r
4 #\r
5 # Basic build, test and install\r
6 #   nmake /s /nologo /f makefile.vc INSTALLDIR=c:\path\to\installdir TCLDIR=c:\path\to\tcl\source\r
7 #   nmake /s /nologo /f makefile.vc INSTALLDIR=c:\path\to\installdir TCLDIR=c:\path\to\tcl\source test\r
8 #   nmake /s /nologo /f makefile.vc INSTALLDIR=c:\path\to\installdir TCLDIR=c:\path\to\tcl\source install\r
9 #\r
10 # For other build options (debug, static etc.)\r
11 # See TIP 477 (https://core.tcl.tk/tips/doc/trunk/tip/477.md) for\r
12 # detailed documentation.\r
13 #\r
14 # See the file "license.terms" for information on usage and redistribution\r
15 # of this file, and for a DISCLAIMER OF ALL WARRANTIES.\r
16 #\r
17 #------------------------------------------------------------------------------\r
18 \r
19 PROJECT         = itcl\r
20 NEED_TCL_SOURCE = 1\r
21 RCFILE      = itcl.rc\r
22 \r
23 !include "rules-ext.vc"\r
24 \r
25 PRJ_OBJS = \\r
26         $(TMP_DIR)\itcl2TclOO.obj \\r
27         $(TMP_DIR)\itclBase.obj \\r
28         $(TMP_DIR)\itclBuiltin.obj \\r
29         $(TMP_DIR)\itclClass.obj \\r
30         $(TMP_DIR)\itclCmd.obj \\r
31         $(TMP_DIR)\itclEnsemble.obj \\r
32         $(TMP_DIR)\itclHelpers.obj \\r
33         $(TMP_DIR)\itclInfo.obj \\r
34         $(TMP_DIR)\itclLinkage.obj \\r
35         $(TMP_DIR)\itclMethod.obj \\r
36         $(TMP_DIR)\itclMigrate2TclCore.obj \\r
37         $(TMP_DIR)\itclObject.obj \\r
38         $(TMP_DIR)\itclParse.obj \\r
39         $(TMP_DIR)\itclResolve.obj \\r
40         $(TMP_DIR)\itclStubs.obj \\r
41         $(TMP_DIR)\itclStubInit.obj \\r
42         $(TMP_DIR)\itclTclIntStubsFcn.obj \\r
43         $(TMP_DIR)\itclUtil.obj \\r
44 !if !$(STATIC_BUILD)\r
45         $(TMP_DIR)\dllEntryPoint.obj \\r
46 !endif\r
47 \r
48 PRJ_STUBOBJS = $(TMP_DIR)\itclStubLib.obj\r
49 \r
50 PRJ_DEFINES = /D_CRT_SECURE_NO_WARNINGS\r
51 !if $(DEBUG)\r
52 PRJ_DEFINES = $(PRJ_DEFINES) /DITCL_DEBUG\r
53 !endif\r
54 \r
55 PRJ_HEADERS_PUBLIC = \\r
56         $(GENERICDIR)\itcl.h \\r
57         $(GENERICDIR)\itclDecls.h\r
58 \r
59 \r
60 # Define the standard targets except we have a custom test target\r
61 DISABLE_TARGET_test = 1\r
62 !include "$(_RULESDIR)\targets.vc"\r
63 \r
64 pkgindex:   $(OUT_DIR)\pkgIndex.tcl\r
65 $(OUT_DIR)\pkgIndex.tcl:\r
66         @$(COPY) << "$(OUT_DIR)\pkgIndex.tcl"\r
67 # -*- tcl -*-\r
68 # Tcl package index file, version 1.1\r
69 #\r
70 \r
71 if {![package vsatisfies [package provide Tcl] 8.6-]} {return}\r
72 \r
73 if {[package vsatisfies [package provide Tcl] 9.0-]} {\r
74     package ifneeded itcl $(DOTVERSION) \\r
75             [list load [file join $$dir tcl9itcl$(VERSION).dll] Itcl]\r
76 } else {\r
77     package ifneeded itcl $(DOTVERSION) \\r
78             [list load [file join $$dir itcl$(VERSION).dll] Itcl]\r
79 }\r
80 package ifneeded Itcl $(DOTVERSION) [list package require -exact itcl $(DOTVERSION)]\r
81 <<\r
82 \r
83 !if $(STATIC_BUILD)\r
84 test :\r
85         @echo test target not supported for a static library.\r
86 !else\r
87 test : setup $(PROJECT)\r
88         $(TCLSH) ..\tests\all.tcl $(TESTFLAGS) -loadfile <<\r
89         set env(ITCL_LIBRARY) [file normalize [file join $(MAKEDIR:\=/) .. library]]\r
90         package ifneeded $(PROJECT) $(DOTVERSION) [list load [file normalize [file join $(MAKEDIR:\=/) $(PRJLIB:\=/)]]]\r
91 <<\r
92 !endif\r
93 \r
94 genstubs:\r
95 !if $(TCLINSTALL)\r
96         @echo Need the source distribution to regenerate the Stubs table.\r
97 !else\r
98         $(TCLSH) $(TOOLSDIR)\genStubs.tcl $(GENERICDIR) \\r
99                $(GENERICDIR)\$(PROJECT).decls $(GENERICDIR)\$(PROJECT)Int.decls\r
100 !endif\r