Makefile.ssl 3.6 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11
#
# SSLeay/crypto/bn/Makefile
#

DIR=	bn
TOP=	../..
CC=	cc
INCLUDES= -I.. -I../../include
CFLAG=-g
INSTALLTOP=/usr/local/ssl
MAKE=		make -f Makefile.ssl
12
MAKEDEPEND=	$(TOP)/util/domd $(TOP)
13 14 15
MAKEFILE=	Makefile.ssl
AR=		ar r

16
BN_ASM=		bn_asm.o
17
# or use
18
#BN_ASM=	bn86-elf.o
19

20 21 22 23 24 25 26 27 28
CFLAGS= $(INCLUDES) $(CFLAG)

ERR=bn
ERRC=bn_err
GENERAL=Makefile
TEST=bntest.c exptest.c
APPS=

LIB=$(TOP)/libcrypto.a
29 30 31 32
LIBSRC=	bn_add.c bn_div.c bn_exp.c bn_lib.c bn_mul.c \
	bn_print.c bn_rand.c bn_shift.c bn_word.c bn_blind.c \
	bn_gcd.c bn_prime.c $(ERRC).c bn_sqr.c bn_asm.c bn_recp.c bn_mont.c \
	bn_mpi.c bn_exp2.c
33

34 35 36 37
LIBOBJ=	bn_add.o bn_div.o bn_exp.o bn_lib.o bn_mul.o \
	bn_print.o bn_rand.o bn_shift.o bn_word.o bn_blind.o \
	bn_gcd.o bn_prime.o $(ERRC).o bn_sqr.o $(BN_ASM) bn_recp.o bn_mont.o \
	bn_mpi.o bn_exp2.o
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62

SRC= $(LIBSRC)

EXHEADER= bn.h
HEADER=	bn_lcl.h bn_prime.h $(EXHEADER)

ALL=    $(GENERAL) $(SRC) $(HEADER)

top:
	(cd ../..; $(MAKE) DIRS=crypto SDIRS=$(DIR) sub_all)

all:	lib

knuth: bn_knuth.c
	cc -pg -I.. -I../../include bn_knuth.c -o knuth $(LIB) #../../../libefence.a

knuth.fast: bn_knuth.c
	cc -pg -fast -I.. -I../../include bn_knuth.c -o knuth $(LIB) #../../../libefence.a


lib:	$(LIBOBJ)
	$(AR) $(LIB) $(LIBOBJ)
	sh $(TOP)/util/ranlib.sh $(LIB)
	@touch lib

63 64 65 66
# elf
asm/bn86-elf.o: asm/bn86unix.cpp
	$(CPP) -DELF asm/bn86unix.cpp | as -o asm/bn86-elf.o

67 68 69
asm/co86-elf.o: asm/co86unix.cpp
	$(CPP) -DELF asm/co86unix.cpp | as -o asm/co86-elf.o

70 71 72 73 74 75
# solaris
asm/bn86-sol.o: asm/bn86unix.cpp
	$(CC) -E -DSOL asm/bn86unix.cpp | sed 's/^#.*//' > asm/bn86-sol.s
	as -o asm/bn86-sol.o asm/bn86-sol.s
	rm -f asm/bn86-sol.s

76 77 78 79 80
asm/co86-sol.o: asm/co86unix.cpp
	$(CC) -E -DSOL asm/co86unix.cpp | sed 's/^#.*//' > asm/co86-sol.s
	as -o asm/co86-sol.o asm/co86-sol.s
	rm -f asm/co86-sol.s

81 82 83 84
# a.out
asm/bn86-out.o: asm/bn86unix.cpp
	$(CPP) -DOUT asm/bn86unix.cpp | as -o asm/bn86-out.o

85 86 87
asm/co86-out.o: asm/co86unix.cpp
	$(CPP) -DOUT asm/co86unix.cpp | as -o asm/co86-out.o

88 89
# bsdi
asm/bn86bsdi.o: asm/bn86unix.cpp
90 91 92 93
	$(CPP) -DBSDI asm/bn86unix.cpp | sed 's/ :/:/' | as -o asm/bn86bsdi.o

asm/co86bsdi.o: asm/co86unix.cpp
	$(CPP) -DBSDI asm/co86unix.cpp | sed 's/ :/:/' | as -o asm/co86bsdi.o
94

B
Ben Laurie 已提交
95
asm/bn86unix.cpp: asm/bn-586.pl
96 97
	(cd asm; perl bn-586.pl cpp >bn86unix.cpp )

B
Ben Laurie 已提交
98
asm/co86unix.cpp: asm/co-586.pl
99 100 101 102 103 104 105 106 107 108
	(cd asm; perl co-586.pl cpp >co86unix.cpp )

# MIPS 64 bit assember 
asm/mips3.o: asm/mips3.s
	/usr/bin/as -mips3 -O2 -o asm/mips3.o asm/mips3.s            

# MIPS 32 bit assember
asm/mips1.o: asm/mips1.s
	/usr/bin/as -O2 -o asm/mips1.o asm/mips1.s

109 110 111 112
files:
	perl $(TOP)/util/files.pl Makefile.ssl >> $(TOP)/MINFO

links:
113 114 115 116
	@$(TOP)/util/point.sh Makefile.ssl Makefile
	@$(TOP)/util/mklink.sh ../../include $(EXHEADER)
	@$(TOP)/util/mklink.sh ../../test $(TEST)
	@$(TOP)/util/mklink.sh ../../apps $(APPS)
117 118 119 120 121 122 123 124 125

install:
	@for i in $(EXHEADER) ; \
	do  \
	(cp $$i $(INSTALLTOP)/include/$$i; \
	chmod 644 $(INSTALLTOP)/include/$$i ); \
	done;

exptest:
126
	rm -f exptest
127 128 129
	gcc -I../../include -g2 -ggdb -o exptest exptest.c ../../libcrypto.a

div:
130
	rm -f a.out
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148
	gcc -I.. -g div.c ../../libcrypto.a

tags:
	ctags $(SRC)

tests:

lint:
	lint -DLINT $(INCLUDES) $(SRC)>fluff

depend:
	$(MAKEDEPEND) $(INCLUDES) $(PROGS) $(LIBSRC)

dclean:
	perl -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $(MAKEFILE) >Makefile.new
	mv -f Makefile.new $(MAKEFILE)

clean:
149
	rm -f *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff bn_asm.s
150

151 152 153
errors: $(ERRC).c

$(ERRC).c: $(ERR).err
154 155
	perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).org # special case .org
	perl $(TOP)/util/err-ins.pl $(ERR).err $(ERR).h
156
	perl ../err/err_genc.pl -s $(ERR).h $(ERRC).c
157 158

# DO NOT DELETE THIS LINE -- make depend depends on it.