xref: /freebsd/secure/lib/libcrypto/Makefile.common (revision e9ac41698b2f322d55ccf9da50a3596edb2c1800)
1544deaccSPierre Pronchery.include <bsd.endian.mk>
2544deaccSPierre Pronchery
3544deaccSPierre Pronchery.if ${TARGET_ENDIANNESS} == 1234
4544deaccSPierre ProncheryCFLAGS+=	-DL_ENDIAN
5544deaccSPierre Pronchery.elif ${TARGET_ENDIANNESS} == 4321
6544deaccSPierre ProncheryCFLAGS+=	-DB_ENDIAN
7544deaccSPierre Pronchery.endif
8544deaccSPierre Pronchery
9*73653b72SJohn Baldwin.ifndef WITHOUT_AUTO_ASM
10544deaccSPierre Pronchery.if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "amd64" || \
11544deaccSPierre Pronchery    ${MACHINE_CPUARCH} == "arm" || ${MACHINE_CPUARCH} == "i386"
12544deaccSPierre ProncheryASM_${MACHINE_CPUARCH}=
13544deaccSPierre Pronchery.elif ${MACHINE_ARCH} == "powerpc" || ${MACHINE_ARCH} == "powerpc64" || \
14544deaccSPierre Pronchery    ${MACHINE_ARCH} == "powerpc64le"
15544deaccSPierre ProncheryASM_${MACHINE_ARCH}=
16544deaccSPierre Pronchery.endif
17*73653b72SJohn Baldwin.endif
18544deaccSPierre Pronchery
19544deaccSPierre Pronchery.if defined(ASM_${MACHINE_CPUARCH}) || defined(ASM_${MACHINE_ARCH})
20544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_CPUID_OBJ
21544deaccSPierre Pronchery.if defined(ASM_aarch64)
22544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_BN_ASM_MONT
23544deaccSPierre ProncheryCFLAGS+=	-DSHA1_ASM -DSHA256_ASM -DSHA512_ASM
24544deaccSPierre ProncheryCFLAGS+=	-DKECCAK1600_ASM
25544deaccSPierre ProncheryCFLAGS+=	-DVPAES_ASM
26544deaccSPierre ProncheryCFLAGS+=	-DECP_NISTZ256_ASM
27544deaccSPierre ProncheryCFLAGS+=	-DPOLY1305_ASM
28544deaccSPierre Pronchery.elif defined(ASM_amd64)
29544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_IA32_SSE2
30544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5
31544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_BN_ASM_GF2m
32544deaccSPierre ProncheryCFLAGS+=	-DSHA1_ASM -DSHA256_ASM -DSHA512_ASM
33544deaccSPierre ProncheryCFLAGS+=	-DKECCAK1600_ASM
34544deaccSPierre ProncheryCFLAGS+=	-DRC4_ASM
35544deaccSPierre ProncheryCFLAGS+=	-DMD5_ASM
363250c9d5SJohn BaldwinCFLAGS+=	-DAES_ASM
373250c9d5SJohn BaldwinCFLAGS+=	-DBSAES_ASM
38544deaccSPierre ProncheryCFLAGS+=	-DVPAES_ASM
393250c9d5SJohn BaldwinCFLAGS+=	-DWHIRLPOOL_ASM
40544deaccSPierre ProncheryCFLAGS+=	-DGHASH_ASM
413250c9d5SJohn BaldwinCFLAGS+=	-DCMLL_ASM
42544deaccSPierre ProncheryCFLAGS+=	-DECP_NISTZ256_ASM -DX25519_ASM
43544deaccSPierre ProncheryCFLAGS+=	-DPADLOCK_ASM
44544deaccSPierre ProncheryCFLAGS+=	-DPOLY1305_ASM
45544deaccSPierre Pronchery.elif defined(ASM_arm)
46544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_GF2m
47544deaccSPierre ProncheryCFLAGS+=	-DSHA1_ASM -DSHA256_ASM -DSHA512_ASM
48544deaccSPierre ProncheryCFLAGS+=	-DKECCAK1600_ASM
49544deaccSPierre ProncheryCFLAGS+=	-DBSAES_ASM
50544deaccSPierre ProncheryCFLAGS+=	-DGHASH_ASM
51544deaccSPierre ProncheryCFLAGS+=	-DECP_NISTZ256_ASM
52544deaccSPierre ProncheryCFLAGS+=	-DPOLY1305_ASM
53544deaccSPierre Pronchery.elif defined(ASM_i386)
54544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_IA32_SSE2
55544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_BN_ASM_PART_WORDS -DOPENSSL_BN_ASM_MONT
56544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_BN_ASM_GF2m
57544deaccSPierre ProncheryCFLAGS+=	-DSHA1_ASM -DSHA256_ASM -DSHA512_ASM
58544deaccSPierre ProncheryCFLAGS+=	-DRC4_ASM
59544deaccSPierre ProncheryCFLAGS+=	-DMD5_ASM
60544deaccSPierre ProncheryCFLAGS+=	-DRMD160_ASM
613250c9d5SJohn BaldwinCFLAGS+=	-DAES_ASM
62544deaccSPierre ProncheryCFLAGS+=	-DVPAES_ASM
63544deaccSPierre ProncheryCFLAGS+=	-DWHIRLPOOL_ASM
64544deaccSPierre ProncheryCFLAGS+=	-DGHASH_ASM
653250c9d5SJohn BaldwinCFLAGS+=	-DCMLL_ASM
66544deaccSPierre ProncheryCFLAGS+=	-DECP_NISTZ256_ASM
67544deaccSPierre ProncheryCFLAGS+=	-DPADLOCK_ASM
68544deaccSPierre ProncheryCFLAGS+=	-DPOLY1305_ASM
69544deaccSPierre Pronchery.elif defined(ASM_powerpc)
70544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_BN_ASM_MONT
71544deaccSPierre ProncheryCFLAGS+=	-DAES_ASM
72544deaccSPierre ProncheryCFLAGS+=	-DVPAES_ASM
73544deaccSPierre ProncheryCFLAGS+=	-DSHA1_ASM
74544deaccSPierre ProncheryCFLAGS+=	-DSHA256_ASM
75544deaccSPierre ProncheryCFLAGS+=	-DSHA512_ASM
76544deaccSPierre ProncheryCFLAGS+=	-DPOLY1305_ASM
77544deaccSPierre Pronchery.elif defined(ASM_powerpc64)
78544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_BN_ASM_MONT
79544deaccSPierre ProncheryCFLAGS+=	-DAES_ASM
80544deaccSPierre ProncheryCFLAGS+=	-DVPAES_ASM
81544deaccSPierre ProncheryCFLAGS+=	-DSHA1_ASM
82544deaccSPierre ProncheryCFLAGS+=	-DSHA256_ASM
83544deaccSPierre ProncheryCFLAGS+=	-DSHA512_ASM
84544deaccSPierre ProncheryCFLAGS+=	-DPOLY1305_ASM
85544deaccSPierre ProncheryCFLAGS+=	-DECP_NISTZ256_ASM
86544deaccSPierre ProncheryCFLAGS+=	-DX25519_ASM
87544deaccSPierre ProncheryCFLAGS+=	-DKECCAK1600_ASM
88544deaccSPierre Pronchery.elif defined(ASM_powerpc64le)
89544deaccSPierre ProncheryCFLAGS+=	-DOPENSSL_BN_ASM_MONT
90544deaccSPierre ProncheryCFLAGS+=	-DAES_ASM
91544deaccSPierre ProncheryCFLAGS+=	-DVPAES_ASM
92544deaccSPierre ProncheryCFLAGS+=	-DSHA1_ASM
93544deaccSPierre ProncheryCFLAGS+=	-DSHA256_ASM
94544deaccSPierre ProncheryCFLAGS+=	-DSHA512_ASM
95544deaccSPierre ProncheryCFLAGS+=	-DPOLY1305_ASM
96544deaccSPierre ProncheryCFLAGS+=	-DECP_NISTZ256_ASM
97544deaccSPierre ProncheryCFLAGS+=	-DX25519_ASM
98544deaccSPierre ProncheryCFLAGS+=	-DKECCAK1600_ASM
99544deaccSPierre Pronchery.endif
100544deaccSPierre Pronchery.endif
101544deaccSPierre Pronchery
102544deaccSPierre ProncheryMANDIR=		${SHAREDIR}/openssl/man/man
103544deaccSPierre Pronchery
104544deaccSPierre ProncheryCFLAGS+=	-DOPENSSLDIR="\"/etc/ssl\""
105544deaccSPierre ProncheryCFLAGS+=	-DENGINESDIR="\"${LIBDIR}/engines-3\""
106544deaccSPierre ProncheryCFLAGS+=	-DMODULESDIR="\"${LIBDIR}/ossl-modules\""
107544deaccSPierre Pronchery
108544deaccSPierre ProncheryCFLAGS+=	-DNDEBUG
109544deaccSPierre Pronchery
110544deaccSPierre ProncheryCFLAGS+=	-I${LCRYPTO_SRC}/crypto
111544deaccSPierre ProncheryCFLAGS+=	-I${LCRYPTO_SRC}/crypto/ec/curve448
112544deaccSPierre ProncheryCFLAGS+=	-I${LCRYPTO_SRC}/crypto/ec/curve448/arch_32
113544deaccSPierre ProncheryCFLAGS+=	-I${LCRYPTO_SRC}/crypto/modes
114544deaccSPierre ProncheryCFLAGS+=	-I${.OBJDIR}
115544deaccSPierre Pronchery
116544deaccSPierre Pronchery.if !empty(SRCS:M*.S)
117544deaccSPierre ProncheryACFLAGS+=	-Wa,--noexecstack
118544deaccSPierre Pronchery.endif
119