# vim: sts=2 ts=8 sw=2 tw=99 et ft=python: 
import os, platform

builder.SetBuildFolder('libcurl')

binary = builder.compiler.StaticLibrary('curl')
binary.compiler.includes += [
  os.path.join(builder.sourcePath, 'extensions', 'curl', 'curl-src', 'lib'),
  os.path.join(builder.sourcePath, 'extensions', 'curl', 'curl-src', 'include')
]

if builder.target_platform == 'mac':
  mac_version, ignore, ignore = platform.mac_ver()
  mac_tuple = mac_version.split('.')
  if int(mac_tuple[0]) >= 10 and int(mac_tuple[1]) >= 9:
    binary.compiler.defines += ['BUILTIN_STRLCAT']
elif builder.target_platform == 'windows':
  binary.compiler.defines += [
    'BUILDING_LIBCURL',
    'CURL_STATICLIB',
    'CURL_DISABLE_LDAP',
  ]
elif builder.target_platform == 'linux':
  binary.compiler.defines += ['_GNU_SOURCE']

binary.sources += [
  'base64.c',
  'connect.c',
  'content_encoding.c',
  'cookie.c',
  'curl_addrinfo.c',
  'dict.c',
  'easy.c',
  'escape.c',
  'file.c',
  'formdata.c',
  'ftp.c',
  'getenv.c',
  'getinfo.c',
  'gtls.c',
  'hash.c',
  'hostares.c',
  'hostasyn.c',
  'hostip.c',
  'hostip4.c',
  'hostip6.c',
  'hostsyn.c',
  'hostthre.c',
  'http.c',
  'http_chunks.c',
  'http_digest.c',
  'http_negotiate.c',
  'http_ntlm.c',
  'if2ip.c',
  'inet_ntop.c',
  'inet_pton.c',
  'krb4.c',
  'krb5.c',
  'ldap.c',
  'llist.c',
  'md5.c',
  'memdebug.c',
  'mprintf.c',
  'multi.c',
  'netrc.c',
  'nss.c',
  'parsedate.c',
  'progress.c',
  'qssl.c',
  'rawstr.c',
  'security.c',
  'select.c',
  'sendf.c',
  'share.c',
  'socks.c',
  'speedcheck.c',
  'splay.c',
  'ssh.c',
  'sslgen.c',
  'ssluse.c',
  'strdup.c',
  'strequal.c',
  'strerror.c',
  'strtok.c',
  'strtoofft.c',
  'telnet.c',
  'tftp.c',
  'timeval.c',
  'transfer.c',
  'url.c',
  'version.c'
]
rvalue = builder.Add(binary)