]> cvs.zerfleddert.de Git - micropolis/blob - src/tk/makefile
src/tclx/ucbsrc/tclbasic.sed: Micropolis build fixes for recent macOS
[micropolis] / src / tk / makefile
1 #
2 # This is a simplified Makefile for use in Tk distributions. Before using
3 # it to compile Tk, you may wish to reset some of the following variables:
4 #
5 # TCL_DIR - Name of directory holding tcl.h and tcl.a.
6 # XLIB - Name of archive containing Xlib binaries.
7 #
8
9 # You may also wish to add some of the following switches to the CFLAGS
10 # variable:
11 #
12 # -DX11R3 Causes code that depends on R4 facilities not to
13 # be compiled. I haven't tested Tk with R3 in quite
14 # a while, so this switch may not be enough to
15 # generate a working R3 version of Tk. Furthermore,
16 # use of this switch will disable some of the facilities
17 # of Tk related to window managers.
18 # -DNO_PROTOTYPE Turns off ANSI-style procedure prototypes and the
19 # corresponding compile-time checks. Without this
20 # defininition, prototypes will be turned on if the
21 # compiler supports ANSI C by defining __STDC__.
22 # -DTK_LIBRARY=\"dir\" Arranges for dir, which must be the name of a
23 # directory, to be the library directory for Tk scripts.
24 # This value gets put into the variable $tk_library
25 # when a new application is created. The library
26 # defaults to /usr/local/lib/tk, so you don't need the
27 # switch unless your library is in a non-standard place.
28 #
29
30 CC = gcc
31
32 CFLAGS = -I. -I$(XINCLUDE) -I$(TCL_DIR) -O3 -DTK_VERSION=\"2.3\" -DUSE_XPM3 -DIS_LINUX
33 #CFLAGS = -I. -I$(XINCLUDE) -I$(TCL_DIR) -g -DTK_VERSION=\"2.3\" -DUSE_XPM3 -DIS_LINUX
34
35 TCL_DIR = ../tcl
36 XINCLUDE = /usr/include/X11
37 XLIB = -L/usr/X11R6/lib -lX11 -lXpm
38
39 LIBS = libtk.a $(TCL_DIR)/libtcl.a
40 LINKS = $(LIBS)
41
42 WIDGOBJS = \
43 tkbutton.o \
44 tkentry.o \
45 tkframe.o \
46 tklist.o \
47 tkmenu.o \
48 tkmnbut.o \
49 tkmsg.o \
50 tkscale.o \
51 tkscrbar.o
52
53 CANVOBJS = \
54 tkcanvas.o \
55 tkcvarc.o \
56 tkcvbmap.o \
57 tkcvline.o \
58 tkcvpoly.o \
59 tkcvtext.o \
60 tkcvwind.o \
61 tkrectov.o \
62 tktrig.o
63
64 TEXTOBJS = \
65 tktext.o \
66 tktxbtre.o \
67 tktxdisp.o \
68 tktxidx.o \
69 tktxtag.o
70
71 OBJS = \
72 tk3d.o \
73 tkargv.o \
74 tkatom.o \
75 tkbind.o \
76 tkbitmap.o \
77 tkcmds.o \
78 tkcolor.o \
79 tkconfig.o \
80 tkcursor.o \
81 tkerror.o \
82 tkevent.o \
83 tkfont.o \
84 tkget.o \
85 tkgc.o \
86 tkgeo.o \
87 tkgrab.o \
88 tkoption.o \
89 tkpack.o \
90 tkpixmap.o \
91 tkplace.o \
92 tkpresrv.o \
93 tkselect.o \
94 tksend.o \
95 tkshare.o \
96 tkwindow.o \
97 tkwm.o \
98 tkrawtcp.o \
99 $(WIDGOBJS) \
100 $(CANVOBJS) \
101 $(TEXTOBJS)
102
103 WIDGSRCS = \
104 tkbutton.c \
105 tkentry.c \
106 tkframe.c \
107 tklist.c \
108 tkmenu.c \
109 tkmnbut.c \
110 tkmessage.c \
111 tkscale.c \
112 tkscrbar.c \
113 tktext.c \
114 tktxbtre.c \
115 tktxdisp.c \
116 tktextindex.c
117
118 CANVSRCS = \
119 tkcanvas.c \
120 tkcvarc.c \
121 tkcvbmap.c \
122 tkcvline.c \
123 tkcvpoly.c \
124 tkcvtext.c \
125 tkcvwind.c \
126 tkrectov.c \
127 tktrig.c
128
129 TEXTSRCS = \
130 tktext.c \
131 tktxbtre.c \
132 tktxdisp.c \
133 tktxidx.c \
134 tktxtag.c
135
136 SRCS = \
137 tk3d.c \
138 tkargv.c \
139 tkatom.c \
140 tkbind.c \
141 tkbitmap.c \
142 tkcmds.c \
143 tkcolor.c \
144 tkconfig.c \
145 tkcursor.c \
146 tkerror.c \
147 tkevent.c \
148 tkfont.c \
149 tkget.c \
150 tkgc.c \
151 tkgeo.c \
152 tkgrab.c \
153 tkoption.c \
154 tkpack.c \
155 tkplace.c \
156 tkpresrv.c \
157 tkselect.c \
158 tksend.c \
159 tkshare.c \
160 tkwindow.c \
161 tkwm.c \
162 tkrawtcp.c \
163 $(widgsrcs) \
164 $(CANVSRCS) \
165 $(TEXTSRCS)
166
167 all: wish
168
169 wish: main.o $(LIBS)
170 $(CC) $(CFLAGS) main.o $(LINKS) $(XLIB) -lm -o wish
171
172 libtk.a: $(OBJS)
173 rm -f libtk.a
174 ar cr libtk.a $(OBJS)
175 ranlib libtk.a
176
177 $(TCL_DIR)/libtcl.a:
178 cd $(TCL_DIR); make libtcl.a
179
180 clean:
181 touch junk~
182 rm -f $(OBJS) main.o libtk.a wish *~
183
184 $(OBJS): tk.h tkint.h tkconfig.h
185 $(WIDGOBJS): default.h
186 $(CANVOBJS): default.h tkcanvas.h
187 main.o: tk.h tkint.h
Impressum, Datenschutz