blob: 84295520fe32095f291bfee3272a10dfa1dad2ff [file] [log] [blame]
mmentovai7daf2462006-09-20 21:16:16 +00001# Copyright (c) 2006, Google Inc.
2# 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
thestig@chromium.org43e6db72010-11-08 19:49:41 +000033AC_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)
42
digit@chromium.org979d8f42012-08-31 18:38:29 +000043AM_PROG_AS
brynercb91a2f2006-08-25 21:14:45 +000044AC_PROG_CC
ted.mielczarekd192a712010-10-05 19:38:51 +000045AM_PROG_CC_C_O
brynercb91a2f2006-08-25 21:14:45 +000046AC_PROG_CPP
47AC_PROG_CXX
ted.mielczarekd192a712010-10-05 19:38:51 +000048AC_PROG_RANLIB
ivan.penkov@gmail.comb7323422012-07-02 22:55:57 +000049AM_CONDITIONAL(GCC, test "$GCC" = yes) # let the Makefile know if we're gcc
brynercb91a2f2006-08-25 21:14:45 +000050
brynercb91a2f2006-08-25 21:14:45 +000051AC_HEADER_STDC
nealsidde545c02010-03-02 00:39:48 +000052m4_include(m4/ax_pthread.m4)
53AX_PTHREAD
ted.mielczarekdbf409c2011-02-28 14:05:22 +000054AC_CHECK_HEADERS([a.out.h])
nealsidde545c02010-03-02 00:39:48 +000055
ted.mielczarek53a8b1a2010-08-31 15:09:01 +000056# Only build Linux client libs when compiling for Linux
57case $host in
digit@chromium.orged581672012-08-21 14:34:48 +000058 *-*-linux* | *-android* )
59 LINUX_HOST=true
60 ;;
ted.mielczarek53a8b1a2010-08-31 15:09:01 +000061esac
62AM_CONDITIONAL(LINUX_HOST, test x$LINUX_HOST = xtrue)
63
digit@chromium.orged581672012-08-21 14:34:48 +000064# Only use Android support headers when compiling for Android
65case $host in
66 *-android*)
67 ANDROID_HOST=true
68 ;;
69esac
70AM_CONDITIONAL(ANDROID_HOST, test x$ANDROID_HOST = xtrue)
71
nealsidde545c02010-03-02 00:39:48 +000072AC_ARG_ENABLE(m32,
73 AS_HELP_STRING([--enable-m32],
74 [Compile/build with -m32]
75 [(default is no)]),
76 [case "${enableval}" in
77 yes)
thestig@chromium.orgc40bcc72010-09-16 23:29:13 +000078 CFLAGS="${CFLAGS} -m32"
79 CXXFLAGS="${CXXFLAGS} -m32"
nealsidde545c02010-03-02 00:39:48 +000080 usem32=true
81 ;;
82 no)
83 usem32=false
84 ;;
85 *)
86 AC_MSG_ERROR(bad value ${enableval} for --enable-m32)
87 ;;
88 esac],
89 [usem32=false])
brynercb91a2f2006-08-25 21:14:45 +000090
ted.mielczareke574a2a2010-10-05 19:38:22 +000091AC_ARG_ENABLE(processor,
92 AS_HELP_STRING([--disable-processor],
93 [Don't build processor library]
94 [(default is no)]),
95 [case "${enableval}" in
96 yes)
97 disable_processor=false
98 ;;
99 no)
100 disable_processor=true
101 ;;
102 *)
103 AC_MSG_ERROR(bad value ${enableval} for --disable-processor)
104 ;;
105 esac],
106 [disable_processor=false])
107AM_CONDITIONAL(DISABLE_PROCESSOR, test x$disable_processor = xtrue)
108
ted.mielczarekdbf409c2011-02-28 14:05:22 +0000109AC_ARG_ENABLE(tools,
110 AS_HELP_STRING([--disable-tools],
111 [Don't build tool binaries]
112 [(default is no)]),
113 [case "${enableval}" in
114 yes)
115 disable_tools=false
116 ;;
117 no)
118 disable_tools=true
119 ;;
120 *)
121 AC_MSG_ERROR(bad value ${enableval} for --disable-tools)
122 ;;
123 esac],
124 [disable_tools=false])
125AM_CONDITIONAL(DISABLE_TOOLS, test x$disable_tools = xtrue)
126
127if test x$LINUX_HOST = xfalse -a x$disable_processor = xtrue -a x$disable_tools = xtrue; then
128 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 +0000129fi
130
mmentovai0dbedc92006-09-25 21:16:15 +0000131AC_ARG_ENABLE(selftest,
132 AS_HELP_STRING([--enable-selftest],
133 [Run extra tests with "make check" ]
134 [(may conflict with optimizations) ]
135 [(default is no)]),
136 [case "${enableval}" in
137 yes)
138 selftest=true
139 ;;
140 no)
141 selftest=false
142 ;;
143 *)
144 AC_MSG_ERROR(bad value ${enableval} for --enable-selftest)
145 ;;
146 esac],
147 [selftest=false])
148AM_CONDITIONAL(SELFTEST, test x$selftest = xtrue)
149
brynercb91a2f2006-08-25 21:14:45 +0000150AC_CONFIG_FILES([Makefile])
151AC_OUTPUT