Patchwork [3/4] openssl: use PACKAGECONFIG to disable perl bits

login
register
mail settings
Submitter Saul Wold
Date Dec. 20, 2013, 6:41 a.m.
Message ID <1387521668-26329-4-git-send-email-sgw@linux.intel.com>
Download mbox | patch
Permalink /patch/63607/
State New
Headers show

Comments

Saul Wold - Dec. 20, 2013, 6:41 a.m.
Adding perl to the RDEPENDS caused a performance hit to the overall build time since this was
the only package that depended on perl.  The openssl-misc package is not installed by default
so use a PACKAGECONFIG which can be overridden to allow the perl scripts along with  perl to
 be installed.

Signed-off-by: Saul Wold <sgw@linux.intel.com>
---
 meta/recipes-connectivity/openssl/openssl.inc | 16 +++++++++++-----
 1 file changed, 11 insertions(+), 5 deletions(-)
Martin Jansa - Dec. 20, 2013, 9:36 a.m.
On Thu, Dec 19, 2013 at 10:41:07PM -0800, Saul Wold wrote:
> Adding perl to the RDEPENDS caused a performance hit to the overall build time since this was
> the only package that depended on perl.  The openssl-misc package is not installed by default
> so use a PACKAGECONFIG which can be overridden to allow the perl scripts along with  perl to
>  be installed.
> 
> Signed-off-by: Saul Wold <sgw@linux.intel.com>
> ---
>  meta/recipes-connectivity/openssl/openssl.inc | 16 +++++++++++-----
>  1 file changed, 11 insertions(+), 5 deletions(-)
> 
> diff --git a/meta/recipes-connectivity/openssl/openssl.inc b/meta/recipes-connectivity/openssl/openssl.inc
> index cdb1809..c58c99f 100644
> --- a/meta/recipes-connectivity/openssl/openssl.inc
> +++ b/meta/recipes-connectivity/openssl/openssl.inc
> @@ -13,8 +13,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=f9a8f968107345e0b75aa8c2ecaa7ec8"
>  
>  DEPENDS = "perl-native-runtime"
>  
> -# Adding RDEPENDS for perl scripts
> -RDEPENDS_${PN}-misc +="perl"
> +PACKAGECONFIG[perl] = ",,,perl"

Doesn't it add perl to ${PN} (instead of ${PN}-misc)?

>  SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \
>            "
> @@ -157,11 +156,18 @@ do_install () {
>  
>  	install -d ${D}${includedir}
>  	cp --dereference -R include/openssl ${D}${includedir}
> -	sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/CA.pl
>  
>  	oe_multilib_header openssl/opensslconf.h
> -	# The c_rehash utility isn't installed by the normal installation process.
> -	install -m 0755 ${S}/tools/c_rehash ${D}${bindir}
> +	if [ "${@base_contains('PACKAGECONFIG', 'perl', 'perl', '', d)}" = "perl" ]; then
> +		install -m 0755 ${S}/tools/c_rehash ${D}${bindir}
> +		sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${bindir}/c_rehash
> +		sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/CA.pl
> +		sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/tsget
> +		# The c_rehash utility isn't installed by the normal installation process.
> +	else
> +		rm -f ${D}${bindir}/c_rehash
> +		rm -f ${D}${libdir}/ssl/misc/CA.pl ${D}${libdir}/ssl/misc/tsget
> +	fi
>  }
>  
>  BBCLASSEXTEND = "native nativesdk"
> -- 
> 1.8.3.1
> 
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core

Patch

diff --git a/meta/recipes-connectivity/openssl/openssl.inc b/meta/recipes-connectivity/openssl/openssl.inc
index cdb1809..c58c99f 100644
--- a/meta/recipes-connectivity/openssl/openssl.inc
+++ b/meta/recipes-connectivity/openssl/openssl.inc
@@ -13,8 +13,7 @@  LIC_FILES_CHKSUM = "file://LICENSE;md5=f9a8f968107345e0b75aa8c2ecaa7ec8"
 
 DEPENDS = "perl-native-runtime"
 
-# Adding RDEPENDS for perl scripts
-RDEPENDS_${PN}-misc +="perl"
+PACKAGECONFIG[perl] = ",,,perl"
 
 SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \
           "
@@ -157,11 +156,18 @@  do_install () {
 
 	install -d ${D}${includedir}
 	cp --dereference -R include/openssl ${D}${includedir}
-	sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/CA.pl
 
 	oe_multilib_header openssl/opensslconf.h
-	# The c_rehash utility isn't installed by the normal installation process.
-	install -m 0755 ${S}/tools/c_rehash ${D}${bindir}
+	if [ "${@base_contains('PACKAGECONFIG', 'perl', 'perl', '', d)}" = "perl" ]; then
+		install -m 0755 ${S}/tools/c_rehash ${D}${bindir}
+		sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${bindir}/c_rehash
+		sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/CA.pl
+		sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/tsget
+		# The c_rehash utility isn't installed by the normal installation process.
+	else
+		rm -f ${D}${bindir}/c_rehash
+		rm -f ${D}${libdir}/ssl/misc/CA.pl ${D}${libdir}/ssl/misc/tsget
+	fi
 }
 
 BBCLASSEXTEND = "native nativesdk"