aboutsummaryrefslogtreecommitdiff
path: root/configure.ac
blob: 1d0f2b883dd3a8301e269e9ae0c3bbc5f3c3be23 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
#                                               -*- Autoconf -*-
# Process this file with autoconf to produce a configure script.

AC_PREREQ(2.57)
AC_INIT([libssh], 0.2.1-svn, [aris@0xbadc0de.be])
AM_INIT_AUTOMAKE(1.9)
AC_CONFIG_SRCDIR([sample.c])
AC_CONFIG_HEADER([config.h])

AM_MAINTAINER_MODE

# LT Version numbers, remember to change them just *before* a release.
#   (Interfaces removed:    CURRENT++, AGE=0, REVISION=0)
#   (Interfaces added:      CURRENT++, AGE++, REVISION=0)
#   (No interfaces changed:                   REVISION++)
LIBSSH_CURRENT=3
LIBSSH_AGE=1
LIBSSH_REVISION=0
AC_SUBST(LIBSSH_CURRENT)
AC_SUBST(LIBSSH_AGE)
AC_SUBST(LIBSSH_REVISION)

# Check for the OS.
AC_CANONICAL_HOST
case "$host" in
	*-apple*)
	LIBSSH_LDFLAGS="-prebind -seg1addr 0x3a000000 -headerpad_max_install_names"
	;;
	*)
	LIBSSH_LDFLAGS=""
	;;
esac
AC_SUBST(LIBSSH_LDFLAGS)

AC_MSG_CHECKING([version script options])
case "$host" in
	*-*-linux*)
	LIBSSH_VERS="$LIBSSH_LDFLAGS -Wl,--version-script,libssh.vers"
	;;
	*-*-gnu*)
	LIBSSH_VERS="$LIBSSH_LDFLAGS -Wl,--version-script,libssh.vers"
	;;
esac
AC_ARG_WITH([versioned-symbol],
	AC_HELP_STRING([--with-versioned-symbol],[Use versioned symbols]),
	[if test "$withval" = "yes"; then
	   LIBSSH_VERS="$LIBSSH_LDFLAGS -Wl,--version-script,libssh.vers"
	 else
	   LIBSSH_VERS=""
	 fi], [ : ])

AC_SUBST(LIBSSH_VERS)

enable_ssh1=${enable_ssh1:-"no"}
AC_ARG_ENABLE(ssh1, AC_HELP_STRING([--enable-ssh1], [enable SSH1 support]))
AC_MSG_CHECKING([for SSH1 support])
if test "$enable_ssh1" = "yes" ; then
  AC_DEFINE(HAVE_SSH1,1,[Define to 1 if you want to enable SSH1])
fi
AC_MSG_RESULT([$enable_ssh1])

# Checks for programs.
AC_PROG_CC
AC_PROG_INSTALL
AC_PROG_LN_S
AC_PROG_MAKE_SET
AC_PROG_LIBTOOL
AC_C_BIGENDIAN

AC_CHECK_PROG([DOXYGEN], [doxygen], [yes], [no])
AM_CONDITIONAL([HAS_DOXYGEN], [test x"$DOXYGEN" = xyes])

# Checks for libraries.
with_gcrypt=${with_gcrypt:-"no"}
AC_ARG_WITH([libgcrypt],
    AC_HELP_STRING([--with-libgcrypt],[Use libgcrypt instead of libcrypto]),
    [if test "$withval" = "yes"; then
       with_gcrypt="yes"
       AC_CHECK_LIB([gcrypt], [gcry_md_open])
     fi], [ : ])

if test "$with_gcrypt" = "no"; then
  AC_CHECK_LIB([crypto], [BN_init])
fi

AC_CHECK_LIB([z], [deflateInit_])
AC_SEARCH_LIBS([hstrerror],[nsl resolv])
AC_SEARCH_LIBS([getaddrinfo],[nsl socket])
AC_SEARCH_LIBS([gethostbyname],[nsl resolv])

# Checks for header files.
AC_HEADER_STDC
AC_CHECK_HEADERS([fcntl.h netdb.h netinet/in.h stdlib.h string.h sys/socket.h \
sys/time.h termios.h unistd.h openssl/aes.h openssl/blowfish.h \
openssl/des.h zlib.h sys/poll.h stdint.h pty.h gcrypt.h])

#Warn user when no openssl available
if test "$with_gcrypt" = "no" && (test "$ac_cv_header_openssl_aes_h" != "yes" ||
				  test "$ac_cv_header_openssl_blowfish_h" != "yes"); then
        echo "Can't find valid openssl files [e.g openssl/aes.h]"
        echo "Please install Openssl-devel"
        exit
fi

#Warn user when no libgcrypt available
if test "$with_gcrypt" = "yes" && test "$ac_cv_header_gcrypt_h" != "yes"; then
	echo "Can't find valid libgcrypt files [e.g gcrypt.h]"
	echo "Please install libgcrypt-devel"
	exit
fi

#if ! test x"$ac_cv_header_zlib_h" != x"yes"; then
#        echo "Can't find zlib.h"
#        echo "Compression support won't be compiled in"
#fi

# Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_HEADER_TIME

# Checks for library functions.
AC_FUNC_MALLOC
AC_FUNC_MEMCMP
AC_FUNC_REALLOC
AC_FUNC_SELECT_ARGTYPES
AC_TYPE_SIGNAL
AC_FUNC_VPRINTF
AC_CHECK_FUNCS([endpwent getaddrinfo gethostbyname getpass memmove memset \
cfmakeraw select socket strchr strdup strerror strstr poll])

AC_CONFIG_FILES([Makefile
                 libssh/Makefile
		 include/Makefile
		 include/libssh/Makefile])
AC_OUTPUT