xref: /netbsd-src/crypto/Makefile.openssl (revision dcc4f12d8d65994207fd5f741e1a058e79538559)
1*dcc4f12dSrillig#	$NetBSD: Makefile.openssl,v 1.20 2025/01/06 19:11:26 rillig Exp $
2c3b6f393Sthorpej
3c3b6f393Sthorpej.ifndef _MAKEFILE_OPENSSL_INCLUDED
4c3b6f393Sthorpej_MAKEFILE_OPENSSL_INCLUDED=1
5c3b6f393Sthorpej
6c3b6f393Sthorpej.include <bsd.own.mk>
79a21710eSchristosWARNS=3
866d0962fSchristos
99a21710eSchristos# would require changing a lot of code
1091fcf174SriastradhCWARNFLAGS+= -Wno-error=cast-qual
1191fcf174SriastradhCWARNFLAGS+= -Wno-error=char-subscripts # XXX likely real ctype(3) missing cast bugs
1291fcf174SriastradhCWARNFLAGS+= -Wno-error=missing-field-initializers
1391fcf174SriastradhCWARNFLAGS+= -Wno-error=shadow
149a21710eSchristos
1566d0962fSchristosCWARNFLAGS.gcc+= -Wno-error=discarded-qualifiers
1666d0962fSchristosCWARNFLAGS.clang+= -Wno-error=ignored-qualifiers
1766d0962fSchristos
1806e60785Sriastradh# OpenSSL extensively uses string literals as char *, which clang
1906e60785Sriastradh# (reasonably if not exactly rightly) objects to.
2006e60785SriastradhCWARNFLAGS.clang+= -Wno-error=incompatible-pointer-types-discards-qualifiers
2106e60785Sriastradh
2266d0962fSchristos# XXX: re-examine the below
2366d0962fSchristosCWARNFLAGS.clang+= -Wno-empty-body -Wno-unused-value -Wno-parentheses
2466d0962fSchristosCWARNFLAGS.clang+= -Wno-implicit-int-float-conversion
2566d0962fSchristos# XXX: This warning seems to trigger incorrectly
2666d0962fSchristosCWARNFLAGS.clang+=	-Wno-atomic-alignment
2766d0962fSchristos
2866d0962fSchristosLINTFLAGS+=	-X 117	# bitwise '>>' on signed value possibly nonportable
29*dcc4f12dSrilligLINTFLAGS+=	-X 129	# expression has null effect
30*dcc4f12dSrilligLINTFLAGS+=	-X 132	# conversion may lose accuracy
31*dcc4f12dSrilligLINTFLAGS+=	-X 161	# constant in conditional context
3266d0962fSchristosLINTFLAGS+=	-X 220	# fallthrough on case statement
33*dcc4f12dSrilligLINTFLAGS+=	-X 231	# argument unused in function
34*dcc4f12dSrilligLINTFLAGS+=	-X 309	# (unsigned int)0x80000000 & (unsigned long)x
35*dcc4f12dSrilligLINTFLAGS+=	-X 275	# cast discards 'const' from pointer
36*dcc4f12dSrilligLINTFLAGS+=	-X 298	# argument conversion may lose accuracy
3766d0962fSchristos
38c3b6f393Sthorpej
39bfed990fSchristos.if ${HAVE_OPENSSL} <= 11
40bfed990fSchristosOSSL_ENGINESDIR=/usr/lib/openssl
41bfed990fSchristos.else
42bfed990fSchristos.	if defined(MLIBDIR)
43bfed990fSchristosOSSL_LIBDIR=/usr/lib/${MLIBDIR}/openssl
44bfed990fSchristos.	else
45bfed990fSchristosOSSL_LIBDIR=/usr/lib/openssl
46bfed990fSchristos.	endif
47bfed990fSchristosOSSL_ENGINESDIR=${OSSL_LIBDIR}/engines
48bfed990fSchristosOSSL_MODULESDIR=${OSSL_LIBDIR}/modules
49bfed990fSchristos.endif
50bfed990fSchristos
510c048d5aSchristosOPENSSLSRC=	${CRYPTODIST}/external/bsd/${EXTERNAL_OPENSSL_SUBDIR}/dist
52c3b6f393SthorpejCPPFLAGS+=	-DOPENSSLDIR=\"/etc/openssl\"
53bfed990fSchristosCPPFLAGS+=	-DENGINESDIR=\"${OSSL_ENGINESDIR}\"
54bfed990fSchristosCPPFLAGS+=	-DMODULESDIR=\"${OSSL_MODULESDIR}\"
55c3b6f393Sthorpej
56c3b6f393Sthorpej.endif
57