]> eyrie.org Git - kerberos/krb5-strength.git/blob - configure.ac
Bump actions/checkout from 2 to 4
[kerberos/krb5-strength.git] / configure.ac
1 dnl Process this file with autoconf to produce a configure script.
2 dnl
3 dnl Written by Russ Allbery <eagle@eyrie.org>
4 dnl Copyright 2016, 2020, 2023 Russ Allbery <eagle@eyrie.org>
5 dnl Copyright 2006-2007, 2009-2010, 2012-2014
6 dnl     The Board of Trustees of the Leland Stanford Junior University
7 dnl
8 dnl SPDX-License-Identifier: MIT
9
10 dnl Basic Autoconf configuration.
11 AC_PREREQ([2.64])
12 AC_INIT([krb5-strength], [3.2], [eagle@eyrie.org])
13 AC_CONFIG_AUX_DIR([build-aux])
14 AC_CONFIG_LIBOBJ_DIR([portable])
15 AC_CONFIG_MACRO_DIR([m4])
16 AM_INIT_AUTOMAKE([1.11 check-news dist-xz foreign silent-rules subdir-objects
17     -Wall -Werror])
18 AM_MAINTAINER_MODE
19
20 dnl Detect unexpanded macros.
21 m4_pattern_forbid([^PKG_])
22 m4_pattern_forbid([^_?RRA_])
23
24 dnl Probe for basic build system tools.
25 AC_PROG_CC
26 AC_USE_SYSTEM_EXTENSIONS
27 RRA_PROG_CC_WARNINGS_FLAGS
28 AC_SYS_LARGEFILE
29 AM_PROG_CC_C_O
30 m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
31 AC_PROG_INSTALL
32 AC_DISABLE_STATIC
33 LT_INIT
34
35 dnl Only used for the test suite.
36 AC_PATH_PROG([PATH_VALGRIND], [valgrind])
37
38 dnl External libraries.
39 RRA_LIB_CDB_OPTIONAL
40 RRA_LIB_CRACKLIB
41 RRA_LIB_KRB5
42 RRA_LIB_KRB5_SWITCH
43 AC_CHECK_HEADERS([krb5/pwqual_plugin.h], [], [], [RRA_INCLUDES_KRB5])
44 AC_CHECK_TYPES([krb5_realm], [], [], [RRA_INCLUDES_KRB5])
45 AC_CHECK_FUNCS([krb5_free_default_realm \
46     krb5_free_string \
47     krb5_get_init_creds_opt_alloc \
48     krb5_get_init_creds_opt_set_default_flags \
49     krb5_principal_get_realm \
50     krb5_xfree])
51 AC_CHECK_FUNCS([krb5_get_init_creds_opt_free],
52     [RRA_FUNC_KRB5_GET_INIT_CREDS_OPT_FREE_ARGS])
53 AC_CHECK_DECLS([krb5_kt_free_entry], [], [], [RRA_INCLUDES_KRB5])
54 AC_CHECK_FUNCS([krb5_appdefault_string], [],
55     [AC_CHECK_FUNCS([krb5_get_profile])
56      AC_CHECK_HEADERS([k5profile.h profile.h])
57      AC_LIBOBJ([krb5-profile])])
58 AC_LIBOBJ([krb5-extra])
59 AC_CHECK_HEADERS([kadm5/kadm5-pwcheck.h kadm5/kadm5_err.h], [], [],
60     [RRA_INCLUDES_KRB5])
61 RRA_LIB_KRB5_RESTORE
62 RRA_LIB_SQLITE3_OPTIONAL
63
64 dnl Probe for libdl, which is used for the test suite.
65 save_LIBS="$LIBS"
66 AC_SEARCH_LIBS([dlopen], [dl], [DL_LIBS="$LIBS"])
67 LIBS="$save_LIBS"
68 AC_SUBST([DL_LIBS])
69
70 dnl Checks for basic C functionality.
71 AC_HEADER_STDBOOL
72 AC_CHECK_HEADERS([strings.h sys/bittypes.h sys/select.h sys/time.h syslog.h])
73 AC_CHECK_DECLS([reallocarray])
74 RRA_C_C99_VAMACROS
75 RRA_C_GNU_VAMACROS
76 AC_TYPE_LONG_LONG_INT
77 AC_TYPE_UINT8_T
78 AC_TYPE_UINT16_T
79 AC_TYPE_UINT32_T
80 AC_CHECK_TYPES([ssize_t], [], [],
81     [#include <sys/types.h>])
82 AC_CHECK_FUNCS([explicit_bzero setrlimit])
83 AC_REPLACE_FUNCS([asprintf mkstemp reallocarray strndup])
84
85 dnl Write out the results.
86 AC_CONFIG_FILES([Makefile])
87 AC_CONFIG_HEADERS([config.h])
88 AC_OUTPUT