public inbox for cygwin-apps@cygwin.com
 help / color / mirror / Atom feed
From: Brian Inglis <Brian.Inglis@SystematicSw.ab.ca>
To: cygwin-apps@cygwin.com
Subject: Re: [ANNOUNCEMENT] Updated: curl 7.71.1-1
Date: Sat, 15 Aug 2020 15:32:47 -0600	[thread overview]
Message-ID: <b872707e-8630-c30c-0691-58da38fc9629@SystematicSw.ab.ca> (raw)
In-Reply-To: <26ba008f-fcb1-0953-6136-946abb12aa48@cornell.edu>

On 2020-08-14 13:36, Ken Brown via Cygwin-apps wrote:
> On 8/14/2020 2:45 PM, Brian Inglis wrote:
>> On 2020-08-14 12:19, Brian Inglis wrote:
>>> On 2020-08-11 16:00, Brian Inglis wrote:
>>>> On 2020-08-11 05:27, Adam Dinwoodie wrote:
>>>>> On Tue, 11 Aug 2020 at 12:14, Ken Brown via Cygwin wrote:
>>>>>>> In that case, it looks to me as if the generated curl-config --libs
>>>>>>> statements:
>>>>>>>
>>>>>>>           if test "Xyes" = "Xno" -o "Xyes" = "Xyes"; then
>>>>>>>             echo ${CURLLIBDIR}-lcurl -lnghttp2 -lidn2 -lssh -lpsl -lssl
>>>>>>> -lcrypto
>>>>>>> -lldap -llber -lbrotlidec -lbrotlidec -lz
>>>>>>>
>>>>>>> based on curl-config.in:
>>>>>>>
>>>>>>>           if test "X@ENABLE_SHARED@" = "Xno" -o "X@REQUIRE_LIB_DEPS@" =
>>>>>>> "Xyes"; then
>>>>>>>             echo ${CURLLIBDIR}-lcurl @LIBCURL_LIBS@
>>>>>>>
>>>>>>> REQUIRE_LIB_DEPS should be no, derived from configure.ac:
>>>>>>>
>>>>>>> if test "X$enable_shared" = "Xyes" -a "X$link_all_deplibs" = "Xno"
>>>>>>> then
>>>>>>>       REQUIRE_LIB_DEPS=no
>>>>>>> else
>>>>>>>       REQUIRE_LIB_DEPS=yes
>>>>>>> fi
>>>>>>> AC_SUBST(REQUIRE_LIB_DEPS)
>>>>>>> AM_CONDITIONAL(USE_EXPLICIT_LIB_DEPS, test x$REQUIRE_LIB_DEPS = xyes)
>>>>>>>
>>>>>>> but for Cygwin link_all_deplibs remains defaulted to unknown, so either that
>>>>>>> variable should be set in configure, or that condition should perhaps be
>>>>>>> changed
>>>>>>> to:
>>>>>>>
>>>>>>> if test "X$enable_shared" = "Xyes" -a "X$link_all_deplibs" != "Xyes"
>>>>>>>
>>>>>>> with appropriate bug reports and changes to be made upstream if possible.
>>>>>>
>>>>>> If you want to look into ways of fixing curl-config different from what
>>>>>> Yaakov
>>>>>> did, that's fine; you're the maintainer.  All I did was look at Yaakov's
>>>>>> patch
>>>>>> and port it to curl 7.71.1, that being a quick and easy way to fix the
>>>>>> reported
>>>>>> problem.
>>>>>
>>>>> Someone else did raise this problem upstream at
>>>>> https://github.com/curl/curl/issues/5793, and the comments there imply
>>>>> they'd be interested in integrating patches Cygwin uses into the
>>>>> upstream code, although the upstream maintainers aren't going to do
>>>>> that without someone proactively submitting the patch to them.
>>>>
>>>> I'll copy these comments and suggestions and follow up there, as that
>>>> appears to
>>>> be the official bug tracker, and they appear receptive to discussing and fixing
>>>> issues.
>>>>
>>>>> For my part, I'm not particularly fussed whether this is fixed with an
>>>>> upstream patch or a Cygwin patch; I just want my use cases to work,
>>>>> and as of 7.71.1-1 they don't. That said, my experience of being a
>>>>> package maintainer would lead me to want to submit patches upstream if
>>>>> at all possible, just to reduce the need to handle these sorts of
>>>>> problems. My inclination would be to restore the patched behaviour
>>>>> with Ken's new patch as a short-term fix, then get this submitted
>>>>> upstream so that in the long-term this patch can be retired.
>>>>
>>>> I did not see or get your original email, and could not reproduce your issue
>>>> using the current git source package, curl package, and cygport.
>>>> That could be due to two missing perl modules (solved in another sub-thread by
>>>> Achim).
>>>> Any suggestions as to what may be required to get curl-config to act up in a
>>>> build would be appreciated.
>>>> It is always easier to check if a problem is actually fixed when you can
>>>> perform
>>>> an in situ regression test.
>>>> Running curl-config and reading the docs, it does not appear to me to be
>>>> clearly
>>>> specified why and when dynamic and static library parameters are either
>>>> built in
>>>> or generated, whereas the conditions for reproducing the output are well
>>>> specified for pkgconf/pkg-config.
>>>> That may become more apparent in follow ups on the bug tracker.
>>>
>>> [Followed up on Github curl bug tracker and may have patch, but subsequent
>>> problems building tests, which KB may know something about, so moving to
>>> cygwin-apps]
>>
>> Test build failures - tried adding to cygport:
>>
>> src_test() {
>>          cd ${B}
>>          cygtest LDFLAGS="${LDFLAGS} -no-undefined"
>> }
>>
>> but no change:
>>
>> Making all in libtest
>> make[2]: Entering directory
>> '/home/$USER/src/cygwin/curl/curl-7.71.1-2.x86_64/build/tests/libtest'
>>    CCLD     libstubgss.la
>> libtool:   error: can't build x86_64-pc-cygwin shared library unless
>> -no-undefined is specified
>> make[2]: *** [Makefile:2547: libstubgss.la] Error 1
>> make[2]: Target 'all' not remade because of errors.
>> make[2]: Leaving directory
>> '/home/$USER/src/cygwin/curl/curl-7.71.1-2.x86_64/build/tests/libtest'
>> Making all in unit
>> make[2]: Entering directory
>> '/home/$USER/src/cygwin/curl/curl-7.71.1-2.x86_64/build/tests/unit'
>> make[2]: Nothing to be done for 'all'.
>> make[2]: Leaving directory
>> '/home/$USER/src/cygwin/curl/curl-7.71.1-2.x86_64/build/tests/unit'
>> make[2]: Entering directory
>> '/home/$USER/src/cygwin/curl/curl-7.71.1-2.x86_64/build/tests'
>> make[2]: Nothing to be done for 'all-am'.
>> make[2]: Leaving directory
>> '/home/$USER/src/cygwin/curl/curl-7.71.1-2.x86_64/build/tests'
>> make[1]: *** [Makefile:513: all-recursive] Error 1
>> make[1]: Target 'all' not remade because of errors.
>> make[1]: Target 'quiet-test' not remade because of errors.
>> make[1]: Leaving directory
>> '/home/$USER/src/cygwin/curl/curl-7.71.1-2.x86_64/build/tests'
>> make: *** [Makefile:1437: test] Error 2
> 
> The attached patch should fix it.  I didn't take the trouble to write the patch
> in a way that's suitable for sending upstream.  If you want to do that, you
> could imitate what's done for libhostname.la a little earlier in the same
> Makefile.am.  But I recommend that you first get curl 7.71.1-2 released before
> spending time polishing the patch.

