]> code.ossystems Code Review - openembedded-core.git/commitdiff
openssl: use PACKAGECONFIG to disable perl bits
authorSaul Wold <sgw@linux.intel.com>
Fri, 20 Dec 2013 18:47:26 +0000 (10:47 -0800)
committerRobert Yang <liezhi.yang@windriver.com>
Sun, 26 Jan 2014 06:08:17 +0000 (14:08 +0800)
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.

(From OE-Core master rev: 421e927bd453259f4b3cdbd1676f6e12f97bf34f)

Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Robert Yang <liezhi.yang@windriver.com>
meta/recipes-connectivity/openssl/openssl.inc

index 91770a59dda33e16dd7ac256d1204d4cf50058b4..e5a6848937bb19c5a7c7f16abd6f9f4fc7d32f83 100644 (file)
@@ -13,13 +13,12 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=f9a8f968107345e0b75aa8c2ecaa7ec8"
 
 DEPENDS = "perl-native-runtime"
 
-# Adding RDEPENDS for perl scripts
-RDEPENDS_${PN}-misc +="perl"
-
 SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \
           "
 S = "${WORKDIR}/openssl-${PV}"
 
+PACKAGECONFIG[perl] = ",,,"
+
 AR_append = " r"
 # Avoid binaries being marked as requiring an executable stack since it 
 # doesn't(which causes and this causes issues with SELinux
@@ -41,6 +40,7 @@ FILES_libcrypto = "${base_libdir}/libcrypto${SOLIBS}"
 FILES_libssl = "${libdir}/libssl.so.*"
 FILES_${PN} =+ " ${libdir}/ssl/*"
 FILES_${PN}-misc = "${libdir}/ssl/misc ${bindir}/c_rehash"
+RDEPENDS_${PN}-misc = "${@base_contains('PACKAGECONFIG', 'perl', 'perl', '', d)}"
 FILES_${PN}-dev += "${base_libdir}/libcrypto${SOLIBSDEV}"
 
 # Add the openssl.cnf file to the openssl-conf package.  Make the libcrypto
@@ -154,11 +154,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"