OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [insight/] [itcl/] [itcl/] [win/] [makefile.bc] - Blame information for rev 1773

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 578 markom
# Borland C++ 4.52 makefile
2
#
3
# Copyright (c) 1993-1996 Lucent Technologies
4
# based on original from
5
# Copyright (c) 1995-1996 Sun Microsystems, Inc.
6
#
7
# See the file "license.terms" for information on usage and redistribution
8
# of this file, and for a DISCLAIMER OF ALL WARRANTIES.
9
 
10
!include "..\..\Makefile.bc"
11
 
12
#
13
# Project directories
14
#
15
# ROOT = top of source tree
16
# TMPDIR = location where .obj files should be stored during build
17
 
18
ROOT            = ..
19
TMPDIR          = .
20
TARGET_LIB_ITCL = $(TARGET_LIB)\Itcl2.2
21
TARGET_DOC_ITCL = $(TARGET_DOC)\Itcl
22
 
23
# uncomment the following line to compile with symbols
24
#DEBUG=1
25
 
26
# uncomment the following two lines to compile with TCL_MEM_DEBUG
27
#DEBUGDEFINES   =TCL_MEM_DEBUG
28
 
29
INCLUDES        =$(BORLAND)\include;$(ROOT)\generic;$(ROOT)\win;$(TCLDIR)\generic
30
LIBDIRS         =$(BORLAND)\lib;$(ROOT)\win
31
 
32
!ifndef DEBUG
33
 
34
# these macros cause maximum optimization and no symbols
35
DEBUGLDFLAGS    =
36
DEBUGCCFLAGS    = -v- -vi- -O2
37
DEBUGLDFLAGS16  = -Oc -Oi -Oa -Or
38
!else
39
 
40
# these macros enable debugging
41
DEBUGLDFLAGS    = -v
42
DEBUGCCFLAGS    = -k -Od -v
43
DEBUGLDFLAGS16  =
44
!endif
45
 
46
DEFINES         = _RTLDLL;USE_TCLALLOC=0;$(DEBUGDEFINES);NO_DLFCN_H=1;ITCL_NAMESPACES=1
47
PROJECTCCFLAGS  = $(DEBUGCCFLAGS) -w-par -w-stu
48
 
49
CFLAGS16_dll    = $(PROJECTCCFLAGS) -I$(INCLUDES) -D$(DEFINES) -WD -ml -c -3 -d -w
50
 
51
LNFLAGS_exe             = -Tpe -aa -c $(DEBUGLDFLAGS) $(BORLAND)\lib\c0w32
52
LNFLAGS_CONSOLE_exe     = -Tpe -ap -c $(DEBUGLDFLAGS) $(BORLAND)\lib\c0x32
53
LNFLAGS_dll             = -Tpd -aa -c $(DEBUGLDFLAGS) $(BORLAND)\lib\c0d32
54
LNFLAGS16_dll           = -Twd -c -C -A=16 $(DEBUGLDFLAGS16) $(BORLAND)\lib\c0dl.obj
55
 
56
LNLIBS_exe      = $(ITCLLIB) $(TCLLIBDIR)\$(TCLLIB) import32 cw32i
57
LNLIBS_dll      = $(TCLLIBDIR)\$(TCLLIB) import32 cw32i
58
LNLIBS16_dll    = import cwl
59
 
60
#
61
# Global makefile settings
62
#
63
 
64
.AUTODEPEND
65
.CACHEAUTODEPEND
66
 
67
.suffixes: .c .dll .lib .obj .exe
68
 
69
.path.c=$(ROOT)\win;$(ROOT)\generic
70
.path.obj=$(TMPDIR)
71
.path.dll=$(ROOT)\win;$(WINDIR);$(WINDIR)\SYSTEM32;$(WINDIR)\SYSTEM
72
 
73
ITCLSHOBJS = \
74
        $(TMPDIR)\tclAppInit.obj
75
 
76
ITCLOBJS = \
77
        $(TMPDIR)\itcl_bicmds.obj \
78
        $(TMPDIR)\itcl_class.obj \
79
        $(TMPDIR)\itcl_cmds.obj \
80
        $(TMPDIR)\itcl_linkage.obj \
81
        $(TMPDIR)\itcl_methods.obj \
82
        $(TMPDIR)\itcl_objects.obj \
83
        $(TMPDIR)\itcl_obsolete.obj \
84
        $(TMPDIR)\itcl_parse.obj \
85
        $(TMPDIR)\itcl_util.obj \
86
        $(TMPDIR)\dllEntryPoint.obj
87
 
88
 
89
DUMPEXTS = $(TCLLIBDIR)\dumpexts.exe
90
ITCLSH = itclsh.exe
91
 
92
#
93
# Targets
94
#
95
 
96
all:  cfgcln cfgdll $(ITCLDLL) cfgexe $(ITCLSH) cfgcln
97
test: $(ITCLSH)
98
        $(CP) $(TCLLIBDIR)\*.dll
