blob: 8c02f519a3a143961ac1f919bf704a56eae3333b [file] [log] [blame]
Mike Frysinger91cb84e2015-05-28 04:11:01 -04001# Copyright (c) 2006, Google Inc.
mmentovai7daf2462006-09-20 21:16:16 +00002# All rights reserved.
3#
4# Redistribution and use in source and binary forms, with or without
5# modification, are permitted provided that the following conditions are
6# met:
7#
8# * Redistributions of source code must retain the above copyright
9# notice, this list of conditions and the following disclaimer.
10# * Redistributions in binary form must reproduce the above
11# copyright notice, this list of conditions and the following disclaimer
12# in the documentation and/or other materials provided with the
13# distribution.
14# * Neither the name of Google Inc. nor the names of its
15# contributors may be used to endorse or promote products derived from
16# this software without specific prior written permission.
17#
18# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
19# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
20# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
21# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
22# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
23# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
24# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
25# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
26# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
28# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
mmentovai425d2562006-08-30 20:05:05 +000029
30
brynercb91a2f2006-08-25 21:14:45 +000031AC_PREREQ(2.57)
32
Mike Frysinger3b8d8c02013-08-15 20:17:54 -040033AC_INIT(breakpad, 0.1, google-breakpad-dev@googlegroups.com)
mmentovai425d2562006-08-30 20:05:05 +000034dnl Sanity check: the argument is just a file that should exist.
brynercb91a2f2006-08-25 21:14:45 +000035AC_CONFIG_SRCDIR(README)
mmentovai425d2562006-08-30 20:05:05 +000036AC_CONFIG_AUX_DIR(autotools)
ted.mielczarek53a8b1a2010-08-31 15:09:01 +000037AC_CONFIG_MACRO_DIR([m4])
38AC_CANONICAL_HOST
mmentovai425d2562006-08-30 20:05:05 +000039
jimblandy71f75802010-02-11 19:31:48 +000040AM_INIT_AUTOMAKE(subdir-objects tar-ustar 1.11.1)
brynercb91a2f2006-08-25 21:14:45 +000041AM_CONFIG_HEADER(src/config.h)
ted.mielczarek@gmail.com67ce33b2013-12-10 12:28:11 +000042AM_MAINTAINER_MODE
brynercb91a2f2006-08-25 21:14:45 +000043
digit@chromium.org979d8f42012-08-31 18:38:29 +000044AM_PROG_AS
brynercb91a2f2006-08-25 21:14:45 +000045AC_PROG_CC
ted.mielczarekd192a712010-10-05 19:38:51 +000046AM_PROG_CC_C_O
brynercb91a2f2006-08-25 21:14:45 +000047AC_PROG_CPP
48AC_PROG_CXX
ted.mielczarekd192a712010-10-05 19:38:51 +000049AC_PROG_RANLIB
ivan.penkov@gmail.comb7323422012-07-02 22:55:57 +000050AM_CONDITIONAL(GCC, test "$GCC" = yes) # let the Makefile know if we're gcc
brynercb91a2f2006-08-25 21:14:45 +000051
vapier@chromium.org597e2a72013-12-10 06:28:08 +000052dnl This must come before all the feature tests below.
53AC_ARG_ENABLE(m32,
54 AS_HELP_STRING([--enable-m32],
55 [Compile/build with -m32]
56 [(default is no)]),
57 [case "${enableval}" in
58 yes)
59 CFLAGS="${CFLAGS} -m32"
60 CXXFLAGS="${CXXFLAGS} -m32"
61 usem32=true
62 ;;
63 no)
64 usem32=false
65 ;;
66 *)
67 AC_MSG_ERROR(bad value ${enableval} for --enable-m32)
68 ;;
69 esac],
70 [usem32=false])
71
brynercb91a2f2006-08-25 21:14:45 +000072AC_HEADER_STDC
vapier@chromium.org597e2a72013-12-10 06:28:08 +000073AC_SYS_LARGEFILE
nealsidde545c02010-03-02 00:39:48 +000074m4_include(m4/ax_pthread.m4)
75AX_PTHREAD
ted.mielczarekdbf409c2011-02-28 14:05:22 +000076AC_CHECK_HEADERS([a.out.h])
nealsidde545c02010-03-02 00:39:48 +000077
ted.mielczarek53a8b1a2010-08-31 15:09:01 +000078# Only build Linux client libs when compiling for Linux
79case $host in
digit@chromium.orged581672012-08-21 14:34:48 +000080 *-*-linux* | *-android* )
81 LINUX_HOST=true
82 ;;
ted.mielczarek53a8b1a2010-08-31 15:09:01 +000083esac
84AM_CONDITIONAL(LINUX_HOST, test x$LINUX_HOST = xtrue)
85
digit@chromium.orged581672012-08-21 14:34:48 +000086# Only use Android support headers when compiling for Android
87case $host in
88 *-android*)
89 ANDROID_HOST=true
90 ;;
91esac
92AM_CONDITIONAL(ANDROID_HOST, test x$ANDROID_HOST = xtrue)
93
ted.mielczareke574a2a2010-10-05 19:38:22 +000094AC_ARG_ENABLE(processor,
95 AS_HELP_STRING([--disable-processor],
96 [Don't build processor library]
97 [(default is no)]),
98 [case "${enableval}" in
99 yes)
100 disable_processor=false
101 ;;
102 no)
103 disable_processor=true
104 ;;
105 *)
106 AC_MSG_ERROR(bad value ${enableval} for --disable-processor)
107 ;;
108 esac],
109 [disable_processor=false])
110AM_CONDITIONAL(DISABLE_PROCESSOR, test x$disable_processor = xtrue)
111
ted.mielczarekdbf409c2011-02-28 14:05:22 +0000112AC_ARG_ENABLE(tools,
113 AS_HELP_STRING([--disable-tools],
114 [Don't build tool binaries]
115 [(default is no)]),
116 [case "${enableval}" in
117 yes)
118 disable_tools=false
119 ;;
120 no)
121 disable_tools=true
122 ;;
123 *)
124 AC_MSG_ERROR(bad value ${enableval} for --disable-tools)
125 ;;
126 esac],
127 [disable_tools=false])
128AM_CONDITIONAL(DISABLE_TOOLS, test x$disable_tools = xtrue)
129
130if test x$LINUX_HOST = xfalse -a x$disable_processor = xtrue -a x$disable_tools = xtrue; then
131 AC_MSG_ERROR([--disable-processor and --disable-tools were specified, and not building for Linux. Nothing to build!])
ted.mielczareke574a2a2010-10-05 19:38:22 +0000132fi
133
mmentovai0dbedc92006-09-25 21:16:15 +0000134AC_ARG_ENABLE(selftest,
135 AS_HELP_STRING([--enable-selftest],
136 [Run extra tests with "make check" ]
137 [(may conflict with optimizations) ]
138 [(default is no)]),
139 [case "${enableval}" in
140 yes)
141 selftest=true
142 ;;
143 no)
144 selftest=false
145 ;;
146 *)
147 AC_MSG_ERROR(bad value ${enableval} for --enable-selftest)
148 ;;
149 esac],
150 [selftest=false])
151AM_CONDITIONAL(SELFTEST, test x$selftest = xtrue)
152
vapier@chromium.orgbf15d7e2014-08-27 02:10:55 +0000153AC_CONFIG_FILES(m4_flatten([
154 breakpad.pc
155 breakpad-client.pc
156 Makefile
157]))
158
brynercb91a2f2006-08-25 21:14:45 +0000159AC_OUTPUT