Split up libtool support into LWP and pthread
[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 include @TOP_OBJDIR@/src/config/Makefile.lwptool
12
13 HELPER_SPLINT=@HELPER_SPLINT@
14
15 LT_rpc_objs     = base64.lo
16
17 LT_objs =$(LT_rpc_objs) \
18          ktime.lo volparse.lo hostparse.lo exec.lo \
19          hputil.lo kreltime.lo uuid.lo serverLog.lo \
20          dirpath.lo fileutil.lo flipbase64.lo fstab.lo \
21          afs_atomlist.lo afs_lhash.lo pthread_glock.lo tabular_output.lo \
22          pthread_threadname.lo softsig.lo ${REGEX_OBJ}
23
24 LT_deps = $(top_builddir)/src/opr/liboafs_opr.la
25 LT_libs = $(LIB_roken) $(MT_LIBS)
26
27 includes = \
28         ${TOP_INCDIR}/afs/dirpath.h \
29         ${TOP_INCDIR}/afs/pthread_nosigs.h \
30         ${TOP_INCDIR}/afs/errors.h \
31         ${TOP_INCDIR}/afs/vice.h \
32         ${TOP_INCDIR}/afs/ktime.h \
33         ${TOP_INCDIR}/afs/fileutil.h \
34         ${TOP_INCDIR}/afs/afsutil.h \
35         ${TOP_INCDIR}/afs/afsutil_prototypes.h \
36         ${TOP_INCDIR}/afs/pthread_glock.h \
37         ${TOP_INCDIR}/afs/afs_atomlist.h \
38         ${TOP_INCDIR}/afs/afs_lhash.h \
39         ${TOP_INCDIR}/afs/softsig.h \
40         ${TOP_INCDIR}/afs/work_queue.h \
41         ${TOP_INCDIR}/afs/work_queue_types.h \
42         ${TOP_INCDIR}/afs/thread_pool.h \
43         ${TOP_INCDIR}/afs/thread_pool_types.h \
44         ${TOP_INCDIR}/afs/tabular_output.h
45
46 all: ${includes} \
47         ${TOP_LIBDIR}/util.a \
48         ${TOP_LIBDIR}/libafsutil.a \
49         ${TOP_LIBDIR}/libafsutil_pic.a \
50         sys \
51         liboafs_util.la \
52         libafsrpc_util.la
53
54 util.a: $(LT_objs)
55         $(LT_LDLIB_lwp) $(LT_objs)
56
57 libafsutil_pic.la: $(LT_objs)
58         $(LT_LDLIB_pic) $(LT_objs)
59
60 liboafs_util.la: liboafs_util.la.sym $(LT_objs) $(LT_deps)
61         $(LT_LDLIB_shlib) $(LT_objs) $(LT_deps) $(LT_libs)
62
63 libafsrpc_util.la: $(LT_rpc_objs)
64         $(LT_LDLIB_pic) $(LT_rpc_objs)
65
66 buildtools: ${TOP_LIBDIR}/libafsutil.a ${TOP_INCDIR}/afs/afsutil.h
67 buildtools_clean: clean
68
69 depinstall: ${includes}
70
71 ${TOP_INCDIR}/afs/dirpath.h: dirpath.h
72         ${INSTALL_DATA} $? $@
73
74 ${TOP_INCDIR}/afs/pthread_nosigs.h: ${srcdir}/pthread_nosigs.h
75         ${INSTALL_DATA} $? $@
76
77 ${TOP_INCDIR}/afs/errors.h: ${srcdir}/errors.h
78         ${INSTALL_DATA} $? $@
79
80 ${TOP_INCDIR}/afs/vice.h: ${srcdir}/vice.h
81         ${INSTALL_DATA} $? $@
82
83 ${TOP_INCDIR}/afs/ktime.h: ${srcdir}/ktime.h
84         ${INSTALL_DATA} $? $@
85
86 ${TOP_INCDIR}/afs/fileutil.h: ${srcdir}/fileutil.h
87         ${INSTALL_DATA} $? $@
88
89 ${TOP_INCDIR}/afs/afsutil.h: ${srcdir}/afsutil.h
90         ${INSTALL_DATA} $? $@
91
92 ${TOP_INCDIR}/afs/afsutil_prototypes.h: ${srcdir}/afsutil_prototypes.h
93         ${INSTALL_DATA} $? $@
94
95 ${TOP_INCDIR}/afs/pthread_glock.h: ${srcdir}/pthread_glock.h
96         ${INSTALL_DATA} $? $@
97
98 ${TOP_INCDIR}/afs/afs_atomlist.h: ${srcdir}/afs_atomlist.h
99         ${INSTALL_DATA} $? $@
100
101 ${TOP_INCDIR}/afs/afs_lhash.h: ${srcdir}/afs_lhash.h
102         ${INSTALL_DATA} $? $@
103
104 ${TOP_INCDIR}/afs/softsig.h: ${srcdir}/softsig.h
105         ${INSTALL_DATA} $? $@
106
107 ${TOP_INCDIR}/afs/work_queue.h: ${srcdir}/work_queue.h
108         ${INSTALL_DATA} $? $@
109
110 ${TOP_INCDIR}/afs/work_queue_types.h: ${srcdir}/work_queue_types.h
111         ${INSTALL_DATA} $? $@
112
113 ${TOP_INCDIR}/afs/thread_pool.h: ${srcdir}/thread_pool.h
114         ${INSTALL_DATA} $? $@
115
116 ${TOP_INCDIR}/afs/thread_pool_types.h: ${srcdir}/thread_pool_types.h
117         ${INSTALL_DATA} $? $@
118
119 ${TOP_INCDIR}/afs/tabular_output.h: ${srcdir}/tabular_output.h
120         ${INSTALL_DATA} $? $@
121
122 ${TOP_INCDIR}/potpourri.h: ${srcdir}/potpourri.h
123         ${INSTALL_DATA} $? $@
124
125 ${TOP_LIBDIR}/util.a: util.a
126         ${INSTALL_DATA} $? $@
127
128 ${TOP_LIBDIR}/libafsutil.a: util.a
129         ${INSTALL_DATA} $? $@
130
131 ${TOP_LIBDIR}/libafsutil_pic.a: libafsutil_pic.la
132         ${INSTALL_DATA} .libs/libafsutil_pic.a $@
133
134 # Use " as the sed boundary character because we lose anyway if that occurs
135 # in path names.
136 dirpath.h: ${srcdir}/dirpath.hin Makefile
137         sed \
138                 -e 's"@afsconfdir"${afsconfdir}"' \
139                 -e 's"@viceetcdir"${viceetcdir}"' \
140                 -e 's"@afssrvbindir"${afssrvbindir}"' \
141                 -e 's"@afssrvsbindir"${afssrvsbindir}"' \
142                 -e 's"@afssrvlibexecdir"${afssrvlibexecdir}"' \
143                 -e 's"@afsdbdir"${afsdbdir}"' \
144                 -e 's"@afslogsdir"${afslogsdir}"' \
145                 -e 's"@afslocaldir"${afslocaldir}"' \
146                 -e 's"@afsbackupdir"${afsbackupdir}"' \
147                 -e 's"@afsbosconfigdir"${afsbosconfigdir}"' \
148                 -e 's"@afsdatadir"${afsdatadir}"' \
149                 ${srcdir}/dirpath.hin >dirpath.h
150
151
152 $(LT_objs): ${includes}
153
154 sys.o: sys.c AFS_component_version_number.c ${includes}
155
156 sys: sys.o 
157         $(AFS_LDRULE) sys.o
158
159 #
160 # Install targets
161 #
162 KDIR=../libafs/afs
163 UKDIR=../libuafs/afs
164
165 install: dirpath.h util.a sys
166         ${INSTALL} -d ${DESTDIR}${includedir}/afs
167         ${INSTALL} -d ${DESTDIR}${libdir}/afs
168         ${INSTALL} -d ${DESTDIR}${bindir}
169         ${INSTALL_DATA} dirpath.h ${DESTDIR}${includedir}/afs/dirpath.h
170         ${INSTALL_DATA} ${srcdir}/pthread_nosigs.h ${DESTDIR}${includedir}/afs/pthread_nosigs.h
171         ${INSTALL_DATA} ${srcdir}/errors.h ${DESTDIR}${includedir}/afs/errors.h
172         ${INSTALL_DATA} ${srcdir}/vice.h ${DESTDIR}${includedir}/afs/vice.h
173         ${INSTALL_DATA} ${srcdir}/ktime.h ${DESTDIR}${includedir}/afs/ktime.h
174         ${INSTALL_DATA} ${srcdir}/fileutil.h ${DESTDIR}${includedir}/afs/fileutil.h
175         ${INSTALL_DATA} ${srcdir}/afsutil.h ${DESTDIR}${includedir}/afs/afsutil.h
176         ${INSTALL_DATA} ${srcdir}/afsutil_prototypes.h ${DESTDIR}${includedir}/afs/afsutil_prototypes.h
177         ${INSTALL_DATA} ${srcdir}/pthread_glock.h ${DESTDIR}${includedir}/afs/pthread_glock.h
178         ${INSTALL_DATA} ${srcdir}/afs_atomlist.h ${DESTDIR}${includedir}/afs/afs_atomlist.h
179         ${INSTALL_DATA} ${srcdir}/afs_lhash.h ${DESTDIR}${includedir}/afs/afs_lhash.h
180         ${INSTALL_DATA} ${srcdir}/softsig.h ${DESTDIR}${includedir}/afs/softsig.h
181         ${INSTALL_DATA} ${srcdir}/work_queue.h ${DESTDIR}${includedir}/afs/work_queue.h
182         ${INSTALL_DATA} ${srcdir}/work_queue_types.h ${DESTDIR}${includedir}/afs/work_queue_types.h
183         ${INSTALL_DATA} ${srcdir}/thread_pool.h ${DESTDIR}${includedir}/afs/thread_pool.h
184         ${INSTALL_DATA} ${srcdir}/thread_pool_types.h ${DESTDIR}${includedir}/afs/thread_pool_types.h
185         ${INSTALL_DATA} ${srcdir}/tabular_output.h ${DESTDIR}${includedir}/afs/tabular_output.h
186         ${INSTALL_DATA} util.a ${DESTDIR}${libdir}/afs/util.a
187         ${INSTALL_DATA} util.a ${DESTDIR}${libdir}/afs/libafsutil.a
188         ${INSTALL_PROGRAM} sys ${DESTDIR}${bindir}/sys
189
190 dest: dirpath.h util.a sys
191         ${INSTALL} -d ${DEST}/include/afs
192         ${INSTALL} -d ${DEST}/lib/afs
193         ${INSTALL} -d ${DEST}/bin
194         ${INSTALL_DATA} dirpath.h ${DEST}/include/afs/dirpath.h
195         ${INSTALL_DATA} ${srcdir}/pthread_nosigs.h ${DEST}/include/afs/pthread_nosigs.h
196         ${INSTALL_DATA} ${srcdir}/errors.h ${DEST}/include/afs/errors.h
197         ${INSTALL_DATA} ${srcdir}/vice.h ${DEST}/include/afs/vice.h
198         ${INSTALL_DATA} ${srcdir}/ktime.h ${DEST}/include/afs/ktime.h
199         ${INSTALL_DATA} ${srcdir}/fileutil.h ${DEST}/include/afs/fileutil.h
200         ${INSTALL_DATA} ${srcdir}/afsutil.h ${DEST}/include/afs/afsutil.h
201         ${INSTALL_DATA} ${srcdir}/afsutil_prototypes.h ${DEST}/include/afs/afsutil_prototypes.h
202         ${INSTALL_DATA} ${srcdir}/pthread_glock.h ${DEST}/include/afs/pthread_glock.h
203         ${INSTALL_DATA} ${srcdir}/afs_atomlist.h ${DEST}/include/afs/afs_atomlist.h
204         ${INSTALL_DATA} ${srcdir}/afs_lhash.h ${DEST}/include/afs/afs_lhash.h
205         ${INSTALL_DATA} ${srcdir}/softsig.h ${DEST}/include/afs/softsig.h
206         ${INSTALL_DATA} ${srcdir}/work_queue.h ${DEST}/include/afs/work_queue.h
207         ${INSTALL_DATA} ${srcdir}/work_queue_types.h ${DEST}/include/afs/work_queue_types.h
208         ${INSTALL_DATA} ${srcdir}/thread_pool.h ${DEST}/include/afs/thread_pool.h
209         ${INSTALL_DATA} ${srcdir}/thread_pool_types.h ${DEST}/include/afs/thread_pool_types.h
210         ${INSTALL_DATA} ${srcdir}/tabular_output.h ${DEST}/include/afs/tabular_output.h
211         ${INSTALL_DATA} util.a ${DEST}/lib/afs/util.a
212         ${INSTALL_DATA} util.a ${DEST}/lib/afs/libafsutil.a
213         ${INSTALL_PROGRAM} sys ${DEST}/bin/sys
214
215 #
216 # Misc targets
217 #
218
219 clean:
220         $(LT_CLEAN)
221         $(RM) -f sys dirpath.h
222         $(RM) -f util.a *.o core AFS_component_version_number.c
223
224 test:
225         cd test; $(MAKE)
226
227 include ../config/Makefile.version
228
229 check-splint:
230         sh $(HELPER_SPLINT) $(CFLAGS) \
231             base64.c ktime.c volparse.c hostparse.c \
232             hputil.c kreltime.c uuid.c serverLog.c \
233             dirpath.c fileutil.c flipbase64.c \
234             afs_atomlist.c afs_lhash.c fstab.c