Openembedded Core Discussions
 help / color / mirror / Atom feed
* [RFT][PATCH] curl: disable curl-config binconfig file
@ 2016-02-01 21:49 Andre McCurdy
  2016-02-02  2:23 ` Burton, Ross
  0 siblings, 1 reply; 6+ messages in thread
From: Andre McCurdy @ 2016-02-01 21:49 UTC (permalink / raw)
  To: openembedded-core

Signed-off-by: Andre McCurdy <armccurdy@gmail.com>
---

This works OK for me, but probably needs wider testing.

 meta/recipes-support/curl/curl_7.47.0.bb | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/meta/recipes-support/curl/curl_7.47.0.bb b/meta/recipes-support/curl/curl_7.47.0.bb
index ab3c7e1..8e6362f 100644
--- a/meta/recipes-support/curl/curl_7.47.0.bb
+++ b/meta/recipes-support/curl/curl_7.47.0.bb
@@ -17,7 +17,7 @@ SRC_URI += " file://configure_ac.patch"
 SRC_URI[md5sum] = "85c58a00412476993050cb242a3f365d"
 SRC_URI[sha256sum] = "2b096f9387fb9b2be08d17e518c62b6537b1f4d4bb59111d5b4fa0272f383f66"
 
-inherit autotools pkgconfig binconfig multilib_header
+inherit autotools pkgconfig binconfig-disabled multilib_header
 
 PACKAGECONFIG ??= "${@bb.utils.contains("DISTRO_FEATURES", "ipv6", "ipv6", "", d)} gnutls zlib"
 PACKAGECONFIG_class-native = "ipv6 ssl zlib"
@@ -45,10 +45,7 @@ do_install_append() {
 	oe_multilib_header curl/curlbuild.h
 }
 
-do_install_append_class-target() {
-	# cleanup buildpaths from curl-config
-	sed -i -e 's,${STAGING_DIR_HOST},,g' ${D}${bindir}/curl-config
-}
+BINCONFIG = "${bindir}/curl-config"
 
 PACKAGES =+ "lib${BPN}"
 
-- 
1.9.1



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [RFT][PATCH] curl: disable curl-config binconfig file
  2016-02-01 21:49 [RFT][PATCH] curl: disable curl-config binconfig file Andre McCurdy
@ 2016-02-02  2:23 ` Burton, Ross
  2016-02-02  4:18   ` Andre McCurdy
  0 siblings, 1 reply; 6+ messages in thread
From: Burton, Ross @ 2016-02-02  2:23 UTC (permalink / raw)
  To: Andre McCurdy; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 1217 bytes --]

On 1 February 2016 at 21:49, Andre McCurdy <armccurdy@gmail.com> wrote:

> This works OK for me, but probably needs wider testing.
>

python-pycurl fails in oe-core:

DEBUG: Executing shell function do_compile
Traceback (most recent call last):
  File
"/data/poky-master/tmp/work/corei7-64-poky-linux/python-pycurl/7.21.5-r0/pycurl-7.21.5/setup.py",
line 743, in <module>
    ext = get_extension(sys.argv,
split_extension_source=split_extension_source)
  File
"/data/poky-master/tmp/work/corei7-64-poky-linux/python-pycurl/7.21.5-r0/pycurl-7.21.5/setup.py",
line 497, in get_extension
    ext_config = ExtensionConfiguration(argv)
  File
"/data/poky-master/tmp/work/corei7-64-poky-linux/python-pycurl/7.21.5-r0/pycurl-7.21.5/setup.py",
line 71, in __init__
    self.configure()
  File
"/data/poky-master/tmp/work/corei7-64-poky-linux/python-pycurl/7.21.5-r0/pycurl-7.21.5/setup.py",
line 113, in configure_unix
    raise ConfigurationError(msg)
__main__.ConfigurationError: `curl-config' not found -- please install the
libcurl development files or specify --curl-config=/path/to/curl-config:
ERROR: /usr/bin/curl-config should not be used, use an alternative such as
pkg-config

Ross

