|
Packit Service |
f629e6 |
dnl
|
|
Packit Service |
f629e6 |
dnl configure.ac --- autoconf input file for gawk
|
|
Packit Service |
f629e6 |
dnl
|
|
Packit Service |
f629e6 |
dnl Copyright (C) 1995-2018 the Free Software Foundation, Inc.
|
|
Packit Service |
f629e6 |
dnl
|
|
Packit Service |
f629e6 |
dnl This file is part of GAWK, the GNU implementation of the
|
|
Packit Service |
f629e6 |
dnl AWK Programming Language.
|
|
Packit Service |
f629e6 |
dnl
|
|
Packit Service |
f629e6 |
dnl GAWK is free software; you can redistribute it and/or modify
|
|
Packit Service |
f629e6 |
dnl it under the terms of the GNU General Public License as published by
|
|
Packit Service |
f629e6 |
dnl the Free Software Foundation; either version 3 of the License, or
|
|
Packit Service |
f629e6 |
dnl (at your option) any later version.
|
|
Packit Service |
f629e6 |
dnl
|
|
Packit Service |
f629e6 |
dnl GAWK is distributed in the hope that it will be useful,
|
|
Packit Service |
f629e6 |
dnl but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
Packit Service |
f629e6 |
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
Packit Service |
f629e6 |
dnl GNU General Public License for more details.
|
|
Packit Service |
f629e6 |
dnl
|
|
Packit Service |
f629e6 |
dnl You should have received a copy of the GNU General Public License
|
|
Packit Service |
f629e6 |
dnl along with this program; if not, write to the Free Software
|
|
Packit Service |
f629e6 |
dnl Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
|
|
Packit Service |
f629e6 |
dnl
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl Process this file with autoconf to produce a configure script.
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_INIT([GNU Awk],[4.2.1],[bug-gawk@gnu.org],[gawk])
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
# This is a hack. Different versions of install on different systems
|
|
Packit Service |
f629e6 |
# are just too different. Chuck it and use install-sh.
|
|
Packit Service |
f629e6 |
#
|
|
Packit Service |
f629e6 |
# If the user supplies $INSTALL, figure they know what they're doing.
|
|
Packit Service |
f629e6 |
#
|
|
Packit Service |
f629e6 |
# With Autoconf 2.5x, this needs to come very early on, but *after*
|
|
Packit Service |
f629e6 |
# the INIT macro. Sigh.
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
if test "$INSTALL" = ""
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
INSTALL="$srcdir/install-sh -c"
|
|
Packit Service |
f629e6 |
export INSTALL
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_PREREQ([2.69])
|
|
Packit Service |
f629e6 |
AM_INIT_AUTOMAKE([1.15 dist-xz dist-lzip])
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_CONFIG_MACRO_DIR([m4])
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl Additional argument stuff
|
|
Packit Service |
f629e6 |
AC_ARG_WITH(whiny-user-strftime,
|
|
Packit Service |
f629e6 |
[AS_HELP_STRING([--with-whiny-user-strftime], [force use of included version of strftime for deficient systems])],
|
|
Packit Service |
f629e6 |
if test "$withval" = yes
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
AC_DEFINE(USE_INCLUDED_STRFTIME, 1,
|
|
Packit Service |
f629e6 |
[force use of our version of strftime])
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
)
|
|
Packit Service |
f629e6 |
AC_ARG_ENABLE([lint],
|
|
Packit Service |
f629e6 |
[AS_HELP_STRING([--disable-lint],[do not compile in gawk lint checking])],
|
|
Packit Service |
f629e6 |
if test "$enableval" = no
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
AC_DEFINE(NO_LINT, 1, [disable lint checks])
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
)
|
|
Packit Service |
f629e6 |
AC_ARG_ENABLE([severe-portability-problems],
|
|
Packit Service |
f629e6 |
[AS_HELP_STRING([--enable-severe-portability-problems],[allow really nasty portability problems])],
|
|
Packit Service |
f629e6 |
if test "$enableval" = yes
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
AC_DEFINE(I_DONT_KNOW_WHAT_IM_DOING, 1, [enable severe portability problems])
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
)
|
|
Packit Service |
f629e6 |
AC_ARG_ENABLE([builtin-intdiv0],
|
|
Packit Service |
f629e6 |
[AS_HELP_STRING([--enable-builtin-intdiv0],[enable built-in intdiv0 function])],
|
|
Packit Service |
f629e6 |
if test "$enableval" = yes
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
AC_DEFINE(SUPPLY_INTDIV, 1, [enable built-in intdiv0 function])
|
|
Packit Service |
f629e6 |
sed '/^@set PATCHLEVEL/a\
|
|
Packit Service |
f629e6 |
@set INTDIV' < "$srcdir"/doc/gawktexi.in > foo
|
|
Packit Service |
f629e6 |
cp foo "$srcdir"/doc/gawktexi.in
|
|
Packit Service |
f629e6 |
rm foo
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
)
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
SKIP_MPFR=no
|
|
Packit Service |
f629e6 |
AC_ARG_ENABLE([mpfr],
|
|
Packit Service |
f629e6 |
[AS_HELP_STRING([--disable-mpfr],[do not check for MPFR])],
|
|
Packit Service |
f629e6 |
if test "$enableval" = no
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
SKIP_MPFR=yes
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
)
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
EXTENSIONDIR=
|
|
Packit Service |
f629e6 |
AC_ARG_ENABLE([versioned-extension-dir],
|
|
Packit Service |
f629e6 |
[AS_HELP_STRING([--enable-versioned-extension-dir], [use a versioned directory for extensions])],
|
|
Packit Service |
f629e6 |
if test "$enableval" = yes
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
MAJOR=`awk '/define gawk_api_major_version/ { print $3 }' < $srcdir/gawkapi.h`
|
|
Packit Service |
f629e6 |
MINOR=`awk '/define gawk_api_minor_version/ { print $3 }' < $srcdir/gawkapi.h`
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
# note leading slash on the value
|
|
Packit Service |
f629e6 |
export EXTENSIONDIR=/ext-$MAJOR.$MINOR
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
)
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
# set default shared library location
|
|
Packit Service |
f629e6 |
AC_SUBST([pkgextensiondir], ['${pkglibdir}'${EXTENSIONDIR}])
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_CANONICAL_HOST
|
|
Packit Service |
f629e6 |
AC_USE_SYSTEM_EXTENSIONS
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl checks for programs
|
|
Packit Service |
f629e6 |
AC_PROG_EGREP
|
|
Packit Service |
f629e6 |
AC_PROG_YACC
|
|
Packit Service |
f629e6 |
AC_PROG_LN_S
|
|
Packit Service |
f629e6 |
AC_PROG_CC_C99
|
|
Packit Service |
f629e6 |
AC_PROG_CPP
|
|
Packit Service |
f629e6 |
AC_PROG_RANLIB
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_OBJEXT
|
|
Packit Service |
f629e6 |
AC_EXEEXT
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_PROG_INSTALL
|
|
Packit Service |
f629e6 |
AC_PROG_MAKE_SET
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
# This is mainly for my use during testing and development.
|
|
Packit Service |
f629e6 |
# Yes, it's a bit of a hack.
|
|
Packit Service |
f629e6 |
AC_MSG_CHECKING([for special development options])
|
|
Packit Service |
f629e6 |
if test -f $srcdir/.developing
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
# add other debug flags as appropriate, save GAWKDEBUG for emergencies
|
|
Packit Service |
f629e6 |
CFLAGS="$CFLAGS -DARRAYDEBUG -DYYDEBUG -DLOCALEDEBUG"
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
# turn on compiler warnings if we're doing development
|
|
Packit Service |
f629e6 |
# enable debugging using macros also
|
|
Packit Service |
f629e6 |
if test "$GCC" = yes
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
CFLAGS="$CFLAGS -Wall -fno-builtin -g3"
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
AC_MSG_RESULT([yes])
|
|
Packit Service |
f629e6 |
else
|
|
Packit Service |
f629e6 |
AC_MSG_RESULT([no])
|
|
Packit Service |
f629e6 |
CFLAGS="$CFLAGS -DNDEBUG" # turn off assertions
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_SUBST(CFLAGS)
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
# shared library suffix for dynamic loading:
|
|
Packit Service |
f629e6 |
AC_SUBST(acl_shlibext)
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl checks for systems
|
|
Packit Service |
f629e6 |
AC_ZOS_USS
|
|
Packit Service |
f629e6 |
AC_SEARCH_LIBS([strerror],[cposix])
|
|
Packit Service |
f629e6 |
AC_SYS_LARGEFILE
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_MSG_CHECKING([if we are using EBCDIC])
|
|
Packit Service |
f629e6 |
AC_EGREP_CPP([gnu_gawk_in_ebcdic],
|
|
Packit Service |
f629e6 |
[#if 'a' == 0x81
|
|
Packit Service |
f629e6 |
gnu_gawk_in_ebcdic
|
|
Packit Service |
f629e6 |
#endif],
|
|
Packit Service |
f629e6 |
[AC_DEFINE(USE_EBCDIC, 1, Define to 1 if the character set is EBCDIC)
|
|
Packit Service |
f629e6 |
use_ebcdic=yes],
|
|
Packit Service |
f629e6 |
[use_ebcdic=no])
|
|
Packit Service |
f629e6 |
AC_MSG_RESULT([$use_ebcdic])
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl Set the programming language for checks. Fortunately,
|
|
Packit Service |
f629e6 |
dnl this only needs to be set once, since everything is in C.
|
|
Packit Service |
f629e6 |
AC_LANG([C])
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl initialize GNU gettext
|
|
Packit Service |
f629e6 |
AM_GNU_GETTEXT([external])
|
|
Packit Service |
f629e6 |
AM_GNU_GETTEXT_VERSION([0.19.7])
|
|
Packit Service |
f629e6 |
AM_LANGINFO_CODESET
|
|
Packit Service |
f629e6 |
gt_LC_MESSAGES
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl checks for header files
|
|
Packit Service |
f629e6 |
AC_CHECK_HEADERS(arpa/inet.h fcntl.h limits.h locale.h libintl.h mcheck.h \
|
|
Packit Service |
f629e6 |
netdb.h netinet/in.h stdarg.h stddef.h string.h \
|
|
Packit Service |
f629e6 |
sys/ioctl.h sys/param.h sys/select.h sys/socket.h sys/time.h unistd.h \
|
|
Packit Service |
f629e6 |
termios.h stropts.h wchar.h wctype.h)
|
|
Packit Service |
f629e6 |
AC_HEADER_STDC
|
|
Packit Service |
f629e6 |
AC_HEADER_STDBOOL
|
|
Packit Service |
f629e6 |
AC_HEADER_SYS_WAIT
|
|
Packit Service |
f629e6 |
AC_HEADER_TIME
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
if test "$ac_cv_header_string_h" = yes
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
AC_CHECK_HEADERS(memory.h)
|
|
Packit Service |
f629e6 |
else
|
|
Packit Service |
f629e6 |
AC_CHECK_HEADERS(strings.h)
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl Check cross compiling
|
|
Packit Service |
f629e6 |
AM_CONDITIONAL([TEST_CROSS_COMPILE], [test "$build_alias" != "$host_alias"])
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl checks for typedefs
|
|
Packit Service |
f629e6 |
AC_TYPE_PID_T
|
|
Packit Service |
f629e6 |
AC_TYPE_SIZE_T
|
|
Packit Service |
f629e6 |
AC_TYPE_GETGROUPS
|
|
Packit Service |
f629e6 |
AC_TYPE_LONG_LONG_INT
|
|
Packit Service |
f629e6 |
AC_TYPE_UNSIGNED_LONG_LONG_INT
|
|
Packit Service |
f629e6 |
AC_TYPE_INTMAX_T
|
|
Packit Service |
f629e6 |
AC_TYPE_UINTMAX_T
|
|
Packit Service |
f629e6 |
AC_CHECK_TYPE(ssize_t, int)
|
|
Packit Service |
f629e6 |
AC_CHECK_SIZEOF(unsigned int)
|
|
Packit Service |
f629e6 |
AC_CHECK_SIZEOF(unsigned long)
|
|
Packit Service |
f629e6 |
dnl see if time_t is defined in <sys/types.h>
|
|
Packit Service |
f629e6 |
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>]], [[
|
|
Packit Service |
f629e6 |
time_t foo;
|
|
Packit Service |
f629e6 |
foo = 0;
|
|
Packit Service |
f629e6 |
]])],[AC_DEFINE(TIME_T_IN_SYS_TYPES_H, 1,
|
|
Packit Service |
f629e6 |
some systems define this type here)],[])
|
|
Packit Service |
f629e6 |
dnl check for wctype_t in <wctype.h>
|
|
Packit Service |
f629e6 |
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <wctype.h>]], [[
|
|
Packit Service |
f629e6 |
wctype_t foo;
|
|
Packit Service |
f629e6 |
foo = 0;
|
|
Packit Service |
f629e6 |
]])],[AC_DEFINE(HAVE_WCTYPE_T, 1, systems should define this type here)],[])
|
|
Packit Service |
f629e6 |
dnl check for wint_t in <wctype.h>
|
|
Packit Service |
f629e6 |
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <wctype.h>]], [[
|
|
Packit Service |
f629e6 |
wint_t foo;
|
|
Packit Service |
f629e6 |
foo = 0;
|
|
Packit Service |
f629e6 |
]])],[AC_DEFINE(HAVE_WINT_T, 1, systems should define this type here)],[])
|
|
Packit Service |
f629e6 |
dnl check for sockaddr_storage
|
|
Packit Service |
f629e6 |
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <sys/types.h>
|
|
Packit Service |
f629e6 |
#include <sys/socket.h>]], [[
|
|
Packit Service |
f629e6 |
struct sockaddr_storage foo;
|
|
Packit Service |
f629e6 |
]])],[AC_DEFINE(HAVE_SOCKADDR_STORAGE, 1, newer systems define this type here)],[])
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl Borrwed from rsync, thanks to to Jim Meyering.
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl Check for socklen_t: historically on BSD it is an int, and in
|
|
Packit Service |
f629e6 |
dnl POSIX 1g it is a type of its own, but some platforms use different
|
|
Packit Service |
f629e6 |
dnl types for the argument to getsockopt, getpeername, etc. So we
|
|
Packit Service |
f629e6 |
dnl have to test to find something that will work.
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl This is no good, because passing the wrong pointer on C compilers is
|
|
Packit Service |
f629e6 |
dnl likely to only generate a warning, not an error.
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_DEFUN([TYPE_SOCKLEN_T],
|
|
Packit Service |
f629e6 |
[
|
|
Packit Service |
f629e6 |
AC_CHECK_TYPE([socklen_t], ,[
|
|
Packit Service |
f629e6 |
AC_MSG_CHECKING([for socklen_t equivalent])
|
|
Packit Service |
f629e6 |
AC_CACHE_VAL([rsync_cv_socklen_t_equiv],
|
|
Packit Service |
f629e6 |
[
|
|
Packit Service |
f629e6 |
# Systems have either "struct sockaddr *" or
|
|
Packit Service |
f629e6 |
# "void *" as the second argument to getpeername
|
|
Packit Service |
f629e6 |
rsync_cv_socklen_t_equiv=
|
|
Packit Service |
f629e6 |
for arg2 in "struct sockaddr" void
|
|
Packit Service |
f629e6 |
do
|
|
Packit Service |
f629e6 |
for t in int size_t unsigned long "unsigned long"
|
|
Packit Service |
f629e6 |
do
|
|
Packit Service |
f629e6 |
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
|
|
Packit Service |
f629e6 |
#include <sys/types.h>
|
|
Packit Service |
f629e6 |
#include <sys/socket.h>
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
int getpeername (int, $arg2 *, $t *);
|
|
Packit Service |
f629e6 |
]], [[
|
|
Packit Service |
f629e6 |
$t len;
|
|
Packit Service |
f629e6 |
getpeername(0,0,&len;;
|
|
Packit Service |
f629e6 |
]])],[
|
|
Packit Service |
f629e6 |
rsync_cv_socklen_t_equiv="$t"
|
|
Packit Service |
f629e6 |
break
|
|
Packit Service |
f629e6 |
],[])
|
|
Packit Service |
f629e6 |
done
|
|
Packit Service |
f629e6 |
done
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
if test "$rsync_cv_socklen_t_equiv" = ""
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
dnl Some systems get this. Default to int. -- ADR
|
|
Packit Service |
f629e6 |
dnl AC_MSG_ERROR([Cannot find a type to use in place of socklen_t])
|
|
Packit Service |
f629e6 |
rsync_cv_socklen_t_equiv=int
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
])
|
|
Packit Service |
f629e6 |
AC_MSG_RESULT($rsync_cv_socklen_t_equiv)
|
|
Packit Service |
f629e6 |
AC_DEFINE_UNQUOTED(socklen_t, $rsync_cv_socklen_t_equiv,
|
|
Packit Service |
f629e6 |
[type to use in place of socklen_t if not defined])],
|
|
Packit Service |
f629e6 |
[#include <sys/types.h>
|
|
Packit Service |
f629e6 |
#include <sys/socket.h>])
|
|
Packit Service |
f629e6 |
])
|
|
Packit Service |
f629e6 |
TYPE_SOCKLEN_T
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl Check for C11 _Noreturn
|
|
Packit Service |
f629e6 |
GAWK_AC_NORETURN
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl checks for functions
|
|
Packit Service |
f629e6 |
AC_FUNC_MKTIME
|
|
Packit Service |
f629e6 |
case "$ac_cv_func_working_mktime" in
|
|
Packit Service |
f629e6 |
yes) AC_DEFINE(HAVE_MKTIME, 1, [we have the mktime function])
|
|
Packit Service |
f629e6 |
;;
|
|
Packit Service |
f629e6 |
esac
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_CHECK_FUNC(getaddrinfo, [AC_DEFINE(HAVE_GETADDRINFO, 1, [have getaddrinfo])],
|
|
Packit Service |
f629e6 |
[AC_CHECK_LIB(socket, getaddrinfo,
|
|
Packit Service |
f629e6 |
[AC_DEFINE(HAVE_GETADDRINFO, 1,
|
|
Packit Service |
f629e6 |
[have getaddrinfo])])])
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_SEARCH_LIBS(fmod, m)
|
|
Packit Service |
f629e6 |
AC_SEARCH_LIBS(isinf, m)
|
|
Packit Service |
f629e6 |
AC_SEARCH_LIBS(ismod, m)
|
|
Packit Service |
f629e6 |
dnl Don't look for libsigsegv on OSF/1, gives us severe headaches
|
|
Packit Service |
f629e6 |
case $host_os in
|
|
Packit Service |
f629e6 |
osf1) : ;;
|
|
Packit Service |
f629e6 |
*)
|
|
Packit Service |
f629e6 |
gl_LIBSIGSEGV
|
|
Packit Service |
f629e6 |
;;
|
|
Packit Service |
f629e6 |
esac
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
# Need the check for mkstemp and tmpfile for missing_d/snprintf.c.
|
|
Packit Service |
f629e6 |
AC_CHECK_FUNCS(__etoa_l atexit btowc fmod gai_strerror \
|
|
Packit Service |
f629e6 |
getgrent getgroups grantpt \
|
|
Packit Service |
f629e6 |
fwrite_unlocked \
|
|
Packit Service |
f629e6 |
isascii iswctype iswlower iswupper mbrlen \
|
|
Packit Service |
f629e6 |
memcmp memcpy memcpy_ulong memmove memset \
|
|
Packit Service |
f629e6 |
memset_ulong mkstemp posix_openpt setenv setlocale setsid sigprocmask \
|
|
Packit Service |
f629e6 |
snprintf strchr \
|
|
Packit Service |
f629e6 |
strerror strftime strcasecmp strncasecmp strcoll strtod strtoul \
|
|
Packit Service |
f629e6 |
system tmpfile towlower towupper tzset usleep waitpid wcrtomb \
|
|
Packit Service |
f629e6 |
wcscoll wctype)
|
|
Packit Service |
f629e6 |
dnl this check is for both mbrtowc and the mbstate_t type, which is good
|
|
Packit Service |
f629e6 |
AC_FUNC_MBRTOWC
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl check for dynamic linking
|
|
Packit Service |
f629e6 |
dnl This is known to be very primitive
|
|
Packit Service |
f629e6 |
AC_ARG_ENABLE([extensions],
|
|
Packit Service |
f629e6 |
[AS_HELP_STRING([--disable-extensions], [disable dynamic extensions (default is detect)])])
|
|
Packit Service |
f629e6 |
if test "$enable_extensions" != "no"
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
extensions_supported=no
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl On MirBSD (and probably other systems), don't even try.
|
|
Packit Service |
f629e6 |
case $host_os in
|
|
Packit Service |
f629e6 |
mirbsd* | openedition*) # OS/390 z/OS POSIX layer
|
|
Packit Service |
f629e6 |
;;
|
|
Packit Service |
f629e6 |
*)
|
|
Packit Service |
f629e6 |
AC_CHECK_HEADER(dlfcn.h,
|
|
Packit Service |
f629e6 |
[
|
|
Packit Service |
f629e6 |
# Check this separately. Some systems have dlopen
|
|
Packit Service |
f629e6 |
# in libc. Notably freebsd and cygwin.
|
|
Packit Service |
f629e6 |
# HP-NSK has it in zrldsrl
|
|
Packit Service |
f629e6 |
AC_SEARCH_LIBS(dlopen, dl zrldsrl, gawk_have_dlopen=yes, gawk_have_dlopen=no)
|
|
Packit Service |
f629e6 |
# Only do DYNAMIC if we have the lib. z/OS (some versions) have
|
|
Packit Service |
f629e6 |
# the header but not the lib, apparently
|
|
Packit Service |
f629e6 |
if test "$gawk_have_dlopen" = yes
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
extensions_supported=yes
|
|
Packit Service |
f629e6 |
AC_DEFINE([DYNAMIC], 1, [dynamic loading is possible])
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
])
|
|
Packit Service |
f629e6 |
;;
|
|
Packit Service |
f629e6 |
esac
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
if test "$enable_extensions$extensions_supported" = "yesno"
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
AC_MSG_ERROR([extension support requested, but unavailable])
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
enable_extensions=$extensions_supported
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
AM_CONDITIONAL([ENABLE_EXTENSIONS], [test "$enable_extensions" = "yes"])
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl check for how to use getpgrp
|
|
Packit Service |
f629e6 |
dnl have to hardwire it for VMS POSIX. Sigh.
|
|
Packit Service |
f629e6 |
dnl ditto for BeOS, OS/2, and MS-DOS.
|
|
Packit Service |
f629e6 |
case $host_os in
|
|
Packit Service |
f629e6 |
vms*|beos*|os2*|msdos)
|
|
Packit Service |
f629e6 |
AC_DEFINE(GETPGRP_VOID, 1,
|
|
Packit Service |
f629e6 |
[Define to 1 if the getpgrp function requires zero arguments.])
|
|
Packit Service |
f629e6 |
;;
|
|
Packit Service |
f629e6 |
*) AC_FUNC_GETPGRP
|
|
Packit Service |
f629e6 |
;;
|
|
Packit Service |
f629e6 |
esac
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl check for printf %F format
|
|
Packit Service |
f629e6 |
AC_MSG_CHECKING([for printf %F format])
|
|
Packit Service |
f629e6 |
AC_RUN_IFELSE([
|
|
Packit Service |
f629e6 |
AC_LANG_SOURCE([
|
|
Packit Service |
f629e6 |
#include <stdio.h>
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
int main()
|
|
Packit Service |
f629e6 |
{
|
|
Packit Service |
f629e6 |
char buf[[100]];
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
sprintf(buf, "%F", 123.45);
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
if (strcmp(buf, "123.450000") == 0)
|
|
Packit Service |
f629e6 |
return 0;
|
|
Packit Service |
f629e6 |
else
|
|
Packit Service |
f629e6 |
return 1;
|
|
Packit Service |
f629e6 |
}
|
|
Packit Service |
f629e6 |
])],
|
|
Packit Service |
f629e6 |
has_f_format=yes,
|
|
Packit Service |
f629e6 |
has_f_format=no,
|
|
Packit Service |
f629e6 |
has_f_format=no dnl Cross-compiling, assuming the worst.
|
|
Packit Service |
f629e6 |
)
|
|
Packit Service |
f629e6 |
if test "$has_f_format" = yes
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
AC_DEFINE(PRINTF_HAS_F_FORMAT, 1, [Define to 1 if *printf supports %F format])
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
AC_MSG_RESULT($has_f_format)
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl check for sockets
|
|
Packit Service |
f629e6 |
GAWK_AC_LIB_SOCKETS
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl check for readline support
|
|
Packit Service |
f629e6 |
GAWK_CHECK_READLINE
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl check for mpfr support
|
|
Packit Service |
f629e6 |
case `uname -m` in
|
|
Packit Service |
f629e6 |
*'Power Macintosh'*)
|
|
Packit Service |
f629e6 |
: ;;
|
|
Packit Service |
f629e6 |
*)
|
|
Packit Service |
f629e6 |
case $SKIP_MPFR in
|
|
Packit Service |
f629e6 |
no) GNUPG_CHECK_MPFR
|
|
Packit Service |
f629e6 |
;;
|
|
Packit Service |
f629e6 |
esac
|
|
Packit Service |
f629e6 |
;;
|
|
Packit Service |
f629e6 |
esac
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl checks for structure members
|
|
Packit Service |
f629e6 |
AC_CHECK_MEMBERS([struct stat.st_blksize])
|
|
Packit Service |
f629e6 |
AC_CHECK_MEMBERS([struct passwd.pw_passwd],,,[
|
|
Packit Service |
f629e6 |
#include <sys/types.h>
|
|
Packit Service |
f629e6 |
#include <pwd.h>
|
|
Packit Service |
f629e6 |
])
|
|
Packit Service |
f629e6 |
AC_CHECK_MEMBERS([struct group.gr_passwd],,,[
|
|
Packit Service |
f629e6 |
#include <sys/types.h>
|
|
Packit Service |
f629e6 |
#include <grp.h>
|
|
Packit Service |
f629e6 |
])
|
|
Packit Service |
f629e6 |
AC_STRUCT_TM
|
|
Packit Service |
f629e6 |
AC_STRUCT_TIMEZONE
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl checks for compiler characteristics
|
|
Packit Service |
f629e6 |
AC_C_CHAR_UNSIGNED
|
|
Packit Service |
f629e6 |
AC_C_CONST
|
|
Packit Service |
f629e6 |
AC_C_RESTRICT
|
|
Packit Service |
f629e6 |
AC_C_INLINE
|
|
Packit Service |
f629e6 |
AC_C_STRINGIZE
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_CONFIG_HEADERS([config.h:configh.in])
|
|
Packit Service |
f629e6 |
AH_BOTTOM([#include "custom.h"])
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
dnl Crude but small hack to make plug-ins work on Mac OS X
|
|
Packit Service |
f629e6 |
dnl We should really use the libtool value for shrext_cmds, but that
|
|
Packit Service |
f629e6 |
dnl is not available here, since we do not use libtool at the top level.
|
|
Packit Service |
f629e6 |
case $acl_shlibext in
|
|
Packit Service |
f629e6 |
dylib) GAWKLIBEXT=so ;; # MacOS uses .dylib for shared libraries, but libtool uses .so for modules
|
|
Packit Service |
f629e6 |
*) GAWKLIBEXT=$acl_shlibext ;;
|
|
Packit Service |
f629e6 |
esac
|
|
Packit Service |
f629e6 |
AC_SUBST(GAWKLIBEXT)
|
|
Packit Service |
f629e6 |
|
|
Packit Service |
f629e6 |
AC_CONFIG_FILES(Makefile
|
|
Packit Service |
f629e6 |
support/Makefile
|
|
Packit Service |
f629e6 |
awklib/Makefile
|
|
Packit Service |
f629e6 |
doc/Makefile
|
|
Packit Service |
f629e6 |
extras/Makefile
|
|
Packit Service |
f629e6 |
po/Makefile.in
|
|
Packit Service |
f629e6 |
test/Makefile)
|
|
Packit Service |
f629e6 |
if test "$enable_extensions" = "yes"
|
|
Packit Service |
f629e6 |
then
|
|
Packit Service |
f629e6 |
AC_CONFIG_SUBDIRS(extension)
|
|
Packit Service |
f629e6 |
fi
|
|
Packit Service |
f629e6 |
AC_OUTPUT
|