Thanks for the patches, pointers, and help understanding more of the autotools
granular infrastructure.
I was able to polish the patch thanks to your pointers while waiting for the 32
bit x86 build, rebuild and retest both arches last night, and upload and
announce today.
I will submit that upstream to the curl project developer on Github, now I know
the project lives there.

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in IEC units and prefixes, physical quantities in SI.]

  reply	other threads:[~2020-08-15 21:32 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <announce.c4e534c5-4c2e-9c35-3674-5f652695d778@SystematicSw.ab.ca>
     [not found] ` <CA+kUOa=-AJxr_2TaZoNerOquMGR8FCzi7hg3DyuvntuQqpAVOg@mail.gmail.com>
     [not found]   ` <CA+kUOakEVPde-W_8jocGZBwNw=wRodKBySRgxAE7_AU8As7FDA@mail.gmail.com>
     [not found]     ` <4f1d6241-c86b-f2f9-7b49-a9f5b998b0eb@SystematicSw.ab.ca>
     [not found]       ` <53c7f2a7-3bd8-f90c-b574-969d6b31f300@cornell.edu>
     [not found]         ` <b66aea8b-2764-357c-8602-0a2e780bc90f@SystematicSw.ab.ca>
     [not found]           ` <d66364d2-06c4-3f8e-4989-2426ec9fde9d@cornell.edu>
     [not found]             ` <71031f78-b1be-aec2-4e54-72ff49e07543@SystematicSw.ab.ca>
     [not found]               ` <11d99d00-55fb-f6a2-893d-f5ebb6e7a14b@cornell.edu>
     [not found]                 ` <CA+kUOakP-dfBOfMJ+HrN2cfUfmzWOidO08ios+7kBCbmP+Yo6A@mail.gmail.com>
     [not found]                   ` <8c14a6d0-7c52-ee29-5026-a306166c2e87@SystematicSw.ab.ca>
2020-08-14 18:19                     ` Brian Inglis
2020-08-14 18:45                       ` Brian Inglis
2020-08-14 19:36                         ` Ken Brown
2020-08-15 21:32                           ` Brian Inglis [this message]
2020-08-15 21:50                             ` Ken Brown
2020-08-15 23:13                               ` Brian Inglis
2020-08-16  6:21                             ` ASSI
2020-08-16 20:19                               ` Brian Inglis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b872707e-8630-c30c-0691-58da38fc9629@SystematicSw.ab.ca \
    --to=brian.inglis@systematicsw.ab.ca \
    --cc=cygwin-apps@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).