diff --git a/net-misc/curl/Manifest b/net-misc/curl/Manifest
index 0be34df..259624f 100644
--- a/net-misc/curl/Manifest
+++ b/net-misc/curl/Manifest
@@ -1 +1 @@
-DIST curl-7.62.0.tar.bz2 3014762 SHA256 7802c54076500be500b171fde786258579d60547a3a35b8c5a23d8c88e8f9620 SHA512 83ca5c2757745f763316eefdd4c3f0e8a211a7f0db6a708b67ae2133ad41fdf17dd2230f9283a4778c9c866126d407454a090291cd2bf274371d0a214c1c13f5 WHIRLPOOL ac3ef0e7ff60b7cdbba69cbb7cd195b3cd73d6d4194a9a589b4bfd9f3f61c19dd1c5acb28f710b358c95b5967b9c39be982987ecd63905bfb9e05afd56fd4d83
+DIST curl-7.64.1.tar.bz2 3000536 BLAKE2B 787b9f9662dad4e3497357dc3f9cff0fb2c997e2603cf3c621633d9983fd011c346640be5227ddc4b363bdb7e1a64532a44ae9d5ccc27e405275e08f150d63fa SHA512 e04532d68896b79f28aea3b30aec2d5b53076d0d27c8f6404769618300828eed96633e7bd5945125bca76241bb1e169f5002ac9566108bcaddc8c51b513106b6
diff --git a/net-misc/curl/curl-7.62.0.ebuild b/net-misc/curl/curl-7.64.1.ebuild
similarity index 84%
rename from net-misc/curl/curl-7.62.0.ebuild
rename to net-misc/curl/curl-7.64.1.ebuild
index cdd6d7a..ea1ccbe 100644
--- a/net-misc/curl/curl-7.62.0.ebuild
+++ b/net-misc/curl/curl-7.64.1.ebuild
@@ -1,7 +1,7 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI="5"
+EAPI="6"
 
 inherit autotools eutils prefix multilib-minimal
 
@@ -13,7 +13,7 @@
 SLOT="0"
 KEYWORDS="*"
 IUSE="adns brotli http2 idn ipv6 kerberos ldap metalink rtmp samba ssh ssl static-libs test threads"
-IUSE+=" curl_ssl_axtls curl_ssl_gnutls curl_ssl_libressl curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl curl_ssl_winssl"
+IUSE+=" curl_ssl_gnutls curl_ssl_libressl curl_ssl_mbedtls curl_ssl_nss +curl_ssl_openssl curl_ssl_winssl"
 IUSE+=" elibc_Winnt"
 
 #lead to lots of false negatives, bug #285669
@@ -22,10 +22,6 @@
 RDEPEND="ldap? ( net-nds/openldap[${MULTILIB_USEDEP}] )
 	brotli? ( app-arch/brotli:=[${MULTILIB_USEDEP}] )
 	ssl? (
-		curl_ssl_axtls? (
-			net-libs/axtls:0=[${MULTILIB_USEDEP}]
-			app-misc/ca-certificates
-		)
 		curl_ssl_gnutls? (
 			net-libs/gnutls:0=[static-libs?,${MULTILIB_USEDEP}]
 			dev-libs/nettle:0=[${MULTILIB_USEDEP}]
@@ -47,12 +43,12 @@
 		)
 	)
 	http2? ( net-libs/nghttp2[${MULTILIB_USEDEP}] )
-	idn? ( net-dns/libidn2:0[static-libs?,${MULTILIB_USEDEP}] )
+	idn? ( net-dns/libidn2:0=[static-libs?,${MULTILIB_USEDEP}] )
 	adns? ( net-dns/c-ares:0[${MULTILIB_USEDEP}] )
 	kerberos? ( >=virtual/krb5-0-r1[${MULTILIB_USEDEP}] )
 	metalink? ( >=media-libs/libmetalink-0.1.1[${MULTILIB_USEDEP}] )
 	rtmp? ( media-video/rtmpdump[${MULTILIB_USEDEP}] )
-	ssh? ( net-libs/libssh2[static-libs?,${MULTILIB_USEDEP}] )
+	ssh? ( net-libs/libssh2[${MULTILIB_USEDEP}] )
 	sys-libs/zlib[${MULTILIB_USEDEP}]"
 
 # Do we need to enforce the same ssl backend for curl and rtmpdump? Bug #423303
