SECTION = "libs" DESCRIPTION = "Secure Socket Layer (SSL) binary and related cryptographic tools." PR = "r2" SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz \ file://debian.patch;patch=1" S = "${WORKDIR}/openssl-${PV}" AR_append = " r" export CFLAG = "-fPIC -DTHREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -DL_ENDIAN -DTERMIO -Wall ${FULL_OPTIMIZATION}" # -02 does not work on mipsel: ssh hangs when it tries to read /dev/urandom export CFLAG_mtx-1 := "${@'${CFLAG}'.replace('-O2', '')}" export DIRS = "crypto ssl apps" export EX_LIBS = "-lgcc -ldl -L${STAGING_LIBDIR}" PACKAGES =+ "libcrypto libssl" FILES_libcrypto = "${libdir}/libcrypto.so*" FILES_libssl = "${libdir}/libssl.so*" do_compile () { perl util/perlpath.pl ${bindir} ln -sf apps/openssl.pod crypto/crypto.pod ssl/ssl.pod doc/ # # NOTE: Yes. This does suck. Ugh. # os=${HOST_OS} if [ "x$os" = "xlinux-uclibc" ]; then os=linux fi case $os-${HOST_ARCH} in linux-arm) target=linux-elf-arm ;; linux-i[34]86) target=linux-elf ;; linux-i586) target=linux-pentium ;; linux-i686) target=linux-ppro ;; linux-mipsel) target=linux-mipsel ;; linux-powerpc) target=linux-ppc ;; linux-x86_64) target=linux-x86_64 ;; *) die "Unsupported OS-ARCH ${HOST_OS}-${HOST_ARCH}" ;; esac perl ./Configure shared --prefix=${prefix} --openssldir=${libdir}/ssl $target oe_runmake -f Makefile.ssl } do_stage () { cp --dereference -R include/openssl ${STAGING_INCDIR}/ oe_libinstall -a -so libcrypto ${STAGING_LIBDIR} oe_libinstall -a -so libssl ${STAGING_LIBDIR} } do_install () { install -m 0755 -d ${D}/${libdir}/pkgconfig oe_runmake -f Makefile.ssl INSTALL_PREFIX="${D}" install chmod 644 ${D}/${libdir}/pkgconfig/openssl.pc oe_libinstall -so libcrypto ${D}/${libdir} oe_libinstall -so libssl ${D}/${libdir} }