summaryrefslogtreecommitdiff
path: root/CMake
Commit message (Collapse)AuthorAgeFilesLines
...
* cmake: fix HAVE_GETHOSTNAME definitionPeter Wu2014-11-101-0/+1
| | | | | | | | | | | Otherwise Curl_gethostname always fails. Windows has gethostname since Vista according to http://msdn.microsoft.com/en-us/library/ms738527%28VS.85%29.aspx, but accordings to byte_bucket's VC 2005 documentation, it is available even in Windows 95. (possibly after installing a Platform SDK, the Windows Server 2003 SP1 Platform SDK should be sufficient). Signed-off-by: Peter Wu <peter@lekensteyn.nl>
* cmake: fix struct sockaddr_storage checkPeter Wu2014-11-031-23/+5
| | | | | | | | | | | | | | | CHECK_TYPE_SIZE_PREINCLUDE is an internal, undocumented variable which was removed in cmake 2.8.1. According to the MSDN docs[1], inclusion of winsock2.h is sufficient. WIN32_LEAN_AND_MEAN does not really seem to affect the tests, so remove it too[2]. For the non-windows case, remove inet headers as POSIX only requires sys/socket.h. [1]: http://msdn.microsoft.com/en-us/library/windows/desktop/ms740504%28v=vs.85%29.aspx [2]: http://stackoverflow.com/questions/11040133/what-does-defining-win32-lean-and-mean-exclude-exactly Signed-off-by: Peter Wu <peter@lekensteyn.nl>
* cmake: clean OtherTests, fixing -WerrorPeter Wu2014-11-033-245/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There were several -Wunused warnings and one duplicate macro definition. The EXTRA_DEFINES variable of the CurlCheckCSources macro was being abused ("__unused1\n#undef inline\n#define __unused2", seriously?) to insert extra C code. Avoid this broken abstraction and use cmake's check_c_source_compiles directly (works fine with CMake 2.8, maybe even cmake 2.6). After cleaning up all related variables (EXTRA_DEFINES, HEADER_INCLUDES, auxiliary headers_hack), also remove a duplicate add_headers_include macro and remove duplicate header additions before the struct timeval check. Oh, and now the code is converted to use CheckCSourceRuns and CheckCSourceCompiles, the two curl-specific helpers can be removed. Unfortunately, the cmake output is now slightly more verbose. Before: Performing Test int send(int, const void *, size_t, int) (curl_cv_func_send_test) Performing Test int send(int, const void *, size_t, int) (curl_cv_func_send_test) - Failed Since check_c_source_compiles prints the varname, now you see: Performing Test curl_cv_func_send_test Performing Test curl_cv_func_send_test - Failed Tested: int send(int, const void *, size_t, int) Compared cmake output with each other using vimdiff, no functional differences were found. Tested with GCC 4.9.1 and Clang 3.5.0. Signed-off-by: Peter Wu <peter@lekensteyn.nl>
* cmake: fix gethostby{addr,name}_r in CurlTestsPeter Wu2014-11-031-246/+70
| | | | | | | | | | | | | | | | | | | | | This patch cleans up the automatically-generated (?) code and fixes one case that will always fail due to syntax error. HAVE_GETHOSTBYADDR_R_5_REENTRANT always failed because of a trailing character ("int length;q"). Several parameter type and unused variable warnings popped up. This causes a detection failure with -Werror. Observe that the REENTRANT cases are exactly the same as their non-REENTRANT cases except for a `_REENTRANT` macro definition. Merge all these pieces and build one big main function with different cases, but reusing variables where logical. For the cases where the parameters where NULL, I looked at lib/hostip4.c to get an idea of the parameters types. void-cast variables such as 'rc' to avoid -Wuninitialized errors. Signed-off-by: Peter Wu <peter@lekensteyn.nl>
* cmake: drop _BSD_SOURCE macro usagePeter Wu2014-11-031-1/+0
| | | | | | | | autotools does not use features.h nor _BSD_SOURCE. As this macro triggers warnings since glibc 2.20, remove it. It should not have functional differences. Signed-off-by: Peter Wu <peter@lekensteyn.nl>
* Cmake: Build with GSSAPI (MIT or Heimdal)Jakub Zakrzewski2014-10-091-0/+289
| | | | | | | | | | | | It tries hard to recognise SDK's on different platforms. On windows MIT Kerberos installs SDK with other things and puts path into registry. Heimdal have separate zip archive. On linux pkg-config is tried, then krb5-config script and finally old-style libs and headers detection. Command line args: * CMAKE_USE_GSSAPI - enables GSSAPI detection * GSS_ROOT_DIR - if set, should point to the root of GSSAPI installation (the one with include and lib directories)
* Cmake: Avoid cycle directory dependencies.Jakub Zakrzewski2014-10-091-3/+3
| | | | | | Because we prepended libraries to list, CMake had troubles resolving link directory order as it detected some cycles. Appending to list ensures that dependencies will preceed dependees.
* Cmake: Possibility to use OpenLDAP, OpenSSL, LibSSH2 on windowsJakub Zakrzewski2014-08-251-0/+3
| | | | | At this point I can build libcurl on windows. It provides at least the same list of protocols as for linux build and works with our software.
* Cmake: Removed repeated content from ending blocksJakub Zakrzewski2014-08-251-7/+7
| | | | They are unnecesary in modern CMake and removing them improves readability.
* Cmake: Removed some useless empty SET statements.Jakub Zakrzewski2014-08-251-4/+0
| | | | | Undefined variables resolve to empty strings and we do not ever test if the variable is defined thus those SETs are superfluous.
* Cmake: Don't check for all headers each timeJakub Zakrzewski2014-08-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | One header at a time is the right way. Apart from that the output on windows goes from: ... -- Looking for include files I:/src/libssh2-1.4.3/include/libssh2.h, ws2tcpip.h -- Looking for include files I:/src/libssh2-1.4.3/include/libssh2.h, ws2tcpip.h - found -- Looking for 3 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wins ock2.h -- Looking for 3 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wins ock2.h - found -- Looking for 4 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., stdi o.h -- Looking for 4 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., stdi o.h - found -- Looking for 5 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wind ows.h -- Looking for 5 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wind ows.h - found -- Looking for 6 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wins ock.h -- Looking for 6 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., wins ock.h - found -- Looking for 7 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., sys/ filio.h -- Looking for 7 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., sys/ filio.h - not found -- Looking for 7 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., sys/ ioctl.h -- Looking for 7 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., sys/ ioctl.h - not found -- Looking for 7 include files I:/src/libssh2-1.4.3/include/libssh2.h, ..., sys/ resource.h ... To much nicer: ... -- Looking for ws2tcpip.h -- Looking for ws2tcpip.h - found -- Looking for winsock2.h -- Looking for winsock2.h - found -- Looking for stdio.h -- Looking for stdio.h - found -- Looking for windows.h -- Looking for windows.h - found -- Looking for winsock.h -- Looking for winsock.h - found -- Looking for sys/filio.h -- Looking for sys/filio.h - not found -- Looking for sys/ioctl.h -- Looking for sys/ioctl.h - not found -- Looking for sys/resource.h
* Cmake: LibSSH2 detection and use.Jakub Zakrzewski2014-08-251-0/+35
|
* Cmake: Moved macros out of the main CMakeLists.txtJakub Zakrzewski2014-08-251-0/+89
|
* Cmake: Require at least CMake 2.8.Jakub Zakrzewski2014-08-252-31/+0
| | | | | | | | CMake 2.6 is already a bit old. Many bugs have been fixed since its release. We use 2.8 in our company and we have no intention of polluting our environment with old software, so 2.6 would not be tested. This shouldn't be a problem since all one need to build CMake from source is C and C++ compiler.
* cmake: fix Windows build with IPv6 supportDaniel Stenberg2013-11-091-1/+5
| | | | Patch-by: "Z98"
* cmake: use standard findxxx modules for cmake v2.8+Sergei Nikulov2012-09-172-13/+17
|
* removed execute file permissionYang Tse2011-12-301-0/+0
|
* removed trailing whitespaceYang Tse2011-12-301-1/+1
|
* sources: update source headersDaniel Stenberg2011-03-101-0/+21
| | | | | | All C and H files now (should) feature the proper project curl source code header, which includes basic info, a copyright statement and some basic disclaimers.
* CMake: Use upstream CheckTypeSize moduleBrad King2011-01-062-101/+0
| | | | | | | | | | | | | The CheckTypeSize module that comes with CMake 2.6.2 and above does everything we need and also supports cross-compiling. Avoid duplicating an older version of it here. This also fixes a cross-compiling error because the old line include ("${CMAKE_MODULE_PATH}/CheckTypeSize.cmake") failed because CMAKE_MODULE_PATH is a search path and not a directory. Signed-off-by: Brad King <brad.king@kitware.com>
* CMake fixes for Linux.Bill Hoffman2010-03-242-1/+5
| | | | | Make sure <sys/socket.h> is included if around when testing/using socklen_t. Also, disable LDAP if LDAP_H is not found on the system.
* replaced tabs with spacesYang Tse2010-02-162-3/+3
|
* removed trailing whitespaceYang Tse2010-02-143-12/+12
|
* BUG: curl did not build with cmake with VS 2005 for two reasons, ws2tcpip.h ↵Bill Hoffman2009-07-151-0/+1
| | | | requires winsock2.h to be included before it with that compiler, and wldap32 is not available with the default install of the compiler, so disable ldap support if that is not found
* ENH: add optional support for c-aresBill Hoffman2009-07-141-0/+42
|
* ENH: lower case cmake functions and remove tabs and re-indent cmake codeBill Hoffman2009-06-098-456/+456
|
* ENH: add some cmake docs and fix build with socklen_tBill Hoffman2009-06-061-0/+6
|
* removed pointless fileDaniel Stenberg2009-04-251-486/+0
|
* (Minor update) Moved some utilities to a separate file.Benoit Neil2009-04-091-0/+31
|
* Added basic OpenSSL support in CMake scripts (Thanks to Bill Hoffman)Benoit Neil2009-04-021-0/+19
|
* Initial CMake scripts (libcurl only), based on the merge of tetest scripts ↵Benoit Neil2009-04-0210-0/+1805
and mine. These are far to be functionnal yet. PS: Hello world :)