afsconfig-and-rcsid-all-around-20010705
[openafs.git] / src / gtx / Makefile
1 # Copyright 2000, International Business Machines Corporation and others.
2 # All Rights Reserved.
3
4 # This software has been released under the terms of the IBM Public
5 # License.  For details, see the LICENSE file in the top-level source
6 # directory or online at http://www.openafs.org/dl/license10.html
7
8 # Makefile for gtx, a display-independent, object-oriented window toolkit.
9
10
11 SHELL=/bin/sh
12 COMPONENT=gtx
13 include ../config/Makefile.${SYS_NAME}
14
15 COMPILE_ET=$(SRCDIR)bin/compile_et
16 CFLAGS= ${DBUG} -I. -I${TOP_SRCDIR}/config \
17         -I${SRCDIR}include -I${SRCDIR}include/afs ${XCFLAGS}
18 LDFLAGS = ${XLDFLAGS}
19 #RPCINCLS=${SRCDIR}include/lwp.h ${SRCDIR}include/rx/rx.h bosint.h
20 RPCINCLS=
21 INCLS=gtxobjects.h \
22         gtxwindows.h \
23         gtxcurseswin.h \
24         gtxinput.h \
25         gtxdumbwin.h \
26         gtxX11win.h \
27         gtxobjects.h \
28         gtxkeymap.h \
29         gtxlightobj.h \
30         gtxtextobj.h \
31         gtxframe.h \
32         gtxobjdict.h \
33         ${RPCINCLS} \
34         ${SRCDIR}include/afs/keys.h \
35         ${SRCDIR}include/afs/cellconfig.h \
36         ${SRCDIR}include/afs/cmd.h
37
38 LIBS= \
39         ${SRCDIR}lib/librx.a \
40         ${SRCDIR}lib/liblwp.a \
41         ${SRCDIR}lib/afs/libsys.a \
42         ${SRCDIR}lib/afs/libcmd.a \
43         ${SRCDIR}lib/afs/libkauth.a \
44         ${SRCDIR}lib/afs/libauth.a \
45         ${SRCDIR}lib/librxkad.a \
46         ${SRCDIR}lib/libdes.a \
47         ${SRCDIR}lib/afs/libcom_err.a \
48         ${SRCDIR}lib/afs/util.a
49
50 EXTRA_LIBS= ${TXLIBS} ${SRCDIR}lib/afs/libtermlib.a  ${XLIBS} 
51
52 LINT_LIBS = /usr/lib/lint/llib-lcurses.ln
53
54 KEYMAP_SRCS=keymap.c input.c frame.c
55
56 KEYMAP_OBJS=keymap.o input.o frame.o
57
58 WINDOW_SRCS=curseswindows.c \
59         dumbwindows.c \
60         X11windows.c \
61         windows.c
62
63 WINDOW_OBJS=curseswindows.o \
64         dumbwindows.o \
65         X11windows.o \
66         windows.o
67
68 OBJECT_SRCS=objects.c \
69         lightobject.c \
70         textobject.c
71
72 OBJECT_OBJS=objects.o \
73         lightobject.o \
74         textobject.o
75
76 DICT_SRCS=objdict.c
77 DICT_OBJS=objdict.o
78
79 CB_SRCS=textcb.c
80 CB_OBJS=textcb.o
81
82 #ERROBJS=err.o
83 ERRSRCS=
84 ERROJBS=
85
86 include ../config/Makefile.version
87
88 noversion: install
89
90 all: libgtx.a gtxtest
91
92 tests: object_test screen_test curses_test cb_test gtxtest
93
94 # All objects in the library
95 LIBSRCS = ${KEYMAP_SRCS} ${WINDOW_SRCS} ${OBJECT_SRCS} ${DICT_SRCS} \
96         ${ERRSRCS} ${CB_SRCS}
97 LIBOBJS = $(KEYMAP_OBJS) ${WINDOW_OBJS} ${OBJECT_OBJS} ${DICT_OBJS} \
98         ${ERROBJS} ${CB_OBJS}
99
100 ${LIBSRCS}: ${INCLS}
101 $(LIBOBJS): ${INCLS}
102
103 err.c: err.et
104         rm -f err.h err.c; $(COMPILE_ET) err -h err
105
106 keymap.o: keymap.c ${INCLS}
107
108 frame.o: frame.c $(INCLS)
109
110 input.o: input.c ${INCLS}
111
112 curseswindows.o: curseswindows.c ${INCLS}
113
114 dumbwindows.o: dumbwindows.c ${INCLS}
115
116 X11windows.o: X11windows.c ${INCLS}
117
118 windows.o: windows.c ${INCLS}
119
120 lightobject.o: lightobject.c ${INCLS}
121
122 textobject.o: textobject.c ${INCLS}
123
124 textcb.o: textcb.c ${INCLS}
125
126 #
127 # Test programs.
128 #
129 curses_test.o: curses_test.c ${INCLS} AFS_component_version_number.o
130
131 curses_test: curses_test.o $(LIBS)
132         ${CC} ${CFLAGS} -o curses_test curses_test.o $(LIBS) ${EXTRA_LIBS}
133
134 curses_test.lint: curses_test.c $(LINT_LIBS)
135         lint ${CFLAGS} curses_test.c ${LINT_LIBS}
136
137 screen_test.o: screen_test.c ${INCLS} AFS_component_version_number.o
138
139 screen_test: screen_test.o ${WINDOW_OBJS} ${LIBS}
140         ${CC} ${CFLAGS} -o screen_test screen_test.o ${WINDOW_OBJS} ${LIBS} ${EXTRA_LIBS}
141
142 screen_test.lint: screen_test.o ${WINDOW_SRCS} ${LINT_LIBS}
143         lint ${CFLAGS} screen_test.c ${WINDOW_SRCS} ${LINT_LIBS}
144
145 cb_test.o: cb_test.c ${INCLS} AFS_component_version_number.o
146
147 cb_test: cb_test.o ${CB_OBJS} ${LIBS}
148         ${CC} ${CFLAGS} -o cb_test cb_test.o ${CB_OBJS} ${LIBS} ${EXTRA_LIBS}
149
150 cb_test.lint: cb_test.c ${CB_SRCS} ${LINT_LIBS}
151         lint ${CFLAGS} cb_test.c ${CB_SRCS} ${LINT_LIBS}
152
153 gtxtest.o: gtxtest.c ${INCLS} AFS_component_version_number.o
154
155 gtxtest: gtxtest.o libgtx.a ${LIBS}
156         ${CC} ${LDFLAGS} -o gtxtest gtxtest.o libgtx.a ${LIBS} ${EXTRA_LIBS}
157
158 gtxtest.lint: gtxtest.c llib-lgtx.ln ${LINT_LIBS}
159         lint $(CFLAGS) gtxtest.c llib-lgtx.ln ${LINT_LIBS}
160
161 object_test.o: object_test.c ${INCLS} AFS_component_version_number.o
162
163 object_test: object_test.o ${WINDOW_OBJS} ${DICT_OBJS} ${OBJECT_OBJS} ${CB_OBJS} ${LIBS}
164         ${CC} ${CFLAGS} -o object_test object_test.o ${WINDOW_OBJS} ${DICT_OBJS} ${OBJECT_OBJS} ${CB_OBJS} ${LIBS} ${EXTRA_LIBS}
165
166 object_test.lint: object_test.c ${WINDOW_SRCS} ${DICT_SRCS} ${OBJECT_SRCS} ${CB_SRCS} ${LINT_LIBS}
167         lint ${CFLAGS} object_test.c ${WINDOW_SRCS} ${DICT_SRCS} ${OBJECT_SRCS} ${CB_SRCS} ${LINT_LIBS}
168
169 #
170 # Misc others
171 #
172 system: install
173
174 libgtx.a: ${LIBOBJS} AFS_component_version_number.o
175         -rm -f $@
176         ar rv $@ ${LIBOBJS} AFS_component_version_number.o
177         ${RANLIB} $@
178
179 llib-lgtx.ln: ${LIBSRCS}
180         lint -Cgtx ${CFLAGS} ${LIBSRCS}
181
182 lint: llib-lgtx.ln \
183         curses_test.lint \
184         screen_test.lint \
185         cb_test.lint \
186         gtxtest.lint \
187         object_test.lint
188
189 install: all
190         ${INSTALL} gtx*.h ${DESTDIR}include/afs
191         ${INSTALL} libgtx.a ${DESTDIR}lib/afs
192
193 clean:
194         rm -f  *.o *.a *.ln object_test screen_test curses_test err.c core cb_test gtxtest AFS_component_version_number.c