summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/lib/libcrypto/arch/amd64/Makefile.inc60
-rw-r--r--src/lib/libcrypto/arch/i386/Makefile.inc58
-rw-r--r--src/lib/libcrypto/crypto/Makefile110
-rw-r--r--src/lib/libcrypto/crypto/arch/amd64/Makefile.inc60
-rw-r--r--src/lib/libcrypto/crypto/arch/i386/Makefile.inc58
5 files changed, 242 insertions, 104 deletions
diff --git a/src/lib/libcrypto/arch/amd64/Makefile.inc b/src/lib/libcrypto/arch/amd64/Makefile.inc
new file mode 100644
index 0000000000..a408186a03
--- /dev/null
+++ b/src/lib/libcrypto/arch/amd64/Makefile.inc
@@ -0,0 +1,60 @@
1# $OpenBSD: Makefile.inc,v 1.1 2014/04/17 18:11:47 miod Exp $
2
3# amd64-specific libcrypto build rules
4
5SRCS+= bf_enc.c des_enc.c fcrypt_b.c
6SRCS+= x86_64-gcc.c
7
8CFLAGS+= -DOPENSSL_BN_ASM_GF2m
9CFLAGS+= -DOPENSSL_BN_ASM_MONT
10CFLAGS+= -DOPENSSL_BN_ASM_MONT5
11CFLAGS+= -DOPENSSL_CPUID_OBJ
12CFLAGS+= -DOPENSSL_IA32_SSE2
13
14CFLAGS+= -DAES_ASM
15CFLAGS+= -DBSAES_ASM
16CFLAGS+= -DGHASH_ASM
17CFLAGS+= -DMD5_ASM
18CFLAGS+= -DSHA1_ASM
19CFLAGS+= -DSHA256_ASM
20CFLAGS+= -DSHA512_ASM
21CFLAGS+= -DVPAES_ASM
22CFLAGS+= -DWHIRLPOOL_ASM
23
24SSLASM=\
25 aes aes-x86_64 \
26 aes aesni-x86_64 \
27 aes aesni-sha1-x86_64 \
28 aes bsaes-x86_64 \
29 aes vpaes-x86_64 \
30 bn x86_64-mont \
31 bn x86_64-mont5 \
32 bn x86_64-gf2m \
33 bn modexp512-x86_64 \
34 md5 md5-x86_64 \
35 modes ghash-x86_64 \
36 rc4 rc4-x86_64 \
37 rc4 rc4-md5-x86_64 \
38 sha sha1-x86_64 \
39 whrlpool wp-x86_64
40
41.for dir f in ${SSLASM}
42SRCS+= ${f}.S
43GENERATED+=${f}.S
44${f}.S: ${LCRYPTO_SRC}/${dir}/asm/${f}.pl
45 (cd ${LCRYPTO_SRC}/${dir} ; \
46 /usr/bin/perl ./asm/${f}.pl openbsd-elf) > ${.TARGET}
47.endfor
48
49SRCS+= x86_64cpuid.S sha256-x86_64.S sha512-x86_64.S
50GENERATED+=x86_64cpuid.S sha256-x86_64.S sha512-x86_64.S
51
52x86_64cpuid.S: ${LCRYPTO_SRC}/x86_64cpuid.pl
53 (cd ${LCRYPTO_SRC}/${dir} ; \
54 /usr/bin/perl ./x86_64cpuid.pl) > ${.TARGET}
55sha256-x86_64.S: ${LCRYPTO_SRC}/sha/asm/sha512-x86_64.pl
56 cd ${LCRYPTO_SRC}/sha/asm ; \
57 /usr/bin/perl ./sha512-x86_64.pl ${.OBJDIR}/${.TARGET}
58sha512-x86_64.S: ${LCRYPTO_SRC}/sha/asm/sha512-x86_64.pl
59 cd ${LCRYPTO_SRC}/sha/asm ; \
60 /usr/bin/perl ./sha512-x86_64.pl ${.OBJDIR}/${.TARGET}
diff --git a/src/lib/libcrypto/arch/i386/Makefile.inc b/src/lib/libcrypto/arch/i386/Makefile.inc
new file mode 100644
index 0000000000..13f20d249d
--- /dev/null
+++ b/src/lib/libcrypto/arch/i386/Makefile.inc
@@ -0,0 +1,58 @@
1# $OpenBSD: Makefile.inc,v 1.1 2014/04/17 18:11:47 miod Exp $
2
3# i386-specific libcrypto build rules
4
5SRCS+= wp_block.c
6SRCS+= bf_cbc.c
7
8CFLAGS+= -DOPENSSL_BN_ASM_GF2m
9CFLAGS+= -DOPENSSL_BN_ASM_MONT
10CFLAGS+= -DOPENSSL_BN_ASM_PART_WORDS
11CFLAGS+= -DOPENSSL_CPUID_OBJ
12CFLAGS+= -DOPENSSL_IA32_SSE2
13
14CFLAGS+= -DAES_ASM
15CFLAGS+= -DGHASH_ASM
16CFLAGS+= -DMD5_ASM
17CFLAGS+= -DRMD160_ASM
18CFLAGS+= -DSHA1_ASM
19CFLAGS+= -DSHA256_ASM
20CFLAGS+= -DSHA512_ASM
21CFLAGS+= -DVPAES_ASM
22CFLAGS+= -DWHIRLPOOL_ASM
23
24SSLASM=\
25 aes aes-586 \
26 aes vpaes-x86 \
27 aes aesni-x86 \
28 bf bf-586 \
29 bn bn-586 \
30 bn co-586 \
31 bn x86-mont \
32 bn x86-gf2m \
33 des crypt586 \
34 des des-586 \
35 md5 md5-586 \
36 modes ghash-x86 \
37 rc4 rc4-586 \
38 ripemd rmd-586 \
39 sha sha1-586 \
40 sha sha256-586 \
41 sha sha512-586 \
42 whrlpool wp-mmx
43
44.for dir f in ${SSLASM}
45SRCS+= ${f}.S
46GENERATED+=${f}.S
47${f}.S: ${LCRYPTO_SRC}/${dir}/asm/${f}.pl ${LCRYPTO_SRC}/perlasm/x86gas.pl
48 /usr/bin/perl -I${LCRYPTO_SRC}/perlasm -I${LCRYPTO_SRC}/${dir}/asm \
49 ${LCRYPTO_SRC}/${dir}/asm/${f}.pl \
50 openbsd-elf ${CFLAGS} 386 ${PICFLAG} > ${.TARGET}
51.endfor
52
53SRCS+= x86cpuid.S
54GENERATED+=x86cpuid.S
55
56x86cpuid.S: ${LCRYPTO_SRC}/x86cpuid.pl ${LCRYPTO_SRC}/perlasm/x86gas.pl
57 /usr/bin/perl -I${LCRYPTO_SRC}/perlasm ${LCRYPTO_SRC}/x86cpuid.pl \
58 openbsd-elf ${CFLAGS} 386 ${PICFLAG} > ${.TARGET}
diff --git a/src/lib/libcrypto/crypto/Makefile b/src/lib/libcrypto/crypto/Makefile
index 3a7c04c816..449959dc2f 100644
--- a/src/lib/libcrypto/crypto/Makefile
+++ b/src/lib/libcrypto/crypto/Makefile
@@ -1,4 +1,4 @@
1# $OpenBSD: Makefile,v 1.18 2014/04/17 16:17:41 tedu Exp $ 1# $OpenBSD: Makefile,v 1.19 2014/04/17 18:11:46 miod Exp $
2 2
3LIB= crypto 3LIB= crypto
4 4
@@ -426,109 +426,11 @@ obj_mac.h: ${SSL_OBJECTS}/objects.h ${SSL_OBJECTS}/obj_mac.num ${SSL_OBJECTS}/ob
426obj_dat.h: obj_mac.h 426obj_dat.h: obj_mac.h
427 /usr/bin/perl ${SSL_OBJECTS}/obj_dat.pl obj_mac.h obj_dat.h 427 /usr/bin/perl ${SSL_OBJECTS}/obj_dat.pl obj_mac.h obj_dat.h
428 428
429.if (${MACHINE_ARCH} == "i386") 429.if exists (${.CURDIR}/arch/${MACHINE_CPU}/Makefile.inc)
430SRCS+= wp_block.c 430.include "${.CURDIR}/arch/${MACHINE_CPU}/Makefile.inc"
431SRCS+= bf_cbc.c 431.endif
432CFLAGS+= -DOPENSSL_BN_ASM_PART_WORDS 432
433CFLAGS+= -DOPENSSL_IA32_SSE2 433.if empty (SSLASM)
434CFLAGS+= -DOPENSSL_BN_ASM_MONT
435CFLAGS+= -DOPENSSL_BN_ASM_GF2m
436CFLAGS+= -DSHA1_ASM
437CFLAGS+= -DSHA256_ASM
438CFLAGS+= -DSHA512_ASM
439CFLAGS+= -DMD5_ASM
440CFLAGS+= -DRMD160_ASM
441CFLAGS+= -DAES_ASM
442CFLAGS+= -DVPAES_ASM
443CFLAGS+= -DWHIRLPOOL_ASM
444CFLAGS+= -DGHASH_ASM
445CFLAGS+= -DOPENSSL_CPUID_OBJ
446SSLASM=\
447 aes aes-586 \
448 aes vpaes-x86 \
449 aes aesni-x86 \
450 bf bf-586 \
451 bn bn-586 \
452 bn co-586 \
453 bn x86-mont \
454 bn x86-gf2m \
455 des crypt586 \
456 des des-586 \
457 md5 md5-586 \
458 modes ghash-x86 \
459 rc4 rc4-586 \
460 ripemd rmd-586 \
461 sha sha1-586 \
462 sha sha256-586 \
463 sha sha512-586 \
464 whrlpool wp-mmx
465.for dir f in ${SSLASM}
466SRCS+= ${f}.S
467GENERATED+=${f}.S
468${f}.S: ${LCRYPTO_SRC}/${dir}/asm/${f}.pl ${LCRYPTO_SRC}/perlasm/x86gas.pl
469 /usr/bin/perl -I${LCRYPTO_SRC}/perlasm -I${LCRYPTO_SRC}/${dir}/asm \
470 ${LCRYPTO_SRC}/${dir}/asm/${f}.pl \
471 openbsd-elf ${CFLAGS} 386 ${PICFLAG} > ${.TARGET}
472.endfor
473SRCS+= x86cpuid.S
474GENERATED+=x86cpuid.S
475x86cpuid.S: ${LCRYPTO_SRC}/x86cpuid.pl ${LCRYPTO_SRC}/perlasm/x86gas.pl
476 /usr/bin/perl -I${LCRYPTO_SRC}/perlasm ${LCRYPTO_SRC}/x86cpuid.pl \
477 openbsd-elf ${CFLAGS} 386 ${PICFLAG} > ${.TARGET}
478.elif (${MACHINE_ARCH} == "amd64")
479SRCS+= bf_enc.c des_enc.c fcrypt_b.c
480SRCS+= x86_64-gcc.c
481CFLAGS+= -DOPENSSL_CPUID_OBJ
482CFLAGS+= -DOPENSSL_IA32_SSE2
483CFLAGS+= -DOPENSSL_BN_ASM_MONT
484CFLAGS+= -DOPENSSL_BN_ASM_MONT5
485CFLAGS+= -DOPENSSL_BN_ASM_GF2m
486CFLAGS+= -DSHA1_ASM
487CFLAGS+= -DSHA256_ASM
488CFLAGS+= -DSHA512_ASM
489CFLAGS+= -DMD5_ASM
490CFLAGS+= -DAES_ASM
491CFLAGS+= -DVPAES_ASM
492CFLAGS+= -DBSAES_ASM
493CFLAGS+= -DWHIRLPOOL_ASM
494CFLAGS+= -DGHASH_ASM
495SSLASM=\
496 aes aes-x86_64 \
497 aes aesni-x86_64 \
498 aes aesni-sha1-x86_64 \
499 aes bsaes-x86_64 \
500 aes vpaes-x86_64 \
501 bn x86_64-mont \
502 bn x86_64-mont5 \
503 bn x86_64-gf2m \
504 bn modexp512-x86_64 \
505 md5 md5-x86_64 \
506 modes ghash-x86_64 \
507 rc4 rc4-x86_64 \
508 rc4 rc4-md5-x86_64 \
509 sha sha1-x86_64 \
510 whrlpool wp-x86_64
511.for dir f in ${SSLASM}
512SRCS+= ${f}.S
513GENERATED+=${f}.S
514${f}.S: ${LCRYPTO_SRC}/${dir}/asm/${f}.pl
515 (cd ${LCRYPTO_SRC}/${dir} ; \
516 /usr/bin/perl ./asm/${f}.pl openbsd-elf) > ${.TARGET}
517.endfor
518SRCS+= x86_64cpuid.S sha256-x86_64.S sha512-x86_64.S
519GENERATED+=x86_64cpuid.S sha256-x86_64.S sha512-x86_64.S
520x86_64cpuid.S: ${LCRYPTO_SRC}/x86_64cpuid.pl
521 (cd ${LCRYPTO_SRC}/${dir} ; \
522 /usr/bin/perl ./x86_64cpuid.pl) > ${.TARGET}
523sha256-x86_64.S: ${LCRYPTO_SRC}/sha/asm/sha512-x86_64.pl
524 cd ${LCRYPTO_SRC}/sha/asm ; \
525 /usr/bin/perl ./sha512-x86_64.pl ${.OBJDIR}/${.TARGET}
526sha512-x86_64.S: ${LCRYPTO_SRC}/sha/asm/sha512-x86_64.pl
527 cd ${LCRYPTO_SRC}/sha/asm ; \
528 /usr/bin/perl ./sha512-x86_64.pl ${.OBJDIR}/${.TARGET}
529.else
530# XXX lots more asm we can turn on for other platforms. Shouldn't require
531# major cranks.
532CFLAGS+=-DOPENSSL_NO_ASM 434CFLAGS+=-DOPENSSL_NO_ASM
533SRCS+= mem_clr.c 435SRCS+= mem_clr.c
534SRCS+= aes_core.c aes_cbc.c 436SRCS+= aes_core.c aes_cbc.c
diff --git a/src/lib/libcrypto/crypto/arch/amd64/Makefile.inc b/src/lib/libcrypto/crypto/arch/amd64/Makefile.inc
new file mode 100644
index 0000000000..a408186a03
--- /dev/null
+++ b/src/lib/libcrypto/crypto/arch/amd64/Makefile.inc
@@ -0,0 +1,60 @@
1# $OpenBSD: Makefile.inc,v 1.1 2014/04/17 18:11:47 miod Exp $
2
3# amd64-specific libcrypto build rules
4
5SRCS+= bf_enc.c des_enc.c fcrypt_b.c
6SRCS+= x86_64-gcc.c
7
8CFLAGS+= -DOPENSSL_BN_ASM_GF2m
9CFLAGS+= -DOPENSSL_BN_ASM_MONT
10CFLAGS+= -DOPENSSL_BN_ASM_MONT5
11CFLAGS+= -DOPENSSL_CPUID_OBJ
12CFLAGS+= -DOPENSSL_IA32_SSE2
13
14CFLAGS+= -DAES_ASM
15CFLAGS+= -DBSAES_ASM
16CFLAGS+= -DGHASH_ASM
17CFLAGS+= -DMD5_ASM
18CFLAGS+= -DSHA1_ASM
19CFLAGS+= -DSHA256_ASM
20CFLAGS+= -DSHA512_ASM
21CFLAGS+= -DVPAES_ASM
22CFLAGS+= -DWHIRLPOOL_ASM
23
24SSLASM=\
25 aes aes-x86_64 \
26 aes aesni-x86_64 \
27 aes aesni-sha1-x86_64 \
28 aes bsaes-x86_64 \
29 aes vpaes-x86_64 \
30 bn x86_64-mont \
31 bn x86_64-mont5 \
32 bn x86_64-gf2m \
33 bn modexp512-x86_64 \
34 md5 md5-x86_64 \
35 modes ghash-x86_64 \
36 rc4 rc4-x86_64 \
37 rc4 rc4-md5-x86_64 \
38 sha sha1-x86_64 \
39 whrlpool wp-x86_64
40
41.for dir f in ${SSLASM}
42SRCS+= ${f}.S
43GENERATED+=${f}.S
44${f}.S: ${LCRYPTO_SRC}/${dir}/asm/${f}.pl
45 (cd ${LCRYPTO_SRC}/${dir} ; \
46 /usr/bin/perl ./asm/${f}.pl openbsd-elf) > ${.TARGET}
47.endfor
48
49SRCS+= x86_64cpuid.S sha256-x86_64.S sha512-x86_64.S
50GENERATED+=x86_64cpuid.S sha256-x86_64.S sha512-x86_64.S
51
52x86_64cpuid.S: ${LCRYPTO_SRC}/x86_64cpuid.pl
53 (cd ${LCRYPTO_SRC}/${dir} ; \
54 /usr/bin/perl ./x86_64cpuid.pl) > ${.TARGET}
55sha256-x86_64.S: ${LCRYPTO_SRC}/sha/asm/sha512-x86_64.pl
56 cd ${LCRYPTO_SRC}/sha/asm ; \
57 /usr/bin/perl ./sha512-x86_64.pl ${.OBJDIR}/${.TARGET}
58sha512-x86_64.S: ${LCRYPTO_SRC}/sha/asm/sha512-x86_64.pl
59 cd ${LCRYPTO_SRC}/sha/asm ; \
60 /usr/bin/perl ./sha512-x86_64.pl ${.OBJDIR}/${.TARGET}
diff --git a/src/lib/libcrypto/crypto/arch/i386/Makefile.inc b/src/lib/libcrypto/crypto/arch/i386/Makefile.inc
new file mode 100644
index 0000000000..13f20d249d
--- /dev/null
+++ b/src/lib/libcrypto/crypto/arch/i386/Makefile.inc
@@ -0,0 +1,58 @@
1# $OpenBSD: Makefile.inc,v 1.1 2014/04/17 18:11:47 miod Exp $
2
3# i386-specific libcrypto build rules
4
5SRCS+= wp_block.c
6SRCS+= bf_cbc.c
7
8CFLAGS+= -DOPENSSL_BN_ASM_GF2m
9CFLAGS+= -DOPENSSL_BN_ASM_MONT
10CFLAGS+= -DOPENSSL_BN_ASM_PART_WORDS
11CFLAGS+= -DOPENSSL_CPUID_OBJ
12CFLAGS+= -DOPENSSL_IA32_SSE2
13
14CFLAGS+= -DAES_ASM
15CFLAGS+= -DGHASH_ASM
16CFLAGS+= -DMD5_ASM
17CFLAGS+= -DRMD160_ASM
18CFLAGS+= -DSHA1_ASM
19CFLAGS+= -DSHA256_ASM
20CFLAGS+= -DSHA512_ASM
21CFLAGS+= -DVPAES_ASM
22CFLAGS+= -DWHIRLPOOL_ASM
23
24SSLASM=\
25 aes aes-586 \
26 aes vpaes-x86 \
27 aes aesni-x86 \
28 bf bf-586 \
29 bn bn-586 \
30 bn co-586 \
31 bn x86-mont \
32 bn x86-gf2m \
33 des crypt586 \
34 des des-586 \
35 md5 md5-586 \
36 modes ghash-x86 \
37 rc4 rc4-586 \
38 ripemd rmd-586 \
39 sha sha1-586 \
40 sha sha256-586 \
41 sha sha512-586 \
42 whrlpool wp-mmx
43
44.for dir f in ${SSLASM}
45SRCS+= ${f}.S
46GENERATED+=${f}.S
47${f}.S: ${LCRYPTO_SRC}/${dir}/asm/${f}.pl ${LCRYPTO_SRC}/perlasm/x86gas.pl
48 /usr/bin/perl -I${LCRYPTO_SRC}/perlasm -I${LCRYPTO_SRC}/${dir}/asm \
49 ${LCRYPTO_SRC}/${dir}/asm/${f}.pl \
50 openbsd-elf ${CFLAGS} 386 ${PICFLAG} > ${.TARGET}
51.endfor
52
53SRCS+= x86cpuid.S
54GENERATED+=x86cpuid.S
55
56x86cpuid.S: ${LCRYPTO_SRC}/x86cpuid.pl ${LCRYPTO_SRC}/perlasm/x86gas.pl
57 /usr/bin/perl -I${LCRYPTO_SRC}/perlasm ${LCRYPTO_SRC}/x86cpuid.pl \
58 openbsd-elf ${CFLAGS} 386 ${PICFLAG} > ${.TARGET}