Bug 225219 - ftp/curl 7.57.0 fails to compile
Summary: ftp/curl 7.57.0 fails to compile
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: amd64 Any
: --- Affects Only Me
Assignee: Po-Chuan Hsieh
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-01-16 15:36 UTC by Don Randolph
Modified: 2018-02-18 13:57 UTC (History)
2 users (show)

See Also:
bugzilla: maintainer-feedback? (sunpoet)


Attachments
Full output from install (769.21 KB, text/plain)
2018-01-16 15:36 UTC, Don Randolph
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Don Randolph 2018-01-16 15:36:38 UTC
Created attachment 189800 [details]
Full output from install

I am trying to install curl via ports and it fails.  

I'm running FreeBSD 11.1-RELEASE-p6

Here is my config options.

===> The following configuration options are available for curl-7.57.0:
     CA_BUNDLE=on: Install CA bundle for OpenSSL
     COOKIES=on: Cookies support
     CURL_DEBUG=on: cURL debug memory tracking
     DEBUG=on: Build with debugging support
     DOCS=on: Build and/or install documentation
     EXAMPLES=on: Build and/or install examples
     HTTP2=on: HTTP protocol version 2.0 support
     IDN=off: International Domain Names support
     IPV6=on: IPv6 protocol support
     LDAP=off: LDAP protocol support
     LDAPS=off: LDAP protocol over SSL support
     LIBSSH2=off: SCP/SFTP support via libssh2
     METALINK=off: Metalink support
     PROXY=on: Proxy support
     PSL=off: Public Suffix List support
     RTMP=off: RTMP protocol support via librtmp
     SMB=off: SMB/CIFS support
     TLS_SRP=on: TLS-SRP (Secure Remote Password) support
====> GSSAPI Security API support: you have to select exactly one of them
     GSSAPI_BASE=off: GSSAPI support via base system (needs Kerberos)
     GSSAPI_HEIMDAL=off: GSSAPI support via security/heimdal
     GSSAPI_MIT=off: GSSAPI support via security/krb5
     GSSAPI_NONE=on: Disable GSSAPI support
====> DNS resolving options: you have to select exactly one of them
     CARES=on: Asynchronous DNS resolution via c-ares
     THREADED_RESOLVER=off: Threaded DNS resolver
====> SSL protocol support: you can only select none or one of them
     GNUTLS=off: SSL/TLS support via GnuTLS
     NSS=off: SSL/TLS support via NSS
     OPENSSL=on: SSL/TLS support via OpenSSL
     POLARSSL=off: SSL/TLS support via PolarSSL
     WOLFSSL=off: SSL/TLS support via wolfSSL


Here is where it fails

libtool: link: ranlib .libs/libcurlu.a
libtool: link: ( cd ".libs" && rm -f "libcurlu.la" && ln -s "../libcurlu.la" "libcurlu.la" )
/usr/local/bin/perl ./checksrc.pl -D. -W./curl_config.h      \
./*.[ch] ./vauth/*.[ch] ./vtls/*.[ch]
./url.c:595:82: warning: Longer than 79 columns (LONGLINE)
       data->set.no_signal = TRUE; /* different handling of signals and threads */
checksrc: 0 errors and 1 warnings
checksrc: 0 errors and 5 warnings suppressed
gmake[4]: *** [Makefile:3888: checksrc] Error 5
gmake[4]: Leaving directory '/usr/ports/ftp/curl/work/curl-7.57.0/lib'
gmake[3]: *** [Makefile:735: all] Error 2
gmake[3]: Leaving directory '/usr/ports/ftp/curl/work/curl-7.57.0/lib'
gmake[2]: *** [Makefile:907: all-recursive] Error 1
gmake[2]: Leaving directory '/usr/ports/ftp/curl/work/curl-7.57.0'
*** Error code 1

Stop.
make[1]: stopped in /usr/ports/ftp/curl
*** Error code 1

Stop.
make: stopped in /usr/ports/ftp/curl

===>>> make build failed for ftp/curl
===>>> Aborting update

I have attached the full output from the install in case you need that.

Thanks
Comment 1 Luke Bakken 2018-02-11 01:04:25 UTC
I see the same issue trying to update to curl 7.58.0

uname -a output

FreeBSD 11.1-RELEASE-p4 FreeBSD 11.1-RELEASE-p4 #0: Tue Nov 14 06:12:40 UTC 2017     root@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC  amd64
Comment 2 Walter Schwarzenfeld 2018-02-11 03:53:54 UTC
The error is caused here:

work/curl-7.58.0/lib/checksrc.pl

286         # detect long lines
    287         if(length($l) > $max_column) {
    288             checkwarn("LONGLINE", $line, length($l), $file, $l,
    289                       "Longer than $max_column columns");
    290         }

if I comment it out it builds.
Comment 3 Walter Schwarzenfeld 2018-02-11 04:57:04 UTC
No, it is files/patch-lib-url.c.

I renamed the patch and it works.
#if defined(__FreeBSD_version)
      data->set.no_signal = TRUE; /* different handling of signals and threads */
#endif /* __FreeBSD_version */

is in the wrong place (found not where to insert)
Comment 4 Walter Schwarzenfeld 2018-02-11 13:32:45 UTC
Found it:

simply change in files/patch-lib-url.c:
#if defined(__FreeBSD_version)
      data->set.no_signal = TRUE; /* different handling of signals and threads */
#endif /* __FreeBSD_version */

to:

#if defined(__FreeBSD_version)
      data->set.no_signal = 1; /* different handling of signals and threads */
#endif /* __FreeBSD_version */

now it build without problems with both DEBUG options on.
Comment 5 Luke Bakken 2018-02-11 16:26:40 UTC
Thank you, I can confirm that changing "TRUE" to 1 in files/patch-lib-url.c works for the 7.58.0_1 build.
Comment 6 Po-Chuan Hsieh freebsd_committer freebsd_triage 2018-02-18 13:57:29 UTC
Fixed in r462175. Thanks!