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

Subversion Repositories or1k

[/] [or1k/] [tags/] [start/] [insight/] [tcl/] [unix/] [Makefile.in] - Blame information for rev 1765

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 578 markom
#
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
# SCCS: @(#) Makefile.in 1.190 97/11/05 10:57:38
9
 
10
# Current Tcl version;  used in various names.
11
 
12
VERSION = @TCL_VERSION@
13
 
14
#----------------------------------------------------------------
15
# Things you can change to personalize the Makefile for your own
16
# site (you can make these changes in either Makefile.in or
17
# Makefile, but changes to Makefile will get lost if you re-run
18
# the configuration script).
19
#----------------------------------------------------------------
20
 
21
# Default top-level directories in which to install architecture-
22
# specific files (exec_prefix) and machine-independent files such
23
# as scripts (prefix).  The values specified here may be overridden
24
# at configure-time with the --exec-prefix and --prefix options
25
# to the "configure" script.
26
 
27
prefix =        @prefix@
28
exec_prefix =   @exec_prefix@
29
 
30
# The following definition can be set to non-null for special systems
31
# like AFS with replication.  It allows the pathnames used for installation
32
# to be different than those used for actually reference files at
33
# run-time.  INSTALL_ROOT is prepended to $prefix and $exec_prefix
34
# when installing files.
35
INSTALL_ROOT =
36
 
37
# Directory from which applications will reference the library of Tcl
38
# scripts (note: you can set the TCL_LIBRARY environment variable at
39
# run-time to override this value):
40
TCL_LIBRARY =   @datadir@/tcl$(VERSION)
41
 
42
# Package search path.
43
TCL_PACKAGE_PATH = @TCL_PACKAGE_PATH@
44
 
45
# Path name to use when installing library scripts:
46
SCRIPT_INSTALL_DIR =    $(INSTALL_ROOT)$(TCL_LIBRARY)
47
 
48
# Directory in which to install libtcl.so or libtcl.a:
49
LIB_INSTALL_DIR =       $(INSTALL_ROOT)@libdir@
50
 
51
# Path to use at runtime to refer to LIB_INSTALL_DIR:
52
LIB_RUNTIME_DIR =       @libdir@
53
 
54
# Directory in which to install the program tclsh:
55
BIN_INSTALL_DIR =       $(INSTALL_ROOT)@bindir@
56
 
57
# Directory in which to install the include file tcl.h:
58
INCLUDE_INSTALL_DIR =   $(INSTALL_ROOT)@includedir@
59
 
60
# Top-level directory in which to install manual entries:
61
MAN_INSTALL_DIR =       $(INSTALL_ROOT)@mandir@
62
 
63
# Directory in which to install manual entry for tclsh:
64
MAN1_INSTALL_DIR =      $(MAN_INSTALL_DIR)/man1
65
 
66
# Directory in which to install manual entries for Tcl's C library
67
# procedures:
68
MAN3_INSTALL_DIR =      $(MAN_INSTALL_DIR)/man3
69
 
70
# Directory in which to install manual entries for the built-in
71
# Tcl commands:
72
MANN_INSTALL_DIR =      $(MAN_INSTALL_DIR)/mann
73
 
74
# To change the compiler switches, for example to change from -O
75
# to -g, change the following line:
76
#CFLAGS = -O
77
 
78
# CYGNUS LOCAL: Set CFLAGS from configure script.
79
CFLAGS = @CFLAGS@
80
 
81
# To disable ANSI-C procedure prototypes reverse the comment characters
82
# on the following lines:
83
PROTO_FLAGS =
84
#PROTO_FLAGS = -DNO_PROTOTYPE
85
 
86
# Mathematical functions like sin and atan2 are enabled for expressions
87
# by default.  To disable them, reverse the comment characters on the
88
# following pairs of lines:
89
MATH_FLAGS =
90
#MATH_FLAGS = -DTCL_NO_MATH
91
MATH_LIBS = @MATH_LIBS@
92
#MATH_LIBS =
93
 
94
# If you use the setenv, putenv, or unsetenv procedures to modify
95
# environment variables in your application and you'd like those
96
# modifications to appear in the "env" Tcl variable, switch the
97
# comments on the two lines below so that Tcl provides these
98
# procedures instead of your standard C library.
99
 
100
ENV_FLAGS =
101
#ENV_FLAGS = -DTclSetEnv=setenv -DTcl_PutEnv=putenv -DTclUnsetEnv=unsetenv
102
 
103
# To compile for non-UNIX systems (so that only the non-UNIX-specific
104
# commands are available), reverse the comment characters on the
105
# following pairs of lines.  In addition, you'll have to provide your
106
# own replacement for the "panic" procedure (see panic.c for what
107
# the current one does).
108
GENERIC_FLAGS =
109
#GENERIC_FLAGS = -DTCL_GENERIC_ONLY
110
UNIX_OBJS = tclMtherr.o tclUnixChan.o tclUnixEvent.o tclUnixFCmd.o \
111
        tclUnixFile.o tclUnixPipe.o tclUnixSock.o \
112
        tclUnixTime.o tclUnixInit.o
113
#UNIX_OBJS =
114
NOTIFY_OBJS = tclUnixNotfy.o
115
#NOTIFY_OBJS =
116
 
117
# To enable memory debugging reverse the comment characters on the following
118
# lines.  Warning:  if you enable memory debugging, you must do it
119
# *everywhere*, including all the code that calls Tcl, and you must use
120
# ckalloc and ckfree everywhere instead of malloc and free.
121
MEM_DEBUG_FLAGS =
122
#MEM_DEBUG_FLAGS = -DTCL_MEM_DEBUG
123
 
124
# To enable compilation debugging reverse the comment characters on
125
# one of the following lines.
126
COMPILE_DEBUG_FLAGS =
127
#COMPILE_DEBUG_FLAGS = -DTCL_COMPILE_STATS
128
#COMPILE_DEBUG_FLAGS = -DTCL_COMPILE_DEBUG -DTCL_COMPILE_STATS
129
 
130
# Some versions of make, like SGI's, use the following variable to
131
# determine which shell to use for executing commands:
132
SHELL = @SHELL@
133
 
134
# Tcl used to let the configure script choose which program to use
135
# for installing, but there are just too many different versions of
136
# "install" around;  better to use the install-sh script that comes
137
# with the distribution, which is slower but guaranteed to work.
138
 
139
INSTALL =               @srcdir@/install-sh -c
140
INSTALL_PROGRAM =       @INSTALL_PROGRAM@
141
INSTALL_DATA =          @INSTALL_DATA@
142
 
143
# The following symbol defines additional compiler flags to enable
144
# Tcl itself to be a shared library.  If Tcl isn't going to be a
145
# shared library then the symbol has an empty definition.
146
 
147
TCL_SHLIB_CFLAGS = @TCL_SHLIB_CFLAGS@
148
#TCL_SHLIB_CFLAGS =
149
 
150
# The symbols below provide support for dynamic loading and shared
151
# libraries.  See configure.in for a description of what the
152
# symbols mean.  The values of the symbols are normally set by the
153
# configure script.  You shouldn't normally need to modify any of
154
# these definitions by hand.
155
 
