Task #800

update to latest cURL

Added by Spyhawk over 4 years ago. Updated almost 3 years ago.

Status:Fixed% Done:

100%

Priority:NormalSpent time:-
Assignee:Spyhawk
Category:Client
Target version:2.76
OS:Windows Arch:

Description

The embedded cURL library is 3 years old (7.26), and updating it to the latest version might give us some benefits as well as being "state of the art".

Since I’ve been using dynamic cURL latest version without any issue under Linux, I updated the embedded lib and Linux can indeed compile without problem. However, compiling under windows fails with the following error:

unable to link function recv

which is trown after the CMake compile test doesn’t succeed:

check_c_source_compiles("${_source_epilogue}
int main(void) {
recv(0, 0, 0, 0);
return 0;
}" curl_cv_recv)

I am actually unsure how to fix that linking problem.

Some relevant changes in cURL cmake code:

There are also various warning (IPv6, SSL2 not found) as these settings aren’t explicitly disabled unlike the Linux version, but these aren’t critical for cURL to work.

Associated revisions

Revision d69a465d
Added by Spyhawk over 4 years ago

misc: updated to latest libs excepted cURL, refs #800

History

#1 Updated by Spyhawk over 4 years ago

  • Description updated (diff)

#2 Updated by Spyhawk over 4 years ago

I’ve also updated all the other embedded libs (ogg-vorbis, jpeg-turbo, freetype, glew) and tested them successfully.
In case we’re unable to fix that curl 7.40 issue, we could simply revert the 3 following commits and ship ET:L 2.73 with curl 7.26:

  • dad99ac8e36ad91c655a7b7162114fa38a8ec329
  • e5639398e7ee10fb84133b25331ced19da9a1ffa
  • cf4eae3dedc3140528dd071c1cc424839102fd89

#3 Updated by Spyhawk over 4 years ago

This error doesn’t happen anymore with the new cURL 7.41 (see this upstream cmake fix).

I do have the following error, however: "don’t know how to make 'libs/curl/libcurl.lib’". It seems curl static linking is currently broken.

#4 Updated by Spyhawk over 4 years ago

  • Target version changed from 2.74 to 2.78

This will likely not be fixed upstream before some time.
Since this is far from critical, we can ship cURL 7.26 with all other libs updated in the meantime.

#5 Updated by Spyhawk over 3 years ago

  • Assignee set to Spyhawk
  • % Done changed from 10 to 20

Seems the cmake issue on windows might have been fixed recently.
Try updating to cURL 7.45 once it is released.

Note: OpenSSL and SSH2 supprot can be disabled too (with -DCMAKE_USE_OPENSSL=0 -DCMAKE_USE_LIBSSH2=0).

Edit: 7.45 still didn’t fix the cmake script for windows build... delaying to 7.46?

#7 Updated by Spyhawk almost 3 years ago

There is a fix available in a curl fork, but this isn’t available in the master branch yet.

See https://github.com/curl/curl/pull/852.

#8 Updated by Spyhawk almost 3 years ago

  • Target version changed from 2.78 to 2.76

#9 Updated by Spyhawk almost 3 years ago

  • Status changed from New to Fixed
  • % Done changed from 20 to 100

Updated to 7.50.3.

Also available in: Atom PDF