99
        $(ITCLSH) <<|
100
                cd ../tests
101
                source all
102
|
103
 
104
install: all
105
        $(MKDIR) "$(TARGET_ROOT)"
106
        $(MKDIR) "$(TARGET_BIN)"
107
        $(MKDIR) "$(TARGET_LIB_ROOT)"
108
        $(MKDIR) "$(TARGET_LIB)"
109
        $(MKDIR) "$(TARGET_LIB_ITCL)"
110
        $(MKDIR) "$(TARGET_INCLUDE_ROOT)"
111
        $(MKDIR) "$(TARGET_INCLUDE)"
112
        $(MKDIR) "$(TARGET_DOC)"
113
        $(MKDIR) "$(TARGET_DOC_ITCL)"
114
        $(CP) $(TMPDIR)\$(ITCLSH) "$(TARGET_BIN)"
115
        $(CP) $(TMPDIR)\$(ITCLDLL) "$(TARGET_BIN)"
116
        $(CP) $(ROOT)\generic\itcl.h "$(TARGET_INCLUDE)"
117
        $(CP) $(ROOT)\library\*.* "$(TARGET_LIB_ITCL)"
118
        $(CP) $(ROOT)\win\*.tcl "$(TARGET_LIB_ITCL)"
119
        $(CP) $(ROOT)\..\html\Itcl\*.* "$(TARGET_DOC_ITCL)"
120
 
121
# Implicit Targets
122
 
123
.c.obj:
124
        @$(BCC32) {$< }
125
 
126
.dll.lib:
127
        $(IMPLIB) -c $@ $<
128
 
129
#.rc.res:
130
#       $(RC) -i$(INCLUDES) -d__WIN32__;$(DEFINES) $<
131
 
132
.rc.res:
133
        $(RC) -i$(INCLUDES) -d__WIN32__; $<
134
 
135
 
136
#
137
# Configuration file targets - these files are implicitly used by the compiler
138
#
139
 
140
cfgdll:
141
        @$(CP) &&|
142
                -n$(TMPDIR) -I$(INCLUDES) -c -WD
143
                -D$(DEFINES) -3 -d -w $(PROJECTCCFLAGS)
144
| bcc32.cfg >NUL
145
 
146
cfgexe:
147
        @$(CP) &&|
148
                -n$(TMPDIR) -I$(INCLUDES) -c -W
149
                -D$(DEFINES) -3 -d -w $(PROJECTCCFLAGS)
150
| bcc32.cfg >NUL
151
 
152
cfgcln:
153
        -@$(RM) *.cfg
154
 
155
#
156
# Executable targets
157
#
158
 
159
$(ITCLDLL): $(ITCLOBJS) itcl.def itcl.res
160
        $(TLINK32) $(LNFLAGS_dll) @&&|
161
                $(ITCLOBJS)
162
$@
163
-x
164
$(LNLIBS_dll)
165
|, itcl.def, itcl.res
166
 
167
$(ITCLSH): $(ITCLSHOBJS) $(ITCLLIB) itclsh.res
168
        $(TLINK32) $(LNFLAGS_CONSOLE_exe) @&&|
169
                $(ITCLSHOBJS)
170
$@
171
-x
172
$(LNLIBS_exe)
173
|, &&|
174
EXETYPE WINDOWS
175
CODE PRELOAD MOVEABLE DISCARDABLE
176
DATA PRELOAD MOVEABLE MULTIPLE
177
|, itclsh.res
178
 
179
 
180
# The following rule automatically generates a tcl.def file containing
181
# an export entry for every public symbol in the tcl.dll library.
182
 
183
itcl.def: $(ITCLOBJS)
184
        $(DUMPEXTS) -o itcl.def $(ITCLDLL) @&&|
185
                $(ITCLOBJS)
186
|
187
 
188
 
189
# debugging rules, the .dll and .exe files must be in the same
190
# directory as the object files for debugging purposes
191
 
192
$(TMPDIR)\$(ITCLDLL): $(ITCLDLL)
193
        $(CP) $(ITCLDLL) $(TMPDIR)
194
 
195
$(TMPDIR)\$(TCLDLL): $(TCLLIBDIR)\$(TCLDLL)
196
        $(CP) $(TCLLIBDIR)\$(TCLDLL) $(TMPDIR)
197
 
198
$(TMPDIR)\$(ITCLSH): $(ITCLSH)
199
        $(CP) $(ITCLSH) $(TMPDIR)
200
 
201
debug: $(TMPDIR)\$(ITCLDLL) $(TMPDIR)\$(TCLDLL)
202
 
203
# remove all generated files
204
 
205
clean:
206
        -@$(RM) *.exe
207
        -@$(RM) *.lib
208
        -@$(RM) *.dll
209
        -@$(RM) *.res
210
        -@$(RM) itcl.def
211
        -@$(RM) $(TMPDIR)\*.obj
212
        -@$(RM) *.cfg

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.