156
SHLIB_LD = @SHLIB_LD@
157
 
158
SHLIB_SUFFIX = @SHLIB_SUFFIX@
159
#SHLIB_SUFFIX =
160
 
161
TCL_SHARED_LIB_SUFFIX = @TCL_SHARED_LIB_SUFFIX@
162
TCL_UNSHARED_LIB_SUFFIX = @TCL_UNSHARED_LIB_SUFFIX@
163
TCL_SHARED_LIB_FILE = @TCL_SHARED_LIB_FILE@
164
TCL_UNSHARED_LIB_FILE = @TCL_UNSHARED_LIB_FILE@
165
 
166
DLTEST_TARGETS = dltest/pkg5${SHLIB_SUFFIX} dltest/Makefile
167
 
168
# The following symbol is defined to "$(DLTEST_TARGETS)" if dynamic
169
# loading is available;  this causes everything in the "dltest"
170
# subdirectory to be built when making "tcltest.  If dynamic loading
171
# isn't available, configure defines this symbol to an empty string,
172
# in which case the shared libraries aren't built.
173
BUILD_DLTEST = @BUILD_DLTEST@
174
#BUILD_DLTEST =
175
 
176
TCL_LIB_FILE = @TCL_LIB_FILE@
177
#TCL_LIB_FILE = libtcl.a
178
 
179
TCL_LIB_FLAG = @TCL_LIB_FLAG@
180
#TCL_LIB_FLAG = -ltcl
181
 
182
#----------------------------------------------------------------
183
# The information below is modified by the configure script when
184
# Makefile is generated from Makefile.in.  You shouldn't normally
185
# modify any of this stuff by hand.
186
#----------------------------------------------------------------
187
 
188
COMPAT_OBJS =           @LIBOBJS@
189
 
190
AC_FLAGS =              @DEFS@
191
RANLIB =                @RANLIB@
192
SRC_DIR =               @srcdir@
193
TOP_DIR =               @srcdir@/..
194
GENERIC_DIR =           $(TOP_DIR)/generic
195
COMPAT_DIR =            $(TOP_DIR)/compat
196
TOOL_DIR =              $(TOP_DIR)/tools
197
DLTEST_DIR =            @srcdir@/dltest
198
UNIX_DIR =              @srcdir@
199
CC =                    @CC@
200
 
201
#----------------------------------------------------------------
202
# The information below should be usable as is.  The configure
203
# script won't modify it and you shouldn't need to modify it
204
# either.
205
#----------------------------------------------------------------
206
 
207
 
208
CC_SWITCHES =   ${CFLAGS} ${CFLAGS_WARNING} ${TCL_SHLIB_CFLAGS} \
209
-I${GENERIC_DIR} -I${SRC_DIR} \
210
${AC_FLAGS} ${MATH_FLAGS} ${GENERIC_FLAGS} ${PROTO_FLAGS} ${MEM_DEBUG_FLAGS} \
211
${COMPILE_DEBUG_FLAGS} ${ENV_FLAGS} -DTCL_SHLIB_EXT=\"${SHLIB_SUFFIX}\"
212
 
213
LIBS =          @DL_LIBS@ @LIBS@ $(MATH_LIBS) -lc
214
 
215
DEPEND_SWITCHES = ${CFLAGS} -I${GENERIC_DIR} -I${SRC_DIR} \
216
${AC_FLAGS} ${MATH_FLAGS} \
217
${GENERIC_FLAGS} ${PROTO_FLAGS} ${MEM_DEBUG_FLAGS} \
218
-DTCL_SHLIB_EXT=\"${SHLIB_SUFFIX}\"
219
 
220
TCLSH_OBJS = tclAppInit.o
221
 
222
TCLTEST_OBJS = tclTestInit.o tclTest.o tclTestObj.o \
223
               tclTestProcBodyObj.o tclUnixTest.o
224
 
225
XTTEST_OBJS = tclTest.o tclTestObj.o tclTestProcBodyObj.o \
226
        tclUnixTest.o tclXtNotify.o \
227
        tclXtTest.o xtTestInit.o
228
 
229
GENERIC_OBJS = panic.o regexp.o tclAsync.o tclBasic.o tclBinary.o tclCkalloc.o \
230
        tclClock.o tclCmdAH.o tclCmdIL.o tclCmdMZ.o tclCompExpr.o \
231
        tclCompile.o tclDate.o tclEnv.o tclEvent.o tclExecute.o \
232
        tclFCmd.o tclFileName.o tclGet.o tclHash.o tclHistory.o \
233
        tclIndexObj.o tclInterp.o tclIO.o tclIOCmd.o tclIOSock.o \
234
        tclIOUtil.o tclLink.o tclListObj.o tclLoad.o tclMain.o tclNamesp.o \
235
        tclNotify.o tclObj.o tclParse.o tclPipe.o tclPkg.o tclPosixStr.o \
236
        tclPreserve.o tclProc.o tclStringObj.o tclTimer.o tclUtil.o tclVar.o \
237
        tclResolve.o
238
 
239
OBJS = ${GENERIC_OBJS} ${UNIX_OBJS} ${NOTIFY_OBJS} ${COMPAT_OBJS} @DL_OBJS@
240
 
241
GENERIC_HDRS = \
242
        $(GENERIC_DIR)/tclRegexp.h \
243
        $(GENERIC_DIR)/tcl.h \
244
        $(GENERIC_DIR)/tclInt.h \
245
        $(GENERIC_DIR)/tclPort.h \
246
        $(GENERIC_DIR)/tclPatch.h
247
 
248
GENERIC_SRCS = \
249
        $(GENERIC_DIR)/regexp.c \
250
        $(GENERIC_DIR)/tclAsync.c \
251
        $(GENERIC_DIR)/tclBasic.c \
252
        $(GENERIC_DIR)/tclBinary.c \
253
        $(GENERIC_DIR)/tclCkalloc.c \
254
        $(GENERIC_DIR)/tclClock.c \
255
        $(GENERIC_DIR)/tclCmdAH.c \
256
        $(GENERIC_DIR)/tclCmdIL.c \
257
        $(GENERIC_DIR)/tclCmdMZ.c \
258
        $(GENERIC_DIR)/tclCompExpr.c \
259
        $(GENERIC_DIR)/tclCompile.c \
260
        $(GENERIC_DIR)/tclDate.c \
261
        $(GENERIC_DIR)/tclEnv.c \
262
        $(GENERIC_DIR)/tclEvent.c \
263
        $(GENERIC_DIR)/tclExecute.c \
264
        $(GENERIC_DIR)/tclFCmd.c \
265
        $(GENERIC_DIR)/tclFileName.c \
266
        $(GENERIC_DIR)/tclGet.c \
267
        $(GENERIC_DIR)/tclHash.c \
268
        $(GENERIC_DIR)/tclHistory.c \
269
        $(GENERIC_DIR)/tclIndexObj.c \
270
        $(GENERIC_DIR)/tclInterp.c \
271
        $(GENERIC_DIR)/tclIO.c \
