From dd2e1d1aed0ef0d38b57a889e581e74b0903bd7a Mon Sep 17 00:00:00 2001
From: Moe Jette <jette1@llnl.gov>
Date: Thu, 27 Mar 2008 21:16:30 +0000
Subject: [PATCH] Build properly without OpenSSL installed (OpenSSL is
 recommended, but not     required).

---
 NEWS                     | 2 ++
 auxdir/x_ac_slurm_ssl.m4 | 9 ++++++---
 configure                | 9 ++++++---
 3 files changed, 14 insertions(+), 6 deletions(-)

diff --git a/NEWS b/NEWS
index 3a16ffff8ce..22eb4882b38 100644
--- a/NEWS
+++ b/NEWS
@@ -5,6 +5,8 @@ documents those changes that are of interest to users and admins.
 ========================
  -- In sched/wiki2, add processor count to JOBWILLRUN response.
  -- Add event trigger for node entering DRAINED state.
+ -- Build properly without OpenSSL installed (OpenSSL is recommended, but not 
+    required).
 
 * Changes in SLURM 1.3.0-pre11
 ==============================
diff --git a/auxdir/x_ac_slurm_ssl.m4 b/auxdir/x_ac_slurm_ssl.m4
index 7d4e95177fd..d32bfab5022 100644
--- a/auxdir/x_ac_slurm_ssl.m4
+++ b/auxdir/x_ac_slurm_ssl.m4
@@ -24,7 +24,7 @@ AC_DEFUN([X_AC_SLURM_WITH_SSL], [
   AC_SUBST(SSL_LIBS)
   AC_SUBST(SSL_CPPFLAGS)
   
-  SSL_LIBS="-lcrypto"
+  SSL_LIB_TEST="-lcrypto"
   
   AC_ARG_WITH(ssl,
     AS_HELP_STRING(--with-ssl=PATH,Specify path to OpenSSL installation),
@@ -36,7 +36,7 @@ AC_DEFUN([X_AC_SLURM_WITH_SSL], [
   	# which is specified with --with-ssl), and libtool is not setting
   	# the correct runtime library path in the binaries.
   	if test "x$ac_have_aix" = "xyes"; then
-  		SSL_LIBS="-lcrypto-static"
+  		SSL_LIB_TEST="-lcrypto-static"
   	fi
     ])
   
@@ -52,7 +52,7 @@ AC_DEFUN([X_AC_SLURM_WITH_SSL], [
   	for ssldir in $tryssldir "" $ssl_default_dirs; do 
   		CPPFLAGS="$saved_CPPFLAGS"
   		LDFLAGS="$saved_LDFLAGS"
-  		LIBS="$saved_LIBS $SSL_LIBS"
+  		LIBS="$saved_LIBS $SSL_LIB_TEST"
   		
   		# Skip directories if they don't exist
   		if test ! -z "$ssldir" -a ! -d "$ssldir" ; then
@@ -116,6 +116,7 @@ AC_DEFUN([X_AC_SLURM_WITH_SSL], [
   fi
 
   if test ! -z "$ac_have_openssl" ; then
+    SSL_LIBS="$SSL_LIB_TEST"
     if (test ! -z "$ac_cv_openssldir" && test "x$ac_cv_openssldir" != "x(system)") ; then
   	dnl Need to recover ssldir - test above runs in subshell
   	ssldir=$ac_cv_openssldir
@@ -139,6 +140,8 @@ AC_DEFUN([X_AC_SLURM_WITH_SSL], [
   
     AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <openssl/evp.h>]], [[EVP_MD_CTX_cleanup(NULL);]])],[AC_DEFINE(HAVE_EVP_MD_CTX_CLEANUP, 1,
                [Define to 1 if function EVP_MD_CTX_cleanup exists.])],[])
+  else
+    SSL_LIBS=""
   fi
   
   LIBS="$saved_LIBS"
diff --git a/configure b/configure
index 0deef2946b4..2c3f3358dd1 100755
--- a/configure
+++ b/configure
@@ -25982,7 +25982,7 @@ rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
 
 
 
-  SSL_LIBS="-lcrypto"
+  SSL_LIB_TEST="-lcrypto"
 
 
 # Check whether --with-ssl was given.
@@ -25995,7 +25995,7 @@ if test "${with_ssl+set}" = set; then
   	# which is specified with --with-ssl), and libtool is not setting
   	# the correct runtime library path in the binaries.
   	if test "x$ac_have_aix" = "xyes"; then
-  		SSL_LIBS="-lcrypto-static"
+  		SSL_LIB_TEST="-lcrypto-static"
   	fi
 
 fi
@@ -26018,7 +26018,7 @@ else
   	for ssldir in $tryssldir "" $ssl_default_dirs; do
   		CPPFLAGS="$saved_CPPFLAGS"
   		LDFLAGS="$saved_LDFLAGS"
-  		LIBS="$saved_LIBS $SSL_LIBS"
+  		LIBS="$saved_LIBS $SSL_LIB_TEST"
 
   		# Skip directories if they don't exist
   		if test ! -z "$ssldir" -a ! -d "$ssldir" ; then
@@ -26132,6 +26132,7 @@ echo "${ECHO_T}$ac_cv_openssldir" >&6; }
   fi
 
   if test ! -z "$ac_have_openssl" ; then
+    SSL_LIBS="$SSL_LIB_TEST"
     if (test ! -z "$ac_cv_openssldir" && test "x$ac_cv_openssldir" != "x(system)") ; then
   	  	ssldir=$ac_cv_openssldir
   	if test ! -z "$ssldir" -a "x$ssldir" != "x/usr"; then
@@ -26199,6 +26200,8 @@ fi
 
 rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \
       conftest$ac_exeext conftest.$ac_ext
+  else
+    SSL_LIBS=""
   fi
 
   LIBS="$saved_LIBS"
-- 
GitLab