1c87c5fbaSopenharmony_ci############################################################################ 2c87c5fbaSopenharmony_ci# 3c87c5fbaSopenharmony_ci# OpenSSL dual versions 4c87c5fbaSopenharmony_ci# 5c87c5fbaSopenharmony_ci# Works with CentOS 7 6c87c5fbaSopenharmony_ci# 7c87c5fbaSopenharmony_ci############################################################################ 8c87c5fbaSopenharmony_ci# 9c87c5fbaSopenharmony_ci# Add in alternative OpenSSL support into /opt/openssl. /opt/openssl is 10c87c5fbaSopenharmony_ci# chosen instead of the default of /usr/local so that existing utilities 11c87c5fbaSopenharmony_ci# continue to use the original version of OpenSSL and so only specific 12c87c5fbaSopenharmony_ci# applications that requires the newer version of OpenSSL will pick up the 13c87c5fbaSopenharmony_ci# new code. 14c87c5fbaSopenharmony_ci# 15c87c5fbaSopenharmony_ci# Download latest stable version of openssl.X.Y.Z.tar.gz from 16c87c5fbaSopenharmony_ci# https://www.openssl.org/source/ 17c87c5fbaSopenharmony_ci 18c87c5fbaSopenharmony_citar zxovf openssl.X.Y.Z.tar.gz 19c87c5fbaSopenharmony_cicd openssl.X.Y.X 20c87c5fbaSopenharmony_ci./config --prefix=/opt/openssl --openssldir=/opt/openssl 21c87c5fbaSopenharmony_cimake 22c87c5fbaSopenharmony_cisudo make install_sw 23c87c5fbaSopenharmony_ci 24c87c5fbaSopenharmony_ci# The following should not clash the existing OpenSSL lib*.so.1.0 usage unless 25c87c5fbaSopenharmony_ci# the previous OpenSSL version is 1.1.0 or later. 26c87c5fbaSopenharmony_ci# It just makes things for running executables a lot simpler. 27c87c5fbaSopenharmony_cisudo cp /opt/openssl/lib/lib*.so.1.1 /lib64 28c87c5fbaSopenharmony_cicd .. 29c87c5fbaSopenharmony_ci 30c87c5fbaSopenharmony_ci############################################################################ 31c87c5fbaSopenharmony_ci# 32c87c5fbaSopenharmony_ci# libcoap build with updated OpenSSL 33c87c5fbaSopenharmony_ci# 34c87c5fbaSopenharmony_ci############################################################################ 35c87c5fbaSopenharmony_ci 36c87c5fbaSopenharmony_ci# Get the latest libcoap 37c87c5fbaSopenharmony_cigit clone https://github.com/obgm/libcoap.git 38c87c5fbaSopenharmony_ci 39c87c5fbaSopenharmony_ci# Build code 40c87c5fbaSopenharmony_cicd libcoap 41c87c5fbaSopenharmony_ci./autogen.sh 42c87c5fbaSopenharmony_ci# Update --enable- / --disable- options as appropriate 43c87c5fbaSopenharmony_ci# libcoap libraries are put into /usr/lib64 for ease of linking 44c87c5fbaSopenharmony_ciPKG_CONFIG_PATH=/opt/openssl/lib/pkgconfig ./configure --libdir=/usr/lib64 \ 45c87c5fbaSopenharmony_ci --with-openssl --enable-tests --enable-examples --disable-doxygen \ 46c87c5fbaSopenharmony_ci --disable-manpages 47c87c5fbaSopenharmony_cimake 48c87c5fbaSopenharmony_cisudo make install 49c87c5fbaSopenharmony_cicd .. 50c87c5fbaSopenharmony_ci 51