272
        $(GENERIC_DIR)/tclIOCmd.c \
273
        $(GENERIC_DIR)/tclIOSock.c \
274
        $(GENERIC_DIR)/tclIOUtil.c \
275
        $(GENERIC_DIR)/tclLink.c \
276
        $(GENERIC_DIR)/tclListObj.c \
277
        $(GENERIC_DIR)/tclLoad.c \
278
        $(GENERIC_DIR)/tclMain.c \
279
        $(GENERIC_DIR)/tclNamesp.c \
280
        $(GENERIC_DIR)/tclNotify.c \
281
        $(GENERIC_DIR)/tclObj.c \
282
        $(GENERIC_DIR)/tclParse.c \
283
        $(GENERIC_DIR)/tclPipe.c \
284
        $(GENERIC_DIR)/tclPkg.c \
285
        $(GENERIC_DIR)/tclPosixStr.c \
286
        $(GENERIC_DIR)/tclPreserve.c \
287
        $(GENERIC_DIR)/tclProc.c \
288
        $(GENERIC_DIR)/tclTestProcBodyObj.c \
289
        $(GENERIC_DIR)/tclResolve.c \
290
        $(GENERIC_DIR)/tclStringObj.c \
291
        $(GENERIC_DIR)/tclTest.c \
292
        $(GENERIC_DIR)/tclTestObj.c \
293
        $(GENERIC_DIR)/tclTimer.c \
294
        $(GENERIC_DIR)/tclUtil.c \
295
        $(GENERIC_DIR)/tclVar.c
296
 
297
UNIX_HDRS = \
298
        $(UNIX_DIR)/tclUnixPort.h
299
 
300
UNIX_SRCS = \
301
        $(UNIX_DIR)/tclAppInit.c \
302
        $(UNIX_DIR)/tclMtherr.c \
303
        $(UNIX_DIR)/tclUnixChan.c \
304
        $(UNIX_DIR)/tclUnixEvent.c \
305
        $(UNIX_DIR)/tclUnixFCmd.c \
306
        $(UNIX_DIR)/tclUnixFile.c \
307
        $(UNIX_DIR)/tclUnixNotfy.c \
308
        $(UNIX_DIR)/tclUnixPipe.c \
309
        $(UNIX_DIR)/tclUnixSock.c \
310
        $(UNIX_DIR)/tclUnixTest.c \
311
        $(UNIX_DIR)/tclUnixTime.c \
312
        $(UNIX_DIR)/tclUnixInit.c
313
 
314
DL_SRCS = \
315
        $(UNIX_DIR)/tclLoadAix.c \
316
        $(UNIX_DIR)/tclLoadAout.c \
317
        $(UNIX_DIR)/tclLoadDl.c \
318
        $(UNIX_DIR)/tclLoadDl2.c \
319
        $(UNIX_DIR)/tclLoadDld.c \
320
        $(GENERIC_DIR)/tclLoadNone.c \
321
        $(UNIX_DIR)/tclLoadOSF.c \
322
        $(UNIX_DIR)/tclLoadShl.c
323
 
324
# Note: don't include DL_SRCS in SRCS:  most of those files won't
325
# compile on the current machine, and they will cause problems for
326
# things like "make depend".
327
 
328
SRCS = $(GENERIC_SRCS) $(UNIX_SRCS)
329
 
330
all: ${TCL_LIB_FILE} tclsh
331
 
332
# CYGNUS LOCAL
333
 
334
# The shared- and unshared-library cases are separate, so that RANLIB
335
# can unconditionally work.
336
 
337
${TCL_SHARED_LIB_FILE}: ${OBJS}
338
        rm -f ${TCL_LIB_FILE}
339
        @MAKE_LIB@
340
 
341
${TCL_UNSHARED_LIB_FILE}: ${OBJS}
342
        rm -f ${TCL_LIB_FILE}
343
        @MAKE_LIB@
344
        $(RANLIB) ${TCL_LIB_FILE}
345
 
346
# END CYGNUS LOCAL
347
 
348
# Make target which outputs the list of the .o contained in the Tcl lib
349
# usefull to build a single big shared library containing Tcl and other
350
# extensions.  used for the Tcl Plugin.  -- dl
351
# The dependency on OBJS is not there because we just want the list
352
# of objects here, not actually building them
353
tclLibObjs:
354
        @echo ${OBJS}
355
# This targets actually build the objects needed for the lib in the above
356
# case
357
objs: ${OBJS}
358
 
359
 
360
tclsh: ${TCLSH_OBJS} ${TCL_LIB_FILE}
361
        ${CC} @LD_FLAGS@ ${TCLSH_OBJS} @TCL_BUILD_LIB_SPEC@ ${LIBS} \
362
                @TCL_LD_SEARCH_FLAGS@ -o tclsh
363
 
364
tcltest: ${TCLTEST_OBJS} ${TCL_LIB_FILE} ${BUILD_DLTEST}
365
        ${CC} @LD_FLAGS@ ${TCLTEST_OBJS} @TCL_BUILD_LIB_SPEC@ ${LIBS} \
366
                @TCL_LD_SEARCH_FLAGS@ -o tcltest
367
 
368
xttest:  ${XTTEST_OBJS} ${GENERIC_OBJS} ${UNIX_OBJS} ${COMPAT_OBJS} \
369
        @DL_OBJS@ ${BUILD_DLTEST}
370
        ${CC} ${XTTEST_OBJS} ${GENERIC_OBJS} ${UNIX_OBJS} ${COMPAT_OBJS} \
371
                @DL_OBJS@ @TCL_BUILD_LIB_SPEC@ ${LIBS} \
372
                @TCL_LD_SEARCH_FLAGS@ -lXt -o xttest
373
 
374
 
375
# Note, in the target below TCL_LIBRARY needs to be set or else
376
# "make test" won't work in the case where the compilation directory
377
# isn't the same as the source directory.
378
 
379
test: tcltest
380
        LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}; export LD_LIBRARY_PATH; \
381
        TCL_LIBRARY=${TOP_DIR}/library; export TCL_LIBRARY; \
382
        ( echo cd $(TOP_DIR)/tests\; source all ) | ./tcltest
383
 
384
# Useful target to launch a built tcltest with the proper path,...
385
runtest:
386
        LD_LIBRARY_PATH=`pwd`:${LD_LIBRARY_PATH}; export LD_LIBRARY_PATH; \
387
        TCL_LIBRARY=${TOP_DIR}/library; export TCL_LIBRARY; \
388
        ./tcltest
389
 
390
# The following target outputs the name of the top-level source directory
391
# for Tcl (it is used by Tk's configure script, for example).  The
392
# .NO_PARALLEL line is needed to avoid problems under Sun's "pmake".
393
# Note: this target is now obsolete (use the autoconf variable
394
# TCL_SRC_DIR from tclConfig.sh instead).
395
 
396
.NO_PARALLEL: topDirName
397
topDirName:
398
        @cd $(TOP_DIR); pwd
399
 
