ebacfddb3e7e0217a21bbe5c4e8482d19810d9f5
[openafs.git] / src / des / Makefile.in
1 #
2 # Copyright 1987 by the Massachusetts Institute of Technology.
3 #
4 # For copying and distribution information,
5 # please see the file <mit-cpyright.h>.
6 #
7 # Makefile for BSD DES library
8 #
9 # First define machine type, compiler, and object file suffix
10 # Could be for VAX or PC-DOS
11 #
12 # Some of these files are cross compiled on the vax for the pc8086,
13 # using the MIT LCS cross-compilation environment
14 # Others are always executed on the vax(host).
15 #
16 # A machine, e.g. Vax, pc8086, IBM experimental workstation, is 
17 # described in terms of defines for its word length
18 # (BITS32 or BITS16), byte ordering (LSBFIRST or MSBFIRST) and 
19 # operating system (BSDUNIX or CROSSMSDOS).
20 #
21 # Make sure these are properly defined for any new machine types.
22 # target machine for run-time code (may cross-compile),
23 # override as needed 
24
25 srcdir=@srcdir@
26 include @TOP_OBJDIR@/src/config/Makefile.config
27
28 OBJS = \
29         des.o \
30         cbc_encrypt.o \
31         pcbc_encrypt.o \
32         cksum.o \
33         new_rnd_key.o \
34         key_sched.o \
35         debug_decl.o \
36         quad_cksum.o \
37         key_parity.o \
38         weak_key.o \
39         read_pssword.o \
40         strng_to_key.o \
41         misc.o \
42         crypt.o \
43         util.o
44
45 all: \
46         ${TOP_LIBDIR}/libdes.a \
47         ${TOP_INCDIR}/des.h \
48         ${TOP_INCDIR}/des_prototypes.h \
49         ${TOP_INCDIR}/des_conf.h \
50         ${TOP_INCDIR}/mit-cpyright.h \
51         ${TOP_INCDIR}/des_odd.h
52
53 ${TOP_LIBDIR}/libdes.a: libdes.a
54         ${INSTALL_DATA} $? $@
55
56 ${TOP_INCDIR}/des.h: des.h
57         ${INSTALL_DATA} $? $@
58
59 ${TOP_INCDIR}/des_prototypes.h: des_prototypes.h
60         ${INSTALL_DATA} $? $@
61
62 ${TOP_INCDIR}/des_conf.h: des_conf.h
63         ${INSTALL_DATA} $? $@
64
65 ${TOP_INCDIR}/mit-cpyright.h: mit-cpyright.h
66         ${INSTALL_DATA} $? $@
67
68 ${TOP_INCDIR}/des_odd.h: odd.h
69         ${INSTALL_DATA} $? $@
70
71 #
72 # Build rules
73 #
74 libdes.a: ${OBJS} AFS_component_version_number.o
75         $(RM) -f libdes.a
76         $(AR) crv libdes.a ${OBJS} AFS_component_version_number.o
77         $(RANLIB) libdes.a
78
79 make_ip: make_ip.o misc.o main.o
80         ${CC} make_ip.o misc.o main.o ${LDFLAGS} -o make_ip
81
82 make_fp: make_fp.o misc.o main.o
83         ${CC} make_fp.o misc.o main.o ${LDFLAGS} -o make_fp
84
85 make_odd: make_odd.o misc.o main.o
86         ${CC} make_odd.o misc.o main.o ${LDFLAGS} -o make_odd
87
88 make_s_table: make_s_table.o misc.o main.o 
89         ${CC} make_s_table.o misc.o main.o ${LDFLAGS} -o make_s_table
90
91 make_p_table: make_p_table.o misc.o main.o 
92         ${CC} make_p_table.o misc.o main.o ${LDFLAGS} -o make_p_table
93
94 make_keyperm: make_keyperm.o misc.o main.o 
95         ${CC} make_keyperm.o misc.o main.o ${LDFLAGS} -o make_keyperm
96
97 make_e: make_e.o misc.o main.o 
98         ${CC} make_e.o misc.o main.o ${LDFLAGS} -o make_e
99
100 make_p: make_p.o misc.o main.o 
101         ${CC} make_p.o misc.o main.o ${LDFLAGS} -o make_p
102
103 make_s: make_s.o misc.o main.o 
104         ${CC} make_s.o misc.o main.o ${LDFLAGS} -o make_s
105
106 crypt.o: ${srcdir}/crypt.c
107         case ${SYS_NAME} in \
108         rs_aix*)\
109                 ${CCOBJ} -c ${COMMON_INCL} -o crypt.o ${srcdir}/crypt.c ;;\
110         *)\
111                 ${CCOBJ} -c ${CFLAGS} -o crypt.o ${srcdir}/crypt.c ;;\
112         esac
113 #
114 # Table/code generation targets
115 #
116 odd.h: make_odd
117         ./make_odd odd.h
118
119 s_table.h: make_s_table
120         ./make_s_table s_table.h
121
122 p_table.h: make_p_table
123         ./make_p_table p_table.h
124
125 key_perm.h: make_keyperm
126         ./make_keyperm key_perm.h
127
128 ip.c: make_ip
129         ./make_ip ip.c
130
131 p.c: make_p
132         ./make_p p.c
133
134 s.c: make_s
135         ./make_s s.c
136
137 fp.c: make_fp
138         ./make_fp fp.c
139
140 #
141 # Dependency rules
142 #
143 INCLS=des.h des_prototypes.h mit-cpyright.h des_conf.h des_internal.h conf.h
144
145 make_keyperm.o: make_keyperm.c ${INCLS}
146 make_ip.o: make_ip.c tables.h ${INCLS}
147 make_fp.o: make_fp.c tables.h ${INCLS}
148 make_p.o: make_p.c tables.h ${INCLS}
149 make_s.o: make_s.c s_table.h ${INCLS}
150 make_s_table.o: make_s_table.c tables.h ${INCLS}
151 make_p_table.o: make_p_table.c tables.h ${INCLS}
152 make_odd.o: make_odd.c ${INCLS}
153 misc.o: misc.c AFS_component_version_number.c ${INCLS}
154 main.o: main.c AFS_component_version_number.c ${INCLS}
155 key_sched.o: key_sched.c key_perm.h odd.h ${INCLS}
156 key_test.o: key_test.c ${INCLS}
157 testit.o: testit.c ${INCLS}
158 des.o: s_table.h p_table.h ip.c p.c fp.c ${INCLS}
159 cbc_encrypt.o: cbc_encrypt.c ${INCLS}
160 verify.o: verify.c ${INCLS}
161 read_pssword.o: read_pssword.c ${INCLS}
162 pcbc_encrypt.o: pcbc_encrypt.c ${INCLS}
163 cksum.o: cksum.c ${INCLS}
164 quad_cksum.o: quad_cksum.c ${INCLS}
165 key_parity.o: key_parity.c odd.h ${INCLS}
166 weak_key.o: weak_key.c ${INCLS}
167 new_rnd_key.o: new_rnd_key.c ${INCLS}
168 util.o: util.c ${INCLS}
169 strng_to_key.o: strng_to_key.c ${INCLS}
170 debug_decl.o: debug_decl.c ${INCLS}
171 make_e.o: make_e.c ${INCLS}
172
173 #
174 # Install targets
175 #
176 install: libdes.a des.h des_prototypes.h des_conf.h mit-cpyright.h odd.h
177         ${INSTALL} -d ${DESTDIR}${libdir}
178         ${INSTALL} -d ${DESTDIR}${includedir}
179         ${INSTALL_DATA} libdes.a ${DESTDIR}${libdir}/libdes.a
180         ${INSTALL_DATA} des.h ${DESTDIR}${includedir}/des.h
181         ${INSTALL_DATA} des_prototypes.h ${DESTDIR}${includedir}/des_prototypes.h
182         ${INSTALL_DATA} des_conf.h ${DESTDIR}${includedir}/des_conf.h
183         ${INSTALL_DATA} mit-cpyright.h ${DESTDIR}${includedir}/mit-cpyright.h
184         ${INSTALL_DATA} odd.h ${DESTDIR}${includedir}/des_odd.h
185
186 dest: libdes.a des.h des_prototypes.h des_conf.h mit-cpyright.h odd.h
187         ${INSTALL} -d ${DEST}/lib
188         ${INSTALL} -d ${DEST}/include
189         ${INSTALL_DATA} libdes.a ${DEST}/lib/libdes.a
190         ${INSTALL_DATA} des.h ${DEST}/include/des.h
191         ${INSTALL_DATA} des_prototypes.h ${DEST}/include/des_prototypes.h
192         ${INSTALL_DATA} des_conf.h ${DEST}/include/des_conf.h
193         ${INSTALL_DATA} mit-cpyright.h ${DEST}/include/mit-cpyright.h
194         ${INSTALL_DATA} odd.h ${DEST}/include/des_odd.h
195
196 #
197 # Misc. targets
198 #
199 test: libdes.a
200         cd test; $(MAKE)
201
202 clean:
203         $(RM) -f *.a *.s *.o *.b core *~ *.com *.ld
204         $(RM) -f make_fp make_ip make_keyperm make_odd make_p \
205                 make_p_table make_s_table key_perm.h p_table.h \
206                 s_table.h odd.h p.c s.c fp.c ip.c AFS_component_version_number.c
207         cd test; $(MAKE) clean
208
209 include ../config/Makefile.version