[-- Attachment #2: Type: text/html, Size: 2144 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFT][PATCH] curl: disable curl-config binconfig file
  2016-02-02  2:23 ` Burton, Ross
@ 2016-02-02  4:18   ` Andre McCurdy
  2016-02-02 11:23     ` Burton, Ross
  0 siblings, 1 reply; 6+ messages in thread
From: Andre McCurdy @ 2016-02-02  4:18 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core

On Mon, Feb 1, 2016 at 6:23 PM, Burton, Ross <ross.burton@intel.com> wrote:
>
> On 1 February 2016 at 21:49, Andre McCurdy <armccurdy@gmail.com> wrote:
>>
>> This works OK for me, but probably needs wider testing.
>
> python-pycurl fails in oe-core:
>
> DEBUG: Executing shell function do_compile
> Traceback (most recent call last):
>   File
> "/data/poky-master/tmp/work/corei7-64-poky-linux/python-pycurl/7.21.5-r0/pycurl-7.21.5/setup.py",
> line 743, in <module>
>     ext = get_extension(sys.argv,
> split_extension_source=split_extension_source)
>   File
> "/data/poky-master/tmp/work/corei7-64-poky-linux/python-pycurl/7.21.5-r0/pycurl-7.21.5/setup.py",
> line 497, in get_extension
>     ext_config = ExtensionConfiguration(argv)
>   File
> "/data/poky-master/tmp/work/corei7-64-poky-linux/python-pycurl/7.21.5-r0/pycurl-7.21.5/setup.py",
> line 71, in __init__
>     self.configure()
>   File
> "/data/poky-master/tmp/work/corei7-64-poky-linux/python-pycurl/7.21.5-r0/pycurl-7.21.5/setup.py",
> line 113, in configure_unix
>     raise ConfigurationError(msg)
> __main__.ConfigurationError: `curl-config' not found -- please install the
> libcurl development files or specify --curl-config=/path/to/curl-config:
> ERROR: /usr/bin/curl-config should not be used, use an alternative such as
> pkg-config

Thanks. Unfortunately I don't see a clean solution for this. The
setup.py script uses curl-config to determine which ssl implementation
curl has been built against and that information isn't available from
pkg-config.

It's probably fixable with some surgery, but I'm not sure it's worth
the maintenance effort just so we can disable curl binconfig...

Please drop my "curl: disable curl-config binconfig file" patch.

> Ross


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFT][PATCH] curl: disable curl-config binconfig file
  2016-02-02  4:18   ` Andre McCurdy
@ 2016-02-02 11:23     ` Burton, Ross
  2016-02-02 18:40       ` Andre McCurdy
  0 siblings, 1 reply; 6+ messages in thread
From: Burton, Ross @ 2016-02-02 11:23 UTC (permalink / raw)
  To: Andre McCurdy; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 862 bytes --]

On 2 February 2016 at 04:18, Andre McCurdy <armccurdy@gmail.com> wrote:

> Thanks. Unfortunately I don't see a clean solution for this. The
> setup.py script uses curl-config to determine which ssl implementation
> curl has been built against and that information isn't available from
> pkg-config.
>
> It's probably fixable with some surgery, but I'm not sure it's worth
> the maintenance effort just so we can disable curl binconfig...
>
> Please drop my "curl: disable curl-config binconfig file" patch.
>

The feature tests?  That's exposed in pkg-config as the supported_features
variable.  I wouldn't be surprised if more recipes in meta-oe were using
curl-config though, so I do agree with you here: moving away from
curl-config would be good but scoping out the damage in a world build
including meta-oe needs to be done first.

Ross

[-- Attachment #2: Type: text/html, Size: 1377 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFT][PATCH] curl: disable curl-config binconfig file
  2016-02-02 11:23     ` Burton, Ross
@ 2016-02-02 18:40       ` Andre McCurdy
  2016-02-02 21:47         ` Burton, Ross
  0 siblings, 1 reply; 6+ messages in thread
From: Andre McCurdy @ 2016-02-02 18:40 UTC (permalink / raw)
  To: Burton, Ross; +Cc: OE-core

On Tue, Feb 2, 2016 at 3:23 AM, Burton, Ross <ross.burton@intel.com> wrote:
>
> On 2 February 2016 at 04:18, Andre McCurdy <armccurdy@gmail.com> wrote:
>>
>> Thanks. Unfortunately I don't see a clean solution for this. The
>> setup.py script uses curl-config to determine which ssl implementation
>> curl has been built against and that information isn't available from
>> pkg-config.
>>
>> It's probably fixable with some surgery, but I'm not sure it's worth
>> the maintenance effort just so we can disable curl binconfig...
>>
>> Please drop my "curl: disable curl-config binconfig file" patch.
>
> The feature tests?  That's exposed in pkg-config as the supported_features
> variable.

setup.py actually parses the output of curl-config --libs (ie "-lcurl
-lnettle -lgnutls -lz") to decide which ssl implementation curl has
been built against. There's nothing in curl's pkg-config file which
gives that same information.

A second question is why pycurl thinks it needs to know which ssl
implementation curl is using. I don't think it really does, but fixing
it and then rewriting setup.py is not a trivial patch.

> I wouldn't be surprised if more recipes in meta-oe were using
> curl-config though, so I do agree with you here: moving away from
> curl-config would be good but scoping out the damage in a world build
> including meta-oe needs to be done first.
>
> Ross


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [RFT][PATCH] curl: disable curl-config binconfig file
  2016-02-02 18:40       ` Andre McCurdy
@ 2016-02-02 21:47         ` Burton, Ross
  0 siblings, 0 replies; 6+ messages in thread
From: Burton, Ross @ 2016-02-02 21:47 UTC (permalink / raw)
  To: Andre McCurdy; +Cc: OE-core

[-- Attachment #1: Type: text/plain, Size: 757 bytes --]

On 2 February 2016 at 18:40, Andre McCurdy <armccurdy@gmail.com> wrote:

> setup.py actually parses the output of curl-config --libs (ie "-lcurl
> -lnettle -lgnutls -lz") to decide which ssl implementation curl has
> been built against. There's nothing in curl's pkg-config file which
> gives that same information.
>
> A second question is why pycurl thinks it needs to know which ssl
> implementation curl is using. I don't think it really does, but fixing
> it and then rewriting setup.py is not a trivial patch.
>

Huh, it looks a lot like the pkgconfig file isn't complete.  Also my
initial look at "can I rewrite this setup.py to use pkgconfig" was quickly
abandoned with your same conclusion...  agreed: this patch is on hold!

Ross

[-- Attachment #2: Type: text/html, Size: 1210 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-02-02 21:48 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-01 21:49 [RFT][PATCH] curl: disable curl-config binconfig file Andre McCurdy
2016-02-02  2:23 ` Burton, Ross
2016-02-02  4:18   ` Andre McCurdy
2016-02-02 11:23     ` Burton, Ross
2016-02-02 18:40       ` Andre McCurdy
2016-02-02 21:47         ` Burton, Ross

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox