summaryrefslogtreecommitdiff
path: root/Mk
diff options
context:
space:
mode:
authorDirk Meyer <dinoex@FreeBSD.org>2003-04-03 18:24:31 +0000
committerDirk Meyer <dinoex@FreeBSD.org>2003-04-03 18:24:31 +0000
commitcae454ac232e47db128645ed210cef8dc49602f3 (patch)
tree6025b98e234e978cf8f4650e3f71a78408d2c706 /Mk
parentadd dbf 0.5.1 (diff)
- rename Makefile.ssl to bsd.openssl.mk
Notes
Notes: svn path=/head/; revision=78053
Diffstat (limited to 'Mk')
-rw-r--r--Mk/bsd.openssl.mk108
1 files changed, 108 insertions, 0 deletions
diff --git a/Mk/bsd.openssl.mk b/Mk/bsd.openssl.mk
new file mode 100644
index 000000000000..d25013deaadc
--- /dev/null
+++ b/Mk/bsd.openssl.mk
@@ -0,0 +1,108 @@
+# makefile for use of: OpenSSH
+# Date created: 31 May 2002
+# Whom: dinoex
+#
+# $FreeBSD: /tmp/pcvs/ports/Mk/bsd.openssl.mk,v 1.1 2003-04-03 18:24:31 dinoex Exp $
+#
+# this substitutes USE_OPENSSL=yes
+# just include this makefile after bsd.ports.pre.mk
+#
+# the user/port can now set this options in the makefiles.
+#
+# USE_OPENSSL_BASE=yes - Use the version in the base system.
+# USE_OPENSSL_PORT=yes - Use the port, even if base if up to date
+# USE_OPENSSL_BETA=yes - Use a snapshot of recent openssl
+#
+# The makefile sets this variables:
+# OPENSSLBASE - "/usr" or ${LOCALBASE}
+# OPENSSLDIR - path to openssl
+# OPENSSLLIB - path to the libs
+# OPENSSLINC - path to the matching includes
+#
+# MAKE_ENV - extended with the variables above
+# LIB_DEPENDS - are added if needed
+
+# if no preference was set, check for an up to date base version
+# but give an installed port preference over it.
+.if !defined(USE_OPENSSL_BASE) && \
+ !defined(USE_OPENSSL_BETA) && \
+ !defined(USE_OPENSSL_PORT) && \
+ !exists(${LOCALBASE}/lib/libcrypto.so)
+# Security: version in base must be 0.9.7a
+.if exists(/usr/lib/libcrypto.so.3)
+OPENSSLVER!= ${AWK} '/OPENSSL_VERSION_NUMBER/ { print $$3 }' \
+ /usr/include/openssl/opensslv.h
+.if ${OPENSSLVER} == 0x0090701fL
+USE_OPENSSL_BASE=yes
+.endif
+.endif
+.endif
+
+.if defined(USE_OPENSSL_BASE)
+OPENSSLBASE= /usr
+OPENSSLDIR= /etc/ssl
+
+.if !exists(/usr/lib/libcrypto.so)
+.BEGIN:
+ @${ECHO_CMD} "This port requires the OpenSSL library, which is part of"
+ @${ECHO_CMD} "the FreeBSD crypto distribution but not installed on your"
+ @${ECHO_CMD} "machine. Please see the \"OpenSSL\" section in the handbook"
+ @${ECHO_CMD} "(at \"http://www.FreeBSD.org/doc/en_US.ISO8859-1/books/handbook/openssl.html\", for instance)"
+ @${ECHO_CMD} "for instructions on how to obtain and install the FreeBSD"
+ @${ECHO_CMD} "OpenSSL distribution."
+ @${FALSE}
+.endif
+.if exists(${LOCALBASE}/lib/libcrypto.so)
+.BEGIN:
+ @${ECHO_CMD} "This port wants the OpenSSL library from the FreeBSD"
+ @${ECHO_CMD} "base system. You can't build against it, while a newer"
+ @${ECHO_CMD} "Version is installed by a port."
+ @${ECHO_CMD} "Please deinstall the port or undefine USE_OPENSSL_BASE."
+ @${FALSE}
+.endif
+
+# OpenSSL in the base system may not include IDEA for patent licensing reasons.
+.if defined(MAKE_IDEA) && !defined(OPENSSL_IDEA)
+OPENSSL_IDEA= ${MAKE_IDEA}
+.else
+OPENSSL_IDEA?= NO
+.endif
+
+.if ${OPENSSL_IDEA} == "NO"
+# XXX This is a hack to work around the fact that /etc/make.conf clobbers
+# our CFLAGS. It might not be enough for all future ports.
+.if defined(HAS_CONFIGURE)
+CFLAGS+= -DNO_IDEA
+.else
+OPENSSL_CFLAGS+= -DNO_IDEA
+.endif
+MAKE_ARGS+= OPENSSL_CFLAGS="${OPENSSL_CFLAGS}"
+.endif
+
+.else
+
+.if exists(/usr/lib/libcrypto.so.3)
+SHLIBVER= 4
+.else
+SHLIBVER= 3
+.endif
+
+OPENSSLBASE= ${LOCALBASE}
+.if defined(USE_OPENSSL_BETA)
+OPENSSLDIR= ${OPENSSLBASE}/openssl
+LIB_DEPENDS+= crypto.${SHLIBVER}:${PORTSDIR}/security/openssl-beta
+.else
+OPENSSLDIR= ${OPENSSLBASE}/openssl
+LIB_DEPENDS+= crypto.${SHLIBVER}:${PORTSDIR}/security/openssl
+.endif
+
+.endif
+
+OPENSSLLIB= ${OPENSSLBASE}/lib
+OPENSSLINC= ${OPENSSLBASE}/include
+MAKE_ENV+= OPENSSLLIB=${OPENSSLLIB} OPENSSLINC=${OPENSSLINC} \
+ OPENSSLBASE=${OPENSSLBASE} OPENSSLDIR=${OPENSSLDIR}
+
+### crypto
+#RESTRICTED= "Contains cryptography."
+