configure: "--disable-threaded-resolver" does not work #1784

Closed
mkauf opened this Issue Aug 15, 2017 · 7 comments

Comments

Projects
None yet
4 participants
Contributor

mkauf commented Aug 15, 2017

I did this

./configure --disable-threaded-resolver

I expected the following

The threaded resolver is disabled.

... but actually it's enabled:

  curl version:     7.55.1
  Host setup:       x86_64-pc-linux-gnu
  Install prefix:   /usr/local
  Compiler:         gcc
  SSL support:      enabled (OpenSSL)
  SSH support:      no      (--with-libssh2)
  zlib support:     enabled
  GSS-API support:  no      (--with-gssapi)
  TLS-SRP support:  no      (--enable-tls-srp)
  resolver:         POSIX threaded
  IPv6 support:     enabled
  Unix sockets support: enabled
  IDN support:      no      (--with-{libidn2,winidn})
  Build libcurl:    Shared=yes, Static=yes
  Built-in manual:  enabled
  --libcurl option: enabled (--disable-libcurl-option)
  Verbose errors:   enabled (--disable-verbose)
  SSPI support:     no      (--enable-sspi)
  ca cert bundle:   /etc/pki/tls/certs/ca-bundle.crt
  ca cert path:     no
  ca fallback:      no
  LDAP support:     no      (--enable-ldap / --with-ldap-lib / --with-lber-lib)
  LDAPS support:    no      (--enable-ldaps)
  RTSP support:     enabled
  RTMP support:     no      (--with-librtmp)
  metalink support: no      (--with-libmetalink)
  PSL support:      no      (libpsl not found)
  HTTP2 support:    enabled (nghttp2)
  Protocols:        DICT FILE FTP FTPS GOPHER HTTP HTTPS IMAP IMAPS POP3 POP3S RTSP SMB SMBS SMTP SMTPS TELNET TFTP

curl/libcurl version

curl 7.55.1 (x86_64-pc-linux-gnu) libcurl/7.55.1 OpenSSL/1.0.2j zlib/1.2.8 nghttp2/1.7.1
Release-Date: 2017-08-14
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp smb smbs smtp smtps telnet tftp 
Features: AsynchDNS IPv6 Largefile NTLM NTLM_WB SSL libz HTTP2 UnixSockets HTTPS-proxy 

operating system

Linux

Contributor

jzakrzewski commented Aug 15, 2017

I'm not able to make a full pull-request right now, but here's a patch:

index d77a884..6dcd0f1 100644
--- a/m4/curl-confopts.m4
+++ b/m4/curl-confopts.m4
@@ -37,14 +37,14 @@ AC_HELP_STRING([--enable-threaded-resolver],[Enable threaded resolver])
 AC_HELP_STRING([--disable-threaded-resolver],[Disable threaded resolver]),
   OPT_THRES=$enableval)
   case "$OPT_THRES" in
-    *)
-      dnl configure option not specified
-      want_thres="yes"
-      ;;
     no)
       dnl --disable-threaded-resolver option used
       want_thres="no"
       ;;
+    *)
+      dnl configure option not specified
+      want_thres="yes"
+      ;;
   esac
   AC_MSG_RESULT([$want_thres])
 ])
Contributor

mkauf commented Aug 15, 2017

Yes, that's the bug. "*" matches "yes" and "no", so "no" must be tested first

Owner

bagder commented Aug 15, 2017

@jzakrzewski, Turn that into a PR perhaps?

@bagder bagder added the build label Aug 15, 2017

@jay jay closed this in 3cb4bb6 Aug 15, 2017

Owner

jay commented Aug 15, 2017

Thanks, it's fine +1. I put it in with assigned authorship to @jzakrzewski

Contributor

jzakrzewski commented Aug 15, 2017

Thanks @jay.
I couldn't craft a commit at that moment and, sadly, I think it's impossible to upload a patch to github through the website.

Owner

bagder commented Aug 15, 2017

I think it's impossible to upload a patch to github through the website.

It is actually possible. You just need to make sure it uses a ".txt" extension but then you can upload it fine in a comment. Next time! =)

Contributor

mkauf commented Aug 16, 2017

@bagder on https://curl.haxx.se/changes.html , please move "configure: use the threaded resolver backend by default if possible" from "Bugfixes" to "Changes".

jzakrzewski referenced this issue Aug 16, 2017

jow- pushed a commit to lede-project/source that referenced this issue Sep 27, 2017

curl: fix disable threaded resolver
Bump to 7.55.1 broke the disable threaded resolver feature as reported
in curl/curl#1784.
As a result curl is always compiled with the threaded resolver feature
enabled which causes a dependency issue on pthread for uclibc.
Fix this issue by backporting the upstream curl commit which fixes
disable threaded resolver.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>

llun added a commit to llun/lede that referenced this issue Dec 24, 2017

curl: fix disable threaded resolver
Bump to 7.55.1 broke the disable threaded resolver feature as reported
in curl/curl#1784.
As a result curl is always compiled with the threaded resolver feature
enabled which causes a dependency issue on pthread for uclibc.
Fix this issue by backporting the upstream curl commit which fixes
disable threaded resolver.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment