#
dfd36d3e |
| 10-Oct-2024 |
Viktor Szakats |
cmake: apply `WIN32_LEAN_AND_MEAN` to all feature checks Enable `WIN32_LEAN_AND_MEAN` for all feature detections on Windows. (Also drop it from individual detections.) Cher
cmake: apply `WIN32_LEAN_AND_MEAN` to all feature checks Enable `WIN32_LEAN_AND_MEAN` for all feature detections on Windows. (Also drop it from individual detections.) Cherry-picked from #15164
show more ...
|
#
ae535169 |
| 08-Oct-2024 |
Viktor Szakats |
cmake: tidy up detection C code Closes #15195
|
#
acbc6b70 |
| 12-Jul-2024 |
Viktor Szakats |
cmake: tidy-ups - tidy-up comments. - use lowercase, underscore prefixed names for internal variables. - use `IN LISTS` and `IN ITEMS` in `foreach()` loops. - rename variable nam
cmake: tidy-ups - tidy-up comments. - use lowercase, underscore prefixed names for internal variables. - use `IN LISTS` and `IN ITEMS` in `foreach()` loops. - rename variable name `OUTPUT` to a more distinctive one. - tidy-up `STREQUAL` syntax. - delete commented code. - indent/whitespace. Closes #14197
show more ...
|
#
cfd6f43d |
| 06-Jul-2024 |
Viktor Szakats |
build: tidy up `__builtin_available` feature checks (Apple) - sync detection snippet between autotools and cmake It wasn't causing issues, but it's useful to avoid unnecessary di
build: tidy up `__builtin_available` feature checks (Apple) - sync detection snippet between autotools and cmake It wasn't causing issues, but it's useful to avoid unnecessary differences while debugging. - cmake: limit check to `APPLE`. Ref: b05dc7eb3592305de9fa85640767f3dd2a8d4c93 #14122 Cherry-picked from #14097 Closes #14127
show more ...
|
#
7ca0a379 |
| 10-May-2024 |
Orgad Shaneh |
cmake: fix `HAVE_IOCTLSOCKET_FIONBIO` test with gcc 14 The function signature has had u_long flags since ever. This is how it is defined in the documentation, and implemented in MinGW.
cmake: fix `HAVE_IOCTLSOCKET_FIONBIO` test with gcc 14 The function signature has had u_long flags since ever. This is how it is defined in the documentation, and implemented in MinGW. The code that uses ioctlsocket in nonblock.c also has unsigned long. Error: CurlTests.c:275:41: error: passing argument 3 of 'ioctlsocket' from incompatible pointer type [-Wincompatible-pointer-types] 275 | if(0 != ioctlsocket(0, FIONBIO, &flags)) | ^~~~~~ | | | int * In file included from CurlTests.c:266: /opt/mxe/usr/i686-w64-mingw32.static/include/winsock2.h:1007:76: note: expected 'u_long *' {aka 'long unsigned int *'} but argument is of type 'int *' 1007 | WINSOCK_API_LINKAGE int WSAAPI ioctlsocket(SOCKET s,__LONG32 cmd,u_long *argp); | ~~~~~~~~^~~~ Closes #13578
show more ...
|
#
03e7dff8 |
| 12-Dec-2023 |
Viktor Szakats |
windows: delete redundant headers `winsock2.h` pulls in `windows.h`. `ws2tcpip.h` pulls in `winsock2.h`. `winsock2.h` and `ws2tcpip.h` are also pulled by `curl/curl.h`. Keep onl
windows: delete redundant headers `winsock2.h` pulls in `windows.h`. `ws2tcpip.h` pulls in `winsock2.h`. `winsock2.h` and `ws2tcpip.h` are also pulled by `curl/curl.h`. Keep only those headers that are not already included, or the code under it uses something from that specific header. Closes #12539
show more ...
|
#
c1bc090d |
| 09-Dec-2023 |
Viktor Szakats |
windows: simplify detecting and using system headers - autotools, cmake: assume that if we detect Windows, `windows.h`, `winsock2.h` and `ws2tcpip.h` do exist. - lib: fix 3 outlier
windows: simplify detecting and using system headers - autotools, cmake: assume that if we detect Windows, `windows.h`, `winsock2.h` and `ws2tcpip.h` do exist. - lib: fix 3 outlier `#if` conditions to use `USE_WINSOCK` instead of looking for `winsock2.h`. - autotools: merge 3 Windows check methods into one. - move Watt-32 and lwIP socket support to `setup-win32.h` from `config-win32.h`. It opens up using these with all build tools. Also merge logic with Windows Sockets. - fix to assume Windows sockets with the mingw32ce toolchain. Follow-up to: 2748c64d605b19fb419ae56810ad8da36487a2d4 - cmake: delete unused variable `signature_call_conv` since eb33ccd5332435fa50f1758e5debb869c6942b7f. - autotools: simplify `CURL_CHECK_WIN32_LARGEFILE` detection. - examples/externalsocket: fix header order. - cmake/OtherTests.cmake: delete Windows-specific `_source_epilogue` that wasn't used anymore. - cmake/OtherTests.cmake: set `WIN32_LEAN_AND_MEAN` for test `SIZEOF_STRUCT_SOCKADDR_STORAGE`. After this patch curl universally uses `_WIN32` to guard Windows-specific logic. It guards Windows Sockets-specific logic with `USE_WINSOCK` (this might need further work). Reviewed-by: Jay Satiro Closes #12495
show more ...
|
#
a426b505 |
| 13-Oct-2023 |
Viktor Szakats |
build: variadic macro tidy-ups - delete unused `HAVE_VARIADIC_MACROS_C99/GCC` feature checks. (both autotools and CMake.) - delete duplicate `NULL` check in `Curl_trc_cf_infof()`.
build: variadic macro tidy-ups - delete unused `HAVE_VARIADIC_MACROS_C99/GCC` feature checks. (both autotools and CMake.) - delete duplicate `NULL` check in `Curl_trc_cf_infof()`. - fix compiler warning in `CURL_DISABLE_VERBOSE_STRINGS` builds. ``` ./lib/cf-socket.c:122:41: warning: unused parameter 'data' [-Wunused-parameter] static void nosigpipe(struct Curl_easy *data, ^ ``` - fix `#ifdef` comments in `lib/curl_trc.{c,h}`. - fix indentation in some `infof()` calls. Follow-up to dac293cfb7026b1ca4175d88b80f1432d3d3c684 #12167 Cherry-picked from #12105 Closes #12210
show more ...
|
#
2100d9fd |
| 05-Oct-2023 |
Viktor Szakats |
cmake: pre-fill rest of detection values for Windows The goal of this patch is to avoid unnecessary feature detection work when doing Windows builds with CMake. Do this by pre-filling we
cmake: pre-fill rest of detection values for Windows The goal of this patch is to avoid unnecessary feature detection work when doing Windows builds with CMake. Do this by pre-filling well-known detection results for Windows and specifically for mingw-w64 and MSVC compilers. Also limit feature checks to platforms where the results are actually used. Drop a few redundant ones. And some tidying up. - pre-fill remaining detection values in Windows CMake builds. Based on actual detection results observed in CI runs, preceding similar work over libssh2 and matching up values with `lib/config-win32.h`. This brings down CMake configuration time from 58 to 14 seconds on the same local machine. On AppVeyor CI this translates to: - 128 seconds -> 50 seconds VS2022 MSVC with OpenSSL (per CMake job): https://ci.appveyor.com/project/curlorg/curl/builds/48208419/job/4gw66ecrjpy7necb#L296 https://ci.appveyor.com/project/curlorg/curl/builds/48217440/job/8m4fwrr2fe249uo8#L186 - 62 seconds -> 16 seconds VS2017 MINGW (per CMake job): https://ci.appveyor.com/project/curlorg/curl/builds/48208419/job/s1y8q5ivlcs7ub29?fullLog=true#L290 https://ci.appveyor.com/project/curlorg/curl/builds/48217440/job/pchpxyjsyc9kl13a?fullLog=true#L194 The formula is about 1-3 seconds delay for each detection. Almost all of these trigger a full compile-link cycle behind the scenes, slow even today, both cross and native, mingw-w64 and apparently MSVC too. Enabling .map files or other custom build features slows it down further. (Similar is expected for autotools configure.) - stop detecting `idn2.h` if idn2 was deselected. autotools does this. - stop detecting `idn2.h` if idn2 was not found. This deviates from autotools. Source code requires both header and lib, so this is still correct, but faster. - limit `ADDRESS_FAMILY` detection to Windows. - normalize `HAVE_WIN32_WINNT` value to lowercase `0x0a12` format. - pre-fill `HAVE_WIN32_WINNT`-dependent detection results. Saving 4 (slow) feature-detections in most builds: `getaddrinfo`, `freeaddrinfo`, `inet_ntop`, `inet_pton` - fix pre-filled `HAVE_SYS_TIME_H`, `HAVE_SYS_PARAM_H`, `HAVE_GETTIMEOFDAY` for mingw-w64. Luckily this do not change build results, as `WIN32` took priority over `HAVE_GETTIMEOFDAY` with the current source code. - limit `HAVE_CLOCK_GETTIME_MONOTONIC_RAW` and `HAVE_CLOCK_GETTIME_MONOTONIC` detections to non-Windows. We're not using these in the source code for Windows. - reduce compiler warning noise in CMake internal logs: - fix to include `winsock2.h` before `windows.h`. Apply it to autotools test snippets too. - delete previous `-D_WINSOCKAPI_=` hack that aimed to fix the above. - cleanup `CMake/CurlTests.c` to emit less warnings. - delete redundant `HAVE_MACRO_SIGSETJMP` feature check. It was the same check as `HAVE_SIGSETJMP`. - delete 'experimental' marking from `CURL_USE_OPENSSL`. - show CMake version via `CMakeLists.txt`. Credit to the `zlib-ng` project for the idea: https://github.com/zlib-ng/zlib-ng/blob/61e181c8ae93dbf56040336179c9954078bd1399/CMakeLists.txt#L7 - make `CMake/CurlTests.c` pass `checksrc`. - `CMake/WindowsCache.cmake` tidy-ups. - replace `WIN32` guard with `_WIN32` in `CMake/CurlTests.c`. Closes #12044
show more ...
|
#
db07376a |
| 28-Sep-2023 |
Daniel Stenberg |
lib: remove TIME_WITH_SYS_TIME It is not used in any code anywhere. Ref: #11964 Closes #11975
|
#
ce3dce90 |
| 31-Aug-2023 |
Viktor Szakats |
tidy-up: mostly whitespace nits - delete completed TODO from `./CMakeLists.txt`. - convert a C++ comment to C89 in `./CMake/CurlTests.c`. - delete duplicate EOLs from EOF. - add
tidy-up: mostly whitespace nits - delete completed TODO from `./CMakeLists.txt`. - convert a C++ comment to C89 in `./CMake/CurlTests.c`. - delete duplicate EOLs from EOF. - add missing EOL at EOF. - delete whitespace at EOL (except from expected test results). - convert tabs to spaces. - convert CRLF EOLs to LF in GHA yaml. - text casing fixes in `./CMakeLists.txt`. - fix a codespell typo in `packages/OS400/initscript.sh`. Closes #11772
show more ...
|
#
2bc1d775 |
| 02-Jan-2023 |
Daniel Stenberg |
copyright: update all copyright lines and remove year ranges - they are mostly pointless in all major jurisdictions - many big corporations and projects already don't use them - save
copyright: update all copyright lines and remove year ranges - they are mostly pointless in all major jurisdictions - many big corporations and projects already don't use them - saves us from pointless churn - git keeps history for us - the year range is kept in COPYING checksrc is updated to allow non-year using copyright statements Closes #10205
show more ...
|
#
1d64a2bf |
| 14-Oct-2022 |
Viktor Szakats |
cmake: delete duplicate HAVE_GETADDRINFO test A custom `HAVE_GETADDRINFO` check came with the initial CMake commit [1]. A later commit [2] added a standard check for it as well. The
cmake: delete duplicate HAVE_GETADDRINFO test A custom `HAVE_GETADDRINFO` check came with the initial CMake commit [1]. A later commit [2] added a standard check for it as well. The standard check run before the custom one, so CMake ignored the latter. The custom check was also non-portable, so this patch deletes it in favor of the standard check. [1] 4c5307b45655ba75ab066564afdc0c111a8b9291 [2] aec7c5a87c8482b6ddffa352d7d220698652262e Closes #9731
show more ...
|
#
0c68e254 |
| 26-Aug-2022 |
Marc Hoersken |
lib: add required Win32 setup definitions in setup-win32.h Assisted-by: Jay Satiro Reviewed-by: Marcel Raad Follow up to #9312 Closes #9375
|
#
109e9730 |
| 14-Aug-2022 |
Marc Hoersken |
cmake: add detection of threadsafe feature Avoids failing test 1014 by replicating configure checks for HAVE_ATOMIC and _WIN32_WINNT with custom CMake tests. Reviewed-by: Marcel
cmake: add detection of threadsafe feature Avoids failing test 1014 by replicating configure checks for HAVE_ATOMIC and _WIN32_WINNT with custom CMake tests. Reviewed-by: Marcel Raad Follow up to #8680 Closes #9312
show more ...
|
#
ad9bc597 |
| 17-May-2022 |
max.mehl |
copyright: make repository REUSE compliant Add licensing and copyright information for all files in this repository. This either happens in the file itself as a comment header or in the
copyright: make repository REUSE compliant Add licensing and copyright information for all files in this repository. This either happens in the file itself as a comment header or in the file `.reuse/dep5`. This commit also adds a Github workflow to check pull requests and adapts copyright.pl to the changes. Closes #8869
show more ...
|
#
90dd1fc6 |
| 16-Jan-2022 |
Daniel Stenberg |
misc: remove BeOS code and references There has not been a mention of this OS in any commit since December 2004 (58f4af7973e3d2). The OS is also long gone. Closes #8288
|
#
2bde1774 |
| 29-Sep-2021 |
Marcel Raad |
CMake: remove `HAVE_WINSOCK_H` definition It's not used anymore. Closes https://github.com/curl/curl/pull/7795
|
#
180180a4 |
| 29-Sep-2021 |
Daniel Stenberg |
Revert "build: remove checks for WinSock 1" Due to CI issues This reverts commit c2ea04f92b00b6271627cb218647527b5a50f2fc. Closes #7790
|
#
c2ea04f9 |
| 17-Sep-2021 |
Marcel Raad |
build: remove checks for WinSock 1 It's not supported anymore. Closes https://github.com/curl/curl/pull/7778
|
#
af1ee130 |
| 10-Jul-2021 |
Andrea Pappacoda |
build: fix IoctlSocket FIONBIO check Prior to this change HAVE_IOCTLSOCKET_CAMEL_FIONBIO mistakenly checked for (lowercase) ioctlsocket when it should have checked for IoctlSocket.
build: fix IoctlSocket FIONBIO check Prior to this change HAVE_IOCTLSOCKET_CAMEL_FIONBIO mistakenly checked for (lowercase) ioctlsocket when it should have checked for IoctlSocket. Closes https://github.com/curl/curl/pull/7375
show more ...
|
#
6f5ff0ee |
| 18-Jun-2021 |
Gergely Nagy |
configure/cmake: remove checks for unused gethostbyaddr and gethostbyaddr_r Closes #7276
|
#
f471efa7 |
| 18-Jun-2021 |
Gergely Nagy |
configure/cmake: remove checks for unused inet_ntoa and inet_ntoa_r Closes #7276
|
Revision tags: curl-7_76_1 |
|
#
812fce9d |
| 07-Apr-2021 |
Michael Forney |
configure: remove use of RETSIGTYPE This was previously defined by the obsolete AC_TYPE_SIGNAL macro, which was removed in 2682e5f5. The deprecation text says > Your code may sa
configure: remove use of RETSIGTYPE This was previously defined by the obsolete AC_TYPE_SIGNAL macro, which was removed in 2682e5f5. The deprecation text says > Your code may safely assume C89 semantics that RETSIGTYPE is void. So, remove it and just use void instead. Closes #6861
show more ...
|
Revision tags: curl-7_76_0, curl-7_75_0, curl-7_74_0 |
|
#
ac0a88fd |
| 05-Nov-2020 |
Daniel Stenberg |
copyright: fix year ranges Follow-up from 4d2f8006777
|