summaryrefslogtreecommitdiff
path: root/recipes/curl/curl-common.inc
blob: 29af47ee8d5700890cb950ae4772c1afe44bac87 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
DESCRIPTION = "Command line tool and library for client-side URL transfers."
LICENSE = "MIT"
SECTION = "console/network"

SRC_URI = "http://curl.haxx.se/download/curl-${PV}.tar.bz2 \
           file://pkgconfig_fix.patch;patch=1"
S = "${WORKDIR}/curl-${PV}"

INC_PR = "r2"

CURL_FEATURES ?= "zlib,gnutls,cookies,crypto-auth,dict,file,ftp,http,telnet,tftp"
# other allowed features: ipv6, ares, openssl

inherit autotools pkgconfig binconfig

EXTRA_OECONF = " \
                --without-libssh2 \
		--with-random=/dev/urandom \
		--without-libidn \
		"

python __anonymous() {
	f = bb.data.getVar("CURL_FEATURES", d, True).split(",")
        oeconf = bb.data.getVar("EXTRA_OECONF", d, False)
        deps = bb.data.getVar("DEPENDS", d, False).split()
        for x in [ 'cookies', 'crypto-auth', 'dict', 'file', 'ftp', 'http', 'telnet', 'tftp', 'ipv6' ]:
                if x in f:
                        oeconf += " --enable-%s" % x
                else:
                        oeconf += " --disable-%s" % x
        if 'zlib' in f:
                oeconf += " --with-zlib=${STAGING_LIBDIR}/../"
                deps.append("zlib")
        else:
                oeconf += " --without-zlib"
        if 'gnutls' in f:
                oeconf += " --with-gnutls=${STAGING_BINDIR_CROSS}"
                deps.append("gnutls")
        else:
                oeconf += " --without-gnutls"
        if 'openssl' in f:
                oeconf += " --with-ssl=${STAGING_LIBDIR}/../"
                deps.append("openssl")
        else:
                oeconf += " --without-ssl"
        if 'ares' in f:
                oeconf += " --enable-ares"
                deps.append("c-ares")
        else:
                oeconf += " --disable-ares"
        bb.data.setVar('EXTRA_OECONF', oeconf, d)
        bb.data.setVar('DEPENDS', " ".join(deps), d)
}

do_configure_prepend() {
	sed -i s:OPT_GNUTLS/bin:OPT_GNUTLS:g configure.ac
}

do_stage () {
	install -d ${STAGING_INCDIR}/curl
	install -m 0644 ${S}/include/curl/*.h ${STAGING_INCDIR}/curl/
	oe_libinstall -so -a -C lib libcurl ${STAGING_LIBDIR}
}