1# $NetBSD: Makefile.openssl,v 1.20 2025/01/06 19:11:26 rillig 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 117 # bitwise '>>' on signed value possibly nonportable 29LINTFLAGS+= -X 129 # expression has null effect 30LINTFLAGS+= -X 132 # conversion may lose accuracy 31LINTFLAGS+= -X 161 # constant in conditional context 32LINTFLAGS+= -X 220 # fallthrough on case statement 33LINTFLAGS+= -X 231 # argument unused in function 34LINTFLAGS+= -X 309 # (unsigned int)0x80000000 & (unsigned long)x 35LINTFLAGS+= -X 275 # cast discards 'const' from pointer 36LINTFLAGS+= -X 298 # argument conversion may lose accuracy 37 38 39.if ${HAVE_OPENSSL} <= 11 40OSSL_ENGINESDIR=/usr/lib/openssl 41.else 42. if defined(MLIBDIR) 43OSSL_LIBDIR=/usr/lib/${MLIBDIR}/openssl 44. else 45OSSL_LIBDIR=/usr/lib/openssl 46. endif 47OSSL_ENGINESDIR=${OSSL_LIBDIR}/engines 48OSSL_MODULESDIR=${OSSL_LIBDIR}/modules 49.endif 50 51OPENSSLSRC= ${CRYPTODIST}/external/bsd/${EXTERNAL_OPENSSL_SUBDIR}/dist 52CPPFLAGS+= -DOPENSSLDIR=\"/etc/openssl\" 53CPPFLAGS+= -DENGINESDIR=\"${OSSL_ENGINESDIR}\" 54CPPFLAGS+= -DMODULESDIR=\"${OSSL_MODULESDIR}\" 55 56.endif 57