Makefile.openssl revision 1.22 1 # $NetBSD: Makefile.openssl,v 1.22 2025/07/13 20:31:43 christos Exp $
2
3 .ifndef _MAKEFILE_OPENSSL_INCLUDED
4 _MAKEFILE_OPENSSL_INCLUDED=1
5
6 .include <bsd.own.mk>
7 WARNS=3
8
9 # would require changing a lot of code
10 CWARNFLAGS+= -Wno-error=cast-qual
11 CWARNFLAGS+= -Wno-error=char-subscripts # XXX likely real ctype(3) missing cast bugs
12 CWARNFLAGS+= -Wno-error=missing-field-initializers
13 CWARNFLAGS+= -Wno-error=shadow
14
15 CWARNFLAGS.gcc+= -Wno-error=discarded-qualifiers
16 CWARNFLAGS.clang+= -Wno-error=ignored-qualifiers
17
18 # OpenSSL extensively uses string literals as char *, which clang
19 # (reasonably if not exactly rightly) objects to.
20 CWARNFLAGS.clang+= -Wno-error=incompatible-pointer-types-discards-qualifiers
21
22 # XXX: re-examine the below
23 CWARNFLAGS.clang+= -Wno-empty-body -Wno-unused-value -Wno-parentheses
24 CWARNFLAGS.clang+= -Wno-implicit-int-float-conversion
25 # XXX: This warning seems to trigger incorrectly
26 CWARNFLAGS.clang+= -Wno-atomic-alignment
27
28 LINTFLAGS+= -X 117 # bitwise '>>' on signed value possibly nonportable
29 LINTFLAGS+= -X 129 # expression has null effect
30 LINTFLAGS+= -X 132 # conversion may lose accuracy
31 LINTFLAGS+= -X 220 # fallthrough on case statement
32 LINTFLAGS+= -X 231 # argument unused in function
33 LINTFLAGS+= -X 309 # (unsigned int)0x80000000 & (unsigned long)x
34 LINTFLAGS+= -X 275 # cast discards 'const' from pointer
35 LINTFLAGS+= -X 298 # argument conversion may lose accuracy
36
37
38 .if ${HAVE_OPENSSL} <= 11
39 OSSL_ENGINESDIR=/usr/lib/openssl
40 .else
41 . if defined(MLIBDIR)
42 OSSL_LIBDIR=/usr/lib/${MLIBDIR}/openssl
43 . else
44 OSSL_LIBDIR=/usr/lib/openssl
45 . endif
46 OSSL_ENGINESDIR=${OSSL_LIBDIR}/engines
47 OSSL_MODULESDIR=${OSSL_LIBDIR}/modules
48 .endif
49
50 OPENSSLSRC= ${CRYPTODIST}/external/${EXTERNAL_OPENSSL_SUBDIR}/dist
51 CPPFLAGS+= -DOPENSSLDIR=\"/etc/openssl\"
52 CPPFLAGS+= -DENGINESDIR=\"${OSSL_ENGINESDIR}\"
53 CPPFLAGS+= -DMODULESDIR=\"${OSSL_MODULESDIR}\"
54
55 .endif
56