400
# The following target generates the file generic/tclDate.c
401
# from the yacc grammar found in generic/tclGetDate.y.  This is
402
# only run by hand as yacc is not available in all environments.
403
# The name of the .c file is different than the name of the .y file
404
# so that make doesn't try to automatically regenerate the .c file.
405
 
406
gendate:
407
        yacc -l $(GENERIC_DIR)/tclGetDate.y
408
        sed -e 's/yy/TclDate/g' -e '/^#include /d' \
409
            -e 's/SCCSID/%Z\% %M\% %I\% %E\% %U\%/g' \
410
            -e '/#ifdef __STDC__/,/#endif/d' -e '/TclDateerrlab:/d' \
411
            -e '/TclDatenewstate:/d' -e '/#pragma/d' \
412
            $(GENERIC_DIR)/tclDate.c
413
        rm y.tab.c
414
 
415
# The following targets generate the shared libraries in dltest that
416
# are used for testing;  they are included as part of the "tcltest"
417
# target (via the BUILD_DLTEST variable) if dynamic loading is supported
418
# on this platform. The ".." environment variable stuff is needed
419
# because on some platforms tclsh scripts will be executed as part of
420
# building the shared libraries, and they need to be able to use the
421
# uninstalled tclsh that is present in this directory.  The "make tclsh"
422
# command is needed for the same reason (must make sure that it exists).
423
 
424
dltest/pkg5${SHLIB_SUFFIX}: dltest/Makefile
425
        if test ! -f tclsh; then $(MAKE) tclsh; else true; fi
426
        libdir=`cd $(TOP_DIR)/library && pwd`; cd dltest; \
427
        PATH=..:${PATH} TCL_LIBRARY=$$libdir $(MAKE)
428
 
429
dltest/Makefile: $(DLTEST_DIR)/configure $(DLTEST_DIR)/Makefile.in tclConfig.sh
430
        if test ! -d dltest; then mkdir dltest; else true; fi
431
        dldir=`cd $(DLTEST_DIR) && pwd`; cd dltest; \
432
        if test -f configure; then ./configure; else $$dldir/configure; fi
433
 
434
install: install-binaries install-libraries install-man
435
 
436
# Note: before running ranlib below, must cd to target directory because
437
# some ranlibs write to current directory, and this might not always be
438
# possible (e.g. if installing as root).
439
 
440
install-binaries: $(TCL_LIB_FILE) tclsh
441
        @for i in $(LIB_INSTALL_DIR) $(BIN_INSTALL_DIR) ; \
442
            do \
443
            if [ ! -d $$i ] ; then \
444
                echo "Making directory $$i"; \
445
                mkdir $$i; \
446
                chmod 755 $$i; \
447
                else true; \
448
                fi; \
449
            done;
450
        @echo "Installing $(TCL_LIB_FILE)"
451
        @$(INSTALL_DATA) $(TCL_LIB_FILE) $(LIB_INSTALL_DIR)/$(TCL_LIB_FILE)
452
        @(cd $(LIB_INSTALL_DIR); $(RANLIB) $(TCL_LIB_FILE))
453
        @chmod 555 $(LIB_INSTALL_DIR)/$(TCL_LIB_FILE)
454
        @echo "Installing tclsh"
455
        @$(INSTALL_PROGRAM) tclsh $(BIN_INSTALL_DIR)/tclsh
456
        @echo "Installing tclConfig.sh"
457
        @$(INSTALL_DATA) tclConfig.sh $(LIB_INSTALL_DIR)/tclConfig.sh
458
 
459
install-libraries:
460
        @for i in $(INSTALL_ROOT)@datadir@ $(INCLUDE_INSTALL_DIR) \
461
                $(SCRIPT_INSTALL_DIR) ; \
462
            do \
463
            if [ ! -d $$i ] ; then \
464
                echo "Making directory $$i"; \
465
                mkdir $$i; \
466
                chmod 755 $$i; \
467
                else true; \
468
                fi; \
469
            done;
470
        @for i in http2.0 http1.0 opt0.1; \
471
            do \
472
            if [ ! -d $(SCRIPT_INSTALL_DIR)/$$i ] ; then \
473
                echo "Making directory $(SCRIPT_INSTALL_DIR)/$$i"; \
474
                mkdir $(SCRIPT_INSTALL_DIR)/$$i; \
475
                chmod 755 $(SCRIPT_INSTALL_DIR)/$$i; \
476
                else true; \
477
                fi; \
478
            done;
479
        @echo "Installing tcl.h"
480
        @$(INSTALL_DATA) $(GENERIC_DIR)/tcl.h $(INCLUDE_INSTALL_DIR)/tcl.h
