[OE-core] [PATCH] openssl: Move libcrypto to base_libdir

Saul Wold sgw at linux.intel.com
Tue Feb 21 22:24:07 UTC 2012


On 02/10/2012 08:01 AM, Andrei Gherzan wrote:
> This fix is for dhclient. It needs libcrypto at runtime and if
> libcrypto is in libdir, it's path can be inaccessible on systems
> where /usr is on nfs for example or dhclient is needed before
> /usr is mounted.
>
> Signed-off-by: Andrei Gherzan<andrei at gherzan.ro>
> ---
>   ...001-openssl-Move-libcrypto-to-base_libdir.patch |   61 ++++++++++++++++++++
>   meta/recipes-connectivity/openssl/openssl.inc      |   10 +++-
>   .../recipes-connectivity/openssl/openssl_1.0.0g.bb |    2 +-
>   3 files changed, 71 insertions(+), 2 deletions(-)
>   create mode 100644 meta/recipes-connectivity/openssl/0001-openssl-Move-libcrypto-to-base_libdir.patch
>
> diff --git a/meta/recipes-connectivity/openssl/0001-openssl-Move-libcrypto-to-base_libdir.patch b/meta/recipes-connectivity/openssl/0001-openssl-Move-libcrypto-to-base_libdir.patch
> new file mode 100644
> index 0000000..b101d8c
> --- /dev/null
> +++ b/meta/recipes-connectivity/openssl/0001-openssl-Move-libcrypto-to-base_libdir.patch
> @@ -0,0 +1,61 @@
> +From ac1fe1490e997fb8fd91ec13b675d38efcc65775 Mon Sep 17 00:00:00 2001
> +From: Andrei Gherzan<andrei at gherzan.ro>
> +Date: Thu, 9 Feb 2012 00:03:38 +0200
> +Subject: [PATCH] openssl: Move libcrypto to base_libdir
> +
> +This fix is for dhclient. It needs libcrypto at runtime and if
> +libcrypto is in libdir, it's path can be inaccessible on systems
> +where /usr is on nfs for example or dhclient is needed before
> +/usr is mounted.
> +
Seems to be missing Upstream-Status

Sau!

> +Signed-off-by: Andrei Gherzan<andrei at gherzan.ro>
> +---
> + meta/recipes-connectivity/openssl/openssl.inc      |    8 +++++++-
> + .../recipes-connectivity/openssl/openssl_1.0.0g.bb |    2 +-
> + 2 files changed, 8 insertions(+), 2 deletions(-)
> +
> +diff --git a/meta/recipes-connectivity/openssl/openssl.inc b/meta/recipes-connectivity/openssl/openssl.inc
> +index 771f146..76a28ff 100644
> +--- a/meta/recipes-connectivity/openssl/openssl.inc
> ++++ b/meta/recipes-connectivity/openssl/openssl.inc
> +@@ -36,10 +36,11 @@ export AS = "${CC} -c"
> + inherit pkgconfig siteinfo
> +
> + PACKAGES =+ "libcrypto libssl ${PN}-misc"
> +-FILES_libcrypto = "${libdir}/libcrypto.so.*"
> ++FILES_libcrypto = "${base_libdir}/libcrypto${SOLIBS}"
> + FILES_libssl = "${libdir}/libssl.so.*"
> + FILES_${PN} =+ " ${libdir}/ssl/*"
> + FILES_${PN}-misc = "${libdir}/ssl/misc ${libdir}/ssl/openssl.cnf"
> ++FILES_${PN}-dev += "${base_libdir}/libcrypto${SOLIBSDEV}"
> +
> + do_configure_prepend_darwin () {
> + 	sed -i -e '/version-script=openssl\.ld/d' Configure
> +@@ -132,6 +133,11 @@ do_install () {
> + 	oe_libinstall -so libcrypto ${D}${libdir}
> + 	oe_libinstall -so libssl ${D}${libdir}
> +
> ++	# Moving libcrypto to /usr
> ++	mkdir -p ${D}/${base_libdir}/
> ++	mv ${D}${libdir}/libcrypto* ${D}${base_libdir}/
> ++	sed -i s/usr// ${D}/${libdir}/pkgconfig/libcrypto.pc
> ++
> + 	install -d ${D}${includedir}
> + 	cp --dereference -R include/openssl ${D}${includedir}
> + 	sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/CA.pl
> +diff --git a/meta/recipes-connectivity/openssl/openssl_1.0.0g.bb b/meta/recipes-connectivity/openssl/openssl_1.0.0g.bb
> +index 80dfcb3..8ffe931 100644
> +--- a/meta/recipes-connectivity/openssl/openssl_1.0.0g.bb
> ++++ b/meta/recipes-connectivity/openssl/openssl_1.0.0g.bb
> +@@ -6,7 +6,7 @@ DEPENDS += "ocf-linux"
> +
> + CFLAG += "-DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS"
> +
> +-PR = "${INC_PR}.0"
> ++PR = "${INC_PR}.1"
> +
> + LIC_FILES_CHKSUM = "file://LICENSE;md5=f9a8f968107345e0b75aa8c2ecaa7ec8"
> +
> +--
> +1.7.5.4
> +
> diff --git a/meta/recipes-connectivity/openssl/openssl.inc b/meta/recipes-connectivity/openssl/openssl.inc
> index 771f146..eb6c5ea 100644
> --- a/meta/recipes-connectivity/openssl/openssl.inc
> +++ b/meta/recipes-connectivity/openssl/openssl.inc
> @@ -36,10 +36,11 @@ export AS = "${CC} -c"
>   inherit pkgconfig siteinfo
>
>   PACKAGES =+ "libcrypto libssl ${PN}-misc"
> -FILES_libcrypto = "${libdir}/libcrypto.so.*"
> +FILES_libcrypto = "${base_libdir}/libcrypto${SOLIBS}"
>   FILES_libssl = "${libdir}/libssl.so.*"
>   FILES_${PN} =+ " ${libdir}/ssl/*"
>   FILES_${PN}-misc = "${libdir}/ssl/misc ${libdir}/ssl/openssl.cnf"
> +FILES_${PN}-dev += "${base_libdir}/libcrypto${SOLIBSDEV}"
>
>   do_configure_prepend_darwin () {
>   	sed -i -e '/version-script=openssl\.ld/d' Configure
> @@ -132,6 +133,13 @@ do_install () {
>   	oe_libinstall -so libcrypto ${D}${libdir}
>   	oe_libinstall -so libssl ${D}${libdir}
>
> +	# Moving libcrypto to /usr
> +	if [ ! ${D}${libdir} -ef ${D}${base_libdir} ]; then
> +		mkdir -p ${D}/${base_libdir}/
> +		mv ${D}${libdir}/libcrypto* ${D}${base_libdir}/
> +		sed -i s#libdir=\$\{exec_prefix\}\/lib#libdir=${base_libdir}# ${D}/${libdir}/pkgconfig/libcrypto.pc
> +	fi
> +
>   	install -d ${D}${includedir}
>   	cp --dereference -R include/openssl ${D}${includedir}
>   	sed -i -e '1s,.*,#!${bindir}/env perl,' ${D}${libdir}/ssl/misc/CA.pl
> diff --git a/meta/recipes-connectivity/openssl/openssl_1.0.0g.bb b/meta/recipes-connectivity/openssl/openssl_1.0.0g.bb
> index 80dfcb3..8ffe931 100644
> --- a/meta/recipes-connectivity/openssl/openssl_1.0.0g.bb
> +++ b/meta/recipes-connectivity/openssl/openssl_1.0.0g.bb
> @@ -6,7 +6,7 @@ DEPENDS += "ocf-linux"
>
>   CFLAG += "-DHAVE_CRYPTODEV -DUSE_CRYPTODEV_DIGESTS"
>
> -PR = "${INC_PR}.0"
> +PR = "${INC_PR}.1"
>
>   LIC_FILES_CHKSUM = "file://LICENSE;md5=f9a8f968107345e0b75aa8c2ecaa7ec8"
>




More information about the Openembedded-core mailing list