0ff14e2f3b4aa17126ddba49a153f2eeccda4074
[openafs.git] / src / util / Makefile.in
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 srcdir=@srcdir@
9 include @TOP_OBJDIR@/src/config/Makefile.config
10 include @TOP_OBJDIR@/src/config/Makefile.lwp
11
12 INSTALL = @INSTALL@
13 INSTALL_DATA = @INSTALL_DATA@
14 INSTALL_PROGRAM = @INSTALL_PROGRAM@
15 INSTALL_SCRIPT = @INSTALL_SCRIPT@
16 HELPER_SPLINT=@HELPER_SPLINT@
17
18
19 objects = assert.o base64.o casestrcpy.o config_file.o ktime.o volparse.o \
20          hostparse.o exec.o \
21          hputil.o kreltime.o isathing.o get_krbrlm.o uuid.o serverLog.o \
22          dirpath.o fileutil.o netutils.o flipbase64.o fstab.o \
23          afs_atomlist.o afs_lhash.o snprintf.o pthread_glock.o \
24          tabular_output.o ${REGEX_OBJ}
25
26 includes = \
27         ${TOP_INCDIR}/afs/dirpath.h \
28         ${TOP_INCDIR}/afs/pthread_nosigs.h \
29         ${TOP_INCDIR}/afs/afs_assert.h \
30         ${TOP_INCDIR}/afs/errors.h \
31         ${TOP_INCDIR}/afs/vice.h \
32         ${TOP_INCDIR}/afs/remote.h \
33         ${TOP_INCDIR}/afs/ktime.h \
34         ${TOP_INCDIR}/afs/fileutil.h \
35         ${TOP_INCDIR}/afs/netutils.h \
36         ${TOP_INCDIR}/afs/packages.h \
37         ${TOP_INCDIR}/afs/afsutil.h \
38         ${TOP_INCDIR}/afs/afsutil_prototypes.h \
39         ${TOP_INCDIR}/afs/pthread_glock.h \
40         ${TOP_INCDIR}/afs/afs_atomlist.h \
41         ${TOP_INCDIR}/afs/afs_lhash.h \
42         ${TOP_INCDIR}/afs/softsig.h \
43         ${TOP_INCDIR}/afs/work_queue.h \
44         ${TOP_INCDIR}/afs/work_queue_types.h \
45         ${TOP_INCDIR}/afs/thread_pool.h \
46         ${TOP_INCDIR}/afs/thread_pool_types.h \
47         ${TOP_INCDIR}/afs/tabular_output.h \
48         ${TOP_INCDIR}/opr/queue.h
49
50 all: ${includes} \
51         ${TOP_LIBDIR}/util.a \
52         ${TOP_LIBDIR}/libafsutil.a \
53         sys
54
55 buildtools: ${TOP_LIBDIR}/libafsutil.a ${TOP_INCDIR}/afs/afsutil.h
56 buildtools_clean: clean
57
58 depinstall: ${includes}
59
60 ${TOP_INCDIR}/afs/dirpath.h: dirpath.h
61         ${INSTALL_DATA} $? $@
62
63 ${TOP_INCDIR}/afs/pthread_nosigs.h: ${srcdir}/pthread_nosigs.h
64         ${INSTALL_DATA} $? $@
65
66 ${TOP_INCDIR}/afs/afs_assert.h: ${srcdir}/afs_assert.h
67         ${INSTALL_DATA} $? $@
68
69 ${TOP_INCDIR}/afs/errors.h: ${srcdir}/errors.h
70         ${INSTALL_DATA} $? $@
71
72 ${TOP_INCDIR}/afs/vice.h: ${srcdir}/vice.h
73         ${INSTALL_DATA} $? $@
74
75 ${TOP_INCDIR}/afs/remote.h: ${srcdir}/remote.h
76         ${INSTALL_DATA} $? $@
77
78 ${TOP_INCDIR}/afs/ktime.h: ${srcdir}/ktime.h
79         ${INSTALL_DATA} $? $@
80
81 ${TOP_INCDIR}/afs/fileutil.h: ${srcdir}/fileutil.h
82         ${INSTALL_DATA} $? $@
83
84 ${TOP_INCDIR}/afs/netutils.h: ${srcdir}/netutils.h
85         ${INSTALL_DATA} $? $@
86
87 ${TOP_INCDIR}/afs/packages.h: ${srcdir}/packages.h
88         ${INSTALL_DATA} $? $@
89
90 ${TOP_INCDIR}/afs/afsutil.h: ${srcdir}/afsutil.h
91         ${INSTALL_DATA} $? $@
92
93 ${TOP_INCDIR}/afs/afsutil_prototypes.h: ${srcdir}/afsutil_prototypes.h
94         ${INSTALL_DATA} $? $@
95
96 ${TOP_INCDIR}/afs/pthread_glock.h: ${srcdir}/pthread_glock.h
97         ${INSTALL_DATA} $? $@
98
99 ${TOP_INCDIR}/afs/afs_atomlist.h: ${srcdir}/afs_atomlist.h
100         ${INSTALL_DATA} $? $@
101
102 ${TOP_INCDIR}/afs/afs_lhash.h: ${srcdir}/afs_lhash.h
103         ${INSTALL_DATA} $? $@
104
105 ${TOP_INCDIR}/afs/softsig.h: ${srcdir}/softsig.h
106         ${INSTALL_DATA} $? $@
107
108 ${TOP_INCDIR}/afs/work_queue.h: ${srcdir}/work_queue.h
109         ${INSTALL_DATA} $? $@
110
111 ${TOP_INCDIR}/afs/work_queue_types.h: ${srcdir}/work_queue_types.h
112         ${INSTALL_DATA} $? $@
113
114 ${TOP_INCDIR}/afs/thread_pool.h: ${srcdir}/thread_pool.h
115         ${INSTALL_DATA} $? $@
116
117 ${TOP_INCDIR}/afs/thread_pool_types.h: ${srcdir}/thread_pool_types.h
118         ${INSTALL_DATA} $? $@
119
120 ${TOP_INCDIR}/afs/tabular_output.h: ${srcdir}/tabular_output.h
121         ${INSTALL_DATA} $? $@
122
123 ${TOP_INCDIR}/potpourri.h: ${srcdir}/potpourri.h
124         ${INSTALL_DATA} $? $@
125
126 ${TOP_INCDIR}/opr/queue.h: ${srcdir}/queue.h
127         ${INSTALL_DATA} $? $@
128
129 ${TOP_LIBDIR}/util.a: util.a
130         ${INSTALL_DATA} $? $@
131
132 ${TOP_LIBDIR}/libafsutil.a: util.a
133         ${INSTALL_DATA} $? $@
134
135 # Use " as the sed boundary character because we lose anyway if that occurs
136 # in path names.
137 dirpath.h: ${srcdir}/dirpath.hin Makefile
138         ( sed \
139                 -e 's"@afsconfdir"${afsconfdir}"' \
140                 -e 's"@viceetcdir"${viceetcdir}"' \
141                 -e 's"@afssrvbindir"${afssrvbindir}"' \
142                 -e 's"@afssrvsbindir"${afssrvsbindir}"' \
143                 -e 's"@afssrvlibexecdir"${afssrvlibexecdir}"' \
144                 -e 's"@afsdbdir"${afsdbdir}"' \
145                 -e 's"@afslogsdir"${afslogsdir}"' \
146                 -e 's"@afslocaldir"${afslocaldir}"' \
147                 -e 's"@afsbackupdir"${afsbackupdir}"' \
148                 -e 's"@afsbosconfigdir"${afsbosconfigdir}"' \
149                 -e 's"@afsdatadir"${afsdatadir}"' \
150                 ${srcdir}/dirpath.hin >dirpath.h.tmp && \
151                 if cmp dirpath.h.tmp dirpath.h >/dev/null ; then : ; else \
152                 mv dirpath.h.tmp dirpath.h ; fi)
153         rm -f dirpath.h.tmp
154
155 util.a: ${objects} AFS_component_version_number.o
156         $(RM) -f util.a
157         $(AR) crv util.a ${objects} AFS_component_version_number.o
158         $(RANLIB) util.a
159
160 pthread_glock.o: ${srcdir}/pthread_glock.c ${includes}
161         ${MT_CC} $(COMMON_CFLAGS) ${MT_CFLAGS} -c ${srcdir}/pthread_glock.c
162
163 ${objects}: ${includes}
164
165 config_file.o: ${TOP_SRCDIR}/external/heimdal/krb5/config_file.c krb5_locl.h
166         $(AFS_CCRULE) -c ${TOP_SRCDIR}/external/heimdal/krb5/config_file.c 
167
168 sys.o: sys.c AFS_component_version_number.c ${includes}
169
170 sys: sys.o 
171         $(AFS_LDRULE) sys.o
172
173 #
174 # Install targets
175 #
176 KDIR=../libafs/afs
177 UKDIR=../libuafs/afs
178
179 install: dirpath.h util.a sys
180         ${INSTALL} -d ${DESTDIR}${includedir}/afs
181         ${INSTALL} -d ${DESTDIR}${libdir}/afs
182         ${INSTALL} -d ${DESTDIR}${bindir}
183         ${INSTALL_DATA} dirpath.h ${DESTDIR}${includedir}/afs/dirpath.h
184         ${INSTALL_DATA} ${srcdir}/pthread_nosigs.h ${DESTDIR}${includedir}/afs/pthread_nosigs.h
185         ${INSTALL_DATA} ${srcdir}/afs_assert.h ${DESTDIR}${includedir}/afs/afs_assert.h
186         ${INSTALL_DATA} ${srcdir}/errors.h ${DESTDIR}${includedir}/afs/errors.h
187         ${INSTALL_DATA} ${srcdir}/vice.h ${DESTDIR}${includedir}/afs/vice.h
188         ${INSTALL_DATA} ${srcdir}/remote.h ${DESTDIR}${includedir}/afs/remote.h
189         ${INSTALL_DATA} ${srcdir}/ktime.h ${DESTDIR}${includedir}/afs/ktime.h
190         ${INSTALL_DATA} ${srcdir}/fileutil.h ${DESTDIR}${includedir}/afs/fileutil.h
191         ${INSTALL_DATA} ${srcdir}/netutils.h ${DESTDIR}${includedir}/afs/netutils.h
192         ${INSTALL_DATA} ${srcdir}/packages.h ${DESTDIR}${includedir}/afs/packages.h
193         ${INSTALL_DATA} ${srcdir}/afsutil.h ${DESTDIR}${includedir}/afs/afsutil.h
194         ${INSTALL_DATA} ${srcdir}/afsutil_prototypes.h ${DESTDIR}${includedir}/afs/afsutil_prototypes.h
195         ${INSTALL_DATA} ${srcdir}/pthread_glock.h ${DESTDIR}${includedir}/afs/pthread_glock.h
196         ${INSTALL_DATA} ${srcdir}/afs_atomlist.h ${DESTDIR}${includedir}/afs/afs_atomlist.h
197         ${INSTALL_DATA} ${srcdir}/afs_lhash.h ${DESTDIR}${includedir}/afs/afs_lhash.h
198         ${INSTALL_DATA} ${srcdir}/softsig.h ${DESTDIR}${includedir}/afs/softsig.h
199         ${INSTALL_DATA} ${srcdir}/work_queue.h ${DESTDIR}${includedir}/afs/work_queue.h
200         ${INSTALL_DATA} ${srcdir}/work_queue_types.h ${DESTDIR}${includedir}/afs/work_queue_types.h
201         ${INSTALL_DATA} ${srcdir}/thread_pool.h ${DESTDIR}${includedir}/afs/thread_pool.h
202         ${INSTALL_DATA} ${srcdir}/thread_pool_types.h ${DESTDIR}${includedir}/afs/thread_pool_types.h
203         ${INSTALL_DATA} ${srcdir}/tabular_output.h ${DESTDIR}${includedir}/afs/tabular_output.h
204         ${INSTALL_DATA} util.a ${DESTDIR}${libdir}/afs/util.a
205         ${INSTALL_DATA} util.a ${DESTDIR}${libdir}/afs/libafsutil.a
206         ${INSTALL_PROGRAM} sys ${DESTDIR}${bindir}/sys
207
208 dest: dirpath.h util.a sys
209         ${INSTALL} -d ${DEST}/include/afs
210         ${INSTALL} -d ${DEST}/lib/afs
211         ${INSTALL} -d ${DEST}/bin
212         ${INSTALL_DATA} dirpath.h ${DEST}/include/afs/dirpath.h
213         ${INSTALL_DATA} ${srcdir}/pthread_nosigs.h ${DEST}/include/afs/pthread_nosigs.h
214         ${INSTALL_DATA} ${srcdir}/afs_assert.h ${DEST}/include/afs/afs_assert.h
215         ${INSTALL_DATA} ${srcdir}/errors.h ${DEST}/include/afs/errors.h
216         ${INSTALL_DATA} ${srcdir}/vice.h ${DEST}/include/afs/vice.h
217         ${INSTALL_DATA} ${srcdir}/remote.h ${DEST}/include/afs/remote.h
218         ${INSTALL_DATA} ${srcdir}/ktime.h ${DEST}/include/afs/ktime.h
219         ${INSTALL_DATA} ${srcdir}/fileutil.h ${DEST}/include/afs/fileutil.h
220         ${INSTALL_DATA} ${srcdir}/netutils.h ${DEST}/include/afs/netutils.h
221         ${INSTALL_DATA} ${srcdir}/packages.h ${DEST}/include/afs/packages.h
222         ${INSTALL_DATA} ${srcdir}/afsutil.h ${DEST}/include/afs/afsutil.h
223         ${INSTALL_DATA} ${srcdir}/afsutil_prototypes.h ${DEST}/include/afs/afsutil_prototypes.h
224         ${INSTALL_DATA} ${srcdir}/pthread_glock.h ${DEST}/include/afs/pthread_glock.h
225         ${INSTALL_DATA} ${srcdir}/afs_atomlist.h ${DEST}/include/afs/afs_atomlist.h
226         ${INSTALL_DATA} ${srcdir}/afs_lhash.h ${DEST}/include/afs/afs_lhash.h
227         ${INSTALL_DATA} ${srcdir}/softsig.h ${DEST}/include/afs/softsig.h
228         ${INSTALL_DATA} ${srcdir}/work_queue.h ${DEST}/include/afs/work_queue.h
229         ${INSTALL_DATA} ${srcdir}/work_queue_types.h ${DEST}/include/afs/work_queue_types.h
230         ${INSTALL_DATA} ${srcdir}/thread_pool.h ${DEST}/include/afs/thread_pool.h
231         ${INSTALL_DATA} ${srcdir}/thread_pool_types.h ${DEST}/include/afs/thread_pool_types.h
232         ${INSTALL_DATA} ${srcdir}/tabular_output.h ${DEST}/include/afs/tabular_output.h
233         ${INSTALL_DATA} util.a ${DEST}/lib/afs/util.a
234         ${INSTALL_DATA} util.a ${DEST}/lib/afs/libafsutil.a
235         ${INSTALL_PROGRAM} sys ${DEST}/bin/sys
236
237 #
238 # Misc targets
239 #
240
241 clean:
242         $(RM) -f ${objects} sys dirpath.h
243         $(RM) -f util.a *.o core AFS_component_version_number.c
244
245 test:
246         cd test; $(MAKE)
247
248 include ../config/Makefile.version
249
250 check-splint:
251         sh $(HELPER_SPLINT) $(CFLAGS) \
252             assert.c base64.c casestrcpy.c ktime.c volparse.c hostparse.c \
253             hputil.c kreltime.c isathing.c get_krbrlm.c uuid.c serverLog.c \
254             dirpath.c fileutil.c netutils.c flipbase64.c \
255             afs_atomlist.c afs_lhash.c snprintf.c fstab.c