Unify x86 perlasm make rules.
[openssl.git] / crypto / bf / Makefile
1 #
2 # OpenSSL/crypto/blowfish/Makefile
3 #
4
5 DIR=    bf
6 TOP=    ../..
7 CC=     cc
8 CPP=    $(CC) -E
9 INCLUDES=
10 CFLAG=-g
11 MAKEFILE=       Makefile
12 AR=             ar r
13
14 BF_ENC=         bf_enc.o
15 # or use
16 #DES_ENC=       bx86-elf.o
17
18 CFLAGS= $(INCLUDES) $(CFLAG)
19 ASFLAGS= $(INCLUDES) $(ASFLAG)
20 AFLAGS= $(ASFLAGS)
21
22 GENERAL=Makefile
23 TEST=bftest.c
24 APPS=
25
26 LIB=$(TOP)/libcrypto.a
27 LIBSRC=bf_skey.c bf_ecb.c bf_enc.c bf_cfb64.c bf_ofb64.c 
28 LIBOBJ=bf_skey.o bf_ecb.o $(BF_ENC) bf_cfb64.o bf_ofb64.o
29
30 SRC= $(LIBSRC)
31
32 EXHEADER= blowfish.h
33 HEADER= bf_pi.h bf_locl.h $(EXHEADER)
34
35 ALL=    $(GENERAL) $(SRC) $(HEADER)
36
37 top:
38         (cd ../..; $(MAKE) DIRS=crypto SDIRS=$(DIR) sub_all)
39
40 all:    lib
41
42 lib:    $(LIBOBJ)
43         $(AR) $(LIB) $(LIBOBJ)
44         $(RANLIB) $(LIB) || echo Never mind.
45         @touch lib
46
47 bf-586.s:       asm/bf-586.pl ../perlasm/x86asm.pl ../perlasm/cbc.pl
48         $(PERL) asm/bf-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
49
50 files:
51         $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
52
53 links:
54         @$(PERL) $(TOP)/util/mklink.pl ../../include/openssl $(EXHEADER)
55         @$(PERL) $(TOP)/util/mklink.pl ../../test $(TEST)
56         @$(PERL) $(TOP)/util/mklink.pl ../../apps $(APPS)
57
58 # We need to use force because 'install' matches 'INSTALL' on case
59 # insensitive systems
60 FRC.install:
61 install: FRC.install
62         @[ -n "$(INSTALLTOP)" ] # should be set by top Makefile...
63         @headerlist="$(EXHEADER)"; for i in $$headerlist ; \
64         do  \
65         (cp $$i $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i; \
66         chmod 644 $(INSTALL_PREFIX)$(INSTALLTOP)/include/openssl/$$i ); \
67         done;
68
69 tags:
70         ctags $(SRC)
71
72 tests:
73
74 lint:
75         lint -DLINT $(INCLUDES) $(SRC)>fluff
76
77 depend:
78         @[ -n "$(MAKEDEPEND)" ] # should be set by upper Makefile...
79         $(MAKEDEPEND) -- $(CFLAG) $(INCLUDES) $(DEPFLAG) -- $(PROGS) $(LIBSRC)
80
81 dclean:
82         $(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
83         mv -f Makefile.new $(MAKEFILE)
84
85 clean:
86         rm -f *.s *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
87
88 # DO NOT DELETE THIS LINE -- make depend depends on it.
89
90 bf_cfb64.o: ../../include/openssl/blowfish.h ../../include/openssl/e_os2.h
91 bf_cfb64.o: ../../include/openssl/opensslconf.h bf_cfb64.c bf_locl.h
92 bf_ecb.o: ../../include/openssl/blowfish.h ../../include/openssl/e_os2.h
93 bf_ecb.o: ../../include/openssl/opensslconf.h ../../include/openssl/opensslv.h
94 bf_ecb.o: bf_ecb.c bf_locl.h
95 bf_enc.o: ../../include/openssl/blowfish.h ../../include/openssl/e_os2.h
96 bf_enc.o: ../../include/openssl/opensslconf.h bf_enc.c bf_locl.h
97 bf_ofb64.o: ../../include/openssl/blowfish.h ../../include/openssl/e_os2.h
98 bf_ofb64.o: ../../include/openssl/opensslconf.h bf_locl.h bf_ofb64.c
99 bf_skey.o: ../../include/openssl/blowfish.h ../../include/openssl/e_os2.h
100 bf_skey.o: ../../include/openssl/opensslconf.h bf_locl.h bf_pi.h bf_skey.c