OSDN Git Service

* generic/tclIntDecls.h (TclIntStubs): Do not include definitions
[pf3gnuchains/sourceware.git] / tcl / win / Makefile.in
1 #
2 # This file is a Makefile for Tcl.  If it has the name "Makefile.in"
3 # then it is a template for a Makefile;  to generate the actual Makefile,
4 # run "./configure", which is a configuration script generated by the
5 # "autoconf" program (constructs like "@foo@" will get replaced in the
6 # actual Makefile.
7 #
8 # RCS: @(#) $Id$
9
10 VERSION = @TCL_VERSION@
11
12 #----------------------------------------------------------------
13 # Things you can change to personalize the Makefile for your own
14 # site (you can make these changes in either Makefile.in or
15 # Makefile, but changes to Makefile will get lost if you re-run
16 # the configuration script).
17 #----------------------------------------------------------------
18
19 # Default top-level directories in which to install architecture-
20 # specific files (exec_prefix) and machine-independent files such
21 # as scripts (prefix).  The values specified here may be overridden
22 # at configure-time with the --exec-prefix and --prefix options
23 # to the "configure" script.
24
25 prefix                  = @prefix@
26 exec_prefix             = @exec_prefix@
27 bindir                  = @bindir@
28 libdir                  = @libdir@
29 includedir              = @includedir@
30 mandir                  = @mandir@
31
32 # The following definition can be set to non-null for special systems
33 # like AFS with replication.  It allows the pathnames used for installation
34 # to be different than those used for actually reference files at
35 # run-time.  INSTALL_ROOT is prepended to $prefix and $exec_prefix
36 # when installing files.
37 INSTALL_ROOT    =
38
39 # Directory from which applications will reference the libary of Tcl
40 # scripts (note: you can set the TCL_LIBRARY environment variable at
41 # run-time to override this value):
42 TCL_LIBRARY     = @datadir@/tcl$(VERSION)
43
44 # Path to use at runtime to refer to LIB_INSTALL_DIR:
45 LIB_RUNTIME_DIR         = $(libdir)
46
47 # Directory in which to install the program tclsh:
48 BIN_INSTALL_DIR         = $(INSTALL_ROOT)$(bindir)
49
50 # Directory in which to install the .a or .so binary for the Tcl library:
51 LIB_INSTALL_DIR         = $(INSTALL_ROOT)$(libdir)
52
53 # Path name to use when installing library scripts.
54 SCRIPT_INSTALL_DIR      = $(INSTALL_ROOT)$(TCL_LIBRARY)
55
56 # Directory in which to install the include file tcl.h:
57 INCLUDE_INSTALL_DIR     = $(INSTALL_ROOT)$(includedir)
58
59 # Top-level directory in which to install manual entries:
60 MAN_INSTALL_DIR         = $(INSTALL_ROOT)$(mandir)
61
62 # Directory in which to install manual entry for tclsh:
63 MAN1_INSTALL_DIR = $(MAN_INSTALL_DIR)/man1
64
65 # Directory in which to install manual entries for Tcl's C library
66 # procedures:
67 MAN3_INSTALL_DIR = $(MAN_INSTALL_DIR)/man3
68
69 # Directory in which to install manual entries for the built-in
70 # Tcl commands:
71 MANN_INSTALL_DIR = $(MAN_INSTALL_DIR)/mann
72
73 # Libraries built with optimization switches have this additional extension
74 TCL_DBGX = @TCL_DBGX@
75
76 # warning flags
77 CFLAGS_WARNING = @CFLAGS_WARNING@
78
79 # The default switches for optimization or debugging
80 CFLAGS_DEBUG    = @CFLAGS_DEBUG@
81 CFLAGS_OPTIMIZE = @CFLAGS_OPTIMIZE@
82
83 # To enable compilation debugging reverse the comment characters on
84 # one of the following lines.
85 COMPILE_DEBUG_FLAGS =
86 #COMPILE_DEBUG_FLAGS = -DTCL_COMPILE_DEBUG
87 #COMPILE_DEBUG_FLAGS = -DTCL_COMPILE_DEBUG -DTCL_COMPILE_STATS
88
89 # The default switches for optimization or debugging
90 LDFLAGS_DEBUG    = @LDFLAGS_DEBUG@
91 LDFLAGS_OPTIMIZE = @LDFLAGS_OPTIMIZE@
92
93 # To change the compiler switches, for example to change from optimization to
94 # debugging symbols, change the following line:
95 #CFLAGS =               $(CFLAGS_DEBUG)
96 #CFLAGS =               $(CFLAGS_OPTIMIZE)
97 #CFLAGS =               $(CFLAGS_DEBUG) $(CFLAGS_OPTIMIZE)
98 CFLAGS =                @CFLAGS@ @CFLAGS_DEFAULT@
99
100 # Special compiler flags to use when building man2tcl on Windows.
101 MAN2TCLFLAGS =          @MAN2TCLFLAGS@
102
103 SRC_DIR                 = @srcdir@
104 ROOT_DIR                = @srcdir@/..
105 GENERIC_DIR             = @srcdir@/../generic
106 WIN_DIR                 = @srcdir@
107 COMPAT_DIR              = @srcdir@/../compat
108
109 # This converts a POSIX path to a Windows native path
110 CYGPATH                 = @CYGPATH@
111
112 GENERIC_DIR_NATIVE      = $(shell $(CYGPATH) '$(GENERIC_DIR)')
113 WIN_DIR_NATIVE          = $(shell $(CYGPATH) '$(WIN_DIR)')
114 ROOT_DIR_NATIVE         = $(shell $(CYGPATH) '$(ROOT_DIR)')
115
116 LIBRARY_DIR   = $(shell echo '$(ROOT_DIR_NATIVE)/library' | sed 's/\\/\//g' )
117
118 VENDORPREFIX            = @VENDORPREFIX@
119 DLLSUFFIX               = @DLLSUFFIX@
120 LIBSUFFIX               = @LIBSUFFIX@
121 EXESUFFIX               = @EXESUFFIX@
122 LIBPREFIX               = @LIBPREFIX@
123
124 TCL_STUB_LIB_FILE       = @TCL_STUB_LIB_FILE@
125 TCL_DLL_FILE            = @TCL_DLL_FILE@
126 TCL_LIB_FILE            = @TCL_LIB_FILE@
127 TCL_DLL_BASE            = @TCL_DLL_BASE@
128 GNU_TCL_LIB_FILE        = @GNU_TCL_LIB_FILE@
129 MSVC_TCL_LIB_FILE       = @MSVC_TCL_LIB_FILE@
130 DDE_DLL_FILE            = @DDE_DLL_FILE@
131 DDE_LIB_FILE            = @DDE_LIB_FILE@
132 DDE_DLL_BASE            = @DDE_DLL_BASE@
133 REG_DLL_FILE            = @REG_DLL_FILE@
134 REG_LIB_FILE            = @REG_LIB_FILE@
135 REG_DLL_BASE            = @REG_DLL_BASE@
136 PIPE_DLL_FILE           = @PIPE_DLL_FILE@
137
138 SHARED_LIBRARIES        = $(TCL_DLL_FILE) $(TCL_STUB_LIB_FILE) \
139                           $(DDE_DLL_FILE) $(REG_DLL_FILE) $(PIPE_DLL_FILE)
140 STATIC_LIBRARIES        = $(TCL_LIB_FILE) $(REG_LIB_FILE) $(DDE_LIB_FILE)
141
142 TCLSH                   = tclsh$(VER)${EXESUFFIX}
143 TCLTEST                 = tcltest${EXEEXT}
144 CAT32                   = cat32$(EXEEXT)
145 MAN2TCL                 = man2tcl$(EXEEXT)
146
147 SET_MAKE=@SET_MAKE@
148
149 # Setting the VPATH variable to a list of paths will cause the 
150 # makefile to look into these paths when resolving .c to .obj
151 # dependencies.
152
153 VPATH = $(GENERIC_DIR):$(WIN_DIR):$(COMPAT_DIR)
154
155 AR              = @AR@
156 RANLIB          = @RANLIB@
157 CC              = @CC@
158 RC              = @RC@
159 RES             = @RES@
160 AC_FLAGS        = @EXTRA_CFLAGS@ @DEFS@
161 CPPFLAGS        = @CPPFLAGS@
162 LDFLAGS         = @LDFLAGS@ @LDFLAGS_DEFAULT@
163 LDFLAGS_CONSOLE = @LDFLAGS_CONSOLE@
164 LDFLAGS_WINDOW  = @LDFLAGS_WINDOW@
165 EXEEXT          = @EXEEXT@
166 OBJEXT          = @OBJEXT@
167 STLIB_LD        = @STLIB_LD@
168 SHLIB_LD        = @SHLIB_LD@
169 SHLIB_LD_LIBS   = @SHLIB_LD_LIBS@ $(LIBS)
170 SHLIB_CFLAGS    = @SHLIB_CFLAGS@
171 SHLIB_SUFFIX    = @SHLIB_SUFFIX@
172 VER             = @TCL_MAJOR_VERSION@@TCL_MINOR_VERSION@
173 DOTVER          = @TCL_MAJOR_VERSION@.@TCL_MINOR_VERSION@
174 LIBS            = @LIBS@
175
176 RMDIR           = rm -rf
177 MKDIR           = mkdir -p
178 SHELL           = @SHELL@
179 RM              = rm -f
180 COPY            = cp
181
182 CC_SWITCHES = ${CFLAGS} ${CFLAGS_WARNING} ${TCL_SHLIB_CFLAGS} \
183 -I"${GENERIC_DIR_NATIVE}" -I"${WIN_DIR_NATIVE}" ${AC_FLAGS} \
184 ${COMPILE_DEBUG_FLAGS}
185
186 CC_OBJNAME = @CC_OBJNAME@
187 CC_EXENAME = @CC_EXENAME@
188
189 STUB_CC_SWITCHES = ${CFLAGS} ${CFLAGS_WARNING} ${SHLIB_CFLAGS} \
190 -I"${GENERIC_DIR_NATIVE}" -I"${WIN_DIR_NATIVE}" ${AC_FLAGS} \
191 ${COMPILE_DEBUG_FLAGS}
192
193 TCLTEST_OBJS = \
194         tclTest.$(OBJEXT) \
195         tclTestObj.$(OBJEXT) \
196         tclTestProcBodyObj.$(OBJEXT) \
197         tclThreadTest.$(OBJEXT) \
198         tclWinTest.$(OBJEXT) \
199         testMain.$(OBJEXT)
200
201 GENERIC_OBJS = \
202         regcomp.$(OBJEXT) \
203         regexec.$(OBJEXT) \
204         regfree.$(OBJEXT) \
205         regerror.$(OBJEXT) \
206         tclAlloc.$(OBJEXT) \
207         tclAsync.$(OBJEXT) \
208         tclBasic.$(OBJEXT) \
209         tclBinary.$(OBJEXT) \
210         tclCkalloc.$(OBJEXT) \
211         tclClock.$(OBJEXT) \
212         tclCmdAH.$(OBJEXT) \
213         tclCmdIL.$(OBJEXT) \
214         tclCmdMZ.$(OBJEXT) \
215         tclCompCmds.$(OBJEXT) \
216         tclCompExpr.$(OBJEXT) \
217         tclCompile.$(OBJEXT) \
218         tclDate.$(OBJEXT) \
219         tclEncoding.$(OBJEXT) \
220         tclEnv.$(OBJEXT) \
221         tclEvent.$(OBJEXT) \
222         tclExecute.$(OBJEXT) \
223         tclFCmd.$(OBJEXT) \
224         tclFileName.$(OBJEXT) \
225         tclGet.$(OBJEXT) \
226         tclHash.$(OBJEXT) \
227         tclHistory.$(OBJEXT) \
228         tclIndexObj.$(OBJEXT) \
229         tclInterp.$(OBJEXT) \
230         tclIO.$(OBJEXT) \
231         tclIOCmd.$(OBJEXT) \
232         tclIOGT.$(OBJEXT) \
233         tclIOSock.$(OBJEXT) \
234         tclIOUtil.$(OBJEXT) \
235         tclLink.$(OBJEXT) \
236         tclLiteral.$(OBJEXT) \
237         tclListObj.$(OBJEXT) \
238         tclLoad.$(OBJEXT) \
239         tclMain.$(OBJEXT) \
240         tclNamesp.$(OBJEXT) \
241         tclNotify.$(OBJEXT) \
242         tclObj.$(OBJEXT) \
243         tclPanic.$(OBJEXT) \
244         tclParse.$(OBJEXT) \
245         tclParseExpr.$(OBJEXT) \
246         tclPipe.$(OBJEXT) \
247         tclPkg.$(OBJEXT) \
248         tclPosixStr.$(OBJEXT) \
249         tclPreserve.$(OBJEXT) \
250         tclProc.$(OBJEXT) \
251         tclRegexp.$(OBJEXT) \
252         tclResolve.$(OBJEXT) \
253         tclResult.$(OBJEXT) \
254         tclScan.$(OBJEXT) \
255         tclStringObj.$(OBJEXT) \
256         tclStubInit.$(OBJEXT) \
257         tclStubLib.$(OBJEXT) \
258         tclThread.$(OBJEXT) \
259         tclTimer.$(OBJEXT) \
260         tclUtf.$(OBJEXT) \
261         tclUtil.$(OBJEXT) \
262         tclVar.$(OBJEXT)
263
264 WIN_OBJS = \
265         tclWin32Dll.$(OBJEXT) \
266         tclWinChan.$(OBJEXT) \
267         tclWinConsole.$(OBJEXT) \
268         tclWinSerial.$(OBJEXT) \
269         tclWinError.$(OBJEXT) \
270         tclWinFCmd.$(OBJEXT) \
271         tclWinFile.$(OBJEXT) \
272         tclWinInit.$(OBJEXT) \
273         tclWinLoad.$(OBJEXT) \
274         tclWinMtherr.$(OBJEXT) \
275         tclWinNotify.$(OBJEXT) \
276         tclWinPipe.$(OBJEXT) \
277         tclWinSock.$(OBJEXT) \
278         tclWinThrd.$(OBJEXT) \
279         tclWinTime.$(OBJEXT) 
280
281 COMPAT_OBJS = \
282         strftime.$(OBJEXT)
283
284 PIPE_OBJS = stub16.$(OBJEXT)
285
286 DDE_OBJS = tclWinDde.$(OBJEXT)
287
288 REG_OBJS = tclWinReg.$(OBJEXT)
289
290 STUB_OBJS = tclStubLib.$(OBJEXT)
291
292 TCLSH_OBJS = tclAppInit.$(OBJEXT)
293
294 TCL_OBJS = ${GENERIC_OBJS} ${WIN_OBJS} ${COMPAT_OBJS}
295
296 TCL_DOCS = "$(ROOT_DIR_NATIVE)"/doc/*.[13n]
297
298 all: binaries libraries doc
299
300 tcltest: $(TCLTEST)
301
302 binaries: @LIBRARIES@ $(TCLSH)
303
304 libraries:
305
306 doc:
307
308 winhelp: $(ROOT_DIR)/tools/man2help.tcl $(MAN2TCL)
309         TCL_LIBRARY="$(LIBRARY_DIR)"; export TCL_LIBRARY; \
310         ./$(TCLSH) "$(ROOT_DIR_NATIVE)"/tools/man2help.tcl tcl "$(VER)" $(TCL_DOCS)
311         hcw /c /e tcl.hpj
312
313 $(MAN2TCL): $(ROOT_DIR)/tools/man2tcl.c
314         $(CC) $(CFLAGS_OPTIMIZE) $(MAN2TCLFLAGS) -o $(MAN2TCL) "$(ROOT_DIR_NATIVE)"/tools/man2tcl.c
315
316 $(TCLSH): $(TCL_LIB_FILE) $(TCLSH_OBJS) tclsh.$(RES)
317         $(CC) $(CFLAGS) $(TCLSH_OBJS) $(TCL_LIB_FILE) $(LIBS) \
318         tclsh.$(RES) $(CC_EXENAME) 
319
320 $(TCLTEST): $(TCL_LIB_FILE) $(TCLTEST_OBJS) $(CAT32) tclsh.$(RES)
321         $(CC) $(CFLAGS) $(TCLTEST_OBJS) $(TCL_LIB_FILE) $(LIBS) \
322         tclsh.$(RES) $(CC_EXENAME) 
323
324 cat32.$(OBJEXT): cat.c
325         $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME)
326
327 $(CAT32): cat32.$(OBJEXT)
328         $(CC) $(CFLAGS) cat32.$(OBJEXT) $(CC_EXENAME) $(LDFLAGS_CONSOLE)
329
330 # The following targets are configured by autoconf to generate either
331 # a shared library or static library
332
333 ${TCL_STUB_LIB_FILE}: ${STUB_OBJS}
334         @$(RM) ${TCL_STUB_LIB_FILE}
335         @MAKE_LIB@ ${STUB_OBJS}
336         @POST_MAKE_LIB@
337
338 ${GNU_TCL_LIB_FILE}: ${TCL_DLL_FILE}
339
340 ${TCL_DLL_FILE}: ${TCL_OBJS} tcl.$(RES)
341         @$(RM) ${TCL_DLL_FILE}
342         @MAKE_DLL@ ${TCL_OBJS} tcl.$(RES) $(SHLIB_LD_LIBS) $(TCL_DLL_BASE)
343
344 ${MSVC_TCL_LIB_FILE}: ${TCL_OBJS} ${TCL_DLL_FILE}
345         @$(RM) ${TCL_LIB_FILE}
346         @MAKE_LIB@ ${TCL_OBJS}
347         @POST_MAKE_LIB@
348
349 ${DDE_DLL_FILE}: ${DDE_OBJS} ${TCL_STUB_LIB_FILE}
350         @$(RM) ${DDE_DLL_FILE}
351         @MAKE_DLL@ ${DDE_OBJS} $(TCL_STUB_LIB_FILE) $(SHLIB_LD_LIBS) \
352         $(DDE_DLL_BASE)
353
354 ${DDE_LIB_FILE}: ${DDE_OBJS} ${TCL_LIB_FILE}
355         @$(RM) ${DDE_LIB_FILE}
356         @MAKE_LIB@ ${DDE_OBJS} ${TCL_LIB_FILE}
357
358 ${REG_DLL_FILE}: ${REG_OBJS} ${TCL_STUB_LIB_FILE}
359         @$(RM) ${REG_DLL_FILE}
360         @MAKE_DLL@ ${REG_OBJS} ${TCL_STUB_LIB_FILE} $(SHLIB_LD_LIBS) \
361         $(REG_DLL_BASE)
362
363 ${REG_LIB_FILE}: ${REG_OBJS} ${TCL_LIB_FILE}
364         @$(RM) ${REG_LIB_FILE}
365         @MAKE_LIB@ ${REG_OBJS} ${TCL_LIB_FILE}
366
367 # PIPE_DLL_FILE is actually an executable, don't build it
368 # like a DLL.
369
370 ${PIPE_DLL_FILE}: ${PIPE_OBJS}
371         @$(RM) ${PIPE_DLL_FILE}
372         @MAKE_EXE@ $(CFLAGS) ${PIPE_OBJS} $(LIBS)
373
374 # Add the object extension to the implicit rules.  By default .obj is not
375 # automatically added.
376
377 .SUFFIXES: .${OBJEXT}
378 .SUFFIXES: .$(RES)
379 .SUFFIXES: .rc
380
381 # Special case object targets
382
383 tclWinInit.${OBJEXT}: tclWinInit.c
384         $(CC) -c $(CC_SWITCHES) -DBUILD_tcl $(EXTFLAGS) @DEPARG@ $(CC_OBJNAME)
385
386 testMain.${OBJEXT}: tclAppInit.c
387         $(CC) -c $(CC_SWITCHES) -DTCL_TEST @DEPARG@ $(CC_OBJNAME)
388
389 tclTest.${OBJEXT}: tclTest.c
390         $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME)
391
392 tclTestObj.${OBJEXT}: tclTestObj.c
393         $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME)
394
395 tclWinTest.${OBJEXT}: tclWinTest.c
396         $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME)
397
398 tclAppInit.${OBJEXT} : tclAppInit.c
399         $(CC) -c $(CC_SWITCHES) @DEPARG@ $(CC_OBJNAME)
400
401 # The following objects should be built using the stub interfaces
402
403 tclWinReg.${OBJEXT} : tclWinReg.c
404         $(CC) -c $(CC_SWITCHES) -DUSE_TCL_STUBS @DEPARG@ $(CC_OBJNAME)
405
406 tclWinDde.${OBJEXT} : tclWinDde.c
407         $(CC) -c $(CC_SWITCHES) -DUSE_TCL_STUBS @DEPARG@ $(CC_OBJNAME)
408
409 # The following objects are part of the stub library and should not
410 # be built as DLL objects but none of the symbols should be exported
411
412 tclStubLib.${OBJEXT}: tclStubLib.c
413         $(CC) -c $(CC_SWITCHES) -DSTATIC_BUILD @DEPARG@ $(CC_OBJNAME)
414
415
416 # Implicit rule for all object files that will end up in the Tcl library
417
418 .c.${OBJEXT}:
419         $(CC) -c $(CC_SWITCHES) -DBUILD_tcl @DEPARG@ $(CC_OBJNAME)
420
421 .rc.$(RES):
422         $(RC) @RC_OUT@ $@ @RC_TYPE@ @RC_INCLUDE@ "$(GENERIC_DIR_NATIVE)" @RC_INCLUDE@ "$(WIN_DIR_NATIVE)" @DEPARG@
423
424 install: all install-binaries install-libraries install-doc
425
426 install-binaries:
427         @$(MKDIR) -p "$(BIN_INSTALL_DIR)"
428         @$(MKDIR) -p "$(LIB_INSTALL_DIR)"
429         $(COPY) tclConfig.sh $(LIB_INSTALL_DIR)/tclConfig.sh
430         @for i in dde1.1 reg1.0; \
431             do \
432             if [ ! -d $(LIB_INSTALL_DIR)/$$i ] ; then \
433                 echo "Making directory $(LIB_INSTALL_DIR)/$$i"; \
434                 $(MKDIR) $(LIB_INSTALL_DIR)/$$i; \
435                 else true; \
436                 fi; \
437             done;
438         @for i in $(TCL_DLL_FILE) $(TCLSH) $(PIPE_DLL_FILE); \
439             do \
440             if [ -f $$i ]; then \
441                 echo "Installing $$i"; \
442                 $(COPY) $$i "$(BIN_INSTALL_DIR)"; \
443             fi; \
444             done
445         @for i in $(TCL_LIB_FILE) $(TCL_STUB_LIB_FILE); \
446             do \
447             if [ -f $$i ]; then \
448                 echo "Installing $$i"; \
449                 $(COPY) $$i "$(LIB_INSTALL_DIR)"; \
450             fi; \
451             done
452         @if [ -f $(DDE_DLL_FILE) ]; then \
453             echo installing $(DDE_DLL_FILE); \
454             $(COPY) $(DDE_DLL_FILE) $(LIB_INSTALL_DIR)/dde1.1; \
455             $(COPY) $(ROOT_DIR)/library/dde1.1/pkgIndex.tcl $(LIB_INSTALL_DIR)/dde1.1; \
456             fi
457         @if [ -f $(DDE_LIB_FILE) ]; then \
458             echo installing $(DDE_LIB_FILE); \
459             $(COPY) $(DDE_LIB_FILE) $(LIB_INSTALL_DIR)/dde1.1; \
460             fi
461         @if [ -f $(REG_DLL_FILE) ]; then \
462             echo installing $(REG_DLL_FILE); \
463             $(COPY) $(REG_DLL_FILE) $(LIB_INSTALL_DIR)/reg1.0; \
464             $(COPY) $(ROOT_DIR)/library/reg1.0/pkgIndex.tcl $(LIB_INSTALL_DIR)/reg1.0; \
465             fi
466         @if [ -f $(REG_LIB_FILE) ]; then \
467             echo installing $(REG_LIB_FILE); \
468             $(COPY) $(REG_LIB_FILE) $(LIB_INSTALL_DIR)/reg1.0; \
469             fi
470
471 install-libraries:
472         @for i in $(prefix)/lib $(INCLUDE_INSTALL_DIR) \
473                 $(SCRIPT_INSTALL_DIR); \
474             do \
475             if [ ! -d $$i ] ; then \
476                 echo "Making directory $$i"; \
477                 $(MKDIR) $$i; \
478                 else true; \
479                 fi; \
480             done;
481         @for i in http1.0 http2.3 opt0.4 encoding msgcat1.0 tcltest1.0; \
482             do \
483             if [ ! -d $(SCRIPT_INSTALL_DIR)/$$i ] ; then \
484                 echo "Making directory $(SCRIPT_INSTALL_DIR)/$$i"; \
485                 $(MKDIR) $(SCRIPT_INSTALL_DIR)/$$i; \
486                 else true; \
487                 fi; \
488             done;
489         @echo "Installing header files";
490         @for i in "$(GENERIC_DIR)/tcl.h" "$(GENERIC_DIR)/tclDecls.h" ; \
491             do \
492             $(COPY) "$$i" "$(INCLUDE_INSTALL_DIR)"; \
493             done;
494         @echo "Installing library files to $(SCRIPT_INSTALL_DIR)";
495         @for i in $(ROOT_DIR)/library/*.tcl $(ROOT_DIR)/library/tclIndex; \
496             do \
497             $(COPY) "$$i" "$(SCRIPT_INSTALL_DIR)"; \
498             done;
499         @for i in http2.3 http1.0 opt0.4 msgcat1.0 tcltest1.0; \
500             do \
501             echo "Installing library $$i directory"; \
502             for j in $(ROOT_DIR)/library/$$i/*.tcl; \
503                 do \
504                 $(COPY) "$$j" "$(SCRIPT_INSTALL_DIR)/$$i"; \
505                 done; \
506             done;
507         @echo "Installing encodings"
508         @for i in $(ROOT_DIR)/library/encoding/*.enc ; do \
509                 $(COPY) "$$i" "$(SCRIPT_INSTALL_DIR)/encoding"; \
510         done;
511
512 install-doc:
513
514 test: binaries $(TCLTEST)
515         TCL_LIBRARY="$(LIBRARY_DIR)"; export TCL_LIBRARY; \
516         ./$(TCLTEST) "$(ROOT_DIR_NATIVE)/tests/all.tcl" $(TESTFLAGS) \
517         | ./$(CAT32)
518
519 # Useful target to launch a built tcltest with the proper path,...
520 runtest: tcltest
521         @TCL_LIBRARY="$(LIBRARY_DIR)"; export TCL_LIBRARY; \
522             ./tcltest
523
524 depend:
525
526 Makefile: $(SRC_DIR)/Makefile.in config.status
527         $(SHELL) config.status
528
529 config.status: $(WIN_DIR)/configure
530         $(SHELL) config.status --recheck
531
532 cleanhelp:
533         $(RM) *.hlp *.cnt *.GID *.rtf man2tcl.exe
534
535 clean: cleanhelp
536         $(RM) *.lib *.a *.exp *.dll *.$(RES) *.${OBJEXT} *~ \#* TAGS a.out
537         $(RM) $(TCLSH) $(TCLTEST) $(CAT32)
538         $(RM) *.pch *.ilk *.pdb
539
540 distclean: clean
541         $(RM) Makefile config.status config.cache config.log tclConfig.sh \
542                 tcl.hpj
543
544 #
545 # Regenerate the stubs files.
546 #
547
548 # FIXME: We can't depend on TCLSH here since it is not yet built!
549
550 $(GENERIC_DIR)/tclStubInit.c: $(GENERIC_DIR)/tcl.decls \
551                 $(GENERIC_DIR)/tclInt.decls
552         @TCL_LIBRARY="$(ROOT_DIR_NATIVE)/library"; export TCL_LIBRARY; \
553         $(TCLSH) "$(ROOT_DIR_NATIVE)\tools\genStubs.tcl" \
554             "$(GENERIC_DIR_NATIVE)" \
555             "$(GENERIC_DIR_NATIVE)\tcl.decls" \
556             "$(GENERIC_DIR_NATIVE)\tclInt.decls"
557
558 genstubs:
559         @TCL_LIBRARY="$(ROOT_DIR_NATIVE)/library"; export TCL_LIBRARY; \
560         $(TCLSH) "$(ROOT_DIR_NATIVE)\tools\genStubs.tcl" \
561             "$(GENERIC_DIR_NATIVE)" \
562             "$(GENERIC_DIR_NATIVE)\tcl.decls" \
563             "$(GENERIC_DIR_NATIVE)\tclInt.decls"