Move Makefiles to Makefile.in
[openssl.git] / crypto / bn / Makefile.in
1 #
2 # OpenSSL/crypto/bn/Makefile
3 #
4
5 DIR=    bn
6 TOP=    ../..
7 CC=     cc
8 CPP=    $(CC) -E
9 INCLUDES= -I.. -I$(TOP) -I../include -I../../include
10 CFLAG=-g
11 MAKEFILE=       Makefile
12 AR=             ar r
13
14 BN_ASM=         bn_asm.o
15
16 CFLAGS= $(INCLUDES) $(CFLAG)
17 ASFLAGS= $(INCLUDES) $(ASFLAG)
18 AFLAGS= $(ASFLAGS)
19
20 GENERAL=Makefile
21
22 LIB=$(TOP)/libcrypto.a
23 LIBSRC= bn_add.c bn_div.c bn_exp.c bn_lib.c bn_ctx.c bn_mul.c bn_mod.c \
24         bn_print.c bn_rand.c bn_shift.c bn_word.c bn_blind.c \
25         bn_kron.c bn_sqrt.c bn_gcd.c bn_prime.c bn_err.c bn_sqr.c bn_asm.c \
26         bn_recp.c bn_mont.c bn_mpi.c bn_exp2.c bn_gf2m.c bn_nist.c \
27         bn_depr.c bn_const.c bn_x931p.c bn_intern.c bn_dh.c bn_srp.c
28
29 LIBOBJ= bn_add.o bn_div.o bn_exp.o bn_lib.o bn_ctx.o bn_mul.o bn_mod.o \
30         bn_print.o bn_rand.o bn_shift.o bn_word.o bn_blind.o \
31         bn_kron.o bn_sqrt.o bn_gcd.o bn_prime.o bn_err.o bn_sqr.o $(BN_ASM) \
32         bn_recp.o bn_mont.o bn_mpi.o bn_exp2.o bn_gf2m.o bn_nist.o \
33         bn_depr.o bn_const.o bn_x931p.o bn_intern.o bn_dh.o bn_srp.o
34
35 SRC= $(LIBSRC)
36
37 HEADER= bn_lcl.h bn_prime.h
38
39 ALL=    $(GENERAL) $(SRC) $(HEADER)
40
41 top:
42         (cd ../..; $(MAKE) DIRS=crypto SDIRS=$(DIR) sub_all)
43
44 all:    lib
45
46 bn_prime.h: bn_prime.pl
47         $(PERL) bn_prime.pl >bn_prime.h
48
49 divtest: divtest.c ../../libcrypto.a
50         cc -I../../include divtest.c -o divtest ../../libcrypto.a
51
52 bnbug: bnbug.c ../../libcrypto.a top
53         cc -g -I../../include bnbug.c -o bnbug ../../libcrypto.a
54
55 lib:    $(LIBOBJ)
56         $(AR) $(LIB) $(LIBOBJ)
57         $(RANLIB) $(LIB) || echo Never mind.
58         @touch lib
59
60 bn-586.s:       asm/bn-586.pl ../perlasm/x86asm.pl
61         $(PERL) asm/bn-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
62 co-586.s:       asm/co-586.pl ../perlasm/x86asm.pl
63         $(PERL) asm/co-586.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
64 x86-mont.s:     asm/x86-mont.pl ../perlasm/x86asm.pl
65         $(PERL) asm/x86-mont.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
66 x86-gf2m.s:     asm/x86-gf2m.pl ../perlasm/x86asm.pl
67         $(PERL) asm/x86-gf2m.pl $(PERLASM_SCHEME) $(CFLAGS) $(PROCESSOR) > $@
68
69 sparcv8.o:      asm/sparcv8.S
70         $(CC) $(CFLAGS) -c asm/sparcv8.S
71 bn-sparcv9.o:   asm/sparcv8plus.S
72         $(CC) $(CFLAGS) -c -o $@ asm/sparcv8plus.S
73 sparcv9a-mont.s:        asm/sparcv9a-mont.pl
74         $(PERL) asm/sparcv9a-mont.pl $(CFLAGS) > $@
75 sparcv9-mont.s:         asm/sparcv9-mont.pl
76         $(PERL) asm/sparcv9-mont.pl $(CFLAGS) > $@
77 vis3-mont.s:            asm/vis3-mont.pl
78         $(PERL) asm/vis3-mont.pl $(CFLAGS) > $@
79 sparct4-mont.S: asm/sparct4-mont.pl
80         $(PERL) asm/sparct4-mont.pl $(CFLAGS) > $@
81 sparcv9-gf2m.S: asm/sparcv9-gf2m.pl
82         $(PERL) asm/sparcv9-gf2m.pl $(CFLAGS) > $@
83
84 bn-mips3.o:     asm/mips3.s
85         @if [ "$(CC)" = "gcc" ]; then \
86                 ABI=`expr "$(CFLAGS)" : ".*-mabi=\([n3264]*\)"` && \
87                 as -$$ABI -O -o $@ asm/mips3.s; \
88         else    $(CC) -c $(CFLAGS) -o $@ asm/mips3.s; fi
89
90 bn-mips.s:      asm/mips.pl
91         $(PERL) asm/mips.pl $(PERLASM_SCHEME) $@
92 mips-mont.s:    asm/mips-mont.pl
93         $(PERL) asm/mips-mont.pl $(PERLASM_SCHEME) $@
94
95 bn-s390x.o:     asm/s390x.S
96         $(CC) $(CFLAGS) -c -o $@ asm/s390x.S
97 s390x-gf2m.s:   asm/s390x-gf2m.pl
98         $(PERL) asm/s390x-gf2m.pl $(PERLASM_SCHEME) $@
99
100 x86_64-gcc.o:   asm/x86_64-gcc.c
101         $(CC) $(CFLAGS) -c -o $@ asm/x86_64-gcc.c
102 x86_64-mont.s:  asm/x86_64-mont.pl
103         $(PERL) asm/x86_64-mont.pl $(PERLASM_SCHEME) > $@
104 x86_64-mont5.s: asm/x86_64-mont5.pl
105         $(PERL) asm/x86_64-mont5.pl $(PERLASM_SCHEME) > $@
106 x86_64-gf2m.s:  asm/x86_64-gf2m.pl
107         $(PERL) asm/x86_64-gf2m.pl $(PERLASM_SCHEME) > $@
108 rsaz-x86_64.s:  asm/rsaz-x86_64.pl
109         $(PERL) asm/rsaz-x86_64.pl $(PERLASM_SCHEME) > $@
110 rsaz-avx2.s:    asm/rsaz-avx2.pl 
111         $(PERL) asm/rsaz-avx2.pl $(PERLASM_SCHEME) > $@
112
113 bn-ia64.s:      asm/ia64.S
114         $(CC) $(CFLAGS) -E asm/ia64.S > $@
115 ia64-mont.s:    asm/ia64-mont.pl
116         $(PERL) asm/ia64-mont.pl $@ $(CFLAGS)
117
118 # GNU assembler fails to compile PA-RISC2 modules, insist on calling
119 # vendor assembler...
120 pa-risc2W.o: asm/pa-risc2W.s
121         $(PERL) $(TOP)/util/fipsas.pl $(TOP) $< /usr/ccs/bin/as -o pa-risc2W.o asm/pa-risc2W.s
122 pa-risc2.o: asm/pa-risc2.s
123         $(PERL) $(TOP)/util/fipsas.pl $(TOP) $< /usr/ccs/bin/as -o pa-risc2.o asm/pa-risc2.s
124
125 parisc-mont.s:  asm/parisc-mont.pl
126         $(PERL) asm/parisc-mont.pl $(PERLASM_SCHEME) $@
127
128 # ppc - AIX, Linux, MacOS X...
129 bn-ppc.s:       asm/ppc.pl;     $(PERL) asm/ppc.pl $(PERLASM_SCHEME) $@
130 ppc-mont.s:     asm/ppc-mont.pl;$(PERL) asm/ppc-mont.pl $(PERLASM_SCHEME) $@
131 ppc64-mont.s:   asm/ppc64-mont.pl;$(PERL) asm/ppc64-mont.pl $(PERLASM_SCHEME) $@
132
133 alpha-mont.s:   asm/alpha-mont.pl
134         (preproc=$$$$.$@.S; trap "rm $$preproc" INT; \
135         $(PERL) asm/alpha-mont.pl > $$preproc && \
136         $(CC) -E -P $$preproc > $@ && rm $$preproc)
137
138 # GNU make "catch all"
139 %-mont.S:       asm/%-mont.pl;  $(PERL) $< $(PERLASM_SCHEME) $@
140 %-gf2m.S:       asm/%-gf2m.pl;  $(PERL) $< $(PERLASM_SCHEME) $@
141
142 armv4-mont.o:   armv4-mont.S
143 armv4-gf2m.o:   armv4-gf2m.S
144 armv8-mont.o:   armv8-mont.S
145
146 files:
147         $(PERL) $(TOP)/util/files.pl Makefile >> $(TOP)/MINFO
148
149 div:
150         rm -f a.out
151         gcc -I.. -g div.c ../../libcrypto.a
152
153 tags:
154         ctags $(SRC)
155
156 tests:
157
158 lint:
159         lint -DLINT $(INCLUDES) $(SRC)>fluff
160
161 update: bn_prime.h depend
162
163 depend:
164         @[ -n "$(MAKEDEPEND)" ] # should be set by upper Makefile...
165         $(MAKEDEPEND) -- $(CFLAG) $(INCLUDES) $(DEPFLAG) -- $(PROGS) $(LIBSRC)
166
167 dclean:
168         $(PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
169         mv -f Makefile.new $(MAKEFILE)
170
171 clean:
172         rm -f *.s *.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
173
174 # DO NOT DELETE THIS LINE -- make depend depends on it.