]>
Commit | Line | Data |
---|---|---|
1 | # Makefile.linux | |
2 | # | |
3 | # This Makefile is for use when distributing Tcl to the outside world. | |
4 | # It is normally set up by running the "config" script. Before modifying | |
5 | # this file by hand, you should read through the "config" script to see | |
6 | # what it does. | |
7 | # | |
8 | # Some changes you may wish to make here: | |
9 | # | |
10 | # 1. To compile for non-UNIX systems (so that only the non-UNIX-specific | |
11 | # commands are available), change the OBJS line below so it doesn't | |
12 | # include ${UNIX_OBJS}. Also, add the switch "-DTCL_GENERIC_ONLY" to | |
13 | # CFLAGS. Lastly, you'll have to provide your own replacement for the | |
14 | # "panic" procedure (see panic.c for what the current one does). | |
15 | # | |
16 | # 2. ANSI-C procedure prototypes are turned on by default if supported | |
17 | # by the compiler. To turn them off, add "-DNO_PROTOTYPE" to CFLAGS | |
18 | # below. | |
19 | # | |
20 | # 3. If you've put the Tcl script library in a non-standard place, change | |
21 | # the definition of TCL_LIBRARY to correspond to its location on your | |
22 | # system. | |
23 | # | |
24 | ||
25 | TCL_LIBRARY = /usr/local/lib/tcl | |
26 | ||
27 | CC = gcc | |
28 | ||
29 | CFLAGS = -O3 -I. -DTCL_LIBRARY=\"${TCL_LIBRARY}\" -DIS_LINUX | |
30 | #CFLAGS = -g -I. -DTCL_LIBRARY=\"${TCL_LIBRARY}\" -DIS_LINUX | |
31 | ||
32 | GENERIC_OBJS = \ | |
33 | regexp.o \ | |
34 | tclassem.o \ | |
35 | tclbasic.o \ | |
36 | tclckall.o \ | |
37 | tclcmdah.o \ | |
38 | tclcmdil.o \ | |
39 | tclcmdmz.o \ | |
40 | tclexpr.o \ | |
41 | tclget.o \ | |
42 | tclhash.o \ | |
43 | tclhist.o \ | |
44 | tclparse.o \ | |
45 | tclproc.o \ | |
46 | tclutil.o \ | |
47 | tclvar.o | |
48 | ||
49 | UNIX_OBJS = \ | |
50 | panic.o \ | |
51 | tclenv.o \ | |
52 | tclglob.o \ | |
53 | tclunxaz.o \ | |
54 | tclunxst.o \ | |
55 | tclunxut.o | |
56 | ||
57 | COMPAT_OBJS = | |
58 | ||
59 | OBJS = ${GENERIC_OBJS} ${UNIX_OBJS} ${COMPAT_OBJS} | |
60 | ||
61 | all: libtcl.a | |
62 | ||
63 | libtcl.a: ${OBJS} ${COMPAT_OBJS} | |
64 | rm -f libtcl.a | |
65 | ar cr libtcl.a ${OBJS} | |
66 | ranlib libtcl.a | |
67 | ||
68 | tcltest: tcltest.o libtcl.a | |
69 | ${CC} ${CFLAGS} tcltest.o libtcl.a -o tcltest | |
70 | ||
71 | test: tcltest | |
72 | ( echo cd tests ; echo source all ) | ./tcltest | |
73 | ||
74 | clean: | |
75 | rm -f ${OBJS} libtcl.a tcltest.o tcltest | |
76 | ||
77 | # The following target is used during configuration to compile | |
78 | # a test program to see if certain facilities are available on | |
79 | # the system. | |
80 | ||
81 | configtest: | |
82 | ${CC} ${CFLAGS} test.c | |
83 | ||
84 | ${OBJS}: tcl.h tclhash.h tclint.h | |
85 | ${UNIX_OBJS}: tclunix.h |