195967Speter# $FreeBSD$ 2238405Sjkim# Use this to help generate the asm *.[Ss] files after an import. It is not 395967Speter# perfect by any means, but does what is needed. 495967Speter# Do a 'make -f Makefile.asm all' and it will generate *.s. Move them 5127326Smarkm# to the i386 subdir, and correct any exposed paths and $ FreeBSD $ tags. 695967Speter 795967Speter.include "Makefile.inc" 895967Speter 9238405Sjkim.if ${MACHINE_CPUARCH} == "amd64" 10106538Sobrien 11238405Sjkim.PATH: ${LCRYPTO_SRC}/crypto \ 12238405Sjkim ${LCRYPTO_SRC}/crypto/aes/asm \ 13238405Sjkim ${LCRYPTO_SRC}/crypto/bn/asm \ 14238405Sjkim ${LCRYPTO_SRC}/crypto/camellia/asm \ 15238405Sjkim ${LCRYPTO_SRC}/crypto/md5/asm \ 16238405Sjkim ${LCRYPTO_SRC}/crypto/modes/asm \ 17238405Sjkim ${LCRYPTO_SRC}/crypto/rc4/asm \ 18238405Sjkim ${LCRYPTO_SRC}/crypto/rc5/asm \ 19238405Sjkim ${LCRYPTO_SRC}/crypto/sha/asm \ 20238405Sjkim ${LCRYPTO_SRC}/crypto/whrlpool/asm 21238405Sjkim 22238405Sjkim# aes 23238405SjkimSRCS= aes-x86_64.pl aesni-sha1-x86_64.pl aesni-x86_64.pl bsaes-x86_64.pl \ 24238405Sjkim vpaes-x86_64.pl 25238405Sjkim 26238405Sjkim# bn 27238405SjkimSRCS+= modexp512-x86_64.pl x86_64-gf2m.pl x86_64-mont.pl x86_64-mont5.pl 28238405Sjkim 29238405Sjkim# camellia 30238405SjkimSRCS+= cmll-x86_64.pl 31238405Sjkim 32238405Sjkim# md5 33238405SjkimSRCS+= md5-x86_64.pl 34238405Sjkim 35238405Sjkim# modes 36238405SjkimSRCS+= ghash-x86_64.pl 37238405Sjkim 38238405Sjkim# rc4 39238405SjkimSRCS+= rc4-md5-x86_64.pl rc4-x86_64.pl 40238405Sjkim 41238405Sjkim# sha 42238405SjkimSRCS+= sha1-x86_64.pl sha512-x86_64.pl 43238405Sjkim 44238405Sjkim# whrlpool 45238405SjkimSRCS+= wp-x86_64.pl 46238405Sjkim 47238405SjkimASM= ${SRCS:S/.pl/.S/} 48238405SjkimASM+= sha256-x86_64.S x86_64cpuid.S 49238405Sjkim 50238405Sjkimall: ${ASM} 51238405Sjkim 52238405SjkimCLEANFILES+= ${SRCS:M*.pl:S/.pl$/.cmt/} ${SRCS:M*.pl:S/.pl$/.S/} 53238405SjkimCLEANFILES+= sha256-x86_64.cmt sha256-x86_64.S x86_64cpuid.cmt x86_64cpuid.S 54238405Sjkim.SUFFIXES: .pl .cmt 55238405Sjkim 56238405Sjkim.pl.cmt: 57238405Sjkim ( cd `dirname ${.IMPSRC}`/.. ; perl ${.IMPSRC} ${.OBJDIR}/${.TARGET} ) 58238405Sjkim 59238405Sjkim.cmt.S: 60238405Sjkim ( echo ' # $$'FreeBSD'$$'; cat ${.IMPSRC} ) > ${.TARGET} 61238405Sjkim 62238405Sjkimsha256-x86_64.cmt: sha512-x86_64.pl 63238405Sjkim ( cd `dirname ${.ALLSRC}`/.. ; perl ${.ALLSRC} ${.OBJDIR}/${.TARGET} ) 64238405Sjkim 65238405Sjkimx86_64cpuid.cmt: x86_64cpuid.pl 66238405Sjkim ( cd `dirname ${.ALLSRC}` ; perl ${.ALLSRC} ${.OBJDIR}/${.TARGET} ) 67238405Sjkim 68238405Sjkim.elif ${MACHINE_CPUARCH} == "i386" 69238405Sjkim 70238405Sjkim.PATH: ${LCRYPTO_SRC}/crypto \ 71238405Sjkim ${LCRYPTO_SRC}/crypto/aes/asm \ 72238405Sjkim ${LCRYPTO_SRC}/crypto/bf/asm \ 73238405Sjkim ${LCRYPTO_SRC}/crypto/bn/asm \ 74238405Sjkim ${LCRYPTO_SRC}/crypto/camellia/asm \ 75238405Sjkim ${LCRYPTO_SRC}/crypto/cast/asm \ 76238405Sjkim ${LCRYPTO_SRC}/crypto/des/asm \ 77238405Sjkim ${LCRYPTO_SRC}/crypto/md5/asm \ 78238405Sjkim ${LCRYPTO_SRC}/crypto/modes/asm \ 79238405Sjkim ${LCRYPTO_SRC}/crypto/rc4/asm \ 80238405Sjkim ${LCRYPTO_SRC}/crypto/rc5/asm \ 81238405Sjkim ${LCRYPTO_SRC}/crypto/ripemd/asm \ 82238405Sjkim ${LCRYPTO_SRC}/crypto/sha/asm \ 83238405Sjkim ${LCRYPTO_SRC}/crypto/whrlpool/asm 84238405Sjkim 85142429SnectarPERLPATH= -I${LCRYPTO_SRC}/crypto/des/asm -I${LCRYPTO_SRC}/crypto/perlasm 8695967Speter 87238405Sjkim# aes 88238405SjkimSRCS= aes-586.pl aesni-x86.pl vpaes-x86.pl 89238405Sjkim 9095967Speter# blowfish 91238405SjkimSRCS+= bf-586.pl bf-686.pl 9295967Speter 9395967Speter# bn 94238405SjkimSRCS+= bn-586.pl co-586.pl x86-gf2m.pl x86-mont.pl 9595967Speter 96238405Sjkim# camellia 97238405SjkimSRCS+= cmll-x86.pl 98238405Sjkim 9995967Speter# cast 10095967SpeterSRCS+= cast-586.pl 10195967Speter 10295967Speter# des 103238405SjkimSRCS+= crypt586.pl des-586.pl 10495967Speter 10595967Speter# md5 10695967SpeterSRCS+= md5-586.pl 10795967Speter 108238405Sjkim# modes 109238405SjkimSRCS+= ghash-x86.pl 110238405Sjkim 11195967Speter# rc4 11295967SpeterSRCS+= rc4-586.pl 11395967Speter 11495967Speter# rc5 11595967SpeterSRCS+= rc5-586.pl 11695967Speter 11795967Speter# ripemd 11895967SpeterSRCS+= rmd-586.pl 11995967Speter 12095967Speter# sha 121238405SjkimSRCS+= sha1-586.pl sha256-586.pl sha512-586.pl 12295967Speter 123238405Sjkim# whrlpool 124238405SjkimSRCS+= wp-mmx.pl 125238405Sjkim 126238405Sjkim# cpuid 127238405SjkimSRCS+= x86cpuid.pl 128238405Sjkim 12995967SpeterASM= ${SRCS:S/.pl/.s/} 13095967Speter 13195967Speterall: ${ASM} 13295967Speter 133238405SjkimCLEANFILES+= ${SRCS:M*.pl:S/.pl$/.s/} 134238405Sjkim.SUFFIXES: .pl 13595967Speter 136238405Sjkim.pl.s: 137127326Smarkm ( echo ' # $$'FreeBSD'$$' ;\ 138238405Sjkim perl ${PERLPATH} ${.IMPSRC} elf ${CFLAGS} ) > ${.TARGET} 139238405Sjkim.endif 14095967Speter 14195967Speter.include <bsd.prog.mk> 142