@@ -79,7 +75,6 @@
 	threads? ( !adns )
 	ssl? (
 		^^ (
-			curl_ssl_axtls
 			curl_ssl_gnutls
 			curl_ssl_libressl
 			curl_ssl_mbedtls
@@ -90,7 +85,7 @@
 	)"
 
 DOCS=( CHANGES README docs/FEATURES docs/INTERNALS.md \
-	docs/MANUAL docs/FAQ docs/BUGS docs/CONTRIBUTE.md )
+	docs/FAQ docs/BUGS docs/CONTRIBUTE.md )
 
 MULTILIB_WRAPPED_HEADERS=(
 	/usr/include/curl/curlbuild.h
@@ -101,21 +96,16 @@
 )
 
 src_prepare() {
-	epatch "${FILESDIR}"/${PN}-7.30.0-prefix.patch
-	epatch "${FILESDIR}"/${PN}-respect-cflags-3.patch
-	epatch "${FILESDIR}"/${PN}-fix-gnutls-nettle.patch
+	eapply "${FILESDIR}"/${PN}-7.30.0-prefix.patch
+	eapply "${FILESDIR}"/${PN}-respect-cflags-3.patch
+	eapply "${FILESDIR}"/${PN}-fix-gnutls-nettle.patch
 
 	sed -i '/LD_LIBRARY_PATH=/d' configure.ac || die #382241
+	sed -i '/CURL_MAC_CFLAGS/d' configure.ac || die #637252
 
-	epatch_user
+	eapply_user
 	eprefixify curl-config.in
 	eautoreconf
-
-	if [[ ${CHOST} == *-darwin17 ]] ; then
-		# https://bugs.gentoo.org/show_bug.cgi?id=637252
-		sed -i -e '/-Werror=partial-availability/s/Werror/Wno-error/g' \
-			configure || die
-	fi
 }
 
 multilib_src_configure() {
@@ -123,13 +113,10 @@
 	# So start with all ssl providers off until proven otherwise
 	# TODO: in the future, we may want to add wolfssl (https://www.wolfssl.com/)
 	local myconf=()
-	myconf+=( --without-axtls --without-gnutls --without-mbedtls --without-nss --without-polarssl --without-ssl --without-winssl )
+	myconf+=( --without-gnutls --without-mbedtls --without-nss --without-polarssl --without-ssl --without-winssl )
 	myconf+=( --without-ca-fallback --with-ca-bundle="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt  )
 	if use ssl ; then
-		if use curl_ssl_axtls; then
-			einfo "SSL provided by axtls"
-			myconf+=( --with-axtls )
-		elif use curl_ssl_gnutls; then
+		if use curl_ssl_gnutls; then
 			einfo "SSL provided by gnutls"
 			myconf+=( --with-gnutls --with-nettle )
 		elif use curl_ssl_libressl; then
@@ -165,6 +152,7 @@
 	# grep -- --with configure | grep Check | awk '{ print $4 }' | sort
 	ECONF_SOURCE="${S}" \
 	econf \
+		--disable-alt-svc \
 		--enable-crypto-auth \
 		--enable-dict \
 		--enable-file \
@@ -197,14 +185,18 @@
 		$(use_enable threads threaded-resolver) \
 		$(use_enable threads pthreads) \
 		--disable-versioned-symbols \
+		--without-amissl \
 		--without-cyassl \
 		--without-darwinssl \
+		--without-fish-functions-dir \
 		$(use_with idn libidn2) \
 		$(use_with kerberos gssapi "${EPREFIX}"/usr) \
 		$(use_with metalink libmetalink) \
 		$(use_with http2 nghttp2) \
 		$(use_with rtmp librtmp) \
 		$(use_with brotli) \
+		--without-schannel \
+		--without-secure-transport \
 		--without-spnego \
 		--without-winidn \
 		--without-wolfssl \
@@ -241,7 +233,6 @@
 
 multilib_src_install_all() {
 	einstalldocs
-	prune_libtool_files --all
-
+	find "${ED}" -type f -name '*.la' -delete
 	rm -rf "${ED}"/etc/
 }
