Index: head/Mk/bsd.default-versions.mk =================================================================== --- head/Mk/bsd.default-versions.mk (revision 417357) +++ head/Mk/bsd.default-versions.mk (revision 417358) @@ -1,111 +1,121 @@ # $FreeBSD$ # # MAINTAINER: ports@FreeBSD.org # # Provide default versions for ports with multiple versions selectable # by the user. # # Users who want to override these defaults can easily do so by defining # DEFAULT_VERSIONS in their make.conf as follows: # # DEFAULT_VERSIONS= perl5=5.18 ruby=2.0 .if !defined(_INCLUDE_BSD_DEFAULT_VERSIONS_MK) _INCLUDE_BSD_DEFAULT_VERSIONS_MK= yes +LOCALBASE?= /usr/local + .for lang in ${DEFAULT_VERSIONS} _l= ${lang:C/=.*//g} ${_l:tu}_DEFAULT= ${lang:C/.*=//g} .endfor # Possible values: 2.2, 2.4 APACHE_DEFAULT?= 2.4 # Possible values: 48, 5, 6 BDB_DEFAULT?= 5 # Possible values: 2.5 FIREBIRD_DEFAULT?= 2.5 # Possible values: 3.0.0 FPC_DEFAULT?= 3.0.0 # Possible values: 4.6, 4.7, 4.8, 4.9, 5 GCC_DEFAULT?= 4.8 # Possible values: 7, 8, 9, agpl GHOSTSCRIPT_DEFAULT?= agpl # Possible values: 5.1, 5.2, 5.3 LUA_DEFAULT?= 5.2 # Possible values: 5.1, 5.5, 5.6, 5.7, 5.5m, 10.0m, 10.1m, 5.5p, 5.6p MYSQL_DEFAULT?= 5.6 # Possible values: 5.18, 5.20, 5.22, devel .if !exists(${LOCALBASE}/bin/perl) || (!defined(_PORTS_ENV_CHECK) && \ defined(PACKAGE_BUILDING)) PERL5_DEFAULT?= 5.20 .elif !defined(PERL5_DEFAULT) # There's no need to replace development versions, like "5.23" with "devel" # because 1) nobody is supposed to use it outside of poudriere, and 2) it must # be set manually in /etc/make.conf in the first place, and we're never getting # in here. .if !defined(_PERL5_FROM_BIN) _PERL5_FROM_BIN!= perl -e 'printf "%vd\n", $$^V;' .endif _EXPORTED_VARS+= _PERL5_FROM_BIN PERL5_DEFAULT:= ${_PERL5_FROM_BIN:R} .endif # Possible values: 9.0, 9.1, 9.2, 9.3, 9.4, 9.5 PGSQL_DEFAULT?= 9.3 # Possible values: 5.5, 5.6, 7.0 PHP_DEFAULT?= 5.6 # Possible values: 2.7, 3.3, 3.4, 3.5 PYTHON_DEFAULT?= 2.7 # Possible values: 2.7 PYTHON2_DEFAULT?= 2.7 # Possible values: 3.3, 3.4, 3.5 PYTHON3_DEFAULT?= 3.4 # Possible values: 2.0, 2.1, 2.2, 2.3 RUBY_DEFAULT?= 2.2 # Possible values: base, openssl, openssl-devel, libressl, libressl-devel .if !defined(SSL_DEFAULT) # If no preference was set, check for an installed base version # but give an installed port preference over it. . if defined(WITH_OPENSSL_PORT) . if defined(OPENSSL_PORT) SSL_DEFAULT:=${OPENSSL_PORT:T} WARNING+= "Using WITH_OPENSSL_PORT and OPENSSL_PORT in make.conf is deprecated, replace them with DEFAULT_VERSIONS+=ssl=${SSL_DEFAULT} in your make.conf" . else SSL_DEFAULT=openssl WARNING+= "Using WITH_OPENSSL_PORT in make.conf is deprecated, replace it with DEFAULT_VERSIONS+=ssl=openssl in your make.conf" . endif . elif defined(WITH_OPENSSL_BASE) SSL_DEFAULT=base WARNING+= "Using WITH_OPENSSL_BASE in make.conf is deprecated, replace it with DEFAULT_VERSIONS+=ssl=base in your make.conf" . elif !defined(WITH_OPENSSL_BASE) && \ !defined(WITH_OPENSSL_PORT) && \ !defined(SSL_DEFAULT) && \ !exists(${DESTDIR}/${LOCALBASE}/lib/libcrypto.so) && \ exists(${DESTDIR}/usr/include/openssl/opensslv.h) SSL_DEFAULT= base . else . if exists(${DESTDIR}/${LOCALBASE}/lib/libcrypto.so) +. if defined(PKG_BIN) # find installed port and use it for dependency -. if !defined(OPENSSL_INSTALLED) -. if defined(DESTDIR) +. if !defined(OPENSSL_INSTALLED) +. if defined(DESTDIR) PKGARGS= -c ${DESTDIR} -. else +. else PKGARGS= -. endif +. endif OPENSSL_INSTALLED!= ${PKG_BIN} ${PKGARGS} which -qo ${LOCALBASE}/lib/libcrypto.so || : -. endif -. if defined(OPENSSL_INSTALLED) && !empty(OPENSSL_INSTALLED) +. endif +. if defined(OPENSSL_INSTALLED) && !empty(OPENSSL_INSTALLED) SSL_DEFAULT:= ${OPENSSL_INSTALLED:T} WARNING+= "You have ${OPENSSL_INSTALLED} installed but do not have DEFAULT_VERSIONS+=ssl=${SSL_DEFAULT} set in your make.conf" +. endif +. else +check-makevars:: + @${ECHO_MSG} "You have a ${LOCALBASE}/lib/libcrypto.so file installed, but the framework is unable" + @${ECHO_MSG} "to determine what port it comes from." + @${ECHO_MSG} "Add DEFAULT_VERSIONS+=ssl= to your /etc/make.conf and try again." + @${FALSE} . endif . endif . endif # Make sure we have a default in the end SSL_DEFAULT?= base .endif # Possible values: 8.4, 8.5, 8.6 TCLTK_DEFAULT?= 8.6 # Version of lang/gcc. Do not override! LANG_GCC_IS= 4.8 .endif Index: head/ftp/curl/Makefile =================================================================== --- head/ftp/curl/Makefile (revision 417357) +++ head/ftp/curl/Makefile (revision 417358) @@ -1,192 +1,192 @@ # Created by: Neil Blakey-Milner # $FreeBSD$ PORTNAME= curl PORTVERSION= 7.49.0 CATEGORIES= ftp www MASTER_SITES= http://curl.haxx.se/download/ \ LOCAL/sunpoet MAINTAINER?= sunpoet@FreeBSD.org COMMENT?= Non-interactive tool to get files from FTP, GOPHER, HTTP(S) servers LICENSE= MIT LICENSE_FILE= ${WRKSRC}/COPYING OPTIONS_DEFINE= CA_BUNDLE COOKIES CURL_DEBUG DEBUG DOCS EXAMPLES HTTP2 IDN IPV6 LDAP LDAPS LIBSSH2 METALINK PROXY PSL RTMP TLS_SRP OPTIONS_RADIO= RESOLV SSL OPTIONS_SINGLE= GSSAPI OPTIONS_RADIO_RESOLV= CARES THREADED_RESOLVER OPTIONS_RADIO_SSL= GNUTLS NSS OPENSSL POLARSSL WOLFSSL OPTIONS_SINGLE_GSSAPI= GSSAPI_BASE GSSAPI_HEIMDAL GSSAPI_MIT GSSAPI_NONE OPTIONS_DEFAULT= CA_BUNDLE COOKIES OPENSSL PROXY RESOLV THREADED_RESOLVER TLS_SRP CA_BUNDLE_DESC= Install CA bundle for OpenSSL CA_BUNDLE_IMPLIES= OPENSSL COOKIES_DESC= Cookies support CURL_DEBUG_DESC= cURL debug memory tracking LDAPS_IMPLIES= LDAP LIBSSH2_DESC= SCP/SFTP support via libssh2 LIBSSH2_IMPLIES= OPENSSL RESOLV_DESC= DNS resolving options THREADED_RESOLVER_DESC= Threaded DNS resolver TLS_SRP_DESC= TLS-SRP (Secure Remote Password) support -LOCALBASE?= /usr/local +.include <${.CURDIR}/../../Mk/bsd.default-versions.mk> -.if exists(${LOCALBASE}/lib/libcrypto.so) +.if ${SSL_DEFAULT} != base OPTIONS_DEFAULT+= GSSAPI_NONE .else OPTIONS_DEFAULT+= GSSAPI_BASE .endif CONFIGURE_ARGS+=--disable-werror \ --enable-imap --enable-pop3 --enable-rtsp --enable-smtp \ --with-zsh-functions-dir=${LOCALBASE}/share/zsh/site-functions \ --without-axtls CONFIGURE_ENV+= LOCALBASE=${LOCALBASE} \ ac_cv_func_SSLv2_client_method=no GNU_CONFIGURE= yes INSTALL_TARGET= install-strip TEST_ENV= ${MAKE_ENV} LC_ALL=C TEST_TARGET= test USE_PERL5= build USES= gmake libtool localbase pathfix perl5 shebangfix tar:lzma .if !defined(BUILDING_HIPHOP) USE_LDCONFIG= yes USES+= cpe PORTDOCS= * PORTEXAMPLES= * CPE_VENDOR= haxx DOCS= BINDINGS BUGS CODE_OF_CONDUCT.md CODE_STYLE.md CONTRIBUTE FAQ \ FEATURES HISTORY HTTP-COOKIES.md HTTP2.md INSTALL \ INSTALL.devcpp INTERNALS KNOWN_BUGS LICENSE-MIXING \ MAIL-ETIQUETTE MANUAL RELEASE-PROCEDURE RESOURCES ROADMAP.md \ SECURITY SSL-PROBLEMS SSLCERTS THANKS TODO \ TheArtOfHttpScripting VERSIONS curl-config.html \ curl-config.pdf curl.html curl.pdf index.html \ mk-ca-bundle.html mk-ca-bundle.pdf .endif SHEBANG_FILES= */*.pl SLAVEDIRS= ftp/curl-hiphop CA_BUNDLE_CONFIGURE_OFF=--without-ca-bundle CA_BUNDLE_CONFIGURE_ON= --with-ca-bundle=${LOCALBASE}/share/certs/ca-root-nss.crt CA_BUNDLE_RUN_DEPENDS= ${LOCALBASE}/share/certs/ca-root-nss.crt:security/ca_root_nss CARES_CONFIGURE_ENABLE= ares CARES_LIB_DEPENDS= libcares.so:dns/c-ares COOKIES_CONFIGURE_ENABLE= cookies CURL_DEBUG_CONFIGURE_ENABLE= curldebug DEBUG_CONFIGURE_ENABLE= debug GNUTLS_CONFIGURE_WITH= gnutls GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls GSSAPI_BASE_CONFIGURE_ON= --with-gssapi=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} GSSAPI_BASE_CPPFLAGS= ${GSSAPICPPFLAGS} GSSAPI_BASE_LDFLAGS= ${GSSAPILDFLAGS} GSSAPI_BASE_LIBS= ${GSSAPILIBS} GSSAPI_BASE_USES= gssapi GSSAPI_HEIMDAL_CONFIGURE_ON= --with-gssapi=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} GSSAPI_HEIMDAL_CPPFLAGS=${GSSAPICPPFLAGS} GSSAPI_HEIMDAL_LDFLAGS= ${GSSAPILDFLAGS} GSSAPI_HEIMDAL_LIBS= ${GSSAPILIBS} GSSAPI_HEIMDAL_USES= gssapi:heimdal GSSAPI_MIT_CONFIGURE_ON=--with-gssapi=${GSSAPIBASEDIR} ${GSSAPI_CONFIGURE_ARGS} GSSAPI_MIT_CPPFLAGS= ${GSSAPICPPFLAGS} GSSAPI_MIT_LDFLAGS= ${GSSAPILDFLAGS} GSSAPI_MIT_LIBS= ${GSSAPILIBS} GSSAPI_MIT_USES= gssapi:mit GSSAPI_NONE_CONFIGURE_ON= --without-gssapi HTTP2_BUILD_DEPENDS= nghttp2>=1.0.0:www/nghttp2 HTTP2_CONFIGURE_WITH= nghttp2 HTTP2_LIB_DEPENDS= libnghttp2.so:www/nghttp2 HTTP2_RUN_DEPENDS= nghttp2>=1.0.0:www/nghttp2 HTTP2_USES= pkgconfig IDN_CONFIGURE_WITH= libidn IDN_LIB_DEPENDS= libidn.so:dns/libidn IPV6_CATEGORIES= ipv6 IPV6_CONFIGURE_ENABLE= ipv6 LDAP_CONFIGURE_ENABLE= ldap LDAP_USE= OPENLDAP=yes LDAPS_CONFIGURE_ENABLE= ldaps LIBSSH2_CONFIGURE_WITH= libssh2 LIBSSH2_LIB_DEPENDS= libssh2.so:security/libssh2 METALINK_CONFIGURE_WITH=libmetalink METALINK_LIB_DEPENDS= libmetalink.so:misc/libmetalink METALINK_LIBS= -lcrypto NSS_CONFIGURE_WITH= nss NSS_LIB_DEPENDS= libnss3.so:security/nss NSS_USES= pkgconfig OPENSSL_CONFIGURE_OFF= --without-ssl OPENSSL_CONFIGURE_ON= --with-ssl=${OPENSSLBASE} OPENSSL_CPPFLAGS= -I${OPENSSLINC} OPENSSL_LDFLAGS= -L${OPENSSLLIB} OPENSSL_USE= OPENSSL=yes POLARSSL_CONFIGURE_WITH=polarssl POLARSSL_LIB_DEPENDS= libmbedtls.so.9:security/polarssl13 PROXY_CONFIGURE_ENABLE= proxy PSL_CONFIGURE_WITH= libpsl PSL_LIB_DEPENDS= libpsl.so:dns/libpsl RTMP_CONFIGURE_WITH= librtmp RTMP_LIB_DEPENDS= librtmp.so:multimedia/librtmp RTMP_USES= pkgconfig THREADED_RESOLVER_CONFIGURE_ENABLE= threaded-resolver TLS_SRP_CONFIGURE_ENABLE= tls-srp WOLFSSL_CONFIGURE_WITH= cyassl WOLFSSL_LIB_DEPENDS= libwolfssl.so:security/wolfssl .include .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} && !${PORT_OPTIONS:MGNUTLS} && !${PORT_OPTIONS:MNSS} && !${PORT_OPTIONS:MOPENSSL} && !${PORT_OPTIONS:MPOLARSSL} && !${PORT_OPTIONS:MWOLFSSL} IGNORE= only supports LDAPS with SSL .endif .if ${PORT_OPTIONS:MGSSAPI_BASE} && ${PORT_OPTIONS:MOPENSSL} && ${SSL_DEFAULT} != base IGNORE= GSSAPI_BASE is not compatible with OpenSSL from ports. Use other GSSAPI options or OpenSSL from base system .endif .if ${SSL_DEFAULT} == libressl .if ${PORT_OPTIONS:MGSSAPI_BASE} && ${PORT_OPTIONS:MOPENSSL} IGNORE= GSSAPI_BASE is not compatible with LibreSSL. Use other GSSAPI options .endif .if ${PORT_OPTIONS:MTLS_SRP} IGNORE= unsupported TLS-SRP in LibreSSL .endif .endif post-patch: @${REINPLACE_CMD} -e '/^SUBDIRS = / s|$$| docs scripts|; /^DIST_SUBDIRS = / s| docs scripts||; /cd docs &&/d' ${WRKSRC}/Makefile.in @${REINPLACE_CMD} -e 's|\(flags_dbg_off=\)".*"|\1""|; s|\(flags_opt_off=\)".*"|\1""|; s|lib/pkgconfig|libdata/pkgconfig|g' ${WRKSRC}/configure @${REINPLACE_CMD} -e 's|include |include |' ${WRKSRC}/lib/curl_gssapi.h ${WRKSRC}/lib/urldata.h .if !defined(BUILDING_HIPHOP) post-install: ${LN} -s libcurl.so.4 ${STAGEDIR}${PREFIX}/lib/libcurl.so.7 ${INSTALL_DATA} ${WRKSRC}/docs/libcurl/libcurl.m4 ${STAGEDIR}${PREFIX}/share/aclocal/ post-install-DOCS-on: ${MKDIR} ${STAGEDIR}${DOCSDIR}/ ${STAGEDIR}${DOCSDIR}/libcurl/ cd ${WRKSRC}/docs/ && ${INSTALL_DATA} ${DOCS} ${STAGEDIR}${DOCSDIR}/ cd ${WRKSRC}/docs/libcurl/ && ${INSTALL_DATA} ABI *.html *.m4 *.pdf ${STAGEDIR}${DOCSDIR}/libcurl/ post-install-EXAMPLES-on: ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/ cd ${WRKSRC}/docs/examples/ && ${INSTALL_DATA} README Makefile.example makefile* *.c *.cpp ${STAGEDIR}${EXAMPLESDIR}/ .endif pre-test-PROXY-off: @${ECHO_MSG} "******************************************" @${ECHO_MSG} "* You have disabled curl proxy support. *" @${ECHO_MSG} "* Some tests SHALL FAIL! *" @${ECHO_MSG} "* This is being addressed. *" @${ECHO_MSG} "******************************************" .include