diff --git a/curl/build.gradle b/curl/build.gradle new file mode 100644 index 0000000..08165db --- /dev/null +++ b/curl/build.gradle @@ -0,0 +1,27 @@ +apply plugin: 'c' +apply plugin: 'visual-studio' + +sources { + download { + c { + exportedHeaders { + srcDir "packages/curl.7.30.0.2/build/native/include" + } + } + } +} + +executables { + download { + binaries.all { + if (toolChain in VisualCpp) { + cCompiler.args "/MD" + linker.args "/SUBSYSTEM:CONSOLE", "/LIBPATH:../build/lib/", "libcurl.lib" + } else if (toolChain in Gcc) { + linker.args "-lcurl" + } + } + } +} + + diff --git a/curl/src/download/c/download.c b/curl/src/download/c/download.c new file mode 100644 index 0000000..87140d3 --- /dev/null +++ b/curl/src/download/c/download.c @@ -0,0 +1,40 @@ +/********* Sample code generated by the curl command line tool ********** + * All curl_easy_setopt() options are documented at: + * http://curl.haxx.se/libcurl/c/curl_easy_setopt.html + ************************************************************************/ +#include + +int main(int argc, char *argv[]) +{ + CURLcode ret; + CURL *hnd; + + hnd = curl_easy_init(); + curl_easy_setopt(hnd, CURLOPT_URL, "http://www.ysoft.com"); + curl_easy_setopt(hnd, CURLOPT_USERAGENT, "curl/7.26.0"); + curl_easy_setopt(hnd, CURLOPT_MAXREDIRS, 50L); + curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L); + + /* Here is a list of options the curl code used that cannot get generated + as source easily. You may select to either not use them or implement + them yourself. + + CURLOPT_WRITEDATA set to a objectpointer + CURLOPT_WRITEFUNCTION set to a functionpointer + CURLOPT_READDATA set to a objectpointer + CURLOPT_READFUNCTION set to a functionpointer + CURLOPT_SEEKDATA set to a objectpointer + CURLOPT_SEEKFUNCTION set to a functionpointer + CURLOPT_ERRORBUFFER set to a objectpointer + CURLOPT_STDERR set to a objectpointer + + */ + + ret = curl_easy_perform(hnd); + + curl_easy_cleanup(hnd); + hnd = NULL; + + return (int)ret; +} +/**** End of sample code ****/