Autotools all the things!
[librseq.git] / configure.ac
CommitLineData
2cbca301
MJ
1# SPDX-License-Identifier: MIT
2#
3# Copyright (C) 2019 Michael Jeanson <mjeanson@efficios.com>
4#
5
6AC_PREREQ(2.59)
7AC_INIT([librseq],[0.1.0-pre],[mathieu dot desnoyers at efficios dot com], [], [https://github.com/compudj/librseq/])
8
9# Following the numbering scheme proposed by libtool for the library version
10# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
11AC_SUBST([RSEQ_LIBRARY_VERSION], [0:0:0])
12
13AC_CONFIG_HEADERS([include/config.h])
14AC_CONFIG_AUX_DIR([config])
15AC_CONFIG_MACRO_DIR([m4])
16
17AC_CANONICAL_TARGET
18AC_CANONICAL_HOST
19
20AM_INIT_AUTOMAKE([foreign dist-bzip2 no-dist-gzip nostdinc])
21AM_MAINTAINER_MODE([enable])
22
23# Enable silent rules if available (Introduced in AM 1.11)
24m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
25
26AC_REQUIRE_AUX_FILE([tap-driver.sh])
27
28# Checks for C compiler
29AC_USE_SYSTEM_EXTENSIONS
30AC_PROG_CC
31AC_PROG_CC_STDC
32AC_PROG_CXX
33
34# Checks for programs.
35AC_PROG_AWK
36AC_PROG_MAKE_SET
37
38LT_INIT
39
40# Checks for typedefs, structures, and compiler characteristics.
41AC_C_INLINE
42AC_TYPE_INT32_T
43AC_TYPE_INT64_T
44AC_TYPE_OFF_T
45AC_TYPE_SIZE_T
46AC_TYPE_UINT32_T
47AC_TYPE_UINT64_T
48
49AX_C___ATTRIBUTE__
50AS_IF([test "x$ax_cv___attribute__" = "xyes"],
51 [:],
52 [AC_MSG_ERROR([The compiler does not support __attribute__ extensions])])
53
54AX_PTHREAD(,[AC_MSG_ERROR([Could not configure pthreads support])])
55
56AM_CFLAGS="$AM_CFLAGS $PTHREAD_CFLAGS"
57
58# Checks for library functions.
59AC_FUNC_MMAP
60AC_FUNC_FORK
61AC_CHECK_FUNCS([ \
62 memset \
63 strerror \
64])
65
66# AC_FUNC_MALLOC causes problems when cross-compiling.
67#AC_FUNC_MALLOC
68
69# Check for headers
70AC_HEADER_STDBOOL
71AC_CHECK_HEADERS([ \
72 limits.h \
73 stddef.h \
74])
75
76AC_CHECK_HEADER([linux/rseq.h])
77AS_IF([test "x${ac_cv_header_linux_rseq_h}" != "xyes"], [
78 AC_MSG_ERROR([Cannot find 'linux/rseq.h'.])
79])
80
81AC_CHECK_HEADER([linux/cpu_opv.h])
82AH_TEMPLATE([HAVE_CPU_OPV], [Defined to 1 if we have cpu_opv headers.])
83AS_IF([test "x${ac_cv_header_linux_cpu_opv_h}" = "xyes"], [
84 AC_DEFINE(HAVE_CPU_OPV, 1)
85])
86AM_CONDITIONAL([HAVE_CPU_OPV], [test "x${ac_cv_header_linux_cpu_opv_h}" = "xyes"])
87
88AM_CPPFLAGS="-include config.h"
89AC_SUBST(AM_CPPFLAGS)
90
91AM_CFLAGS="-Wall -Wextra $AM_CFLAGS"
92AC_SUBST(AM_CFLAGS)
93
94AC_CONFIG_FILES([
95 Makefile
96 include/Makefile
97 src/Makefile
98 tests/Makefile
99 src/librseq.pc
100])
101
102AC_OUTPUT
This page took 0.026979 seconds and 4 git commands to generate.