481
        @for i in $(TOP_DIR)/library/*.tcl $(TOP_DIR)/library/tclIndex $(UNIX_DIR)/tclAppInit.c $(UNIX_DIR)/ldAix; \
482
            do \
483
            echo "Installing $$i"; \
484
            $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR); \
485
            done;
486
        @for i in http2.0 http1.0 opt0.1; \
487
            do \
488
            for j in $(TOP_DIR)/library/$$i/*.tcl ; \
489
                do \
490
                echo "Installing $$j"; \
491
                $(INSTALL_DATA) $$j $(SCRIPT_INSTALL_DIR)/$$i; \
492
                done; \
493
            done;
494
 
495
# CYGNUS LOCAL: install-minimal target.
496
install-minimal:
497
        @for i in $(INSTALL_ROOT)@datadir@ $(INCLUDE_INSTALL_DIR) \
498
                $(SCRIPT_INSTALL_DIR) ; \
499
            do \
500
            if [ ! -d $$i ] ; then \
501
                echo "Making directory $$i"; \
502
                mkdir $$i; \
503
                chmod 755 $$i; \
504
                else true; \
505
                fi; \
506
            done;
507
        @for i in http2.0 http1.0 opt0.1; \
508
            do \
509
            if [ ! -d $(SCRIPT_INSTALL_DIR)/$$i ] ; then \
510
                echo "Making directory $(SCRIPT_INSTALL_DIR)/$$i"; \
511
                mkdir $(SCRIPT_INSTALL_DIR)/$$i; \
512
                chmod 755 $(SCRIPT_INSTALL_DIR)/$$i; \
513
                else true; \
514
                fi; \
515
            done;
516
        @for i in $(TOP_DIR)/library/*.tcl $(TOP_DIR)/library/tclIndex $(UNIX_DIR)/ldAix; \
517
            do \
518
            echo "Installing $$i"; \
519
            $(INSTALL_DATA) $$i $(SCRIPT_INSTALL_DIR); \
520
            done;
521
        @for i in http2.0 http1.0 opt0.1; \
522
            do \
523
            for j in $(TOP_DIR)/library/$$i/*.tcl ; \
524
                do \
525
                echo "Installing $$j"; \
526
                $(INSTALL_DATA) $$j $(SCRIPT_INSTALL_DIR)/$$i; \
527
                done; \
528
            done;
529
 
530
install-man:
531
        @for i in $(MAN_INSTALL_DIR) $(MAN1_INSTALL_DIR) $(MAN3_INSTALL_DIR) ; \
532
            do \
533
            if [ ! -d $$i ] ; then \
534
                echo "Making directory $$i"; \
535
                mkdir $$i; \
536
                chmod 755 $$i; \
537
                else true; \
538
                fi; \
539
            done;
540
        @cd $(TOP_DIR)/doc; for i in *.1; \
541
            do \
542
            echo "Installing doc/$$i"; \
543
            rm -f $(MAN1_INSTALL_DIR)/$$i; \
544
            sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
545
                    $$i > $(MAN1_INSTALL_DIR)/$$i; \
546
            chmod 644 $(MAN1_INSTALL_DIR)/$$i; \
547
            done;
548
        $(UNIX_DIR)/mkLinks $(MAN1_INSTALL_DIR)
549
        @cd $(TOP_DIR)/doc; for i in *.3; \
550
            do \
551
            echo "Installing doc/$$i"; \
552
            rm -f $(MAN3_INSTALL_DIR)/$$i; \
553
            sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
554
                    $$i > $(MAN3_INSTALL_DIR)/$$i; \
555
            chmod 644 $(MAN3_INSTALL_DIR)/$$i; \
556
            done;
557
        @cd $(TOP_DIR)/doc; for i in *.n; \
558
            do \
559
            echo "Installing doc/$$i"; \
560
            name=`echo $$i | sed -e 's/n$$/3/'`; \
561
            rm -f $(MAN3_INSTALL_DIR)/$$name; \
562
            sed -e '/man\.macros/r man.macros' -e '/man\.macros/d' \
563
                    $$i > $(MAN3_INSTALL_DIR)/$$name; \
564
            chmod 644 $(MAN3_INSTALL_DIR)/$$name; \
565
            done;
566
        $(UNIX_DIR)/mkLinks $(MAN3_INSTALL_DIR)
567
 
568
Makefile: $(UNIX_DIR)/Makefile.in config.status
569
        $(SHELL) config.status
570
 
571
config.status: $(UNIX_DIR)/configure
572
        ./config.status --recheck
573
 
574
mostlyclean: clean
575
clean:
576
        rm -f *.a *.o libtcl* core errs *~ \#* TAGS *.E a.out \
577
                errors tclsh tcltest lib.exp
578
        if test -f dltest/Makefile; then cd dltest; $(MAKE) clean; fi
579
 
580
distclean: clean
581
        rm -rf Makefile config.status config.cache config.log tclConfig.sh \
582
                SUNWtcl.* prototype
583
        if test -f dltest/Makefile; then cd dltest; $(MAKE) distclean; fi
584
 
585
depend:
586
        makedepend -- $(DEPEND_SWITCHES) -- $(SRCS)
587
 
588
bp: $(UNIX_DIR)/bp.c
589
        $(CC) $(CC_SWITCHES) $(UNIX_DIR)/bp.c -o bp
590
 
591
# Test binaries.  The rules for tclTestInit.o and xtTestInit.o are
592
# complicated because they are compiled from tclAppInit.c.  Can't use
593
# the "-o" option because this doesn't work on some strange compilers
594
# (e.g. UnixWare).
595
 
596
tclTestInit.o: $(UNIX_DIR)/tclAppInit.c
597
        @if test -f tclAppInit.o ; then \
598
            rm -f tclAppInit.sav; \
599
            mv tclAppInit.o tclAppInit.sav; \
600
        fi;
601
        $(CC) -c $(CC_SWITCHES) -DTCL_TEST $(UNIX_DIR)/tclAppInit.c
602
        rm -f tclTestInit.o
603
        mv tclAppInit.o tclTestInit.o
604
        @if test -f tclAppInit.sav ; then \
605
            mv tclAppInit.sav tclAppInit.o; \
606
        fi;
607
 
608
xtTestInit.o: $(UNIX_DIR)/tclAppInit.c
609
        @if test -f tclAppInit.o ; then \
610
            rm -f tclAppInit.sav; \
611
            mv tclAppInit.o tclAppInit.sav; \
612
        fi;
613
        $(CC) -c $(CC_SWITCHES) -DTCL_TEST -DTCL_XT_TEST \
614
                $(UNIX_DIR)/tclAppInit.c
615
        rm -f xtTestInit.o
616
        mv tclAppInit.o xtTestInit.o
617
        @if test -f tclAppInit.sav ; then \
618
            mv tclAppInit.sav tclAppInit.o; \
619
        fi;
620
 
621
# Object files used on all Unix systems:
622
 
623
panic.o: $(GENERIC_DIR)/panic.c
624
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/panic.c
625
 
626
regexp.o: $(GENERIC_DIR)/regexp.c
627
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/regexp.c
628
 
629
tclAppInit.o: $(UNIX_DIR)/tclAppInit.c
630
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclAppInit.c
631
 
632
tclAsync.o: $(GENERIC_DIR)/tclAsync.c
633
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclAsync.c
634
 
635
tclBasic.o: $(GENERIC_DIR)/tclBasic.c
636
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclBasic.c
637
 
638
tclBinary.o: $(GENERIC_DIR)/tclBinary.c
639
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclBinary.c
640
 
641
tclCkalloc.o: $(GENERIC_DIR)/tclCkalloc.c
642
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCkalloc.c
643
 
644
tclClock.o: $(GENERIC_DIR)/tclClock.c
645
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclClock.c
646
 
647
tclCmdAH.o: $(GENERIC_DIR)/tclCmdAH.c
648
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCmdAH.c
649
 
650
tclCmdIL.o: $(GENERIC_DIR)/tclCmdIL.c
651
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCmdIL.c
652
 
653
tclCmdMZ.o: $(GENERIC_DIR)/tclCmdMZ.c
654
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCmdMZ.c
655
 
656
tclDate.o: $(GENERIC_DIR)/tclDate.c
657
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclDate.c
658
 
659
tclCompExpr.o: $(GENERIC_DIR)/tclCompExpr.c
660
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCompExpr.c
661
 
662
tclCompile.o: $(GENERIC_DIR)/tclCompile.c
663
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclCompile.c
664
 
665
tclEnv.o: $(GENERIC_DIR)/tclEnv.c
666
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclEnv.c
667
 
668
tclEvent.o: $(GENERIC_DIR)/tclEvent.c
669
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclEvent.c
670
 
671
tclExecute.o: $(GENERIC_DIR)/tclExecute.c
672
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclExecute.c
673
 
674
tclFCmd.o: $(GENERIC_DIR)/tclFCmd.c
675
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclFCmd.c
676
 
677
tclFileName.o: $(GENERIC_DIR)/tclFileName.c
678
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclFileName.c
679
 
680
tclGet.o: $(GENERIC_DIR)/tclGet.c
681
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclGet.c
682
 
683
tclHash.o: $(GENERIC_DIR)/tclHash.c
684
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclHash.c
685
 
686
tclHistory.o: $(GENERIC_DIR)/tclHistory.c
687
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclHistory.c
688
 
689
tclIndexObj.o: $(GENERIC_DIR)/tclIndexObj.c
690
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIndexObj.c
691
 
692
tclInterp.o: $(GENERIC_DIR)/tclInterp.c
693
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclInterp.c
694
 
695
tclIO.o: $(GENERIC_DIR)/tclIO.c
696
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIO.c
697
 
698
tclIOCmd.o: $(GENERIC_DIR)/tclIOCmd.c
699
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIOCmd.c
700
 
701
tclIOSock.o: $(GENERIC_DIR)/tclIOSock.c
702
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIOSock.c
703
 
704
tclIOUtil.o: $(GENERIC_DIR)/tclIOUtil.c
705
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclIOUtil.c
706
 
707
tclLink.o: $(GENERIC_DIR)/tclLink.c
708
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclLink.c
709
 
710
tclListObj.o: $(GENERIC_DIR)/tclListObj.c
711
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclListObj.c
712
 
713
tclObj.o: $(GENERIC_DIR)/tclObj.c
714
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclObj.c
715
 
716
tclLoad.o: $(GENERIC_DIR)/tclLoad.c
717
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclLoad.c
718
 
719
tclLoadAix.o: $(UNIX_DIR)/tclLoadAix.c
720
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadAix.c
721
 
722
tclLoadAout.o: $(UNIX_DIR)/tclLoadAout.c
723
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadAout.c
724
 
725
tclLoadDl.o: $(UNIX_DIR)/tclLoadDl.c
726
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadDl.c
727
 
728
tclLoadDl2.o: $(UNIX_DIR)/tclLoadDl2.c
729
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadDl2.c
730
 
731
tclLoadDld.o: $(UNIX_DIR)/tclLoadDld.c
732
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadDld.c
733
 
734
tclLoadNone.o: $(GENERIC_DIR)/tclLoadNone.c
735
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclLoadNone.c
736
 
737
tclLoadOSF.o: $(UNIX_DIR)/tclLoadOSF.c
738
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadOSF.c
739
 
740
tclLoadShl.o: $(UNIX_DIR)/tclLoadShl.c
741
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclLoadShl.c
742
 
743
tclMain.o: $(GENERIC_DIR)/tclMain.c
744
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclMain.c
745
 
746
tclMtherr.o: $(UNIX_DIR)/tclMtherr.c
747
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclMtherr.c
748
 
749
tclNamesp.o: $(GENERIC_DIR)/tclNamesp.c
750
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclNamesp.c
751
 
752
tclNotify.o: $(GENERIC_DIR)/tclNotify.c
753
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclNotify.c
754
 
755
tclParse.o: $(GENERIC_DIR)/tclParse.c
756
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclParse.c
757
 
758
tclPipe.o: $(GENERIC_DIR)/tclPipe.c
759
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPipe.c
760
 
761
tclPkg.o: $(GENERIC_DIR)/tclPkg.c
762
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPkg.c
763
 
764
tclPosixStr.o: $(GENERIC_DIR)/tclPosixStr.c
765
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPosixStr.c
766
 
767
tclPreserve.o: $(GENERIC_DIR)/tclPreserve.c
768
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclPreserve.c
769
 
770
tclProc.o: $(GENERIC_DIR)/tclProc.c
771
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclProc.c
772
 
773
tclResolve.o: $(GENERIC_DIR)/tclResolve.c
774
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclResolve.c
775
 
776
tclStringObj.o: $(GENERIC_DIR)/tclStringObj.c
777
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclStringObj.c
778
 
779
tclUtil.o: $(GENERIC_DIR)/tclUtil.c
780
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclUtil.c
781
 
782
tclVar.o: $(GENERIC_DIR)/tclVar.c
783
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclVar.c
784
 
785
tclTest.o: $(GENERIC_DIR)/tclTest.c
786
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclTest.c
787
 
788
tclTestObj.o: $(GENERIC_DIR)/tclTestObj.c
789
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclTestObj.c
790
 
791
tclTestProcBodyObj.o: $(GENERIC_DIR)/tclTestProcBodyObj.c
792
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclTestProcBodyObj.c
793
 
794
tclTimer.o: $(GENERIC_DIR)/tclTimer.c
795
        $(CC) -c $(CC_SWITCHES) $(GENERIC_DIR)/tclTimer.c
796
 
797
tclUnixChan.o: $(UNIX_DIR)/tclUnixChan.c
798
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixChan.c
799
 
800
tclUnixEvent.o: $(UNIX_DIR)/tclUnixEvent.c
801
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixEvent.c
802
 
803
tclUnixFCmd.o: $(UNIX_DIR)/tclUnixFCmd.c
804
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixFCmd.c
805
 
806
tclUnixFile.o: $(UNIX_DIR)/tclUnixFile.c
807
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixFile.c
808
 
809
tclUnixNotfy.o: $(UNIX_DIR)/tclUnixNotfy.c
810
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixNotfy.c
811
 
812
tclUnixPipe.o: $(UNIX_DIR)/tclUnixPipe.c
813
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixPipe.c
814
 
815
tclUnixSock.o: $(UNIX_DIR)/tclUnixSock.c
816
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixSock.c
817
 
818
tclUnixTest.o: $(UNIX_DIR)/tclUnixTest.c
819
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixTest.c
820
 
821
tclUnixTime.o: $(UNIX_DIR)/tclUnixTime.c
822
        $(CC) -c $(CC_SWITCHES) $(UNIX_DIR)/tclUnixTime.c
823
 
824
tclUnixInit.o: $(UNIX_DIR)/tclUnixInit.c tclConfig.sh
825
        $(CC) -c $(CC_SWITCHES) -DTCL_LIBRARY=\"${TCL_LIBRARY}\" \
826
                -DTCL_PACKAGE_PATH="\"${TCL_PACKAGE_PATH}\"" \
827
                $(UNIX_DIR)/tclUnixInit.c
828
 
829
# compat binaries
830
 
831
fixstrtod.o: $(COMPAT_DIR)/fixstrtod.c
832
        $(CC) -c $(CC_SWITCHES) $(COMPAT_DIR)/fixstrtod.c
833
 
834
getcwd.o: $(COMPAT_DIR)/getcwd.c
835
        $(CC) -c $(CC_SWITCHES) $(COMPAT_DIR)/getcwd.c
836
 
837
opendir.o: $(COMPAT_DIR)/opendir.c
838
        $(CC) -c $(CC_SWITCHES) $(COMPAT_DIR)/opendir.c
839
 
840
strncasecmp.o: $(COMPAT_DIR)/strncasecmp.c
841
        $(CC) -c $(CC_SWITCHES) $(COMPAT_DIR)/strncasecmp.c
842
 
843
strstr.o: $(COMPAT_DIR)/strstr.c
844
        $(CC) -c $(CC_SWITCHES) $(COMPAT_DIR)/strstr.c
845
 
846
strtod.o: $(COMPAT_DIR)/strtod.c
847
        $(CC) -c $(CC_SWITCHES) $(COMPAT_DIR)/strtod.c
848
 
849
strtol.o: $(COMPAT_DIR)/strtol.c
850
        $(CC) -c $(CC_SWITCHES) $(COMPAT_DIR)/strtol.c
851
 
852
strtoul.o: $(COMPAT_DIR)/strtoul.c
853
        $(CC) -c $(CC_SWITCHES) $(COMPAT_DIR)/strtoul.c
854
 
855
tmpnam.o: $(COMPAT_DIR)/tmpnam.c
856
        $(CC) -c $(CC_SWITCHES) $(COMPAT_DIR)/tmpnam.c
857
 
858
waitpid.o: $(COMPAT_DIR)/waitpid.c
859
        $(CC) -c $(CC_SWITCHES) $(COMPAT_DIR)/waitpid.c
860
 
861
.c.o:
862
        $(CC) -c $(CC_SWITCHES) $<
863
 
864
#
865
# Target to check for proper usage of UCHAR macro.
866
#
867
 
868
checkuchar:
869
        -egrep isalnum\|isalpha\|iscntrl\|isdigit\|islower\|isprint\|ispunct\|isspace\|isupper\|isxdigit\|toupper\|tolower $(SRCS) | grep -v UCHAR
870
 
871
#
872
# Target to make sure that only symbols with "Tcl" prefixes are
873
# exported.
874
#
875
 
876
checkexports: $(TCL_LIB_FILE)
877
        -nm -p $(TCL_LIB_FILE) | awk '$$2 ~ /[TDB]/ { print $$3 }' | sort -n | grep -v '^[Tt]cl'
878
 
879
#
880
# Target to create a proper Tcl distribution from information in the
881
# master source directory.  DISTDIR must be defined to indicate where
882
# to put the distribution.
883
#
884
 
885
DISTNAME =      tcl@TCL_VERSION@@TCL_PATCH_LEVEL@
886
ZIPNAME =       tcl@TCL_MAJOR_VERSION@@TCL_MINOR_VERSION@@TCL_PATCH_LEVEL@.zip
887
DISTDIR =       $(DISTROOT)/$(DISTNAME)
888
#$(UNIX_DIR)/configure: $(UNIX_DIR)/configure.in
889
#       autoconf $(UNIX_DIR)/configure.in > $(UNIX_DIR)/configure
890
dist: $(UNIX_DIR)/configure
891
        rm -rf $(DISTDIR)
892
        mkdir $(DISTDIR)
893
        mkdir $(DISTDIR)/unix
894
        cp -p $(UNIX_DIR)/*.c $(UNIX_DIR)/*.h $(DISTDIR)/unix
895
        rm -f $(DISTDIR)/unix/bp.c
896
        cp $(UNIX_DIR)/Makefile.in $(DISTDIR)/unix
897
        chmod 664 $(DISTDIR)/unix/Makefile.in
898
        cp $(UNIX_DIR)/configure $(UNIX_DIR)/configure.in \
899
                $(UNIX_DIR)/tclConfig.sh.in $(UNIX_DIR)/install-sh \
900
                $(UNIX_DIR)/porting.notes $(UNIX_DIR)/porting.old \
901
                $(UNIX_DIR)/README $(UNIX_DIR)/ldAix \
902
                $(DISTDIR)/unix
903
        chmod 775 $(DISTDIR)/unix/configure $(DISTDIR)/unix/configure.in
904
        chmod 775 $(DISTDIR)/unix/ldAix
905
        chmod +x $(DISTDIR)/unix/install-sh
906
        tclsh $(UNIX_DIR)/mkLinks.tcl \
907
                $(UNIX_DIR)/../doc/*.[13n] > $(DISTDIR)/unix/mkLinks
908
        chmod +x $(DISTDIR)/unix/mkLinks
909
        mkdir $(DISTDIR)/generic
910
        cp -p $(GENERIC_DIR)/*.c $(GENERIC_DIR)/*.h $(DISTDIR)/generic
911
        cp -p $(GENERIC_DIR)/README $(DISTDIR)/generic
912
        cp -p $(GENERIC_DIR)/tclGetDate.y $(DISTDIR)/generic
913
        cp -p $(TOP_DIR)/changes $(TOP_DIR)/README* $(TOP_DIR)/license.terms \
914
                $(DISTDIR)
915
        mkdir $(DISTDIR)/library
916
        cp -p $(TOP_DIR)/license.terms $(TOP_DIR)/library/*.tcl \
917
                $(TOP_DIR)/library/tclIndex $(DISTDIR)/library
918
        for i in http2.0 http1.0 opt0.1; \
919
            do \
920
                mkdir $(DISTDIR)/library/$$i ;\
921
                cp -p $(TOP_DIR)/library/$$i/*.tcl $(DISTDIR)/library/$$i; \
922
            done;
923
        mkdir $(DISTDIR)/doc
924
        cp -p $(TOP_DIR)/license.terms $(TOP_DIR)/doc/*.[13n] \
925
                $(TOP_DIR)/doc/man.macros $(DISTDIR)/doc
926
        mkdir $(DISTDIR)/compat
927
        cp -p $(TOP_DIR)/license.terms $(TOP_DIR)/compat/*.c \
928
                $(TOP_DIR)/compat/*.h $(TOP_DIR)/compat/README \
929
                $(DISTDIR)/compat
930
        mkdir $(DISTDIR)/tests
931
        cp -p $(TOP_DIR)/license.terms $(DISTDIR)/tests
932
        cp -p $(TOP_DIR)/tests/*.test $(TOP_DIR)/tests/README \
933
                $(TOP_DIR)/tests/all $(TOP_DIR)/tests/*.tcl \
934
                $(TOP_DIR)/tests/defs $(DISTDIR)/tests
935
        mkdir $(DISTDIR)/win
936
        cp -p $(TOP_DIR)/win/*.c $(TOP_DIR)/win/*.h $(TOP_DIR)/win/*.rc \
937
                $(DISTDIR)/win
938
        cp -p $(TOP_DIR)/win/*.bat $(DISTDIR)/win
939
        cp -p $(TOP_DIR)/win/makefile.* $(DISTDIR)/win
940
        cp -p $(TOP_DIR)/win/README $(DISTDIR)/win
941
        cp -p $(TOP_DIR)/win/pkgIndex.tcl $(DISTDIR)/win
942
        cp -p $(TOP_DIR)/license.terms $(DISTDIR)/win
943
        mkdir $(DISTDIR)/mac
944
        sccs edit -s $(TOP_DIR)/mac/tclMacProjects.sea.hqx
945
        cp -p tclMacProjects.sea.hqx $(DISTDIR)/mac
946
        sccs unedit $(TOP_DIR)/mac/tclMacProjects.sea.hqx
947
        rm -f tclMacProjects.sea.hqx
948
        cp -p $(TOP_DIR)/mac/*.c $(TOP_DIR)/mac/*.h $(TOP_DIR)/mac/*.r \
949
                $(DISTDIR)/mac
950
        cp -p $(TOP_DIR)/mac/porting.notes $(TOP_DIR)/mac/README $(DISTDIR)/mac
951
        cp -p $(TOP_DIR)/mac/*.exp $(TOP_DIR)/mac/*.pch $(DISTDIR)/mac
952
        cp -p $(TOP_DIR)/mac/*.doc $(DISTDIR)/mac
953
        cp -p $(TOP_DIR)/mac/*.html $(DISTDIR)/mac
954
        cp -p $(TOP_DIR)/license.terms $(DISTDIR)/mac
955
        mkdir $(DISTDIR)/unix/dltest
956
        cp -p $(UNIX_DIR)/dltest/*.c $(UNIX_DIR)/dltest/Makefile.in \
957
                $(DISTDIR)/unix/dltest
958
        cp -p $(UNIX_DIR)/dltest/configure.in $(UNIX_DIR)/dltest/configure \
959
                $(UNIX_DIR)/dltest/README $(DISTDIR)/unix/dltest
960
 
961
#
962
# The following target can only be used for non-patch releases.  Use
963
# the "allpatch" target below for patch releases.
964
#
965
 
966
alldist: dist
967
        rm -f /proj/tcl/dist/$(DISTNAME).tar.Z \
968
                /proj/tcl/dist/$(DISTNAME).tar.gz \
969
                /proj/tcl/dist/$(ZIPNAME)
970
        cd /proj/tcl/dist; tar cf $(DISTNAME).tar $(DISTNAME); \
971
                gzip -9 -c $(DISTNAME).tar > $(DISTNAME).tar.gz; \
972
                compress $(DISTNAME).tar; zip -r8 $(ZIPNAME) $(DISTNAME)
973
 
974
#
975
# The target below is similar to "alldist" except it works for patch
976
# releases.  It is needed because patch releases are peculiar: the
977
# patch designation appears in the name of the compressed file
978
# (e.g. tcl8.0p1.tar.gz) but the extracted source directory doesn't
979
# include the patch designation (e.g. tcl8.0).
980
#
981
 
982
allpatch: dist
983
        rm -f $(DISTROOT)/$(DISTNAME).tar.Z \
984
                $(DISTROOT)/$(DISTNAME).tar.gz \
985
                $(DISTROOT)/$(ZIPNAME)
986
        mv $(DISTROOT)/tcl${VERSION} $(DISTROOT)/old
987
        mv $(DISTROOT)/$(DISTNAME) $(DISTROOT)/tcl${VERSION}
988
        cd $(DISTROOT); tar cf $(DISTNAME).tar tcl${VERSION}; \
989
                gzip -9 -c $(DISTNAME).tar > $(DISTNAME).tar.gz; \
990
                compress $(DISTNAME).tar; zip -r8 $(ZIPNAME) tcl${VERSION}
991
        mv $(DISTROOT)/tcl${VERSION} $(DISTROOT)/$(DISTNAME)
992
        mv $(DISTROOT)/old $(DISTROOT)/tcl${VERSION}
993
 
994
#
995
# Target to create a Macintosh version of the distribution.  This will
996
# do a normal distribution and then massage the output to prepare it
997
# for moving to the Mac platform.  This requires a few scripts and
998
# programs found only in the Tcl group's tool workspace.
999
#
1000
 
1001
macdist: dist
1002
        rm -f $(DISTDIR)/mac/tclMacProjects.sea.hqx
1003
        tclsh $(TOOL_DIR)/man2html.tcl $(DISTDIR)/tmp ../.. tcl$(VERSION)
1004
        mv $(DISTDIR)/tmp/tcl$(VERSION) $(DISTDIR)/html
1005
        rm -rf $(DISTDIR)/doc
1006
        rm -rf $(DISTDIR)/tmp
1007
        tclsh $(TOOL_DIR)/cvtEOL.tcl $(DISTDIR)
1008
 
1009
#
1010
# Targets to build Solaris package of the distribution for the current
1011
# architecture.  To build stream packages for both sun4 and i86pc
1012
# architectures:
1013
#
1014
#   On the sun4 machine, execute the following:
1015
#     make distclean; ./configure
1016
#     make DISTDIR= package
1017
#
1018
#   Once the build is complete, execute the following on the i86pc
1019
#   machine:
1020
#     make DISTDIR= package-quick
1021
#
1022
#  is the absolute path to a directory where the build should
1023
# take place.  These steps will generate the $(PACKAGE).sun4 and
1024
# $(PACKAGE).i86pc stream packages.  It is important that the packages be
1025
# built in this fashion in order to ensure that the architecture
1026
# independent files are exactly the same, including timestamps, in
1027
# both packages.
1028
#
1029
 
1030
PACKAGE=SCRPtcl
1031
 
1032
package: dist package-config package-common package-binaries package-generate
1033
package-quick: package-config package-binaries package-generate
1034
 
1035
#
1036
# Configure for the current architecture in the dist directory.
1037
#
1038
package-config:
1039
        mkdir -p $(DISTDIR)/unix/`arch`
1040
        cd $(DISTDIR)/unix/`arch`; \
1041
        ../configure --prefix=/opt/$(PACKAGE)/$(VERSION) \
1042
                --exec_prefix=/opt/$(PACKAGE)/$(VERSION)/`arch` \
1043
                --enable-shared
1044
        mkdir -p $(DISTDIR)/$(PACKAGE)/$(VERSION)
1045
        mkdir -p $(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch`
1046
 
1047
#
1048
# Build and install the architecture independent files in the dist directory.
1049
#
1050
 
1051
package-common:
1052
        cd $(DISTDIR)/unix/`arch`;\
1053
        $(MAKE); \
1054
        $(MAKE) prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION) \
1055
                exec_prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch` \
1056
                install-libraries install-man
1057
        mkdir -p $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin
1058
        sed -e "s/TCLVERSION/$(VERSION)/g" < $(UNIX_DIR)/tclsh.sh \
1059
                > $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin/tclsh$(VERSION)
1060
        chmod 755 $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin/tclsh$(VERSION)
1061
 
1062
#
1063
# Build and install the architecture specific files in the dist directory.
1064
#
1065
 
1066
package-binaries:
1067
        cd $(DISTDIR)/unix/`arch`; \
1068
        $(MAKE); \
1069
        $(MAKE) install-binaries prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION) \
1070
                exec_prefix=$(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch`
1071
 
1072
#
1073
# Generate a package from the installed files in the dist directory for the
1074
# current architecture.
1075
#
1076
 
1077
package-generate:
1078
        pkgproto $(DISTDIR)/$(PACKAGE)/$(VERSION)/bin=bin \
1079
                 $(DISTDIR)/$(PACKAGE)/$(VERSION)/include=include \
1080
                 $(DISTDIR)/$(PACKAGE)/$(VERSION)/lib=lib \
1081
                 $(DISTDIR)/$(PACKAGE)/$(VERSION)/man=man \
1082
                 $(DISTDIR)/$(PACKAGE)/$(VERSION)/`arch`=`arch` \
1083
        | tclsh $(UNIX_DIR)/mkProto.tcl \
1084
                $(VERSION) $(UNIX_DIR) > prototype
1085
        pkgmk -o -d . -f prototype -a `arch`
1086
        pkgtrans -s . $(PACKAGE).`arch` $(PACKAGE)
1087
        rm -rf $(PACKAGE)
1088
 
1089
# DO NOT DELETE THIS LINE -- make depend depends on it.

powered by: WebSVN 2.1.0

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