2 # Copyright (C) 2007-2016 OpenWrt.org
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
8 include $(TOPDIR
)/rules.mk
14 PKG_SOURCE
:=$(PKG_NAME
)-$(PKG_VERSION
).
tar.bz2
15 PKG_SOURCE_URL
:=https
://dl.uxnr.de
/mirror
/curl
/ \
16 http
://curl.mirror.anstey.ca
/ \
17 http
://curl.askapache.com
/download
/ \
18 https
://curl.haxx.se
/download
/
19 PKG_HASH
:=f50ebaf43c507fa7cc32be4b8108fa8bbd0f5022e90794388f3c7694a302ff06
22 PKG_LICENSE_FILES
:=COPYING
27 PKG_CONFIG_DEPENDS
:= \
30 CONFIG_LIBCURL_CYASSL \
31 CONFIG_LIBCURL_GNUTLS \
32 CONFIG_LIBCURL_OPENSSL \
33 CONFIG_LIBCURL_MBEDTLS \
34 CONFIG_LIBCURL_NOSSL \
36 CONFIG_LIBCURL_LIBIDN \
43 CONFIG_LIBCURL_GOPHER \
47 CONFIG_LIBCURL_LDAPS \
50 CONFIG_LIBCURL_NO_RTSP \
52 CONFIG_LIBCURL_NO_SMB \
54 CONFIG_LIBCURL_TELNET \
57 CONFIG_LIBCURL_COOKIES \
58 CONFIG_LIBCURL_CRYPTO_AUTH \
59 CONFIG_LIBCURL_LIBCURL_OPTION \
60 CONFIG_LIBCURL_PROXY \
61 CONFIG_LIBCURL_THREADED_RESOLVER \
62 CONFIG_LIBCURL_TLS_SRP \
63 CONFIG_LIBCURL_UNIX_SOCKETS \
64 CONFIG_LIBCURL_VERBOSE \
67 include $(INCLUDE_DIR
)/package.mk
69 define Package
/curl
/Default
72 URL
:=http
://curl.haxx.se
/
73 MAINTAINER
:=Imre Kaloz
<kaloz@openwrt.org
>
77 $(call Package
/curl
/Default
)
78 SUBMENU
:=File Transfer
80 TITLE
:=A client-side URL transfer utility
83 define Package
/libcurl
84 $(call Package
/curl
/Default
)
87 DEPENDS
:= +LIBCURL_CYASSL
:libcyassl
+LIBCURL_OPENSSL
:libopenssl
+LIBCURL_GNUTLS
:libgnutls
+LIBCURL_MBEDTLS
:libmbedtls
88 DEPENDS
+= +LIBCURL_ZLIB
:zlib
+LIBCURL_THREADED_RESOLVER
:libpthread
+LIBCURL_LDAP
:libopenldap
+LIBCURL_LIBIDN
:libidn
+LIBCURL_SSH2
:libssh2
89 TITLE
:=A client-side URL transfer library
94 define Package
/libcurl
/config
95 source
"$(SOURCE)/Config.in"
98 TARGET_CFLAGS
+= $(FPIC
) -ffunction-sections
-fdata-sections
99 TARGET_CPPFLAGS
+= $(if
$(CONFIG_LIBCURL_NTLM
),,-DCURL_DISABLE_NTLM
)
100 TARGET_LDFLAGS
+= -Wl
,--gc-sections
109 --without-libmetalink \
112 $(call autoconf_bool
,CONFIG_IPV6
,ipv6
) \
114 $(if
$(CONFIG_LIBCURL_CYASSL
),--with-cyassl
="$(STAGING_DIR)/usr" --without-ca-path
--with-ca-bundle
=/etc
/ssl
/certs
/ca-certificates.crt
,--without-cyassl
) \
115 $(if
$(CONFIG_LIBCURL_GNUTLS
),--with-gnutls
="$(STAGING_DIR)/usr" --without-ca-bundle
--with-ca-path
=/etc
/ssl
/certs
,--without-gnutls
) \
116 $(if
$(CONFIG_LIBCURL_OPENSSL
),--with-ssl
="$(STAGING_DIR)/usr" --without-ca-bundle
--with-ca-path
=/etc
/ssl
/certs
,--without-ssl
) \
117 $(if
$(CONFIG_LIBCURL_MBEDTLS
),--with-mbedtls
="$(STAGING_DIR)/usr" --without-ca-path
--with-ca-bundle
=/etc
/ssl
/certs
/ca-certificates.crt
,--without-mbedtls
) \
119 $(if
$(CONFIG_LIBCURL_LIBIDN
),--with-libidn
="$(STAGING_DIR)/usr",--without-libidn
) \
120 $(if
$(CONFIG_LIBCURL_SSH2
),--with-libssh2
="$(STAGING_DIR)/usr",--without-libssh2
) \
121 $(if
$(CONFIG_LIBCURL_ZLIB
),--with-zlib
="$(STAGING_DIR)/usr",--without-zlib
) \
123 $(call autoconf_bool
,CONFIG_LIBCURL_DICT
,dict
) \
124 $(call autoconf_bool
,CONFIG_LIBCURL_FILE
,file
) \
125 $(call autoconf_bool
,CONFIG_LIBCURL_FTP
,ftp
) \
126 $(call autoconf_bool
,CONFIG_LIBCURL_GOPHER
,gopher
) \
127 $(call autoconf_bool
,CONFIG_LIBCURL_HTTP
,http
) \
128 $(call autoconf_bool
,CONFIG_LIBCURL_IMAP
,imap
) \
129 $(call autoconf_bool
,CONFIG_LIBCURL_LDAP
,ldap
) \
130 $(call autoconf_bool
,CONFIG_LIBCURL_LDAPS
,ldaps
) \
131 $(call autoconf_bool
,CONFIG_LIBCURL_POP3
,pop3
) \
132 $(call autoconf_bool
,CONFIG_LIBCURL_RTSP
,rtsp
) \
133 $(call autoconf_bool
,CONFIG_LIBCURL_SMB
,smb
) \
134 $(call autoconf_bool
,CONFIG_LIBCURL_SMTP
,smtp
) \
135 $(call autoconf_bool
,CONFIG_LIBCURL_TELNET
,telnet
) \
136 $(call autoconf_bool
,CONFIG_LIBCURL_TFTP
,tftp
) \
138 $(call autoconf_bool
,CONFIG_LIBCURL_COOKIES
,cookies
) \
139 $(call autoconf_bool
,CONFIG_LIBCURL_CRYPTO_AUTH
,crypto-auth
) \
140 $(call autoconf_bool
,CONFIG_LIBCURL_LIBCURL_OPTION
,libcurl-option
) \
141 $(call autoconf_bool
,CONFIG_LIBCURL_PROXY
,proxy
) \
142 $(call autoconf_bool
,CONFIG_LIBCURL_THREADED_RESOLVER
,threaded-resolver
) \
143 $(call autoconf_bool
,CONFIG_LIBCURL_TLS_SRP
,tls-srp
) \
144 $(call autoconf_bool
,CONFIG_LIBCURL_UNIX_SOCKETS
,unix-sockets
) \
145 $(call autoconf_bool
,CONFIG_LIBCURL_VERBOSE
,verbose
) \
148 +$(MAKE
) $(PKG_JOBS
) -C
$(PKG_BUILD_DIR
) \
149 DESTDIR
="$(PKG_INSTALL_DIR)" \
154 define Build
/InstallDev
155 $(INSTALL_DIR
) $(2)/bin
$(1)/usr
/bin
$(1)/usr
/include $(1)/usr
/lib
$(1)/usr
/lib
/pkgconfig
156 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/curl-config
$(1)/usr
/bin
/
157 $(CP
) $(PKG_INSTALL_DIR
)/usr
/include/curl
$(1)/usr
/include/
158 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libcurl.
{a
,so
*} $(1)/usr
/lib
/
159 $(CP
) $(PKG_BUILD_DIR
)/libcurl.
pc $(1)/usr
/lib
/pkgconfig
/
160 $(SED
) 's,-L$$$${exec_prefix}/lib,,g' $(1)/usr
/bin
/curl-config
161 [ -n
"$(TARGET_LDFLAGS)" ] && $(SED
) 's#$(TARGET_LDFLAGS)##g' $(1)/usr
/lib
/pkgconfig
/libcurl.
pc || true
162 $(LN
) $(STAGING_DIR
)/usr
/bin
/curl-config
$(2)/bin
/
165 define Package
/curl
/install
166 $(INSTALL_DIR
) $(1)/usr
/bin
167 $(INSTALL_BIN
) $(PKG_INSTALL_DIR
)/usr
/bin
/curl
$(1)/usr
/bin
/
170 define Package
/libcurl
/install
171 $(INSTALL_DIR
) $(1)/usr
/lib
172 $(CP
) $(PKG_INSTALL_DIR
)/usr
/lib
/libcurl.so.
* $(1)/usr
/lib
/
175 $(eval
$(call BuildPackage
,curl
))
176 $(eval
$(call BuildPackage
,libcurl
))