aboutsummaryrefslogtreecommitdiff
path: root/m4/ntp_openssl.m4
diff options
context:
space:
mode:
Diffstat (limited to 'm4/ntp_openssl.m4')
-rw-r--r--m4/ntp_openssl.m4283
1 files changed, 0 insertions, 283 deletions
diff --git a/m4/ntp_openssl.m4 b/m4/ntp_openssl.m4
deleted file mode 100644
index 7d9f477bfbf2..000000000000
--- a/m4/ntp_openssl.m4
+++ /dev/null
@@ -1,283 +0,0 @@
-dnl ######################################################################
-dnl OpenSSL support shared by top-level and sntp/configure.ac
-AC_DEFUN([NTP_OPENSSL], [
-
-AC_SUBST([OPENSSL])
-AC_SUBST([OPENSSL_INC])
-AC_SUBST([OPENSSL_LIB])
-
-AC_MSG_CHECKING([for openssl library directory])
-AC_ARG_WITH(
- [openssl-libdir],
- [AS_HELP_STRING(
- [--with-openssl-libdir],
- [+ =/something/reasonable]
- )],
- [ans=$withval],
- [
- case "$build" in
- $host) ans=yes ;;
- *) ans=no ;;
- esac
- ]
-)
-case "$ans" in
- no)
- ;;
- yes) # Look in:
- ans="/usr/lib /usr/lib/openssl /usr/sfw/lib /usr/local/lib /usr/local/ssl/lib /lib"
- ;;
- *) # Look where they said
- ;;
-esac
-case "$ans" in
- no)
- ;;
- *) # Look for libcrypto.a and libssl.a:
- for i in $ans no
- do
- case "$host" in
- *-*-darwin*)
- test -f $i/libcrypto.dylib -a -f $i/libssl.dylib && break
- ;;
- *)
- test -f $i/libcrypto.so -a -f $i/libssl.so && break
- test -f $i/libcrypto.a -a -f $i/libssl.a && break
- ;;
- esac
- done
- case "$i" in
- no)
- ans=no
- OPENSSL_LIB=
- ;;
- *) ans=$i
- OPENSSL_LIB=$ans
- ;;
- esac
- ;;
-esac
-AC_MSG_RESULT([$ans])
-
-AC_MSG_CHECKING([for openssl include directory])
-AC_ARG_WITH(
- [openssl-incdir],
- [AS_HELP_STRING(
- [--with-openssl-incdir],
- [+ =/something/reasonable]
- )],
- [ans=$withval],
- [
- case "$build" in
- $host) ans=yes ;;
- *) ans=no ;;
- esac
- ]
-)
-case "$ans" in
- no)
- ;;
- yes) # look in:
- ans="/usr/include /usr/sfw/include /usr/local/include /usr/local/ssl/include"
- ;;
- *) # Look where they said
- ;;
-esac
-case "$ans" in
- no)
- ;;
- *) # look for openssl/opensslconf.h:
- for i in $ans no
- do
- test -f $i/openssl/opensslconf.h && break
- done
- case "$i" in
- no)
- ans=no
- OPENSSL_INC=
- ;;
- *) ans=$i
- OPENSSL_INC=$ans
- ;;
- esac
- ;;
-esac
-AC_MSG_RESULT([$ans])
-
-AC_MSG_CHECKING([if we will use crypto])
-AC_ARG_WITH(
- [crypto],
- [AS_HELP_STRING(
- [--with-crypto],
- [+ =openssl]
- )],
- [ans=$withval],
- [ans=yes]
-)
-case "$ans" in
- no)
- ;;
- yes|openssl)
- if test -z "$OPENSSL_LIB" -o -z "$OPENSSL_INC"
- then
- ans=no
- else
- ans=yes
- fi
-esac
-ntp_openssl=$ans
-AC_MSG_RESULT([$ans])
-
-case "$ntp_openssl" in
- yes)
- # We have OpenSSL inc/lib - use them.
- case "$OPENSSL_INC" in
- /usr/include)
- ;;
- *)
- CPPFLAGS="$CPPFLAGS -I$OPENSSL_INC"
- ;;
- esac
- case "$OPENSSL_LIB" in
- /usr/lib)
- ;;
- *)
- LDFLAGS="$LDFLAGS -L$OPENSSL_LIB"
- case "$need_dash_r" in
- 1)
- LDFLAGS="$LDFLAGS -R$OPENSSL_LIB"
- esac
- ;;
- esac
- AC_SUBST([LCRYPTO], [-lcrypto])
- AC_DEFINE([OPENSSL], [1], [Use OpenSSL?])
-esac
-
-#
-# check for linking with -lcrypto failure, and try -lz -lcrypto.
-# Helps m68k-atari-mint
-#
-case "$ntp_openssl" in
- yes)
- NTPO_SAVED_LIBS="$LIBS"
- LIBS="$NTPO_SAVED_LIBS $LCRYPTO"
- AC_CACHE_CHECK(
- [if linking with $LCRYPTO alone works],
- [ntp_cv_bare_lcrypto],
- [AC_LINK_IFELSE(
- [AC_LANG_PROGRAM(
- [[
- #include "openssl/err.h"
- #include "openssl/evp.h"
- ]],
- [[
- ERR_load_crypto_strings();
- OpenSSL_add_all_algorithms();
- ]]
- )],
- [ntp_cv_bare_lcrypto=yes],
- [ntp_cv_bare_lcrypto=no]
- )]
- )
- case "$ntp_cv_bare_lcrypto" in
- no)
- LIBS="$NTPO_SAVED_LIBS $LCRYPTO -lz"
- AC_CACHE_CHECK(
- [if linking with $LCRYPTO -lz works],
- [ntp_cv_lcrypto_lz],
- [AC_LINK_IFELSE(
- [AC_LANG_PROGRAM(
- [[
- #include "openssl/err.h"
- #include "openssl/evp.h"
- ]],
- [[
- ERR_load_crypto_strings();
- OpenSSL_add_all_algorithms();
- ]]
- )],
- [ntp_cv_lcrypto_lz=yes],
- [ntp_cv_lcrypto_lz=no]
- )]
- )
- case "$ntp_cv_lcrypto_lz" in
- yes)
- LCRYPTO="$LCRYPTO -lz"
- esac
- esac
- LIBS="$NTPO_SAVED_LIBS"
- AS_UNSET([NTPO_SAVED_LIBS])
-esac
-
-#
-# Older OpenSSL headers have a number of callback prototypes inside
-# other function prototypes which trigger copious warnings with gcc's
-# -Wstrict-prototypes, which is included in -Wall.
-#
-# An example:
-#
-# int i2d_RSA_NET(const RSA *a, unsigned char **pp,
-# int (*cb)(), int sgckey);
-# ^^^^^^^^^^^
-#
-#
-#
-openssl_triggers_warnings=unknown
-SAVED_CFLAGS="$CFLAGS"
-
-case "$GCC$ntp_openssl" in
- yesyes)
- CFLAGS="$CFLAGS -Werror"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[
- ]],
- [[
- /* see if -Werror breaks gcc */
- ]]
- )],
- [gcc_handles_Werror=yes],
- [gcc_handles_Werror=no]
- )
- case "$gcc_handles_Werror" in
- no)
- # if this gcc doesn't do -Werror go ahead and use
- # -Wstrict-prototypes.
- openssl_triggers_warnings=yes
- ;;
- yes)
- CFLAGS="$CFLAGS -Wstrict-prototypes"
- AC_COMPILE_IFELSE(
- [AC_LANG_PROGRAM(
- [[
- #include "openssl/asn1_mac.h"
- #include "openssl/bn.h"
- #include "openssl/err.h"
- #include "openssl/evp.h"
- #include "openssl/pem.h"
- #include "openssl/rand.h"
- #include "openssl/x509v3.h"
- ]],
- [[
- /* empty body */
- ]]
- )],
- [openssl_triggers_warnings=no],
- [openssl_triggers_warnings=yes]
- )
- esac
- case "$openssl_triggers_warnings" in
- yes)
- CFLAGS="$SAVED_CFLAGS -Wno-strict-prototypes"
- ;;
- *)
- CFLAGS="$SAVED_CFLAGS -Wstrict-prototypes"
- esac
- ;;
- yesno)
- # gcc without OpenSSL
- CFLAGS="$SAVED_CFLAGS -Wstrict-prototypes"
-esac
-
-])
-dnl ======================================================================