Add PIC variant for libuafs
[openafs.git] / src / cmd / 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
17 LIBOBJS=cmd_errors.o cmd.o 
18 LIBPICOBJS=cmd_errors_pic.o cmd_pic.o
19 LIB64OBJS=cmd_errors64.o cmd64.o 
20
21 all: ${TOP_LIBDIR}/libcmd.a ${TOP_LIBDIR}/libcmd_pic.a ${TOP_INCDIR}/afs/cmd.h
22
23 all64: all ${TOP_LIBDIR}/libcmd64.a
24
25 generated: cmd.h cmd_errors.c
26
27 ${TOP_LIBDIR}/libcmd.a: libcmd.a
28         ${INSTALL_DATA} $? $@
29
30 ${TOP_LIBDIR}/libcmd_pic.a: libcmd_pic.a
31         ${INSTALL_DATA} $? $@
32
33 ${TOP_LIBDIR}/libcmd64.a: libcmd64.a
34         ${INSTALL_DATA} $? $@
35
36 ${TOP_INCDIR}/afs/cmd.h: cmd.h
37         ${INSTALL_DATA} $? $@
38
39 cmd.h: cmd_errors.et cmd.p.h
40         $(RM) -f cmd.h cmd_errors.c
41         ${COMPILE_ET} -p ${srcdir} cmd_errors -h cmd
42
43 cmd_errors.c: cmd.h 
44
45 cmd_errors.o: cmd_errors.c
46
47 cmd.o: cmd.c cmd.h
48
49 cmd_errors64.o: cmd_errors.c
50         ${CC} $(COMMON_CFLAGS) $(CPPFLAGS) ${XCFLAGS64} \
51                 -c -o cmd_errors64.o cmd_errors.c
52
53 cmd64.o: cmd.c cmd.h
54         ${CC} $(COMMON_CFLAGS) $(CPPFLAGS) ${XCFLAGS64} \
55                 -c -o cmd64.o ${srcdir}/cmd.c
56
57 CFLAGS_cmd_errors_pic.o = -fPIC
58 cmd_errors_pic.o: cmd_errors.c
59         $(AFS_CCRULE) cmd_errors.c
60
61 CFLAGS_cmd_pic.o = -fPIC
62 cmd_pic.o: cmd.c cmd.h
63         $(AFS_CCRULE) cmd.c
64
65 libcmd64.a: ${LIB64OBJS} AFS_component_version_number64.o
66         -$(RM) -f $@
67         $(AR) crv $@ ${LIB64OBJS} AFS_component_version_number64.o
68         $(RANLIB) $@
69
70 libcmd.a: ${LIBOBJS} AFS_component_version_number.o
71         -$(RM) -f $@
72         $(AR) crv $@ ${LIBOBJS} AFS_component_version_number.o
73         $(RANLIB) $@
74
75 libcmd_pic.a: ${LIBPICOBJS} AFS_component_version_number_pic.o
76         -$(RM) -f $@
77         $(AR) crv $@ ${LIBPICOBJS} AFS_component_version_number_pic.o
78         $(RANLIB) $@
79
80 AFS_component_version_number64.o: AFS_component_version_number.c
81         ${CC} $(COMMON_CFLAGS) $(CPPFLAGS) ${XCFLAGS64} \
82                 -c -o AFS_component_version_number64.o \
83                 AFS_component_version_number.c
84
85 AFS_component_version_number_pic.o: AFS_component_version_number.c
86         ${CC} $(COMMON_CFLAGS) $(CPPFLAGS) -fPIC \
87                 -c -o AFS_component_version_number_pic.o \
88                 AFS_component_version_number.c
89
90 #
91 # Install targets
92 #
93 install: libcmd.a libcmd_pic.a cmd.h
94         ${INSTALL} -d ${DESTDIR}${libdir}/afs
95         ${INSTALL} -d ${DESTDIR}${includedir}/afs
96         ${INSTALL_DATA} libcmd.a ${DESTDIR}${libdir}/afs/libcmd.a
97         ${INSTALL_DATA} libcmd_pic.a ${DESTDIR}${libdir}/afs/libcmd_pic.a
98         ${INSTALL_DATA} cmd.h ${DESTDIR}${includedir}/afs/cmd.h
99
100 install64: install libcmd64.a
101         ${INSTALL_DATA} libcmd64.a ${DESTDIR}${libdir}/afs/libcmd64.a
102
103 dest: libcmd.a cmd.h libcmd_pic.a
104         ${INSTALL} -d ${DEST}/lib/afs
105         ${INSTALL} -d ${DEST}/include/afs
106         ${INSTALL_DATA} libcmd.a ${DEST}/lib/afs/libcmd.a
107         ${INSTALL_DATA} cmd.h ${DEST}/include/afs/cmd.h
108         ${INSTALL_DATA} libcmd_pic.a ${DEST}/lib/afs/libcmd_pic.a
109
110 dest64: dest libcmd64.a
111         ${INSTALL_DATA} libcmd64.a ${DEST}/lib/afs/libcmd64.a
112
113 #
114 # Misc targets
115 #
116 test tests: 
117         (cd test; $(MAKE) )
118
119 clean:
120         $(RM) -f  *.a *.o ctest dtest cmd.h cmd_errors.c core AFS_component_version_number.c
121
122 include ../config/Makefile.version