be45876be2
- Fix for TLS record tampering bug. A carefully crafted invalid handshake could crash OpenSSL with a NULL pointer exception. Thanks to Anton Johansson for reporting this issues. (CVE-2013-4353) - Keep original DTLS digest and encryption contexts in retransmission structures so we can use the previous session parameters if they need to be resent. (CVE-2013-6450) [Steve Henson] - Add option SSL_OP_SAFARI_ECDHE_ECDSA_BUG (part of SSL_OP_ALL) which avoids preferring ECDHE-ECDSA ciphers when the client appears to be Safari on OS X. Safari on OS X 10.8..10.8.3 advertises support for several ECDHE-ECDSA ciphers, but fails to negotiate them. The bug is fixed in OS X 10.8.4, but Apple have ruled out both hot fixing 10.8..10.8.3 and forcing users to upgrade to 10.8.4 or newer. [Rob Stradling, Adam Langley]
147 lines
3.8 KiB
Makefile
147 lines
3.8 KiB
Makefile
# $NetBSD: Makefile,v 1.183 2014/01/10 14:32:42 tron Exp $
|
|
|
|
DISTNAME= openssl-1.0.1f
|
|
MASTER_SITES= http://ftp.openssl.org/source/
|
|
SVR4_PKGNAME= ossl
|
|
CATEGORIES= security
|
|
|
|
MAINTAINER= pkgsrc-users@NetBSD.org
|
|
HOMEPAGE= http://www.openssl.org/
|
|
COMMENT= Secure Socket Layer and cryptographic library
|
|
|
|
CONFLICTS= SSLeay-[0-9]* ssleay-[0-9]*
|
|
|
|
CRYPTO= yes
|
|
|
|
PKG_INSTALLATION_TYPES= overwrite pkgviews
|
|
|
|
BUILD_DEPENDS+= p5-Perl4-CoreLibs-[0-9]*:../../devel/p5-Perl4-CoreLibs
|
|
|
|
.include "../../mk/bsd.prefs.mk"
|
|
.include "../../mk/compiler.mk"
|
|
|
|
EXTRACT_USING= gtar
|
|
USE_TOOLS+= fgrep gmake perl
|
|
TEST_TARGET= tests
|
|
MAKE_JOBS_SAFE= no
|
|
|
|
HAS_CONFIGURE= yes
|
|
CONFIGURE_SCRIPT= ./config
|
|
CONFIGURE_ARGS+= --prefix=${PREFIX:Q}
|
|
CONFIGURE_ARGS+= --install_prefix=${DESTDIR}
|
|
CONFIGURE_ARGS+= --openssldir=${PKG_SYSCONFDIR:Q}
|
|
CONFIGURE_ARGS+= shared no-fips
|
|
|
|
.if ${OPSYS} == "SunOS"
|
|
. if ${MACHINE_ARCH} == "sparc"
|
|
OPENSSL_MACHINE_ARCH= ${SPARC_TARGET_ARCH}
|
|
. elif ${MACHINE_ARCH} == "i386"
|
|
OPENSSL_MACHINE_ARCH= x86
|
|
. elif ${MACHINE_ARCH} == "x86_64"
|
|
OPENSSL_MACHINE_ARCH= ${MACHINE_ARCH}
|
|
. endif
|
|
# only override the configure target if we know the platform, falling
|
|
# back to ./config's autodetection if not.
|
|
. if defined(OPENSSL_MACHINE_ARCH) && !empty(OPENSSL_MACHINE_ARCH)
|
|
CONFIGURE_SCRIPT= ./Configure
|
|
. if !empty(CC_VERSION:Mgcc*)
|
|
CONFIGURE_ARGS+= solaris${${ABI}==64:?64:}-${OPENSSL_MACHINE_ARCH}-gcc
|
|
. else
|
|
CONFIGURE_ARGS+= solaris${${ABI}==64:?64:}-${OPENSSL_MACHINE_ARCH}-cc
|
|
. endif
|
|
. endif
|
|
.elif ${OPSYS} == "IRIX"
|
|
CONFIGURE_ARGS+= no-asm
|
|
. if ${ABI} == "64"
|
|
CONFIGURE_SCRIPT= ./Configure
|
|
. if !empty(CC_VERSION:Mgcc*)
|
|
CONFIGURE_ARGS+= irix64-mips4-gcc
|
|
. else
|
|
CONFIGURE_ARGS+= irix64-mips4-cc
|
|
. endif
|
|
. endif
|
|
.elif ${OPSYS} == "OSF1"
|
|
USE_PLIST_SHLIB= no
|
|
CONFIGURE_SCRIPT= ./Configure
|
|
. if !empty(CC_VERSION:Mgcc*)
|
|
CONFIGURE_ARGS+= tru64-alpha-gcc
|
|
. else
|
|
CONFIGURE_ARGS+= tru64-alpha-cc
|
|
. endif
|
|
.elif ${OPSYS} == "Darwin"
|
|
CONFIGURE_SCRIPT= ./Configure
|
|
. if defined(ABI) && ${ABI} == "64"
|
|
CONFIGURE_ARGS+= darwin64-${MACHINE_ARCH}-cc
|
|
. elif ${MACHINE_ARCH} == "powerpc"
|
|
CONFIGURE_ARGS+= darwin-ppc-cc
|
|
. else
|
|
CONFIGURE_ARGS+= darwin-${MACHINE_ARCH}-cc
|
|
. endif
|
|
|
|
.include "../../mk/dlopen.buildlink3.mk"
|
|
|
|
SUBST_CLASSES+= dl
|
|
SUBST_MESSAGE.dl= Adding dynamic link compatibility library.
|
|
SUBST_STAGE.dl= post-configure
|
|
SUBST_FILES.dl= Makefile apps/Makefile crypto/Makefile \
|
|
crypto/pkcs7/Makefile test/Makefile
|
|
SUBST_SED.dl= -e 's,^EX_LIBS=,EX_LIBS=${DL_LDFLAGS:Q} ,g'
|
|
|
|
.elif ${OPSYS} == "Interix"
|
|
|
|
SUBST_CLASSES+= soname
|
|
SUBST_STAGE.soname= post-configure
|
|
SUBST_FILES.soname= Makefile.shared
|
|
SUBST_SED.soname= -e 's/-Wl,-soname=/-Wl,-h,/g'
|
|
|
|
.elif ${OPSYS} == "HPUX"
|
|
|
|
CONFIGURE_SCRIPT= ./Configure
|
|
|
|
. if ${ABI} == "64"
|
|
. if ${MACHINE_ARCH} == "hppa"
|
|
CONFIGURE_ARGS+= hpux64-parisc2-${CC}
|
|
. else
|
|
CONFIGURE_ARGS+= hpux64-ia64-${CC}
|
|
. endif
|
|
. else
|
|
. if ${MACHINE_ARCH} == "hppa"
|
|
CONFIGURE_ARGS+= hpux-parisc-${CC}
|
|
. else
|
|
CONFIGURE_ARGS+= hpux-ia64-${CC}
|
|
. endif
|
|
. endif
|
|
.elif ${OPSYS} == "Cygwin"
|
|
USE_PLIST_SHLIB= no
|
|
.elif ${OPSYS} == "Linux"
|
|
. if ${MACHINE_ARCH} == "powerpc64"
|
|
CONFIGURE_SCRIPT= ./Configure
|
|
CONFIGURE_ARGS+= linux-ppc64
|
|
. endif
|
|
.endif
|
|
|
|
.include "../../security/openssl/options.mk"
|
|
|
|
CONFIGURE_ARGS+= ${CFLAGS} ${LDFLAGS}
|
|
CONFIGURE_ENV+= PERL=${PERL5:Q}
|
|
|
|
PLIST_SRC+= ${PKGDIR}/PLIST.common
|
|
USE_PLIST_SHLIB?= yes
|
|
.if ${USE_PLIST_SHLIB} == "yes"
|
|
PLIST_SRC+= ${PKGDIR}/PLIST.shlib
|
|
.endif
|
|
PLIST_SUBST+= SHLIB_VERSION=${OPENSSL_VERS:C/[^0-9]*$//}
|
|
PLIST_SUBST+= SHLIB_MAJOR=${OPENSSL_VERS:C/\..*$//}
|
|
|
|
PKG_SYSCONFSUBDIR= openssl
|
|
CONF_FILES= ${PREFIX}/share/examples/openssl/openssl.cnf \
|
|
${PKG_SYSCONFDIR}/openssl.cnf
|
|
OWN_DIRS= ${PKG_SYSCONFDIR}/certs ${PKG_SYSCONFDIR}/private
|
|
|
|
INSTALLATION_DIRS+= share/examples/openssl
|
|
|
|
# Fix the path to perl in various scripts.
|
|
pre-configure:
|
|
cd ${WRKSRC} && ${PERL5} util/perlpath.pl ${PERL5}
|
|
|
|
.include "../../mk/bsd.pkg.mk"
|