summaryrefslogtreecommitdiff
path: root/ftp/curl/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'ftp/curl/Makefile')
-rw-r--r--ftp/curl/Makefile222
1 files changed, 136 insertions, 86 deletions
diff --git a/ftp/curl/Makefile b/ftp/curl/Makefile
index 1af72f646e15..9d1697b8ebc1 100644
--- a/ftp/curl/Makefile
+++ b/ftp/curl/Makefile
@@ -2,8 +2,7 @@
# $FreeBSD$
PORTNAME= curl
-PORTVERSION= 7.24.0
-PORTREVISION= 4
+PORTVERSION= 7.31.0
CATEGORIES= ftp ipv6 www
MASTER_SITES= http://curl.haxx.se/download/ \
LOCAL/sunpoet
@@ -14,27 +13,29 @@ COMMENT?= Non-interactive tool to get files from FTP, GOPHER, HTTP(S) servers
LICENSE= MIT
-OPTIONS_DEFINE= CARES CURL_DEBUG IPV6 KERBEROS4 LDAP LDAPS LIBIDN LIBSSH2 \
- NTLM CA_BUNDLE PROXY RTMP TRACKMEMORY DOCS EXAMPLES
-OPTIONS_RADIO= SSL
-OPTIONS_RADIO_SSL= OPENSSL GNUTLS
-OPTIONS_DEFAULT= CA_BUNDLE PROXY OPENSSL
-CURL_DEBUG_DESC= curl diagnostic output
-LIBIDN_DESC= Internationalized Domain Names via libidn
-LIBSSH2_DESC= SCP/SFTP support via libssh2
-NTLM_DESC= NTLM authentication
-CA_BUNDLE_DESC= Install CA bundle for OpenSSL
-TRACKMEMORY_DESC= curl memory diagnostic output
+OPTIONS_DEFINE= CA_BUNDLE COOKIES CURL_DEBUG DEBUG DOCS EXAMPLES GSSAPI IDN IPV6 LDAP LDAPS LIBSSH2 NTLM PROXY RTMP SPNEGO TLS_SRP
+OPTIONS_RADIO= RESOLV SSL
+OPTIONS_RADIO_RESOLV= CARES THREADED_RESOLVER
+OPTIONS_RADIO_SSL= CYASSL GNUTLS NSS OPENSSL POLARSSL
+OPTIONS_DEFAULT=CA_BUNDLE GSSAPI IPV6 OPENSSL PROXY RESOLV THREADED_RESOLVER SSL TLS_SRP
+CA_BUNDLE_DESC= Install CA bundle for OpenSSL
+COOKIES_DESC= Cookies support
+CURL_DEBUG_DESC=cURL debug memory tracking
+LIBSSH2_DESC= SCP/SFTP support via libssh2
+RESOLV_DESC= DNS resolving options
+SPNEGO= SPNEGO (RFC 4178) support
+THREADED_RESOLVER_DESC= Threaded DNS resolver
+TLS_SRP_DESC= TLS-SRP (Secure Remote Password) support
CONFIGURE_ARGS+=--disable-threaded-resolver --disable-werror \
- --enable-imap --enable-pop3 --enable-rtsp --enable-smtp
+ --enable-imap --enable-pop3 --enable-rtsp --enable-smtp \
+ --without-axtls
CONFIGURE_ENV= LOCALBASE="${LOCALBASE}"
GNU_CONFIGURE= yes
-MAKE_ENV= SHLIB_VER="${SHLIB_VER}"
MAKE_JOBS_SAFE= yes
-USES= pathfix
-USE_PERL5_BUILD= yes
+USE_PERL5_BUILD=yes
USE_XZ= yes
+USES= pathfix
.if !defined(BUILDING_HIPHOP)
USE_LDCONFIG= yes
@@ -44,7 +45,7 @@ DOCS= BINDINGS BUGS CONTRIBUTE DISTRO-DILEMMA FAQ FEATURES HISTORY \
MANUAL README.netware README.win32 RESOURCES SSLCERTS THANKS \
TODO TheArtOfHttpScripting VERSIONS curl-config.html \
curl-config.pdf curl.html curl.pdf index.html
-MAN1= curl.1 curl-config.1
+MAN1= curl.1 curl-config.1 mk-ca-bundle.1
MAN3= curl_easy_cleanup.3 curl_easy_duphandle.3 curl_easy_escape.3 \
curl_easy_getinfo.3 curl_easy_init.3 curl_easy_pause.3 \
curl_easy_perform.3 curl_easy_recv.3 curl_easy_reset.3 \
@@ -57,59 +58,80 @@ MAN3= curl_easy_cleanup.3 curl_easy_duphandle.3 curl_easy_escape.3 \
curl_multi_info_read.3 curl_multi_init.3 curl_multi_perform.3 \
curl_multi_remove_handle.3 curl_multi_setopt.3 \
curl_multi_socket.3 curl_multi_socket_action.3 \
- curl_multi_strerror.3 curl_multi_timeout.3 \
+ curl_multi_strerror.3 curl_multi_timeout.3 curl_multi_wait.3 \
curl_share_cleanup.3 curl_share_init.3 curl_share_setopt.3 \
curl_share_strerror.3 curl_slist_append.3 \
curl_slist_free_all.3 curl_strequal.3 curl_unescape.3 \
curl_version.3 curl_version_info.3 libcurl.3 libcurl-easy.3 \
libcurl-errors.3 libcurl-multi.3 libcurl-share.3 \
libcurl-tutorial.3
-PLIST_SUB= SHLIB_VER="${SHLIB_VER}"
-
-SHLIB_VER= 6
.endif
+SLAVEDIRS= ftp/curl-hiphop
+
.include <bsd.port.options.mk>
-.if ${PORT_OPTIONS:MLIBSSH2} && ! ${PORT_OPTIONS:MOPENSSL}
-IGNORE= only supports LIBSSH2 with OpenSSL
+.if ${PORT_OPTIONS:MCA_BUNDLE} && !${PORT_OPTIONS:MOPENSSL}
+IGNORE= only supports CA bundle with OpenSSL
.endif
-.if ${PORT_OPTIONS:MNTLM} && ! ${PORT_OPTIONS:MOPENSSL}
-IGNORE= only supports NTLM with OpenSSL
+.if !${PORT_OPTIONS:MGNUTLS} && !${PORT_OPTIONS:MOPENSSL} && ${PORT_OPTIONS:MTLS_SRP}
+IGNORE= only supports TLS-SRP with either OpenSSL or GnuTLS
.endif
-.if ${PORT_OPTIONS:MLDAPS}
-.if ! ${PORT_OPTIONS:MLDAP}
+.if !${PORT_OPTIONS:MLDAP} && ${PORT_OPTIONS:MLDAPS}
IGNORE= only supports LDAPS with LDAP
-.else
-.if ! ${PORT_OPTIONS:MOPENSSL} && ! ${PORT_OPTIONS:MGNUTLS}
-IGNORE= only supports LDAPS with SSL (OpenSSL or GNUTLS)
.endif
+
+.if ${PORT_OPTIONS:MLDAPS} && !${PORT_OPTIONS:MSSL}
+IGNORE= only supports LDAPS with SSL
.endif
+
+.if ${PORT_OPTIONS:MLIBSSH2} && !${PORT_OPTIONS:MOPENSSL}
+IGNORE= only supports LIBSSH2 with OpenSSL
+.endif
+
+.if ${PORT_OPTIONS:MNTLM} && !${PORT_OPTIONS:MCYASSL} && !${PORT_OPTIONS:MGNUTLS} && !${PORT_OPTIONS:MNSS} && !${PORT_OPTIONS:MOPENSSL} && !${PORT_OPTIONS:MPOLARSSL}
+IGNORE= only supports NTLM with SSL
.endif
-.if ${PORT_OPTIONS:MOPENSSL}
-USE_OPENSSL= yes
-CONFIGURE_ARGS+= --with-ssl=${OPENSSLBASE}
.if ${PORT_OPTIONS:MCA_BUNDLE}
RUN_DEPENDS+= ${LOCALBASE}/share/certs/ca-root-nss.crt:${PORTSDIR}/security/ca_root_nss
-CONFIGURE_ARGS+= --with-ca-bundle=${LOCALBASE}/share/certs/ca-root-nss.crt
+CONFIGURE_ARGS+=--with-ca-bundle=${LOCALBASE}/share/certs/ca-root-nss.crt
+.else
+CONFIGURE_ARGS+=--without-ca-bundle
+.endif
+
+.if ${PORT_OPTIONS:MCARES}
+LIB_DEPENDS+= cares:${PORTSDIR}/dns/c-ares
+CONFIGURE_ARGS+=--enable-ares=${LOCALBASE}
.else
-CONFIGURE_ARGS+= --without-ca-bundle
+CONFIGURE_ARGS+=--disable-ares
.endif
+
+.if ${PORT_OPTIONS:MCOOKIES}
+CONFIGURE_ARGS+=--enable-cookies
.else
-CONFIGURE_ARGS+= --without-ssl
-.if ${PORT_OPTIONS:MCA_BUNDLE}
-IGNORE= only supports CA bundle with OpenSSL
+CONFIGURE_ARGS+=--disable-cookies
.endif
+
+.if ${PORT_OPTIONS:MCURL_DEBUG}
+CONFIGURE_ARGS+=--enable-curldebug
+.else
+CONFIGURE_ARGS+=--disable-curldebug
.endif
-.if ${PORT_OPTIONS:MCARES}
-LIB_DEPENDS+= cares:${PORTSDIR}/dns/c-ares
-CONFIGURE_ARGS+= --enable-ares=${LOCALBASE}
+.if ${PORT_OPTIONS:MCYASSL}
+LIB_DEPENDS+= cyassl:${PORTSDIR}/security/yassl
+CONFIGURE_ARGS+=--with-cyassl=${LOCALBASE}
.else
-CONFIGURE_ARGS+= --disable-ares
+CONFIGURE_ARGS+=--without-cyassl
+.endif
+
+.if ${PORT_OPTIONS:MDEBUG}
+CONFIGURE_ARGS+=--enable-debug
+.else
+CONFIGURE_ARGS+=--disable-debug
.endif
.if ${PORT_OPTIONS:MGNUTLS}
@@ -119,88 +141,116 @@ CONFIGURE_ARGS+=--with-gnutls=${LOCALBASE}
CONFIGURE_ARGS+=--without-gnutls
.endif
-.if ${PORT_OPTIONS:MOPENSSL} || ${PORT_OPTIONS:MGNUTLS}
-PLIST_SUB+= SSL=""
+.if ${PORT_OPTIONS:MGSSAPI}
+CONFIGURE_ARGS+=--with-gssapi \
+ --with-gssapi-includes=${INCLUDEDIR} \
+ --with-gssapi-libs=${LIBDIR}
.else
-PLIST_SUB+= SSL="@comment "
+CONFIGURE_ARGS+=--without-gssapi
.endif
-.if ${PORT_OPTIONS:MIPV6}
-CONFIGURE_ARGS+= --enable-ipv6
+.if ${PORT_OPTIONS:MIDN}
+LIB_DEPENDS+= idn:${PORTSDIR}/dns/libidn
+CONFIGURE_ARGS+=--with-libidn=${LOCALBASE}
.else
-CONFIGURE_ARGS+= --disable-ipv6
+CONFIGURE_ARGS+=--without-libidn
.endif
-.if exists(/usr/lib/libkrb.a) && ${PORT_OPTIONS:MKERBEROS4}
-CONFIGURE_ARGS += --with-krb4=/usr
+.if ${PORT_OPTIONS:MIPV6}
+CONFIGURE_ARGS+=--enable-ipv6
.else
-CONFIGURE_ARGS += --without-krb4
+CONFIGURE_ARGS+=--disable-ipv6
.endif
.if ${PORT_OPTIONS:MLDAP}
-CONFIGURE_ARGS+= --enable-ldap
-USE_OPENLDAP= yes
-CFLAGS+= -I${LOCALBASE}/include
+CONFIGURE_ARGS+=--enable-ldap
+CPPFLAGS+= -I${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
+USE_OPENLDAP= yes
+.else
+CONFIGURE_ARGS+=--disable-ldap
+.endif
+
.if ${PORT_OPTIONS:MLDAPS}
-CONFIGURE_ARGS+= --enable-ldaps
+CONFIGURE_ARGS+=--enable-ldaps
.else
-CONFIGURE_ARGS+= --disable-ldaps
+CONFIGURE_ARGS+=--disable-ldaps
.endif
+
+.if ${PORT_OPTIONS:MLIBSSH2}
+LIB_DEPENDS+= ssh2:${PORTSDIR}/security/libssh2
+CONFIGURE_ARGS+=--with-libssh2=${LOCALBASE}
.else
-CONFIGURE_ARGS+= --disable-ldap --disable-ldaps
+CONFIGURE_ARGS+=--without-libssh2
.endif
-.if ${PORT_OPTIONS:MLIBIDN}
-LIB_DEPENDS+= idn.17:${PORTSDIR}/dns/libidn
-CONFIGURE_ARGS+= --with-libidn=${LOCALBASE}
+.if ${PORT_OPTIONS:MNSS}
+LIB_DEPENDS+= nss3:${PORTSDIR}/security/nss
+CONFIGURE_ARGS+=--with-nss=${LOCALBASE}
.else
-CONFIGURE_ARGS+= --without-libidn
+CONFIGURE_ARGS+=--without-nss
.endif
-.if ${PORT_OPTIONS:MLIBSSH2}
-LIB_DEPENDS+= ssh2.1:${PORTSDIR}/security/libssh2
-CONFIGURE_ARGS+= --with-libssh2=${LOCALBASE}
+.if ${PORT_OPTIONS:MNTLM}
+CONFIGURE_ARGS+=--enable-ntlm
.else
-CONFIGURE_ARGS+= --without-libssh2
+CONFIGURE_ARGS+=--disable-ntlm
.endif
-.if ${PORT_OPTIONS:MCURL_DEBUG}
-CONFIGURE_ARGS+= --enable-debug
+.if ${PORT_OPTIONS:MOPENSSL}
+USE_OPENSSL= yes
+CONFIGURE_ARGS+=--with-ssl=${OPENSSLBASE}
+.else
+CONFIGURE_ARGS+=--without-ssl
+.endif
+
+.if ${PORT_OPTIONS:MPOLARSSL}
+LIB_DEPENDS+= polarssl:${PORTSDIR}/security/polarssl
+CONFIGURE_ARGS+=--with-polarssl=${LOCALBASE}
+.else
+CONFIGURE_ARGS+=--without-polarssl
+.endif
+
+.if ${PORT_OPTIONS:MPROXY}
+CONFIGURE_ARGS+=--enable-proxy
+.else
+CONFIGURE_ARGS+=--disable-proxy
.endif
.if ${PORT_OPTIONS:MRTMP}
-LIB_DEPENDS+= rtmp.0:${PORTSDIR}/multimedia/rtmpdump
-CONFIGURE_ARGS+= --with-librtmp=${LOCALBASE}
+LIB_DEPENDS+= rtmp:${PORTSDIR}/multimedia/rtmpdump
+CONFIGURE_ARGS+=--with-librtmp=${LOCALBASE}
.else
-CONFIGURE_ARGS+= --without-librtmp
+CONFIGURE_ARGS+=--without-librtmp
.endif
-.if ${PORT_OPTIONS:MTRACKMEMORY}
-CONFIGURE_ARGS+= --enable-curldebug
+.if ${PORT_OPTIONS:MSPNEGO}
+LIB_DEPENDS+= fbopenssl:${PORTSDIR}/security/fbopenssl
+CPPFLAGS+= -I${LOCALBASE}/include/fbopenssl
+CONFIGURE_ARGS+=--with-spnego=${LOCALBASE}/lib
.else
-CONFIGURE_ARGS+= --disable-curldebug
+CONFIGURE_ARGS+=--without-spnego
.endif
-.if ${PORT_OPTIONS:MNTLM}
-CONFIGURE_ARGS+= --enable-ntlm
+.if ${PORT_OPTIONS:MTHREADED_RESOLVER}
+CONFIGURE_ARGS+=--enable-threaded-resolver
.else
-CONFIGURE_ARGS+= --disable-ntlm
+CONFIGURE_ARGS+=--disable-threaded-resolver
.endif
-.if ${PORT_OPTIONS:MPROXY}
-CONFIGURE_ARGS+= --enable-proxy
+.if ${PORT_OPTIONS:MTLS_SRP}
+CONFIGURE_ARGS+= --enable-tls-srp
.else
-CONFIGURE_ARGS+= --disable-proxy
+CONFIGURE_ARGS+= --disable-tls-srp
.endif
post-patch:
+ @${REINPLACE_CMD} -e 's|\(flags_dbg_off=\)".*"|\1""|; s|\(flags_opt_off=\)".*"|\1""|' ${WRKSRC}/configure
@${REINPLACE_CMD} -e '/^SUBDIRS = / s|$$| docs|; /^DIST_SUBDIRS = / s| docs||; /cd docs &&/d' ${WRKSRC}/Makefile.in
- @${REINPLACE_CMD} -e '/require "valgrind.pm";/d' ${WRKSRC}/tests/runtests.pl
post-install:
.if !defined(BUILDING_HIPHOP)
- ${INSTALL_DATA} ${WRKSRC}/docs/libcurl/libcurl.m4 ${PREFIX}/share/aclocal
+ ${INSTALL_DATA} ${WRKSRC}/docs/libcurl/libcurl.m4 ${PREFIX}/share/aclocal/
.if ${PORT_OPTIONS:MDOCS}
${MKDIR} ${DOCSDIR}/ ${DOCSDIR}/libcurl/
cd ${WRKSRC}/docs/ && ${INSTALL_DATA} ${DOCS} ${DOCSDIR}/
@@ -208,20 +258,20 @@ post-install:
.endif
.if ${PORT_OPTIONS:MEXAMPLES}
${MKDIR} ${EXAMPLESDIR}/
- cd ${WRKSRC}/docs/examples/ && ${INSTALL_DATA} README Makefile.example makefile* *.c *.cc ${EXAMPLESDIR}/
+ cd ${WRKSRC}/docs/examples/ && ${INSTALL_DATA} README Makefile.example makefile* *.c *.cpp ${EXAMPLESDIR}/
.endif
.endif
# Setting LC_ALL=C is a kludge; maybe curl/libcurl shouldn't actually use
# the user's locale when dates are sent to the server.
-test: build
-.if ! ${PORT_OPTIONS:MPROXY}
+regression-test test: build
+.if !${PORT_OPTIONS:MPROXY}
@${ECHO_MSG} "******************************************"
@${ECHO_MSG} "* You have disabled curl proxy support. *"
@${ECHO_MSG} "* Some tests SHALL FAIL! *"
@${ECHO_MSG} "* This is being addressed. *"
@${ECHO_MSG} "******************************************"
.endif
- @cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} LC_ALL=C ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} test
+ cd ${WRKSRC}/ && ${SETENV} ${MAKE_ENV} LC_ALL=C ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} test
.include <bsd.port.mk>