2003-07-27 17:00:51 +00:00
#
# SSLeay/fips/Makefile
#
DIR = fips
TOP = ..
CC = cc
INCLUDE = -I. -I$( TOP) -I../include
INCLUDES = -I.. -I../.. -I../../include
CFLAG = -g
INSTALL_PREFIX =
OPENSSLDIR = /usr/local/ssl
INSTALLTOP = /usr/local/ssl
MAKEDEPPROG = makedepend
MAKEDEPEND = $( TOP) /util/domd $( TOP) -MD $( MAKEDEPPROG)
2004-03-11 12:31:43 +00:00
MAKEFILE = Makefile
2003-07-27 17:00:51 +00:00
RM = rm -f
AR = ar r
PEX_LIBS =
EX_LIBS =
CFLAGS = $( INCLUDE) $( CFLAG)
LIBS =
2003-09-11 21:37:01 +00:00
FDIRS = sha1 rand des aes dsa rsa
2003-07-27 17:00:51 +00:00
GENERAL = Makefile README fips-lib.com install.com
LIB = $( TOP) /libcrypto.a
SHARED_LIB = libcrypto$( SHLIB_EXT)
2003-09-08 11:33:07 +00:00
LIBSRC = fips.c fips_err_wrapper.c
LIBOBJ = fips.o fips_err_wrapper.o
2003-07-27 17:00:51 +00:00
SRC = $( LIBSRC)
EXHEADER = fips.h
2003-09-08 11:33:07 +00:00
HEADER = $( EXHEADER) fips_err.h
2003-09-06 13:31:40 +00:00
EXE = openssl_fips_fingerprint
2003-07-27 17:00:51 +00:00
ALL = $( GENERAL) $( SRC) $( HEADER)
top :
@( cd ..; $( MAKE) DIRS = $( DIR) all)
2003-08-11 10:24:52 +00:00
all : subdirs lib check shared
2003-07-27 17:00:51 +00:00
check :
TOP = ` pwd ` /$( TOP) ./fips_check_sha1 fingerprint.sha1 $( SRC) $( HEADER)
subdirs :
@for i in $( FDIRS) ; \
do \
( cd $$ i && echo " making all in fips/ $$ i... " && \
$( MAKE) CC = '$(CC)' INCLUDES = '${INCLUDES}' CFLAG = '${CFLAG}' INSTALLTOP = '${INSTALLTOP}' PEX_LIBS = '${PEX_LIBS}' EX_LIBS = '${EX_LIBS}' BN_ASM = '${BN_ASM}' DES_ENC = '${DES_ENC}' SHA1_ASM_OBJ = '${SHA1_ASM_OBJ}' MD5_ASM_OBJ = '${MD5_ASM_OBJ}' RMD160_ASM_OBJ = '${RMD160_ASM_OBJ}' BF_ENC = '${BF_ENC}' CAST_ENC = '${CAST_ENC}' RC4_ENC = '${RC4_ENC}' RC5_ENC = '${RC5_ENC}' AR = '${AR}' PROCESSOR = '${PROCESSOR}' PERL = '${PERL}' RANLIB = '${RANLIB}' all ) || exit 1; \
done ;
2003-07-30 18:30:18 +00:00
sub_target :
@for i in $( FDIRS) ; \
do \
( cd $$ i && echo " making $( TARGET) in fips/ $$ i... " && \
$( MAKE) CC = '$(CC)' INCLUDES = '${INCLUDES}' CFLAG = '${CFLAG}' INSTALLTOP = '${INSTALLTOP}' PEX_LIBS = '${PEX_LIBS}' EX_LIBS = '${EX_LIBS}' BN_ASM = '${BN_ASM}' DES_ENC = '${DES_ENC}' SHA1_ASM_OBJ = '${SHA1_ASM_OBJ}' MD5_ASM_OBJ = '${MD5_ASM_OBJ}' RMD160_ASM_OBJ = '${RMD160_ASM_OBJ}' BF_ENC = '${BF_ENC}' CAST_ENC = '${CAST_ENC}' RC4_ENC = '${RC4_ENC}' RC5_ENC = '${RC5_ENC}' AR = '${AR}' PROCESSOR = '${PROCESSOR}' PERL = '${PERL}' RANLIB = '${RANLIB}' $( TARGET) ) || exit 1; \
done ;
2003-07-27 17:00:51 +00:00
files :
2004-03-11 12:31:43 +00:00
$( PERL) $( TOP) /util/files.pl Makefile >> $( TOP) /MINFO
2003-07-27 17:00:51 +00:00
@for i in $( FDIRS) ; \
do \
( cd $$ i && echo " making 'files' in fips/ $$ i... " && \
$( MAKE) PERL = '${PERL}' files ) ; \
done ;
links :
@$( PERL) $( TOP) /util/mklink.pl ../include/openssl $( EXHEADER)
@for i in $( FDIRS) ; do \
( cd $$ i && echo " making links in fips/ $$ i... " && \
$( MAKE) CC = '$(CC)' INCLUDES = '${INCLUDES}' CFLAG = '${CFLAG}' INSTALLTOP = '${INSTALLTOP}' PEX_LIBS = '${PEX_LIBS}' EX_LIBS = '${EX_LIBS}' BN_ASM = '${BN_ASM}' DES_ENC = '${DES_ENC}' SHA1_ASM_OBJ = '${SHA1_ASM_OBJ}' MD5_ASM_OBJ = '${MD5_ASM_OBJ}' RMD160_ASM_OBJ = '${RMD160_ASM_OBJ}' BF_ENC = '${BF_ENC}' CAST_ENC = '${CAST_ENC}' RC4_ENC = '${RC4_ENC}' RC5_ENC = '${RC5_ENC}' AR = '${AR}' PERL = '${PERL}' links ) ; \
done ;
lib : $( LIBOBJ )
$( AR) $( LIB) $( LIBOBJ)
$( RANLIB) $( LIB) || echo Never mind.
@touch lib
shared :
if [ -n " $( SHARED_LIBS) " ] ; then \
( cd ..; $( MAKE) $( SHARED_LIB) ) ; \
fi
libs :
@for i in $( FDIRS) ; \
do \
( cd $$ i && echo " making libs in fips/ $$ i... " && \
$( MAKE) CC = '$(CC)' CFLAG = '${CFLAG}' INSTALL_PREFIX = '${INSTALL_PREFIX}' INSTALLTOP = '${INSTALLTOP}' PEX_LIBS = '${PEX_LIBS}' EX_LIBS = '${EX_LIBS}' AR = '${AR}' lib ) ; \
done ;
tests :
@for i in $( FDIRS) ; \
do \
( cd $$ i && echo " making tests in fips/ $$ i... " && \
$( MAKE) CC = '$(CC)' CFLAG = '${CFLAG}' INSTALLTOP = '${INSTALLTOP}' PEX_LIBS = '${PEX_LIBS}' EX_LIBS = '${EX_LIBS}' AR = '${AR}' tests ) ; \
done ;
2004-01-30 19:22:22 +00:00
top_fips_test_suite :
( cd $( TOP) ; $( MAKE) DIRS = fips FDIRS = . TARGET = fips_test_suite sub_target)
fips_test_suite : fips_test_suite .o $( TOP ) /libcrypto .a
$( CC) $( CFLAGS) -o fips_test_suite fips_test_suite.o $( PEX_LIBS) $( TOP) /libcrypto.a $( EX_LIBS)
TOP = $( TOP) $( TOP) /fips/openssl_fips_fingerprint $( TOP) /libcrypto.a fips_test_suite || { rm fips_test_suite; false; }
fips_test : top top_fips_test_suite
2004-02-29 19:18:15 +00:00
cd testvectors && perl -p -i -e 's/COUNT=/COUNT = /' des[ 23] /req/*.req
2003-09-06 13:31:40 +00:00
@for i in dsa sha1 aes des ; \
do \
( cd $$ i && echo " making fips_test in fips/ $$ i... " && make fips_test) \
done ;
2003-07-27 17:00:51 +00:00
install :
@for i in $( EXHEADER) ; \
do \
2003-09-06 13:31:40 +00:00
( cp $$ i $( INSTALL_PREFIX) $( INSTALLTOP) /include/openssl/$$ i; \
chmod 644 $( INSTALL_PREFIX) $( INSTALLTOP) /include/openssl/$$ i ) ; \
2003-07-27 17:00:51 +00:00
done ;
@for i in $( FDIRS) ; \
do \
2003-09-06 13:31:40 +00:00
( cd $$ i && echo " making install in fips/ $$ i... " && \
$( MAKE) CC = '$(CC)' CFLAG = '${CFLAG}' INSTALL_PREFIX = '${INSTALL_PREFIX}' INSTALLTOP = '${INSTALLTOP}' PEX_LIBS = '${PEX_LIBS}' EX_LIBS = '${EX_LIBS}' install ) ; \
2003-07-27 17:00:51 +00:00
done ;
2003-09-06 13:31:40 +00:00
@for i in $( EXE) ; \
do \
echo " installing $$ i " ; \
cp $$ i $( INSTALL_PREFIX) $( INSTALLTOP) /bin/$$ i.new; \
chmod 755 $( INSTALL_PREFIX) $( INSTALLTOP) /bin/$$ i.new; \
2004-03-03 18:25:12 +00:00
mv -f $( INSTALL_PREFIX) $( INSTALLTOP) /bin/$$ i.new $( INSTALL_PREFIX) $( INSTALLTOP) /bin/$$ i; \
2003-09-06 13:31:40 +00:00
done
2003-07-27 17:00:51 +00:00
lint :
@for i in $( FDIRS) ; \
do \
( cd $$ i && echo " making lint in fips/ $$ i... " && \
$( MAKE) CC = '$(CC)' CFLAG = '${CFLAG}' INSTALLTOP = '${INSTALLTOP}' PEX_LIBS = '${PEX_LIBS}' EX_LIBS = '${EX_LIBS}' lint ) ; \
done ;
depend :
if [ ! -f buildinf.h ] ; then touch buildinf.h; fi # fake buildinf.h if it does not exist
2003-09-28 09:26:37 +00:00
$( MAKEDEPEND) -- $( CFLAG) $( INCLUDE) $( DEPFLAG) -- $( SRC)
2003-07-27 17:00:51 +00:00
if [ ! -s buildinf.h ] ; then rm buildinf.h; fi
@for i in $( FDIRS) ; \
do \
( cd $$ i && echo " making depend in fips/ $$ i... " && \
$( MAKE) MAKEFILE = '${MAKEFILE}' INCLUDES = '${INCLUDES}' CFLAG = '${CFLAG}' DEPFLAG = '${DEPFLAG}' MAKEDEPPROG = '${MAKEDEPPROG}' KRB5_INCLUDES = '${KRB5_INCLUDES}' PERL = '${PERL}' depend ) ; \
done ;
clean :
rm -f buildinf.h *.o */*.o *.obj lib tags core .pure .nfs* *.old *.bak fluff
@for i in $( FDIRS) ; \
do \
( cd $$ i && echo " making clean in fips/ $$ i... " && \
$( MAKE) CC = '$(CC)' CFLAG = '${CFLAG}' INSTALLTOP = '${INSTALLTOP}' PEX_LIBS = '${PEX_LIBS}' EX_LIBS = '${EX_LIBS}' clean ) ; \
done ;
dclean :
$( PERL) -pe 'if (/^# DO NOT DELETE THIS LINE/) {print; exit(0);}' $( MAKEFILE) >Makefile.new
mv -f Makefile.new $( MAKEFILE)
@for i in $( FDIRS) ; \
do \
( cd $$ i && echo " making dclean in fips/ $$ i... " && \
$( MAKE) PERL = '${PERL}' CC = '$(CC)' CFLAG = '${CFLAG}' INSTALLTOP = '${INSTALLTOP}' PEX_LIBS = '${PEX_LIBS}' EX_LIBS = '${EX_LIBS}' dclean ) ; \
done ;
# DO NOT DELETE THIS LINE -- make depend depends on it.
2003-09-08 12:39:13 +00:00
fips.o : ../include /openssl /aes .h ../include /openssl /asn 1.h
fips.o : ../include /openssl /bio .h ../include /openssl /blowfish .h
fips.o : ../include /openssl /bn .h ../include /openssl /cast .h
fips.o : ../include /openssl /crypto .h ../include /openssl /des .h
fips.o : ../include /openssl /des_old .h ../include /openssl /dh .h
fips.o : ../include /openssl /dsa .h ../include /openssl /e_os 2.h
fips.o : ../include /openssl /err .h ../include /openssl /evp .h
2003-07-27 17:00:51 +00:00
fips.o : ../include /openssl /fips .h ../include /openssl /fips_rand .h
2003-09-08 12:39:13 +00:00
fips.o : ../include /openssl /idea .h ../include /openssl /lhash .h
fips.o : ../include /openssl /md 2.h ../include /openssl /md 4.h
fips.o : ../include /openssl /md 5.h ../include /openssl /mdc 2.h
fips.o : ../include /openssl /obj_mac .h ../include /openssl /objects .h
fips.o : ../include /openssl /opensslconf .h ../include /openssl /opensslv .h
fips.o : ../include /openssl /ossl_typ .h ../include /openssl /rand .h
fips.o : ../include /openssl /rc 2.h ../include /openssl /rc 4.h
fips.o : ../include /openssl /rc 5.h ../include /openssl /ripemd .h
fips.o : ../include /openssl /rsa .h ../include /openssl /safestack .h
fips.o : ../include /openssl /sha .h ../include /openssl /stack .h
fips.o : ../include /openssl /symhacks .h ../include /openssl /ui .h
2003-09-28 09:26:37 +00:00
fips.o : ../include /openssl /ui_compat .h fips .c fips_locl .h
2004-02-13 21:57:51 +00:00
fips_err_wrapper.o : ../include /openssl /opensslconf .h fips_err_wrapper .c