update curl example

This commit is contained in:
Juraj Michalek
2019-05-05 21:27:34 +02:00
parent 230f84a9cb
commit f517643f43
4 changed files with 55 additions and 30 deletions

15
curl/Makefile Normal file
View File

@@ -0,0 +1,15 @@
OBJ = download.o
LDADD = -lcurl
download: $(OBJ)
${CC} ${OBJ} -o download ${LDADD}
.c.o:
${CC} ${CFLAGS} -c $<
clean:
rm -f test *.o

View File

@@ -1,27 +0,0 @@
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"
}
}
}
}

View File

@@ -1,3 +0,0 @@
#!/bin/bash
gcc -lcurl download.c -o download

40
curl/download.c Normal file
View File

@@ -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 <curl/curl.h>
int main(int argc, char *argv[])
{
CURLcode ret;
CURL *hnd;
hnd = curl_easy_init();
curl_easy_setopt(hnd, CURLOPT_URL, "https://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 ****/