pkgsrc/security/openssl/Makefile
fredb 5e16130edb Make an explicit BUILD_DEPENDS on perl5, rather than the run-time DEPENDS
that USE_PERL implies, as the core functionality of this package does not
depend on perl. The user can always install perl later, to format the "pod"
docs or to run the installed scripts.
2001-04-09 02:36:47 +00:00

155 lines
5.5 KiB
Makefile

# $NetBSD: Makefile,v 1.35 2001/04/09 02:36:47 fredb Exp $
#
DISTNAME= openssl-0.9.5a
CATEGORIES= security
MASTER_SITES= ftp://ftp.openssl.org/source/ \
ftp://ftp.uni-trier.de/pub/unix/security/openssl/
MAINTAINER= packages@netbsd.org
HOMEPAGE= http://www.openssl.org/
COMMENT= Secure Socket Layer and cryptographic library
BUILD_DEPENDS+= perl-5.*:../../lang/perl5
CONFLICTS= SSLeay-* ssleay-* base64-*
CRYPTO= YES
# supplies IDEA/RC5
LICENCE= fee-based-commercial-use
# matches what's in `Configure' (except sparc64)
ONLY_FOR_PLATFORM= NetBSD-*-alpha NetBSD-*-arm32 NetBSD-*-i386 \
NetBSD-*-m68k NetBSD-*-mips NetBSD-*-mipseb \
NetBSD-*-mipsel NetBSD-*-ns32k NetBSD-*-powerpc \
NetBSD-*-sparc NetBSD-*-vax \
SunOS-*
CONFIGURE_ARGS= -fPIC -DPIC --openssldir=${PREFIX} --prefix=${PREFIX} \
${LDFLAGS}
CONFIGURE_ENV= CC="${CC}"
.include "../../mk/bsd.prefs.mk"
PATCHDIR= ${WRKDIR}/.patches
.if ${OPSYS} == "NetBSD"
MAKE_ENV= LD_LIBRARY_PATH=${WRKSRC} MAKELIB=${FILESDIR}/makelib
.endif
.if ${OPSYS} == "SunOS"
PATCH_SUM_FILE= ${FILESDIR}/patch-sum.solaris
.endif
PLIST_SRC= ${WRKDIR}/.PLIST_SRC
.if ${OPSYS} == "NetBSD" && !exists(/usr/libexec/ld.elf_so) && !exists(/usr/libexec/ld.so)
IGNORE= ${PKGNAME} requires shared object support
.endif
.if defined(USE_RSAREF2) && ${USE_RSAREF2} == YES
DEPENDS= rsaref-2.0p3:../../security/rsaref
CONFIGURE_ARGS+= rsaref
PLIST_RSAREF= ${PKGDIR}/PLIST.rsaref
.endif
pre-patch:
${MKDIR} ${WRKDIR}/.patches
@${CP} ${.CURDIR}/patches/patch-* ${WRKDIR}/.patches
.if ${OPSYS} == "NetBSD"
for FILE in ${.CURDIR}/patches/patch_netbsd-*; do \
${CP} $$FILE ${PATCHDIR}/patch-$${FILE##*-}; \
done
.endif
# The Perl stuff doesn't work yet (nor did it work properly in SSLeay...)
do-configure:
@cd ${WRKSRC} && ${PERL5} util/perlpath.pl ${LOCALBASE}/bin
@cd ${WRKSRC} && ${SETENV} ${CONFIGURE_ENV} ./config ${CONFIGURE_ARGS}
# @cd ${WRKSRC}/perl && ${SETENV} ${CONFIGURE_ENV} ${PERL5} Makefile.PL
#post-build:
# @cd ${WRKSRC}/perl && ${MAKE}
do-install:
${INSTALL_PROGRAM} ${WRKSRC}/apps/openssl ${PREFIX}/bin/
@cd ${PREFIX}/bin && \
for file in asn1parse base64 bf bf-cbc bf-cfb bf-ecb bf-ofb ca \
cast cast-cbc cast5-cbc cast5-cfb cast5-ecb cast5-ofb ciphers crl \
crl2pkcs7 des des-cbc des-cfb des-ecb des-ede des-ede-cbc des-ede-cfb \
des-ede-ofb des-ede3 des-ede3-cbc des-ede3-cfb des-ede3-ofb \
des-ofb des3 desx dgst dh dsa dsaparam enc errstr gendh gendsa \
genrsa idea idea-cbc idea-cfb idea-ecb idea-ofb md2 mdc2 nseq \
pkcs12 pkcs7 pkcs8 rc2 rc2-cbc rc2-cfb rc2-ecb rc2-ofb rc4 rc5 \
rc5-cbc rc5-cfb rc5-ecb rc5-ofb req rmd160 rsa s_client s_server \
s_time sess_id sha sha1 speed verify version x509; do \
${RM} -f $$file ; \
${LN} -sf openssl $$file; \
done
cd ${WRKSRC}/tools && ${INSTALL_SCRIPT} \
c_hash c_info c_issuer c_name c_rehash ${PREFIX}/bin/
${SED} -e s,/usr/local,${PREFIX}, ${WRKSRC}/apps/der_chop >${WRKDIR}/der_chop && \
${INSTALL_SCRIPT} ${WRKDIR}/der_chop ${PREFIX}/bin/
cd ${WRKSRC}/apps && ${INSTALL_SCRIPT} CA.sh CA.pl ${PREFIX}/bin/
${INSTALL_DATA} ${WRKSRC}/apps/openssl.cnf ${PREFIX}/etc/openssl.cnf.example
cd ${WRKSRC} && ${INSTALL_DATA} libcrypto.a libssl.a ${PREFIX}/lib/
.if ${OPSYS} == "NetBSD"
cd ${WRKSRC} && ${INSTALL_DATA} libcrypto.so.1.0 libssl.so.1.0 ${PREFIX}/lib/
.if ${OBJECT_FMT} == "ELF"
.for shared_lib in libcrypto.so.1.0 libssl.so.1.0
cd ${PREFIX}/lib && ${LN} -s ${shared_lib} ${shared_lib:R} && \
${LN} -s ${shared_lib} ${shared_lib:R:R}
.endfor
.endif
.endif
.if exists(/usr/bin/ranlib)
/usr/bin/ranlib ${PREFIX}/lib/libcrypto.a
/usr/bin/ranlib ${PREFIX}/lib/libssl.a
.endif
.if defined(USE_RSAREF2) && ${USE_RSAREF2} == YES
# libRSAglue.a is only useful if you are using the RSAREF2 library.
cd ${WRKSRC} && ${INSTALL_DATA} libRSAglue.a ${PREFIX}/lib/
.endif
${INSTALL_DATA_DIR} ${PREFIX}/include/openssl
cd ${WRKSRC}/include/openssl && \
for file in \
asn1.h asn1_mac.h bio.h blowfish.h bn.h buffer.h cast.h comp.h conf.h \
crypto.h des.h dh.h dsa.h e_os.h e_os2.h ebcdic.h err.h evp.h hmac.h \
idea.h lhash.h md2.h md5.h mdc2.h objects.h opensslconf.h opensslv.h \
pem.h pem2.h pkcs12.h pkcs7.h rand.h rc2.h rc4.h rc5.h ripemd.h rsa.h \
safestack.h sha.h ssl.h ssl2.h ssl23.h ssl3.h stack.h tls1.h tmdiff.h \
txt_db.h x509.h x509_vfy.h x509v3.h ; do \
${INSTALL_DATA} $$file ${PREFIX}/include/openssl/; \
done
# @cd ${WRKSRC}/perl && ${MAKE} install
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/openssl
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/openssl/apps
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/openssl/crypto
${INSTALL_DATA_DIR} ${PREFIX}/share/doc/openssl/ssl
${INSTALL_DATA} ${WRKSRC}/doc/apps/* \
${PREFIX}/share/doc/openssl/apps/
${INSTALL_DATA} ${WRKSRC}/doc/crypto/* \
${PREFIX}/share/doc/openssl/crypto/
${INSTALL_DATA} ${WRKSRC}/doc/ssl/* \
${PREFIX}/share/doc/openssl/ssl/
for file in README c-indentation.el openssl.txt openssl_button.gif \
openssl_button.html ssleay.txt ; do \
${INSTALL_DATA} ${WRKSRC}/doc/$$file \
${PREFIX}/share/doc/openssl/; \
done
${INSTALL_DATA_DIR} ${PREFIX}/certs
${INSTALL_DATA_DIR} ${PREFIX}/private
@if [ ! -f ${PREFIX}/etc/openssl.cnf ]; then \
${CP} -p ${PREFIX}/etc/openssl.cnf.example ${PREFIX}/etc/openssl.cnf; \
fi
post-install:
${CAT} ${PKGDIR}/PLIST.common ${PKGDIR}/PLIST.${LOWER_OPSYS} \
${PLIST_RSAREF} > ${PLIST_SRC}
.include "../../mk/bsd.pkg.mk"
test: all
@cd ${WRKSRC}/test && ${SETENV} LD_LIBRARY_PATH=${WRKSRC} \
MAKELIB=${FILESDIR}/makelib ${MAKE} tests
@${ECHO} "*** Tests successful. ***"