2 # Copyright 1987 by the Massachusetts Institute of Technology.
4 # For copying and distribution information,
5 # please see the file <mit-cpyright.h>.
7 # Makefile for BSD DES library
9 # First define machine type, compiler, and object file suffix
10 # Could be for VAX or PC-DOS
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).
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).
21 # Make sure these are properly defined for any new machine types.
22 # target machine for run-time code (may cross-compile),
27 TOP_SRCDIR=@TOP_SRCDIR@
28 SYS_NAME=@AFS_SYSNAME@
31 include ../config/Makefile.${SYS_NAME}
33 UKERNELDIR=../libuafs/
60 ${CC} -c -I. -I${SRCDIR}/include -I${TOP_SRCDIR}/config ${XCFLAGS} $<
62 libdes.a: ${OBJS} AFS_component_version_number.o
64 ar r libdes.a ${OBJS} AFS_component_version_number.o
67 make_ip: make_ip.o misc.o main.o
68 ${CC} make_ip.o misc.o main.o ${LDFLAGS} -o make_ip
70 make_fp: make_fp.o misc.o main.o
71 ${CC} make_fp.o misc.o main.o ${LDFLAGS} -o make_fp
73 make_odd: make_odd.o misc.o main.o
74 ${CC} make_odd.o misc.o main.o ${LDFLAGS} -o make_odd
76 make_s_table: make_s_table.o misc.o main.o
77 ${CC} make_s_table.o misc.o main.o ${LDFLAGS} -o make_s_table
79 make_p_table: make_p_table.o misc.o main.o
80 ${CC} make_p_table.o misc.o main.o ${LDFLAGS} -o make_p_table
82 make_keyperm: make_keyperm.o misc.o main.o
83 ${CC} make_keyperm.o misc.o main.o ${LDFLAGS} -o make_keyperm
85 make_e: make_e.o misc.o main.o
86 ${CC} make_e.o misc.o main.o ${LDFLAGS} -o make_e
88 make_p: make_p.o misc.o main.o
89 ${CC} make_p.o misc.o main.o ${LDFLAGS} -o make_p
91 make_s: make_s.o misc.o main.o
92 ${CC} make_s.o misc.o main.o ${LDFLAGS} -o make_s
95 # Table/code generation targets
100 s_table.h: make_s_table
101 ./make_s_table s_table.h
103 p_table.h: make_p_table
104 ./make_p_table p_table.h
106 key_perm.h: make_keyperm
107 ./make_keyperm key_perm.h
124 INCLS=des.h mit-cpyright.h des_conf.h des_internal.h conf.h
126 make_keyperm.o: make_keyperm.c ${INCLS}
127 make_ip.o: make_ip.c tables.h ${INCLS}
128 make_fp.o: make_fp.c tables.h ${INCLS}
129 make_p.o: make_p.c tables.h ${INCLS}
130 make_s.o: make_s.c s_table.h ${INCLS}
131 make_s_table.o: make_s_table.c tables.h ${INCLS}
132 make_p_table.o: make_p_table.c tables.h ${INCLS}
133 make_odd.o: make_odd.c ${INCLS}
134 misc.o: misc.c AFS_component_version_number.c ${INCLS}
135 main.o: main.c AFS_component_version_number.c ${INCLS}
136 key_sched.o: key_sched.c key_perm.h odd.h ${INCLS}
137 key_test.o: key_test.c ${INCLS}
138 testit.o: testit.c ${INCLS}
139 des.o: s_table.h p_table.h ip.c p.c fp.c ${INCLS}
140 cbc_encrypt.o: cbc_encrypt.c ${INCLS}
141 verify.o: verify.c ${INCLS}
142 read_pssword.o: read_pssword.c ${INCLS}
143 pcbc_encrypt.o: pcbc_encrypt.c ${INCLS}
144 cksum.o: cksum.c ${INCLS}
145 quad_cksum.o: quad_cksum.c ${INCLS}
146 key_parity.o: key_parity.c odd.h ${INCLS}
147 weak_key.o: weak_key.c ${INCLS}
148 new_rnd_key.o: new_rnd_key.c ${INCLS}
149 util.o: util.c ${INCLS}
150 strng_to_key.o: strng_to_key.c ${INCLS}
151 debug_decl.o: debug_decl.c ${INCLS}
152 make_e.o: make_e.c ${INCLS}
158 ${DESTDIR}/lib/libdes.a \
159 ${DESTDIR}/include/des.h \
160 ${DESTDIR}/include/des_conf.h \
161 ${DESTDIR}/include/mit-cpyright.h \
162 ${DESTDIR}/include/des_odd.h
164 ${DESTDIR}/lib/libdes.a: libdes.a
167 ${DESTDIR}/include/des.h: des.h
170 ${DESTDIR}/include/des_conf.h: des_conf.h
173 ${DESTDIR}/include/mit-cpyright.h: mit-cpyright.h
176 ${DESTDIR}/include/des_odd.h: odd.h
180 ${UKERNELDIR}/des/libdes.a \
181 ${UKERNELDIR}/des/des.h \
182 ${UKERNELDIR}/des/mit-cpyright.h
187 ${UKERNELDIR}/des/libdes.a: libdes.a
190 ${UKERNELDIR}/des/des.h: des.h
193 ${UKERNELDIR}/des/mit-cpyright.h: mit-cpyright.h
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
209 include ../config/Makefile.version