tests: Avoid WTERMSIG($?) in rx/perf-t
[openafs.git] / src / sys / 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 # Portions Copyright (c) 2003 Apple Computer, Inc.
9
10 srcdir=@srcdir@
11 include @TOP_OBJDIR@/src/config/Makefile.config
12 include @TOP_OBJDIR@/src/config/Makefile.lwp
13 include @TOP_OBJDIR@/src/config/Makefile.lwptool
14
15 SFLAGS=-I${TOP_INCDIR}
16 LIBS=libsys.a \
17      ${TOP_LIBDIR}/librx.a \
18      libsys.a \
19      ${TOP_LIBDIR}/liblwp.a \
20      $(TOP_LIBDIR)/libafsutil.a \
21      ${TOP_LIBDIR}/libopr.a \
22      ${TOP_LIBDIR}/libafshcrypto_lwp.a \
23      ${XLIBS}
24
25 LT_objs = afssyscalls.lo setpag.lo pioctl.lo glue.lo \
26          rmtsysnet.lo rmtsysc.lo rmtsys.cs.lo rmtsys.xdr.lo rmtsys.ss.lo \
27          rmtsyss.lo
28 LT_deps = $(top_builddir)/src/rx/liboafs_rx.la
29
30 all: \
31     liboafs_sys.la \
32     libafsrpc_sys.la \
33     libsys_pic.la \
34     rmtsysd \
35     ${TOP_INCDIR}/afs/afssyscalls.h \
36     ${TOP_INCDIR}/afs/afs.exp \
37     ${TOP_INCDIR}/afs/xfsattrs.h \
38     ${TOP_INCDIR}/afs/sys_prototypes.h \
39     ${TOP_LIBDIR}/afs.exp \
40     ${TOP_LIBDIR}/libsys.a \
41     ${KERNELDIR}/afs/xfsattrs.h \
42     ${UKERNELDIR}/afs/afsl.exp
43
44 generated: \
45         rmtsys.cs.c rmtsys.ss.c rmtsys.xdr.c rmtsys.h \
46         Krmtsys.cs.c Krmtsys.xdr.c Krmtsys.h
47
48 ${TOP_INCDIR}/afs/afssyscalls.h: afssyscalls.h
49         ${INSTALL_DATA} $? $@
50
51 ${TOP_INCDIR}/afs/rmtsys.h: rmtsys.h
52         ${INSTALL_DATA} $? $@
53
54 ${TOP_INCDIR}/afs/afs.exp: afs.exp
55         @set -x; case ${SYS_NAME} in \
56                 rs_aix* ) \
57                         ${INSTALL_DATA} $? $@ ;; \
58         esac
59
60 ${TOP_LIBDIR}/afs.exp: afs.exp
61         @set -x; case ${SYS_NAME} in \
62                 rs_aix* ) \
63                         ${INSTALL_DATA} $? $@ ;; \
64         esac
65
66 ${TOP_INCDIR}/afs/xfsattrs.h: xfsattrs.h
67         ${INSTALL_DATA} $? $@
68
69 ${TOP_INCDIR}/afs/sys_prototypes.h: sys_prototypes.h
70         ${INSTALL_DATA} $? $@
71
72 ${TOP_LIBDIR}/libsys.a: libsys.a
73         ${INSTALL_DATA} $? $@
74
75 ${UKERNELDIR}/afs/afsl.exp: afsl.exp
76         ${INSTALL} -d ${UKERNELDIR}/afs
77         @set -x; case ${SYS_NAME} in \
78                 rs_aix* ) \
79                         ${INSTALL_DATA} $? $@ ;; \
80         esac
81
82 ${KERNELDIR}/afs/xfsattrs.h: xfsattrs.h
83         ${INSTALL} -d ${KERNELDIR}/afs
84         ${INSTALL_DATA} $? $@
85
86 depinstall: \
87         ${TOP_INCDIR}/afs/afssyscalls.h \
88         ${TOP_INCDIR}/afs/rmtsys.h \
89         ${TOP_INCDIR}/afs/afs.exp \
90         ${TOP_INCDIR}/afs/xfsattrs.h \
91         ${TOP_INCDIR}/afs/sys_prototypes.h \
92         ${TOP_LIBDIR}/afs.exp \
93         ${KERNELDIR}/afs/xfsattrs.h \
94         ${UKERNELDIR}/afs/afsl.exp \
95         Krmtsys.cs.c Krmtsys.h Krmtsys.xdr.c rmtsys.h
96
97 libsys.a: $(LT_objs) afsl.exp syscall.lo
98         @set -e; set -x; case "$(SYS_NAME)" in \
99         rs_aix*) \
100             $(LT_LDLIB_lwp_NOQ) $(LT_objs) syscall.o afsl.exp ;; \
101         *) \
102             $(LT_LDLIB_lwp_NOQ) $(LT_objs) syscall.o ;; \
103         esac
104
105 # On AIX, liboafs_sys uses lsetpag() and lpioctl() which are syscall stubs,
106 # we need to include afsl.exp in order to link against them
107 liboafs_sys.la: liboafs_sys.la.sym $(LT_objs) $(LT_deps) afsl.exp
108         @set -e; set -x; case "$(SYS_NAME)" in \
109         rs_aix*) \
110             $(LT_LDLIB_shlib) -Wl,-bI:afsl.exp $(LT_objs) $(LT_deps) ;\
111             $(AR) crv .libs/liboafs_sys.a ../sys/afsl.exp ;; \
112         *) \
113             $(LT_LDLIB_shlib) $(LT_objs) $(LT_deps) ;; \
114         esac
115
116 libafsrpc_sys.la: syscall.lo
117         $(LT_LDLIB_pic) syscall.lo
118
119 libsys_pic.la: $(LT_objs)
120         $(LT_LDLIB_pic) $(LT_objs)
121
122 tests:  fixit iinc idec icreate iopen istat rmtsysd
123
124 syscall.lo: syscall.s
125         @set -e; set -x; case "$(SYS_NAME)" in \
126         sgi_*) \
127                 ${CC} ${AFS_CFLAGS} -c ${srcdir}/syscall.s; \
128                 ;; \
129         rs_aix* | hp_ux10*) \
130                 $(PATH_CPP) -P ${SFLAGS} ${srcdir}/syscall.s > syscall.ss; \
131                 as -o syscall.o syscall.ss; \
132                 $(RM) syscall.ss; \
133                 ;; \
134         *) \
135                 touch syscall.c ; \
136                 $(CC) $(AFS_CFLAGS) -c syscall.c -o syscall.o; \
137                 ;; \
138         esac
139         rm -f $@
140         echo "# Generated by libtool (GNU libtool) 0.0.0" > $@
141         echo "pic_object='syscall.o'" >> $@
142         echo "non_pic_object='syscall.o'" >> $@
143
144 afssyscalls.lo: afssyscalls.c afssyscalls.h
145 glue.lo: glue.c afssyscalls.h
146 setpag.lo: setpag.c afssyscalls.h
147 pioctl.lo: pioctl.c afssyscalls.h
148
149 rmtsysnet.lo rmtsysc.lo rmtsyss.lo rmtsysd.lo: rmtsys.h
150 rmtsysd: AFS_component_version_number.o afs.exp afsl.exp
151
152 rmtsys.cs.c: rmtsys.xg
153         ${RXGEN} -A -C -o $@ ${srcdir}/rmtsys.xg
154
155 rmtsys.ss.c: rmtsys.xg
156         ${RXGEN} -A -S -o $@ ${srcdir}/rmtsys.xg
157
158 rmtsys.xdr.c: rmtsys.xg
159         ${RXGEN} -A -c -o $@ ${srcdir}/rmtsys.xg
160
161 rmtsys.h: rmtsys.xg
162         ${RXGEN} -A -h -o $@ ${srcdir}/rmtsys.xg
163
164 Krmtsys.cs.c: rmtsys.xg Krmtsys.h
165         ${RXGEN} -A -k -C -o Krmtsys.cs.c ${srcdir}/rmtsys.xg
166
167 Krmtsys.xdr.c: rmtsys.xg
168         ${RXGEN} -A -k -c -o Krmtsys.xdr.c ${srcdir}/rmtsys.xg
169
170 Krmtsys.h: rmtsys.xg
171         ${RXGEN} -A -k -h -o Krmtsys.h ${srcdir}/rmtsys.xg
172
173 rmtsysd: rmtsysd.o libsys.a
174         $(AFS_LDRULE) rmtsysd.o ${LIBS} $(LIB_roken)
175
176
177
178 #
179 # Test programs.
180 #
181
182 iinc:   iinc.c
183         $(CC) -o iinc $(AFS_CFLAGS) ${srcdir}/iinc.c ${LIBS}
184
185 idec:   idec.c  AFS_component_version_number.c
186         $(CC) -o idec $(AFS_CFLAGS) ${srcdir}/idec.c ${LIBS}
187
188 icreate:icreate.c  AFS_component_version_number.c
189         $(CC) -o icreate $(AFS_CFLAGS) ${srcdir}/icreate.c ${LIBS}
190
191 iopen:  iopen.c  AFS_component_version_number.c
192         $(CC) -o iopen $(AFS_CFLAGS) ${srcdir}/iopen.c ${LIBS}
193
194 iread:  iread.c  AFS_component_version_number.c
195         ${CC} -o iread $(AFS_CFLAGS) ${srcdir}/iread.c ${LIBS}
196
197 iwrite: iwrite.c  AFS_component_version_number.c
198         ${CC} -o iwrite $(AFS_CFLAGS) ${srcdir}/iwrite.c ${LIBS}
199
200 istat:  istat.c  AFS_component_version_number.c
201         $(CC) -o istat $(AFS_CFLAGS) ${srcdir}/istat.c ${LIBS}
202
203 fixit:  fixit.c AFS_component_version_number.c
204         $(CC) -o fixit $(AFS_CFLAGS) ${srcdir}/fixit.c ${LIBS}
205
206
207 xfsinode: xfsinode.c  AFS_component_version_number.c
208         @set -x; case "${SYS_NAME}" in \
209                 sgi_62 | sgi_64 ) \
210                 $(CC) -o xfsinode $(AFS_CFLAGS) ${srcdir}/xfsinode.c ${LIBS}
211         esac
212
213 afs.exp: ${srcdir}/afs4.exp ${srcdir}/afs5.exp
214         @set -x; case ${SYS_NAME} in \
215                 rs_aix[56]* ) \
216                         cp -p ${srcdir}/afs5.exp afs.exp ;; \
217                 rs_aix* ) \
218                         cp -p ${srcdir}/afs4.exp afs.exp ;; \
219                 * ) \
220                         touch afs.exp ;; \
221         esac
222
223 afsl.exp: ${srcdir}/afsl4.exp ${srcdir}/afsl5.exp
224         @set -x; case ${SYS_NAME} in \
225                 rs_aix[56]* ) \
226                         cp -p ${srcdir}/afsl5.exp afsl.exp ;; \
227                 rs_aix* ) \
228                         cp -p ${srcdir}/afsl4.exp afsl.exp ;; \
229                 * ) \
230                         touch afsl.exp ;; \
231         esac
232
233 #
234 # Installation targets
235 #
236 install: libsys.a rmtsysd afssyscalls.h afs.exp xfsattrs.h
237         ${INSTALL} -d ${DESTDIR}${libdir}/afs
238         ${INSTALL} -d ${DESTDIR}${sbindir}
239         ${INSTALL} -d ${DESTDIR}${includedir}/afs
240         ${INSTALL_DATA} libsys.a ${DESTDIR}${libdir}/afs/libsys.a
241         ${INSTALL_PROGRAM} rmtsysd ${DESTDIR}${sbindir}/rmtsysd
242         ${INSTALL_DATA} ${srcdir}/afssyscalls.h ${DESTDIR}${includedir}/afs/afssyscalls.h
243         ${INSTALL_DATA} ${srcdir}/xfsattrs.h ${DESTDIR}${includedir}/afs/xfsattrs.h
244         @set -x; case ${SYS_NAME} in \
245         rs_aix*) \
246                 ${INSTALL_DATA} afs.exp ${DESTDIR}${includedir}/afs/afs.exp;; \
247         esac
248
249 dest: libsys.a rmtsysd afssyscalls.h afs.exp xfsattrs.h
250         ${INSTALL} -d ${DEST}/lib/afs
251         ${INSTALL} -d ${DEST}/etc
252         ${INSTALL} -d ${DEST}/bin
253         ${INSTALL} -d ${DEST}/include/afs
254         ${INSTALL_DATA} libsys.a ${DEST}/lib/afs/libsys.a
255         ${INSTALL_PROGRAM} rmtsysd ${DEST}/etc/rmtsysd
256         ${INSTALL_DATA} ${srcdir}/afssyscalls.h ${DEST}/include/afs/afssyscalls.h
257         ${INSTALL_DATA} ${srcdir}/xfsattrs.h ${DEST}/include/afs/xfsattrs.h
258         @set -x; case ${SYS_NAME} in \
259         rs_aix*) \
260                 ${INSTALL_DATA} afs.exp ${DEST}/include/afs/afs.exp ;; \
261         esac
262
263 #
264 # Misc targets
265 #
266 include ../config/Makefile.version
267
268 clean:
269         $(LT_CLEAN)
270         $(RM) -f *.o libsys.a xfsinode iinc idec icreate iopen istat core \
271         rmtsysc rmtsyss *.o rmtsys.ss.c rmtsys.cs.c rmtsys.xdr.c rmtsys.h \
272         rmtsysd AFS_component_version_number.c syscall.c \
273         afs.exp afsl.exp libafssetpag.* Krmtsys.cs.c Krmtsys.h Krmtsys.xdr.c