"Fossies" - the Fresh Open Source Software archive

Member "links-1.03/configure.in" of archive links-1.03.tar.gz:


dnl Process this file with autoconf to produce a configure script.
AC_INIT(main.c)

AM_INIT_AUTOMAKE(links, 1.03)
AM_CONFIG_HEADER(config.h)

dnl Checks for programs.
AC_PROG_CC

AC_HEADER_STDC
AC_PROG_GCC_TRADITIONAL

AC_MSG_CHECKING([for EMX])
AC_TRY_COMPILE(, [#ifndef __EMX__
kill me!
#endif ], have_emx=yes, have_emx=no)
AC_MSG_RESULT($have_emx)
test "$ac_cv_have_emx" = yes && LDFLAGS="`echo "$LDFLAGS" | sed "s/-Zexe//g" | sed "s/-Zbin-files//g"` -Zcrtdll"

AC_CACHE_CHECK([for OpenWatcom], ac_cv_have_watcom,
	AC_TRY_COMPILE(, [#ifndef __WATCOMC__
	kill me!
	#endif ], ac_cv_have_watcom=yes, ac_cv_have_watcom=no)
)
test "$ac_cv_have_watcom" = yes && ac_cv_lib_dir_opendir=no

AC_MSG_CHECKING([for typeof])
AC_TRY_COMPILE(, [int a;
typeof(a) b;], have_typeof=yes, have_typeof=no)
AC_MSG_RESULT($have_typeof)
test "$have_typeof" = yes && AC_DEFINE(HAVE_TYPEOF)

AC_MSG_CHECKING([for long long])
AC_TRY_COMPILE(, [unsigned long long a; ], ac_cv_have_long_long=yes, ac_cv_have_long_long=no)
AC_MSG_RESULT($ac_cv_have_long_long)
test "$ac_cv_have_long_long" = yes && AC_DEFINE(HAVE_LONG_LONG)

AC_CACHE_CHECK([for pointer comparison bug], ac_cv_pointer_comparison_bug,
	AC_TRY_RUN([
	int main()
	{
		void *p = (void *)-1L;
		return p != (void *)-1L;
	}
	], ac_cv_pointer_comparison_bug=no, ac_cv_pointer_comparison_bug=yes,
		[if test -n "`echo "$CC"|grep ^tcc`"; then
			ac_cv_pointer_comparison_bug=yes
		else
			ac_cv_pointer_comparison_bug=no
		fi]
	)
)
test "$ac_cv_pointer_comparison_bug" = yes && AC_DEFINE(HAVE_POINTER_COMPARISON_BUG)

if test "$ac_cv_have_long_long" = yes; then
	AC_CACHE_CHECK([for maxint conversion bug], ac_cv_maxint_conversion_bug,
		AC_TRY_RUN([
		int main()
		{
			volatile long long q = 0x7FFFFFEF;
			return q < 0;
		}
		], ac_cv_maxint_conversion_bug=no, ac_cv_maxint_conversion_bug=yes,
			[if test -n "`echo "$CC"|grep ^cc`" -a "`uname -s`" = HP-UX; then
				ac_cv_maxint_conversion_bug=yes
			else
				ac_cv_maxint_conversion_bug=no
			fi]
		)
	)
	test "$ac_cv_maxint_conversion_bug" = yes && AC_DEFINE(HAVE_MAXINT_CONVERSION_BUG)
fi

dnl AC_CACHE_CHECK([for _FILE_OFFSET_BITS 64], ac_cv_have_file_offset_bits,
dnl 	AC_TRY_COMPILE([
dnl 	#define _FILE_OFFSET_BITS 64
dnl 	#include <stdio.h>
dnl 	], [
dnl 		return 0;
dnl 	], ac_cv_have_file_offset_bits=yes, ac_cv_have_file_offset_bits=no)
dnl )
dnl test "$ac_cv_have_file_offset_bits" = yes && AC_DEFINE(HAVE_FILE_OFFSET_BITS)

dnl Checks for header files.
AC_HEADER_DIRENT
AC_HEADER_SYS_WAIT
AC_CHECK_HEADERS(fcntl.h)
AC_CHECK_HEADERS(limits.h)
AC_CHECK_HEADERS(sys/ioctl.h)
AC_CHECK_HEADERS(sys/time.h)
AC_CHECK_HEADERS(time.h)
AC_CHECK_HEADERS(unistd.h)
AC_CHECK_HEADERS(sigaction.h)
AC_CHECK_HEADERS(netinet/in_systm.h)
AC_CHECK_HEADERS(netinet/in_system.h)
AC_CHECK_HEADERS(netinet/ip.h)
AC_CHECK_HEADERS(arpa/inet.h)
AC_CHECK_HEADERS(net/socket.h)
AC_CHECK_HEADERS(sys/select.h)
AC_CHECK_HEADERS(sys/resource.h)
AC_CHECK_HEADERS(wait.h)
AC_CHECK_HEADERS(sys/utsname.h)
AC_CHECK_HEADERS(sys/un.h)
AC_CHECK_HEADERS(sys/fmutex.h)
AC_CHECK_HEADERS(sys/cygwin.h)
AC_CHECK_HEADERS(interix/interix.h)
AC_CHECK_HEADERS(io.h)
AC_CHECK_HEADERS(pwd.h)
AC_CHECK_HEADERS(grp.h)

dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_C_INLINE
AC_TYPE_SIZE_T
AC_CACHE_CHECK([for socklen_t], ac_cv_have_socklen_t,
	AC_TRY_COMPILE([
	#include <sys/types.h>
	#include <sys/socket.h>
	], [
		socklen_t a = 0;
		return a;
	], ac_cv_have_socklen_t=yes, ac_cv_have_socklen_t=no)
)
if test "$ac_cv_have_socklen_t" = yes; then
	AC_DEFINE(HAVE_SOCKLEN_T)
fi

AC_HEADER_TIME
AC_STRUCT_TM

AC_CACHE_CHECK([if rename can replace existing files], ac_cv_rename_over_existing_files,
	AC_TRY_RUN([
	#include <fcntl.h>
	#include <stdio.h>
	#include <unistd.h>

	int main()
	{
		int ret;
		close(creat("conftest.rename1", 0600));
		close(creat("conftest.rename2", 0600));
		ret = rename("conftest.rename1", "conftest.rename2");
		unlink("conftest.rename1");
		unlink("conftest.rename2");
		return !!ret;
	}
	], ac_cv_rename_over_existing_files=yes, ac_cv_rename_over_existing_files=no, ac_cv_rename_over_existing_files=no)
)

if test "$ac_cv_rename_over_existing_files" = yes; then
	AC_DEFINE(RENAME_OVER_EXISTING_FILES)
fi

dnl Checks for library functions.
AC_TYPE_SIGNAL
AC_FUNC_STRFTIME
AC_FUNC_VPRINTF
AC_HAVE_FUNCS(mkdir)
AC_HAVE_FUNCS(select)
AC_HAVE_FUNCS(chmod)
AC_HAVE_FUNCS(getpid)
AC_HAVE_FUNCS(setpgid)
AC_HAVE_FUNCS(popen)
AC_HAVE_FUNCS(uname)
AC_HAVE_FUNCS(getpagesize)
AC_HAVE_FUNCS(getpwuid)
AC_HAVE_FUNCS(getgrgid)
AC_HAVE_FUNCS(sigfillset)
AC_HAVE_FUNCS(getrlimit)
AC_HAVE_FUNCS(setrlimit)

AC_HAVE_FUNCS(raise)
AC_HAVE_FUNCS(gettimeofday)
AC_HAVE_FUNCS(tempnam)
AC_HAVE_FUNCS(strtol)
AC_HAVE_FUNCS(strtoul)
AC_HAVE_FUNCS(strtoq)
AC_HAVE_FUNCS(strtoll)

dnl AC_HAVE_FUNCS(strlen)
AC_CACHE_CHECK([for strlen], ac_cv_have_strlen,
	AC_TRY_LINK([#include <string.h>], [strlen(""); return 0;], ac_cv_have_strlen=yes, ac_cv_have_strlen=no)
)
if test "$ac_cv_have_strlen" = yes; then
	AC_DEFINE(HAVE_STRLEN)
fi

dnl AC_HAVE_FUNCS(strcpy)
AC_CACHE_CHECK([for strcpy], ac_cv_have_strcpy,
	AC_TRY_LINK([#include <string.h>], [char a[[1]]; strcpy(a, ""); return 0;], ac_cv_have_strcpy=yes, ac_cv_have_strcpy=no)
)
if test "$ac_cv_have_strcpy" = yes; then
	AC_DEFINE(HAVE_STRCPY)
fi

dnl AC_HAVE_FUNCS(strchr)
AC_CACHE_CHECK([for strchr], ac_cv_have_strchr,
	AC_TRY_LINK([#include <string.h>], [strchr("", 0); return 0;], ac_cv_have_strchr=yes, ac_cv_have_strchr=no)
)
if test "$ac_cv_have_strchr" = yes; then
	AC_DEFINE(HAVE_STRCHR)
fi

dnl AC_HAVE_FUNCS(strrchr)
AC_CACHE_CHECK([for strrchr], ac_cv_have_strrchr,
	AC_TRY_LINK([#include <string.h>], [strrchr("", 0); return 0;], ac_cv_have_strrchr=yes, ac_cv_have_strrchr=no)
)
if test "$ac_cv_have_strrchr" = yes; then
	AC_DEFINE(HAVE_STRRCHR)
fi

dnl AC_HAVE_FUNCS(strcmp)
AC_CACHE_CHECK([for strcmp], ac_cv_have_strcmp,
	AC_TRY_LINK([#include <string.h>], [strcmp("", ""); return 0;], ac_cv_have_strcmp=yes, ac_cv_have_strcmp=no)
)
if test "$ac_cv_have_strcmp" = yes; then
	AC_DEFINE(HAVE_STRCMP)
fi

dnl AC_HAVE_FUNCS(strncmp)
AC_CACHE_CHECK([for strncmp], ac_cv_have_strncmp,
	AC_TRY_LINK([#include <string.h>], [strncmp("", "", 1); return 0;], ac_cv_have_strncmp=yes, ac_cv_have_strncmp=no)
)
if test "$ac_cv_have_strncmp" = yes; then
	AC_DEFINE(HAVE_STRNCMP)
fi

dnl AC_HAVE_FUNCS(strcspn)
AC_CACHE_CHECK([for strcspn], ac_cv_have_strcspn,
	AC_TRY_LINK([#include <string.h>], [strcspn("", ""); return 0;], ac_cv_have_strcspn=yes, ac_cv_have_strcspn=no)
)
if test "$ac_cv_have_strcspn" = yes; then
	AC_DEFINE(HAVE_STRCSPN)
fi

dnl AC_HAVE_FUNCS(strstr)
AC_CACHE_CHECK([for strstr], ac_cv_have_strstr,
	AC_TRY_LINK([#include <string.h>], [strstr("", ""); return 0;], ac_cv_have_strstr=yes, ac_cv_have_strstr=no)
)
if test "$ac_cv_have_strstr" = yes; then
	AC_DEFINE(HAVE_STRSTR)
fi

dnl AC_HAVE_FUNCS(memmove)
AC_CACHE_CHECK([for memmove], ac_cv_have_memmove,
	AC_TRY_LINK([#include <string.h>], [char a[[1]]; memmove(a, a, 1); return 0;], ac_cv_have_memmove=yes, ac_cv_have_memmove=no)
)
if test "$ac_cv_have_memmove" = yes; then
	AC_DEFINE(HAVE_MEMMOVE)
fi

dnl AC_HAVE_FUNCS(strerror)
AC_CACHE_CHECK([for strerror], ac_cv_have_strerror,
	AC_TRY_LINK([#include <string.h>], [char *c = strerror(1); return 0;], ac_cv_have_strerror=yes, ac_cv_have_strerror=no)
)
if test "$ac_cv_have_strerror" = yes; then
	AC_DEFINE(HAVE_STRERROR)
fi

if test "$ac_cv_func_select" != yes; then
	AC_ERROR([select function not present])
fi
if test "$ac_cv_func_strtol" != yes; then
	AC_ERROR([strtol function not present])
fi

dnl Checks for libraries.
dnl Replace `main' with a function in -lgpm:
AC_CHECK_LIB(gpm, Gpm_Open)
AC_CHECK_HEADERS(gpm.h)

dnl Replace `main' with a function in -lsocket:
AC_CHECK_FUNC(socket, cf_result=yes, cf_result=no)
if test "$cf_result" = no; then
	AC_CHECK_LIB(socket, socket)
	if test "$ac_cv_lib_socket_socket" = no; then
		AC_CHECK_LIB(network, socket)
		if test "$ac_cv_lib_network_socket" = no; then
			AC_ERROR([socket function not present])
		fi
	fi
fi
AC_CHECK_FUNC(setsockopt, cf_result=yes, cf_result=no)
if test "$cf_result" = no; then
	AC_CHECK_LIB(socket, setsockopt)
fi

#AC_MSG_CHECKING([for gethostbyname])
#AC_TRY_LINK([#include <netdb.h>], [gethostbyname("")], cf_result=yes, cf_result=no)
#AC_MSG_RESULT($cf_result)
AC_CHECK_FUNC(gethostbyname, cf_result=yes, cf_result=no)
if test "$cf_result" = no; then
	AC_CHECK_LIB(socket, gethostbyname)
	cf_result="$ac_cv_lib_socket_gethostbyname"
	if test "$ac_cv_lib_socket_gethostbyname" = no; then
		AC_CHECK_LIB(nsl, gethostbyname)
		cf_result="$ac_cv_lib_nsl_gethostbyname"
	fi
fi
test "$cf_result" = yes && AC_DEFINE(HAVE_GETHOSTBYNAME)

if test "$cf_result" = yes && test "$ac_cv_have_watcom" = yes -o "`uname -s`" = SunOS; then
	AC_CACHE_CHECK([for flawed gethostbyname], ac_cv_gethostbyname_bug,
		AC_TRY_RUN([
		#include <netdb.h>
		int main()
		{
			return !gethostbyname("www.gnu.org");
		}
		], ac_cv_gethostbyname_bug=no, ac_cv_gethostbyname_bug=yes, ac_cv_gethostbyname_bug="$ac_cv_have_watcom")
	)
	test "$ac_cv_gethostbyname_bug" = yes && AC_DEFINE(HAVE_GETHOSTBYNAME_BUG)
fi

AC_HAVE_FUNCS(gethostbyaddr)
AC_HAVE_FUNCS(herror)
AC_HAVE_FUNCS(cfmakeraw)

AC_HAVE_FUNCS(cygwin_conv_to_full_win32_path)
AC_HAVE_FUNCS(cygwin_conv_path)

AC_HAVE_FUNCS(unixpath2win)
AC_HAVE_FUNCS(winpath2unix)

AC_MSG_CHECKING([for OS/2 threads])
CFLAGS_X="$CFLAGS"
CFLAGS="$CFLAGS -Zmt"
AC_TRY_LINK([#include <stdlib.h>], [_beginthread(NULL, NULL, 0, NULL)], cf_result=yes, cf_result=no)
AC_MSG_RESULT($cf_result)
if test "$cf_result" = yes; then
	AC_DEFINE(HAVE_BEGINTHREAD)
else
	CFLAGS="$CFLAGS_X"
#	AC_CHECK_FUNC(pthread_create, cf_result=yes, cf_result=no)
#	if test "$cf_result" = yes; then
#		AC_DEFINE(HAVE_PTHREADS)
#	else
#		AC_CHECK_LIB(pthread, pthread_create, AC_DEFINE(HAVE_PTHREADS)
#		LDFLAGS="$LDFLAGS -lpthread" )
#	fi
fi
#AC_HAVE_FUNCS(clone)

AC_HAVE_FUNCS(MouOpen)
AC_HAVE_FUNCS(_read_kbd)

AC_MSG_CHECKING([for XFree for OS/2])
CPPFLAGS_X="$CPPFLAGS"
LIBS_X="$LIBS"
cf_result=no
if test -n "$X11ROOT"; then
	CPPFLAGS="$CPPFLAGS_X -I$X11ROOT/XFree86/include"
	LIBS="$LIBS_X -L$X11ROOT/XFree86/lib -lxf86_gcc"
	AC_TRY_LINK([#include <pty.h>], [struct winsize win;ptioctl(1, TIOCGWINSZ, &win)], cf_result=yes, cf_result=no)
	if test "$cf_result" = no; then
		LIBS="$LIBS_X -L$X11ROOT/XFree86/lib -lxf86"
		AC_TRY_LINK([#include <pty.h>], [struct winsize win;ptioctl(1, TIOCGWINSZ, &win)], cf_result=yes, cf_result=no)
	fi
fi
if test "$cf_result" != yes; then
	CPPFLAGS="$CPPFLAGS_X"
	LIBS="$LIBS_X"
else
	AC_DEFINE(X2)
fi
AC_MSG_RESULT($cf_result)

#ifdef HAVE_SSL
ssld=yes
AC_ARG_WITH(ssl, [  --with-ssl(=directory)  enable SSL support], [if test "$withval" = no; then disable_ssl=yes; else ssld="$withval"; fi])
cf_result=no
if test -z "$disable_ssl"; then
	AC_CHECK_LIB(dl, dlopen)
	AC_CHECK_LIB(z, inflate)
	CPPFLAGS_X="$CPPFLAGS"
	LIBS_X="$LIBS"
	PKG_CHECK_MODULES(OPENSSL,openssl,pkgconfig_openssl=yes,pkgconfig_openssl=no)
	if test "$pkgconfig_openssl" != yes; then
		AC_MSG_RESULT($pkgconfig_openssl)
	fi
	if test "$pkgconfig_openssl" = yes && test "$ssld" = yes; then
		AC_MSG_CHECKING([for OpenSSL])
		CPPFLAGS="$CPPFLAGS $OPENSSL_CFLAGS"
		LIBS="$OPENSSL_LIBS $LIBS"
		AC_TRY_LINK([#include <openssl/ssl.h>], [OpenSSL_add_all_algorithms()], cf_result=yes, cf_result=no)
		if test "$cf_result" != yes; then
			AC_TRY_LINK([#include <openssl/ssl.h>], [SSLeay_add_ssl_algorithms()], cf_result=yes, cf_result=no)
		fi
	else
		AC_MSG_CHECKING([for OpenSSL])
		if test "$ssld" = yes; then
			ssld=". /usr /usr/local /usr/local/openssl /usr/lib/openssl /usr/local/ssl /usr/local/www /usr/lib/ssl /usr/local /usr/pkg /opt /opt/openssl"
		fi
		for ssldir in $ssld; do
			if test "$cf_result" = no; then
				if test ! -z "$ssldir" && test "$ssldir" != /usr && test "$ssldir" != .; then
					LIBS="-L$ssldir/lib -lssl -lcrypto $LIBS_X"
					CPPFLAGS="$CPPFLAGS_X -I$ssldir/include"
				else
					LIBS="-lssl -lcrypto $LIBS_X"
				fi
				AC_TRY_LINK([#include <openssl/ssl.h>], [OpenSSL_add_all_algorithms()], cf_result=yes, cf_result=no)
				if test "$cf_result" != yes; then
					AC_TRY_LINK([#include <openssl/ssl.h>], [SSLeay_add_ssl_algorithms()], cf_result=yes, cf_result=no)
				fi
			fi
		done
	fi

	AC_MSG_RESULT($cf_result)

	if test "$cf_result" != yes; then
		if test "$withval" = yes; then
			AC_MSG_ERROR("OpenSSL not found")
		fi
		CPPFLAGS="$CPPFLAGS_X"
		LIBS="$LIBS_X"
	else
		AC_DEFINE(HAVE_SSL)
	fi
fi
#endif

test "$have_emx" = yes && LDFLAGS="$LDFLAGS -Zexe"

AC_OUTPUT(Makefile)