cc_defaults { name: "curl_common_defaults", cflags: [ "-Wpointer-arith", "-Wwrite-strings", "-Wunused", "-Winline", "-Wnested-externs", "-Wmissing-declarations", "-Wmissing-prototypes", "-Wno-long-long", "-Wfloat-equal", "-Wno-multichar", "-Wno-sign-compare", "-Wno-format-nonliteral", "-Wendif-labels", "-Wstrict-prototypes", "-Wdeclaration-after-statement", "-Wno-system-headers", "-DHAVE_CONFIG_H", // TODO(avakulenko): Android.mk had this for OS version string: // "Android $(PLATFORM_VERSION) $(TARGET_ARCH_VARIANT)" // but Soong doesn't have access to those config variables yet. "-DOS=\"Android\"", "-Werror", // Bug: http://b/29823425 Disable -Wvarargs for Clang update to r271374 "-Wno-varargs", ], clang: true, local_include_dirs: ["include", "lib"], } cc_library { name: "libcurl", vendor_available: true, defaults: ["curl_common_defaults"], export_include_dirs: ["include"], host_supported: true, cflags: [ "-DBUILDING_LIBCURL", ], srcs:[ "lib/file.c", "lib/timeval.c", "lib/base64.c", "lib/hostip.c", "lib/progress.c", "lib/formdata.c", "lib/cookie.c", "lib/http.c", "lib/sendf.c", "lib/ftp.c", "lib/url.c", "lib/dict.c", "lib/if2ip.c", "lib/speedcheck.c", "lib/ldap.c", "lib/version.c", "lib/getenv.c", "lib/escape.c", "lib/mprintf.c", "lib/telnet.c", "lib/netrc.c", "lib/getinfo.c", "lib/transfer.c", "lib/strequal.c", "lib/easy.c", "lib/security.c", "lib/curl_fnmatch.c", "lib/fileinfo.c", "lib/ftplistparser.c", "lib/wildcard.c", "lib/krb5.c", "lib/memdebug.c", "lib/http_chunks.c", "lib/strtok.c", "lib/connect.c", "lib/llist.c", "lib/hash.c", "lib/multi.c", "lib/content_encoding.c", "lib/share.c", "lib/http_digest.c", "lib/md4.c", "lib/md5.c", "lib/http_negotiate.c", "lib/inet_pton.c", "lib/strtoofft.c", "lib/strerror.c", "lib/amigaos.c", "lib/hostasyn.c", "lib/hostip4.c", "lib/hostip6.c", "lib/hostsyn.c", "lib/inet_ntop.c", "lib/parsedate.c", "lib/select.c", "lib/tftp.c", "lib/splay.c", "lib/strdup.c", "lib/socks.c", "lib/ssh.c", "lib/rawstr.c", "lib/curl_addrinfo.c", "lib/socks_gssapi.c", "lib/socks_sspi.c", "lib/curl_sspi.c", "lib/slist.c", "lib/nonblock.c", "lib/curl_memrchr.c", "lib/imap.c", "lib/pop3.c", "lib/smtp.c", "lib/pingpong.c", "lib/rtsp.c", "lib/curl_threads.c", "lib/warnless.c", "lib/hmac.c", "lib/curl_rtmp.c", "lib/openldap.c", "lib/curl_gethostname.c", "lib/gopher.c", "lib/idn_win32.c", "lib/http_proxy.c", "lib/non-ascii.c", "lib/asyn-ares.c", "lib/asyn-thread.c", "lib/curl_gssapi.c", "lib/http_ntlm.c", "lib/curl_ntlm_wb.c", "lib/curl_ntlm_core.c", "lib/curl_sasl.c", "lib/curl_multibyte.c", "lib/hostcheck.c", "lib/conncache.c", "lib/pipeline.c", "lib/dotdot.c", "lib/x509asn1.c", "lib/http2.c", "lib/smb.c", "lib/curl_endian.c", "lib/curl_des.c", "lib/system_win32.c", "lib/vauth/vauth.c", "lib/vauth/cleartext.c", "lib/vauth/cram.c", "lib/vauth/digest.c", "lib/vauth/digest_sspi.c", "lib/vauth/krb5_gssapi.c", "lib/vauth/krb5_sspi.c", "lib/vauth/ntlm.c", "lib/vauth/ntlm_sspi.c", "lib/vauth/oauth2.c", "lib/vauth/spnego_gssapi.c", "lib/vauth/spnego_sspi.c", "lib/vtls/openssl.c", "lib/vtls/gtls.c", "lib/vtls/vtls.c", "lib/vtls/nss.c", "lib/vtls/polarssl.c", "lib/vtls/polarssl_threadlock.c", "lib/vtls/axtls.c", "lib/vtls/cyassl.c", "lib/vtls/schannel.c", "lib/vtls/darwinssl.c", "lib/vtls/gskit.c", "lib/vtls/mbedtls.c", ], shared: { shared_libs: [ "libcrypto", "libssl", ], }, static: { static_libs: [ "libcrypto", "libssl", "libz", ], }, target: { host: { cflags: ["-D_GNU_SOURCE=1"], shared: { shared_libs: [ "libz-host", ], }, }, linux: { host_ldlibs: ["-lrt"], }, android: { shared: { shared_libs: [ "libz", ], }, }, }, unique_host_soname: true, } cc_binary { name: "curl", defaults: ["curl_common_defaults"], srcs: [ "src/slist_wc.c", "src/tool_binmode.c", "src/tool_bname.c", "src/tool_cb_dbg.c", "src/tool_cb_hdr.c", "src/tool_cb_prg.c", "src/tool_cb_rea.c", "src/tool_cb_see.c", "src/tool_cb_wrt.c", "src/tool_cfgable.c", "src/tool_convert.c", "src/tool_dirhie.c", "src/tool_doswin.c", "src/tool_easysrc.c", "src/tool_formparse.c", "src/tool_getparam.c", "src/tool_getpass.c", "src/tool_help.c", "src/tool_helpers.c", "src/tool_homedir.c", "src/tool_hugehelp.c", "src/tool_libinfo.c", "src/tool_main.c", "src/tool_metalink.c", "src/tool_mfiles.c", "src/tool_msgs.c", "src/tool_operate.c", "src/tool_operhlp.c", "src/tool_panykey.c", "src/tool_paramhlp.c", "src/tool_parsecfg.c", "src/tool_strdup.c", "src/tool_setopt.c", "src/tool_sleep.c", "src/tool_urlglob.c", "src/tool_util.c", "src/tool_vms.c", "src/tool_writeenv.c", "src/tool_writeout.c", "src/tool_xattr.c", ], shared_libs: [ "libcrypto", "libssl", "libz", ], static_libs: ["libcurl"], }