openssl: Fix symlink creation

Symlinking the openssl configuration file at install time results in
errors when overriding it using an external package which also provides
openssl-conf. This should be done as a postinstall task for such
packages.

(From OE-Core rev: 991620f3962a9917fa99abb5582f4b72ebd42a3d)

Signed-off-by: David Vincent <freesilicon@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
David Vincent
2017-01-23 14:59:16 +01:00
committed by Richard Purdie
parent 8dddce21c4
commit 070f3aa74f

View File

@@ -201,7 +201,6 @@ do_install () {
${D}${sysconfdir}/ssl/
ln -sf ${sysconfdir}/ssl/certs ${D}${libdir}/ssl/certs
ln -sf ${sysconfdir}/ssl/private ${D}${libdir}/ssl/private
ln -sf ${sysconfdir}/ssl/openssl.cnf ${D}${libdir}/ssl/openssl.cnf
}
do_install_ptest () {
@@ -245,4 +244,16 @@ do_install_append_class-native() {
OPENSSL_ENGINES=${libdir}/ssl/engines
}
pkg_postinst_openssl-conf () {
#!/bin/sh
if [ -e $D${libdir}/ssl/openssl.cnf ]; then
rm -f $D${libdir}/ssl/openssl.cnf
fi
# If openssl-conf is installed before openssl, we must ensure that the symlink
# destination exists
mkdir -p $D${libdir}/ssl/
ln -s ${sysconfdir}/ssl/openssl.cnf $D${libdir}/ssl/openssl.cnf
}
BBCLASSEXTEND = "native nativesdk"