# This file is part of GNU Pies. -*- autoconf -*- # Copyright (C) 2009-2016 Sergey Poznyakoff # # GNU Pies is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 3, or (at your option) # any later version. # # GNU Pies is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with GNU Pies. If not, see . AC_PREREQ([2.63]) AC_INIT([GNU Pies], [1.2.92], [bug-pies@gnu.org.ua]) AC_CONFIG_SRCDIR([src/pies.h]) AC_CONFIG_AUX_DIR([build-aux]) AC_CONFIG_HEADERS([config.h]) AM_INIT_AUTOMAKE([1.11 gnits tar-ustar dist-bzip2 std-options silent-rules]) # Enable silent rules by default: AM_SILENT_RULES([yes]) # Checks for programs. AC_PROG_CC gl_EARLY AC_PROG_MAKE_SET AC_PROG_RANLIB AC_PROG_YACC AC_PROG_LEX # Checks for libraries. AC_CHECK_LIB(crypt, crypt) # Checks for header files. AC_CHECK_HEADERS([arpa/inet.h fcntl.h netdb.h netinet/in.h stdint.h stdlib.h\ string.h sys/socket.h sys/time.h syslog.h unistd.h utmp.h utmpx.h\ crypt.h shadow.h]) # Checks for typedefs, structures, and compiler characteristics. AC_TYPE_UID_T AC_TYPE_MODE_T AC_TYPE_PID_T AC_TYPE_SIZE_T AC_TYPE_SIGNAL IU_CHECK_MEMBERS([struct msghdr.msg_control, struct msghdr.msg_accrights], , , [#include #include ]) IU_CHECK_MEMBERS([struct utmp.ut_tv, struct utmp.ut_name, struct utmp.ut_user, struct utmp.ut_time, struct utmp.ut_host], , , [#include ]) if test "$ac_cv_header_utmpx_h" = yes; then IU_CHECK_MEMBERS([struct utmpx.ut_tv, struct utmpx.ut_name, struct utmpx.ut_user, struct utmpx.ut_time, struct utmpx.ut_host], , , [#include ]) fi # Checks for library functions. AC_FUNC_CHOWN AC_FUNC_FORK AC_CHECK_FUNCS([alarm dup2 gethostbyname memmove memset select setenv socket strchr strcspn strtol strtoul sysconf getdtablesize vsyslog]) # Gnulib gl_INIT # Grecs GRECS_SETUP([grecs],[tests git2chg getopt json sockaddr-list parser-meta1]) GRECS_HOST_PROJECT_INCLUDES='-I$(top_srcdir)/gnu -I$(top_builddir)/gnu' # Test for setproctitle MF_PROCTITLE # Gettext. AM_ICONV AM_GNU_GETTEXT([external], [need-formatstring-macros]) AM_GNU_GETTEXT_VERSION([0.19]) # PAM status_pam=maybe AC_ARG_ENABLE([pam], AC_HELP_STRING([--enable-pam], [enable PAM]), [ case "${enableval}" in yes) status_pam=yes ;; no) status_pam=no ;; *) AC_MSG_ERROR([bad value ${enableval} for --enable-pam]) ;; esac],[status_pam=maybe]) AC_SUBST(PAM_LIBS) if test "$status_pam" != "no"; then AC_CHECK_HEADERS(security/pam_appl.h) if test "$ac_cv_header_security_pam_appl_h" = "yes"; then AC_CHECK_LIB(dl, dlopen, [PAM_LIBS="-ldl"]) AC_CHECK_LIB(pam, pam_start, [status_pam=yes PAM_LIBS="-lpam $PAM_LIBS"], [status_pam=no], $PAM_LIBS) else status_pam=no fi fi AM_CONDITIONAL([PAM_COND], [test $status_pam = yes]) if test $status_pam = yes; then AC_DEFINE_UNQUOTED(WITH_PAM, 1, [PAM support enabled]) fi # Build inetd AC_ARG_ENABLE([inetd], AC_HELP_STRING([--enable-inetd], [build and install a replacement for SBINDIR/inetd]), [case $enableval in yes) AC_SUBST([INETD], [inetd]);; no) ;; esac]) AH_BOTTOM([ # ifndef ATTRIBUTE_NORETURN # define ATTRIBUTE_NORETURN __attribute__ ((__noreturn__)) # endif ]) AC_SUBST([DEFAULT_PIES_CONTROL_URL],['unix:///tmp/$${PIES_INSTANCE}.ctl']) AC_ARG_VAR([DEFAULT_PIES_CONTROL_URL], [URL of the default control socket]) AC_SUBST([DEFAULT_INIT_CONTROL_URL],['unix:///dev/init.ctl']) AC_ARG_VAR([DEFAULT_INIT_CONTROL_URL], [URL of the default control socket]) IMPRIMATUR_INIT AC_CONFIG_FILES([Makefile gnu/Makefile lib/Makefile src/Makefile ident/Makefile doc/Makefile po/Makefile.in]) AC_OUTPUT