735
|
1 if (STATIC_BUILD OR NOT USE_SYSTEM_CURL)
|
|
2 SET(CURL_SOURCES_DIR ${CMAKE_BINARY_DIR}/curl-7.26.0)
|
|
3 DownloadPackage(
|
|
4 "3fa4d5236f2a36ca5c3af6715e837691"
|
|
5 "http://www.montefiore.ulg.ac.be/~jodogne/Orthanc/ThirdPartyDownloads/curl-7.26.0.tar.gz"
|
|
6 "${CURL_SOURCES_DIR}")
|
|
7
|
|
8 include_directories(${CURL_SOURCES_DIR}/include)
|
|
9 AUX_SOURCE_DIRECTORY(${CURL_SOURCES_DIR}/lib CURL_SOURCES)
|
|
10 source_group(ThirdParty\\LibCurl REGULAR_EXPRESSION ${CURL_SOURCES_DIR}/.*)
|
|
11
|
|
12 #add_library(Curl STATIC ${CURL_SOURCES})
|
|
13 #link_libraries(Curl)
|
|
14
|
|
15 add_definitions(
|
|
16 -DCURL_STATICLIB=1
|
|
17 -DBUILDING_LIBCURL=1
|
|
18 -DCURL_DISABLE_LDAPS=1
|
|
19 -DCURL_DISABLE_LDAP=1
|
|
20 -D_WIN32_WINNT=0x0501
|
|
21
|
|
22 -DCURL_DISABLE_DICT=1
|
|
23 -DCURL_DISABLE_FILE=1
|
|
24 -DCURL_DISABLE_FTP=1
|
|
25 -DCURL_DISABLE_GOPHER=1
|
|
26 -DCURL_DISABLE_LDAP=1
|
|
27 -DCURL_DISABLE_LDAPS=1
|
|
28 -DCURL_DISABLE_POP3=1
|
|
29 -DCURL_DISABLE_PROXY=1
|
|
30 -DCURL_DISABLE_RTSP=1
|
|
31 -DCURL_DISABLE_TELNET=1
|
|
32 -DCURL_DISABLE_TFTP=1
|
|
33 )
|
|
34
|
|
35 if (${ENABLE_SSL})
|
|
36 add_definitions(
|
|
37 #-DHAVE_LIBSSL=1
|
|
38 -DUSE_OPENSSL=1
|
|
39 -DUSE_SSLEAY=1
|
|
40 )
|
|
41 endif()
|
|
42
|
|
43 if (${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
|
|
44 if ("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
|
45 SET(TMP_OS "x86_64")
|
|
46 else()
|
|
47 SET(TMP_OS "x86")
|
|
48 endif()
|
|
49
|
|
50 set_property(
|
|
51 SOURCE ${CURL_SOURCES}
|
|
52 PROPERTY COMPILE_DEFINITIONS "HAVE_TIME_H;HAVE_STRUCT_TIMEVAL;HAVE_SYS_STAT_H;HAVE_SOCKET;HAVE_STRUCT_SOCKADDR_STORAGE;HAVE_SYS_SOCKET_H;HAVE_SOCKET;HAVE_SYS_SOCKET_H;HAVE_NETINET_IN_H;HAVE_NETDB_H;HAVE_FCNTL_O_NONBLOCK;HAVE_FCNTL_H;HAVE_SELECT;HAVE_ERRNO_H;HAVE_SEND;HAVE_RECV;OS=\"${TMP_OS}\"")
|
|
53
|
|
54 if ("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
|
|
55 add_definitions(
|
|
56 -DRECV_TYPE_ARG1=int
|
|
57 -DRECV_TYPE_ARG2=void*
|
|
58 -DRECV_TYPE_ARG3=size_t
|
|
59 -DRECV_TYPE_ARG4=int
|
|
60 -DRECV_TYPE_RETV=ssize_t
|
|
61 -DSEND_TYPE_ARG1=int
|
|
62 -DSEND_TYPE_ARG2=void*
|
|
63 -DSEND_QUAL_ARG2=const
|
|
64 -DSEND_TYPE_ARG3=size_t
|
|
65 -DSEND_TYPE_ARG4=int
|
|
66 -DSEND_TYPE_RETV=ssize_t
|
|
67 -DSIZEOF_SHORT=2
|
|
68 -DSIZEOF_INT=4
|
|
69 -DSIZEOF_SIZE_T=8
|
|
70 )
|
|
71 elseif ("${CMAKE_SIZEOF_VOID_P}" EQUAL "4")
|
|
72 add_definitions(
|
|
73 -DRECV_TYPE_ARG1=int
|
|
74 -DRECV_TYPE_ARG2=void*
|
|
75 -DRECV_TYPE_ARG3=size_t
|
|
76 -DRECV_TYPE_ARG4=int
|
|
77 -DRECV_TYPE_RETV=int
|
|
78 -DSEND_TYPE_ARG1=int
|
|
79 -DSEND_TYPE_ARG2=void*
|
|
80 -DSEND_QUAL_ARG2=const
|
|
81 -DSEND_TYPE_ARG3=size_t
|
|
82 -DSEND_TYPE_ARG4=int
|
|
83 -DSEND_TYPE_RETV=int
|
|
84 -DSIZEOF_SHORT=2
|
|
85 -DSIZEOF_INT=4
|
|
86 -DSIZEOF_SIZE_T=4
|
|
87 )
|
|
88 else()
|
|
89 message(FATAL_ERROR "Support your platform here")
|
|
90 endif()
|
|
91 endif()
|
|
92
|
|
93 else()
|
|
94 include(FindCURL)
|
|
95 include_directories(${CURL_INCLUDE_DIRS})
|
|
96 link_libraries(${CURL_LIBRARIES})
|
|
97
|
|
98 if (NOT ${CURL_FOUND})
|
|
99 message(FATAL_ERROR "Unable to find LibCurl")
|
|
100 endif()
|
|
101 endif()
|