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