All of lore.kernel.org
 help / color / mirror / Atom feed
From: Saul Wold <sgw@linux.intel.com>
To: Yevhen Kyriukha <kirgene@gmail.com>
Cc: Phil Blundell <philb@gnu.org>,
	Patches and discussions about the oe-core layer
	<openembedded-core@lists.openembedded.org>
Subject: Re: [PATCH v2] curl: allow build with c-ares library support.
Date: Wed, 13 Nov 2013 09:39:43 -0800	[thread overview]
Message-ID: <5283B95F.1090108@linux.intel.com> (raw)
In-Reply-To: <CADV-EXGSZuXVO7DqgGUnxCzNQUYXyCtNt1XXAbEAuN9gWisPSA@mail.gmail.com>

On 11/13/2013 09:25 AM, Yevhen Kyriukha wrote:
> 2013/11/13 Saul Wold <sgw@linux.intel.com>:
>> On 11/13/2013 06:51 AM, Yevhen Kyriukha wrote:
>>>
>>> Also added c-ares library recipe.
>>>
>>> In libcurl there is an issue with DNS lookups that cause crash on some
>>> platforms:
>>> http://curl.haxx.se/mail/lib-2008-09/0197.html
>>> To avoid this issue libcurl has to be built with c-ares name resolver.
>>>
>> This still does not fully explain why this is needed. Nor credits to origin
>> of the c-ares recipe.
>>
>
> Do you meen to note layer name where I get this recipe from in commit?
> The c-ares recipe was borrowed from meta-webos-ports.
>
Yes, you need to say that as part of your patch, but I still want more 
details below about using the internal threaded resolver before we add a 
new recipe.

>> You also did not address Phil Blundell's comment about causing other issues,
>> and possibibly using the existing libcurl internal threaded resolver.
>>
>> Can you test with the internal resolver to see if it address your issues,
>> before we add a new recipe.
>>
>
> As far as I've tested curl crashes on i386 and Intel Cedartrail
> platforms with internal threaded resolver.
>
Did you explictly enable the threaded resolver with 
--enable-threaded-resolver?

Thanks
	Sau!


> Best regards,
> Yevhen
>
>>
>>> Signed-off-by: Yevhen Kyriukha <kirgene@gmail.com>
>>> ---
>>>    meta/recipes-support/c-ares/c-ares_1.10.0.bb | 24
>>> ++++++++++++++++++++++++
>>>    meta/recipes-support/curl/curl_7.33.0.bb     |  2 ++
>>>    2 files changed, 26 insertions(+)
>>>    create mode 100644 meta/recipes-support/c-ares/c-ares_1.10.0.bb
>>>
>>
>> This still needs to be split into 2 distict patches, one adding the c-ares
>> recipe and a second one to use the PACKAGECONFIG.
>>
>> Sau!
>>
>>
>>> diff --git a/meta/recipes-support/c-ares/c-ares_1.10.0.bb
>>> b/meta/recipes-support/c-ares/c-ares_1.10.0.bb
>>> new file mode 100644
>>> index 0000000..23b3d0e
>>> --- /dev/null
>>> +++ b/meta/recipes-support/c-ares/c-ares_1.10.0.bb
>>> @@ -0,0 +1,24 @@
>>> +# Copyright (c) 2012-2013 LG Electronics, Inc.
>>> +
>>> +DESCRIPTION = "c-ares is a C library that resolves names asynchronously."
>>> +HOMEPAGE = "http://daniel.haxx.se/projects/c-ares/"
>>> +SECTION = "libs"
>>> +LICENSE = "MIT"
>>> +LIC_FILES_CHKSUM =
>>> "file://README;beginline=17;endline=18;md5=b320556568bc067d215a1e34c5b34a14"
>>> +
>>> +inherit autotools
>>> +inherit pkgconfig
>>> +
>>> +SRC_URI = "http://c-ares.haxx.se/download/${BP}.tar.gz"
>>> +SRC_URI[md5sum] = "1196067641411a75d3cbebe074fd36d8"
>>> +SRC_URI[sha256sum] =
>>> "3d701674615d1158e56a59aaede7891f2dde3da0f46a6d3c684e0ae70f52d3db"
>>> +
>>> +EXTRA_OECONF = "--enable-shared"
>>> +
>>> +# install private headers to ares subdirectory
>>> +do_install_append() {
>>> +    install -d ${D}/${includedir}/ares
>>> +    install -m 0644 ares*.h ${D}/${includedir}/ares/
>>> +}
>>> +
>>> +FILES_${PN}-dev += "${includedir}/ares/*.h"
>>> diff --git a/meta/recipes-support/curl/curl_7.33.0.bb
>>> b/meta/recipes-support/curl/curl_7.33.0.bb
>>> index 8539fec..717c4f9 100644
>>> --- a/meta/recipes-support/curl/curl_7.33.0.bb
>>> +++ b/meta/recipes-support/curl/curl_7.33.0.bb
>>> @@ -23,6 +23,8 @@ SRC_URI[sha256sum] =
>>> "0afde4cd949e2658eddc3cda675b19b165eea1af48ac5f3e1ec1607922
>>>
>>>    inherit autotools pkgconfig binconfig
>>>
>>> +PACKAGECONFIG[c-ares] = "--enable-ares,--disable-ares,c-ares"
>>> +
>>>    EXTRA_OECONF = "--with-zlib=${STAGING_LIBDIR}/../ \
>>>                    --without-libssh2 \
>>>                    --with-random=/dev/urandom \
>>>
>>
>
>
> Best regards,
> Yevhen
>
>


  parent reply	other threads:[~2013-11-13 17:39 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-11-13 14:51 [PATCH v2] curl: allow build with c-ares library support Yevhen Kyriukha
2013-11-13 16:35 ` Saul Wold
2013-11-13 17:25   ` Yevhen Kyriukha
2013-11-13 17:34     ` Phil Blundell
2013-11-13 17:39     ` Saul Wold [this message]
2013-11-13 22:20       ` Yevhen Kyriukha
2013-11-13 18:00 ` Phil Blundell
2013-11-13 19:18   ` Burton, Ross

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=5283B95F.1090108@linux.intel.com \
    --to=sgw@linux.intel.com \
    --cc=kirgene@gmail.com \
    --cc=openembedded-core@lists.openembedded.org \
    --cc=philb@gnu.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.