blob: e854e8d4bd3c7d9f16bc9a3ffa5a57b26ad94c63 [file] [log] [blame]
Andrew Geissler82c905d2020-04-13 13:39:40 -05001SUMMARY = "Command line tool and library for client-side URL transfers"
2HOMEPAGE = "http://curl.haxx.se/"
3BUGTRACKER = "http://curl.haxx.se/mail/list.cgi?list=curl-tracker"
4SECTION = "console/network"
5LICENSE = "MIT"
6LIC_FILES_CHKSUM = "file://COPYING;md5=2e9fb35867314fe31c6a4977ef7dd531"
7
8SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \
9 file://0001-replace-krb5-config-with-pkg-config.patch \
10"
11
12SRC_URI[md5sum] = "ec5fc263f898a3dfef08e805f1ecca42"
13SRC_URI[sha256sum] = "2ff5e5bd507adf6aa88ff4bbafd4c7af464867ffb688be93b9930717a56c4de8"
14
15CVE_PRODUCT = "curl libcurl"
16inherit autotools pkgconfig binconfig multilib_header
17
18PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ipv6', d)} gnutls libidn proxy threaded-resolver verbose zlib"
19PACKAGECONFIG_class-native = "ipv6 proxy ssl threaded-resolver verbose zlib"
20PACKAGECONFIG_class-nativesdk = "ipv6 proxy ssl threaded-resolver verbose zlib"
21
22# 'ares' and 'threaded-resolver' are mutually exclusive
23PACKAGECONFIG[ares] = "--enable-ares,--disable-ares,c-ares,,,threaded-resolver"
24PACKAGECONFIG[brotli] = "--with-brotli,--without-brotli,brotli"
25PACKAGECONFIG[builtinmanual] = "--enable-manual,--disable-manual"
26PACKAGECONFIG[dict] = "--enable-dict,--disable-dict,"
27PACKAGECONFIG[gnutls] = "--with-gnutls,--without-gnutls,gnutls"
28PACKAGECONFIG[gopher] = "--enable-gopher,--disable-gopher,"
29PACKAGECONFIG[imap] = "--enable-imap,--disable-imap,"
30PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6,"
31PACKAGECONFIG[krb5] = "--with-gssapi,--without-gssapi,krb5"
32PACKAGECONFIG[ldap] = "--enable-ldap,--disable-ldap,"
33PACKAGECONFIG[ldaps] = "--enable-ldaps,--disable-ldaps,"
34PACKAGECONFIG[libidn] = "--with-libidn2,--without-libidn2,libidn2"
35PACKAGECONFIG[libssh2] = "--with-libssh2,--without-libssh2,libssh2"
36PACKAGECONFIG[mbedtls] = "--with-mbedtls=${STAGING_DIR_TARGET},--without-mbedtls,mbedtls"
37PACKAGECONFIG[nghttp2] = "--with-nghttp2,--without-nghttp2,nghttp2"
38PACKAGECONFIG[pop3] = "--enable-pop3,--disable-pop3,"
39PACKAGECONFIG[proxy] = "--enable-proxy,--disable-proxy,"
40PACKAGECONFIG[rtmpdump] = "--with-librtmp,--without-librtmp,rtmpdump"
41PACKAGECONFIG[rtsp] = "--enable-rtsp,--disable-rtsp,"
42PACKAGECONFIG[smb] = "--enable-smb,--disable-smb,"
43PACKAGECONFIG[smtp] = "--enable-smtp,--disable-smtp,"
44PACKAGECONFIG[ssl] = "--with-ssl --with-random=/dev/urandom,--without-ssl,openssl"
45PACKAGECONFIG[nss] = "--with-nss,--without-nss,nss"
46PACKAGECONFIG[telnet] = "--enable-telnet,--disable-telnet,"
47PACKAGECONFIG[tftp] = "--enable-tftp,--disable-tftp,"
48PACKAGECONFIG[threaded-resolver] = "--enable-threaded-resolver,--disable-threaded-resolver,,,,ares"
49PACKAGECONFIG[verbose] = "--enable-verbose,--disable-verbose"
50PACKAGECONFIG[zlib] = "--with-zlib=${STAGING_LIBDIR}/../,--without-zlib,zlib"
51
52EXTRA_OECONF = " \
53 --disable-libcurl-option \
54 --disable-ntlm-wb \
55 --enable-crypto-auth \
56 --with-ca-bundle=${sysconfdir}/ssl/certs/ca-certificates.crt \
57 --without-libmetalink \
58 --without-libpsl \
59"
60
61do_install_append_class-target() {
62 # cleanup buildpaths from curl-config
63 sed -i \
64 -e 's,--sysroot=${STAGING_DIR_TARGET},,g' \
65 -e 's,--with-libtool-sysroot=${STAGING_DIR_TARGET},,g' \
66 -e 's|${DEBUG_PREFIX_MAP}||g' \
67 ${D}${bindir}/curl-config
68}
69
70PACKAGES =+ "lib${BPN}"
71
72FILES_lib${BPN} = "${libdir}/lib*.so.*"
73RRECOMMENDS_lib${BPN} += "ca-certificates"
74
75FILES_${PN} += "${datadir}/zsh"
76
77inherit multilib_script
78MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/curl-config"
79
80BBCLASSEXTEND = "native nativesdk"