693d6e82d0
Changes: https://curl.se/changes.html Security: CVE-2026-8286, CVE-2026-8458, CVE-2026-8924, CVE-2026-8925, CVE-2026-8926, CVE-2026-8927, CVE-2026-8932, CVE-2026-9079, CVE-2026-9080, CVE-2026-9545, CVE-2026-9546, CVE-2026-9547, CVE-2026-10536, CVE-2026-11352, CVE-2026-11564, CVE-2026-11586, CVE-2026-11856, CVE-2026-12064
184 lines
6.5 KiB
Makefile
184 lines
6.5 KiB
Makefile
PORTNAME= curl
|
|
PORTVERSION= 8.21.0
|
|
CATEGORIES= ftp net www
|
|
MASTER_SITES= https://curl.se/download/ \
|
|
https://github.com/curl/curl/releases/download/curl-${PORTVERSION:S|.|_|g}/
|
|
|
|
MAINTAINER= sunpoet@FreeBSD.org
|
|
COMMENT= Command line tool and library for transferring data with URLs
|
|
WWW= https://curl.se/ \
|
|
https://github.com/curl/curl
|
|
|
|
LICENSE= MIT
|
|
LICENSE_FILE= ${WRKSRC}/COPYING
|
|
|
|
USES= cpe libtool localbase:ldflags perl5 shebangfix tar:xz
|
|
USE_PERL5= build
|
|
|
|
CONFIGURE_ARGS= --disable-unity \
|
|
--disable-werror \
|
|
--enable-dateparse \
|
|
--enable-dnsshuffle \
|
|
--enable-headers-api \
|
|
--enable-hsts \
|
|
--enable-http-auth \
|
|
--enable-manual \
|
|
--enable-mime \
|
|
--enable-netrc \
|
|
--enable-openssl-auto-load-config \
|
|
--enable-progress-meter \
|
|
--enable-ssls-export \
|
|
--enable-typecheck \
|
|
--with-ca-path=/etc/ssl/certs \
|
|
--with-zsh-functions-dir=${LOCALBASE}/share/zsh/site-functions \
|
|
--without-ca-bundle \
|
|
--without-fish-functions-dir
|
|
CONFIGURE_ENV= LOCALBASE=${LOCALBASE} \
|
|
ac_cv_func_SSLv2_client_method=no
|
|
GNU_CONFIGURE= yes
|
|
INSTALL_TARGET= install-strip
|
|
TEST_TARGET= test
|
|
USE_LDCONFIG= yes
|
|
|
|
CPE_VENDOR= haxx
|
|
|
|
SHEBANG_FILES= */*.pl
|
|
|
|
OPTIONS_DEFINE= ALTSVC COOKIES DEBUG DOCS EXAMPLES IDN IPV6 LIBUV NTLM PROXY PSL STATIC TLS_SRP
|
|
OPTIONS_GROUP= COMPRESSION PROTOCOL
|
|
OPTIONS_GROUP_COMPRESSION= BROTLI ZSTD
|
|
OPTIONS_GROUP_PROTOCOL= DICT FTP GOPHER HTTP HTTP2 IMAP IPFS LDAP LDAPS LIBSSH LIBSSH2 MQTT POP3 RTSP SMB SMTP TELNET TFTP WEBSOCKET
|
|
OPTIONS_RADIO= SSL
|
|
OPTIONS_RADIO_SSL= GNUTLS OPENSSL WOLFSSL
|
|
OPTIONS_SINGLE= GSSAPI RESOLV
|
|
OPTIONS_SINGLE_GSSAPI= GSSAPI_BASE GSSAPI_MIT GSSAPI_NONE
|
|
OPTIONS_SINGLE_RESOLV= CARES THREADED_RESOLVER
|
|
OPTIONS_DEFAULT=ALTSVC BROTLI COOKIES DICT FTP GOPHER HTTP HTTP2 IDN IMAP IPFS LIBSSH2 MQTT NTLM OPENSSL POP3 PROXY PSL RTSP SMB SMTP STATIC TELNET TFTP THREADED_RESOLVER TLS_SRP WEBSOCKET ZSTD ${OPTIONS_DEFAULT_${OSREL:R}}
|
|
OPTIONS_DEFAULT_14= GSSAPI_NONE
|
|
OPTIONS_DEFAULT_15= GSSAPI_${${SSL_DEFAULT} == base :?BASE :NONE}
|
|
OPTIONS_DEFAULT_16= GSSAPI_${${SSL_DEFAULT} == base :?BASE :NONE}
|
|
OPTIONS_SUB= yes
|
|
ALTSVC_DESC= HTTP Alternative Services support
|
|
COMPRESSION_DESC= Compression methods
|
|
COOKIES_DESC= Cookies support
|
|
DICT_DESC= DICT (RFC 2229) support
|
|
HTTP_DESC= HTTP/HTTPS support
|
|
HTTP2_DESC= HTTP/2 support (requires HTTP)
|
|
HTTP2_IMPLIES= HTTP
|
|
IMAP_DESC= IMAP/IMAPS support
|
|
IPFS_DESC= IPFS support
|
|
LDAPS_IMPLIES= LDAP
|
|
LDAPS_DESC= LDAP protocol over SSL support (requires GNUTLS/OPENSSL/WOLFSSL)
|
|
LIBSSH_DESC= SCP/SFTP support via libssh (requires OPENSSL)
|
|
LIBSSH_IMPLIES= OPENSSL
|
|
LIBSSH2_DESC= SCP/SFTP support via libssh2 (requires OPENSSL)
|
|
LIBSSH2_IMPLIES=OPENSSL
|
|
LIBUV_DESC= Event-based tests
|
|
LIBUV_IMPLIES= DEBUG
|
|
MQTT_DESC= MQTT support
|
|
POP3_DESC= POP3/POP3S support
|
|
PROTOCOL_DESC= Transmission protocols
|
|
PROXY_IMPLIES= HTTP
|
|
RESOLV_DESC= DNS resolving options
|
|
RTSP_IMPLIES= HTTP
|
|
SMB_DESC= SMB/CIFS support
|
|
SMTP_DESC= SMTP/SMTPS support
|
|
THREADED_RESOLVER_DESC= Threaded DNS resolver
|
|
TLS_SRP_DESC= TLS-SRP (Secure Remote Password) support
|
|
|
|
ALTSVC_CONFIGURE_ENABLE=alt-svc
|
|
BROTLI_CONFIGURE_WITH= brotli
|
|
BROTLI_LIB_DEPENDS= libbrotlidec.so:archivers/brotli
|
|
CARES_CONFIGURE_ENABLE= ares
|
|
CARES_LIB_DEPENDS= libcares.so:dns/c-ares
|
|
CARES_USES= pkgconfig
|
|
COOKIES_CONFIGURE_ENABLE= cookies
|
|
DEBUG_CONFIGURE_ENABLE= debug
|
|
DICT_CONFIGURE_ENABLE= dict
|
|
FTP_CONFIGURE_ENABLE= ftp
|
|
GNUTLS_CONFIGURE_WITH= gnutls
|
|
GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls \
|
|
libnettle.so:security/nettle
|
|
GOPHER_CONFIGURE_ENABLE=gopher
|
|
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_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
|
|
HTTP_CONFIGURE_ENABLE= http
|
|
HTTP2_CONFIGURE_WITH= nghttp2
|
|
HTTP2_LIB_DEPENDS= libnghttp2.so:www/libnghttp2
|
|
HTTP2_USES= pkgconfig
|
|
IDN_CONFIGURE_WITH= libidn2
|
|
IDN_LIB_DEPENDS= libidn2.so:dns/libidn2
|
|
IMAP_CONFIGURE_ENABLE= imap
|
|
IPFS_CONFIGURE_ENABLE= ipfs
|
|
IPV6_CONFIGURE_ENABLE= ipv6
|
|
LDAP_CONFIGURE_ENABLE= ldap
|
|
LDAP_USES= ldap
|
|
LDAPS_CONFIGURE_ENABLE= ldaps
|
|
LIBSSH_CONFIGURE_WITH= libssh
|
|
LIBSSH_LIB_DEPENDS= libssh.so:security/libssh
|
|
LIBSSH2_CONFIGURE_WITH= libssh2
|
|
LIBSSH2_LIB_DEPENDS= libssh2.so:security/libssh2
|
|
LIBUV_CONFIGURE_WITH= libuv
|
|
LIBUV_LIB_DEPENDS= libuv.so:devel/libuv
|
|
MQTT_CONFIGURE_ENABLE= mqtt
|
|
NTLM_CONFIGURE_ENABLE= ntlm
|
|
OPENSSL_CONFIGURE_WITH= openssl=${OPENSSLBASE}
|
|
OPENSSL_CPPFLAGS= -I${OPENSSLINC}
|
|
OPENSSL_LDFLAGS= -L${OPENSSLLIB}
|
|
OPENSSL_USES= ssl
|
|
POP3_CONFIGURE_ENABLE= pop3
|
|
PROXY_CONFIGURE_ENABLE= proxy
|
|
PSL_CONFIGURE_WITH= libpsl
|
|
PSL_LIB_DEPENDS= libpsl.so:dns/libpsl
|
|
RTSP_CONFIGURE_ENABLE= rtsp
|
|
SMB_CONFIGURE_ENABLE= smb
|
|
SMTP_CONFIGURE_ENABLE= smtp
|
|
STATIC_CONFIGURE_ENABLE=static
|
|
TELNET_CONFIGURE_ENABLE=telnet
|
|
TFTP_CONFIGURE_ENABLE= tftp
|
|
THREADED_RESOLVER_CONFIGURE_ENABLE= threaded-resolver
|
|
TLS_SRP_CONFIGURE_ENABLE= tls-srp
|
|
WEBSOCKET_CONFIGURE_ENABLE= websockets
|
|
WOLFSSL_CONFIGURE_WITH= wolfssl
|
|
WOLFSSL_LIB_DEPENDS= libwolfssl.so:security/wolfssl
|
|
ZSTD_CONFIGURE_WITH= zstd
|
|
ZSTD_LIB_DEPENDS= libzstd.so:archivers/zstd
|
|
|
|
.include <bsd.port.pre.mk>
|
|
|
|
.if ${OSVERSION} < 1500050 && ${PORT_OPTIONS:MGSSAPI_BASE}
|
|
IGNORE= FreeBSD only provides MIT implementation of Kerberos in the base system since 15.0
|
|
.endif
|
|
|
|
.if ((!${PORT_OPTIONS:MGNUTLS} && !${PORT_OPTIONS:MOPENSSL}) || (${PORT_OPTIONS:MOPENSSL} && ${SSL_DEFAULT:Mlibressl*})) && ${PORT_OPTIONS:MTLS_SRP}
|
|
IGNORE= only supports TLS-SRP with either OpenSSL or GnuTLS
|
|
.endif
|
|
|
|
.if ${PORT_OPTIONS:MLDAPS} && !${PORT_OPTIONS:MGNUTLS} && !${PORT_OPTIONS:MOPENSSL} && !${PORT_OPTIONS:MWOLFSSL}
|
|
IGNORE= only supports LDAPS with GNUTLS/OPENSSL/WOLFSSL enabled
|
|
.endif
|
|
|
|
post-install:
|
|
${INSTALL_DATA} ${WRKSRC}/docs/libcurl/libcurl.m4 ${STAGEDIR}${PREFIX}/share/aclocal/
|
|
|
|
post-install-DOCS-on:
|
|
${MKDIR} ${STAGEDIR}${DOCSDIR}/ ${STAGEDIR}${DOCSDIR}/internals/ ${STAGEDIR}${DOCSDIR}/libcurl/
|
|
cd ${WRKSRC}/docs/ && ${INSTALL_DATA} THANKS options-in-versions *.md ${STAGEDIR}${DOCSDIR}/
|
|
${INSTALL_DATA} ${WRKSRC}/docs/internals/*.md ${STAGEDIR}${DOCSDIR}/internals/
|
|
cd ${WRKSRC}/docs/libcurl/ && ${INSTALL_DATA} ABI.md libcurl.m4 *.pl symbols-in-versions ${STAGEDIR}${DOCSDIR}/libcurl/
|
|
|
|
post-install-EXAMPLES-on:
|
|
${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/
|
|
cd ${WRKSRC}/docs/examples/ && ${INSTALL_DATA} Makefile.example README.md *.c *.cpp ${STAGEDIR}${EXAMPLESDIR}/
|
|
|
|
.include <bsd.port.post.mk>
|