1
0

openssl.sh 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158
  1. #!/bin/bash
  2. # Author: yeho <lj2007331 AT gmail.com>
  3. # BLOG: https://linuxeye.com
  4. #
  5. # Notes: OneinStack for CentOS/RedHat 7+ Debian 9+ and Ubuntu 16+
  6. #
  7. # Project home page:
  8. # https://oneinstack.com
  9. # https://github.com/oneinstack/oneinstack
  10. if openssl version | grep -Eqi 'OpenSSL 1.0.2*'; then
  11. php5_with_openssl="--with-openssl"
  12. php70_with_openssl="--with-openssl"
  13. php71_with_openssl="--with-openssl"
  14. php72_with_openssl="--with-openssl"
  15. php73_with_openssl="--with-openssl"
  16. php74_with_openssl="--with-openssl"
  17. php80_with_openssl="--with-openssl"
  18. php81_with_openssl="--with-openssl"
  19. php82_with_openssl="--with-openssl"
  20. php5_with_ssl="--with-ssl"
  21. php70_with_ssl="--with-ssl"
  22. php71_with_ssl="--with-ssl"
  23. php72_with_ssl="--with-ssl"
  24. php73_with_ssl="--with-ssl"
  25. php74_with_ssl="--with-ssl"
  26. php80_with_ssl="--with-ssl"
  27. php81_with_ssl="--with-ssl"
  28. php82_with_ssl="--with-ssl"
  29. php5_with_curl="--with-curl"
  30. php70_with_curl="--with-curl"
  31. php71_with_curl="--with-curl"
  32. php72_with_curl="--with-curl"
  33. php73_with_curl="--with-curl"
  34. php74_with_curl="--with-curl"
  35. php80_with_curl="--with-curl"
  36. php81_with_curl="--with-curl"
  37. php82_with_curl="--with-curl"
  38. elif openssl version | grep -Eqi 'OpenSSL 1.1.*'; then
  39. php5_with_openssl="--with-openssl=${openssl_install_dir}"
  40. php70_with_openssl="--with-openssl"
  41. php71_with_openssl="--with-openssl"
  42. php72_with_openssl="--with-openssl"
  43. php73_with_openssl="--with-openssl"
  44. php74_with_openssl="--with-openssl"
  45. php80_with_openssl="--with-openssl"
  46. php81_with_openssl="--with-openssl"
  47. php82_with_openssl="--with-openssl"
  48. php5_with_ssl="--with-ssl=${openssl_install_dir}"
  49. php70_with_ssl="--with-ssl"
  50. php71_with_ssl="--with-ssl"
  51. php72_with_ssl="--with-ssl"
  52. php73_with_ssl="--with-ssl"
  53. php74_with_ssl="--with-ssl"
  54. php80_with_ssl="--with-ssl"
  55. php81_with_ssl="--with-ssl"
  56. php82_with_ssl="--with-ssl"
  57. php5_with_curl="--with-curl=${curl_install_dir}"
  58. php70_with_curl="--with-curl"
  59. php71_with_curl="--with-curl"
  60. php72_with_curl="--with-curl"
  61. php73_with_curl="--with-curl"
  62. php74_with_curl="--with-curl"
  63. php80_with_curl="--with-curl"
  64. php81_with_curl="--with-curl"
  65. php82_with_curl="--with-curl"
  66. [[ ${php_option} =~ ^[1-4]$ ]] || [[ "${mphp_ver}" =~ ^5[3-6]$ ]] && with_old_openssl_flag=y
  67. elif openssl version | grep -Eqi 'OpenSSL 3.*'; then
  68. php5_with_openssl="--with-openssl=${openssl_install_dir}"
  69. php70_with_openssl="--with-openssl=${openssl_install_dir}"
  70. php71_with_openssl="--with-openssl"
  71. php72_with_openssl="--with-openssl"
  72. php73_with_openssl="--with-openssl"
  73. php74_with_openssl="--with-openssl"
  74. php80_with_openssl="--with-openssl"
  75. php81_with_openssl="--with-openssl"
  76. php82_with_openssl="--with-openssl"
  77. php5_with_ssl="--with-ssl=${openssl_install_dir}"
  78. php70_with_ssl="--with-ssl=${openssl_install_dir}"
  79. php71_with_ssl="--with-ssl"
  80. php72_with_ssl="--with-ssl"
  81. php73_with_ssl="--with-ssl"
  82. php74_with_ssl="--with-ssl"
  83. php80_with_ssl="--with-ssl"
  84. php81_with_ssl="--with-ssl"
  85. php82_with_ssl="--with-ssl"
  86. php5_with_curl="--with-curl=${curl_install_dir}"
  87. php70_with_curl="--with-curl=${curl_install_dir}"
  88. php71_with_curl="--with-curl"
  89. php72_with_curl="--with-curl"
  90. php73_with_curl="--with-curl"
  91. php74_with_curl="--with-curl"
  92. php80_with_curl="--with-curl"
  93. php81_with_curl="--with-curl"
  94. php82_with_curl="--with-curl"
  95. [[ ${php_option} =~ ^[1-5]$ ]] || [[ "${mphp_ver}" =~ ^5[3-6]$|^70$ ]] && with_old_openssl_flag=y
  96. else
  97. php5_with_openssl="--with-openssl=${openssl_install_dir}"
  98. php70_with_openssl="--with-openssl=${openssl_install_dir}"
  99. php71_with_openssl="--with-openssl=${openssl_install_dir}"
  100. php72_with_openssl="--with-openssl=${openssl_install_dir}"
  101. php73_with_openssl="--with-openssl=${openssl_install_dir}"
  102. php74_with_openssl="--with-openssl=${openssl_install_dir} --with-openssl-dir=${openssl_install_dir}"
  103. php80_with_openssl="--with-openssl=${openssl_install_dir} --with-openssl-dir=${openssl_install_dir}"
  104. php81_with_openssl="--with-openssl=${openssl_install_dir} --with-openssl-dir=${openssl_install_dir}"
  105. php82_with_openssl="--with-openssl=${openssl_install_dir} --with-openssl-dir=${openssl_install_dir}"
  106. php5_with_ssl="--with-ssl=${openssl_install_dir}"
  107. php70_with_ssl="--with-ssl=${openssl_install_dir}"
  108. php71_with_ssl="--with-ssl=${openssl_install_dir}"
  109. php72_with_ssl="--with-ssl=${openssl_install_dir}"
  110. php73_with_ssl="--with-ssl=${openssl_install_dir}"
  111. php74_with_ssl="--with-ssl=${openssl_install_dir}"
  112. php80_with_ssl="--with-ssl=${openssl_install_dir}"
  113. php81_with_ssl="--with-ssl=${openssl_install_dir}"
  114. php82_with_ssl="--with-ssl=${openssl_install_dir}"
  115. php5_with_curl="--with-curl=${curl_install_dir}"
  116. php70_with_curl="--with-curl=${curl_install_dir}"
  117. php71_with_curl="--with-curl=${curl_install_dir}"
  118. php72_with_curl="--with-curl=${curl_install_dir}"
  119. php73_with_curl="--with-curl=${curl_install_dir}"
  120. php74_with_curl="--with-curl=${curl_install_dir}"
  121. php80_with_curl="--with-curl=${curl_install_dir}"
  122. php81_with_curl="--with-curl=${curl_install_dir}"
  123. php82_with_curl="--with-curl=${curl_install_dir}"
  124. with_old_openssl_flag=y
  125. fi
  126. Install_openSSL() {
  127. if [ "${with_old_openssl_flag}" == 'y' ]; then
  128. if [ ! -e "${openssl_install_dir}/lib/libssl.a" ]; then
  129. pushd ${oneinstack_dir}/src > /dev/null
  130. tar xzf openssl-${openssl_ver}.tar.gz
  131. pushd openssl-${openssl_ver} > /dev/null
  132. make clean
  133. ./config -Wl,-rpath=${openssl_install_dir}/lib -fPIC --prefix=${openssl_install_dir} --openssldir=${openssl_install_dir}
  134. make depend
  135. make -j ${THREAD} && make install
  136. popd > /dev/null
  137. if [ -f "${openssl_install_dir}/lib/libcrypto.a" ]; then
  138. echo "${CSUCCESS}openSSL installed successfully! ${CEND}"
  139. /bin/cp cacert.pem ${openssl_install_dir}/cert.pem
  140. rm -rf openssl-${openssl_ver}
  141. else
  142. echo "${CFAILURE}openSSL install failed, Please contact the author! ${CEND}" && grep -Ew 'NAME|ID|ID_LIKE|VERSION_ID|PRETTY_NAME' /etc/os-release
  143. kill -9 $$; exit 1;
  144. fi
  145. popd > /dev/null
  146. fi
  147. fi
  148. }