1 dnl Process this file with autoconf to produce a configure script.
2 dnl Copyright (c) 2001 IPD, Universität Karlsruhe (TH)
10 AC_INIT(ir/ir/ircons.c)
12 dnl if other files should be generated just add them to ac_output_files
13 ac_output_file="Makefile MakeRules ir/Makefile ir/adt/Makefile ir/debug/Makefile \
14 ir/tv/Makefile ir/common/Makefile ir/ident/Makefile ir/ir/Makefile \
15 ir/tr/Makefile testprograms/Makefile"
17 dnl generate the config header file
18 AC_CONFIG_HEADER(config.h)
20 dnl keep track of the environment set by the user
21 libfirm_conf_env="${CC+CC='$CC'} ${CFLAGS+CFLAGS='$CFLAGS'} ${CPP+CPP='$CPP'} ${CPPFLAGS+CPPFLAGS='$CPPFLAGS'} ${LDFLAGS+LDFLAGS='$LDFLAGS'} ${LIBS+LIBS='$LIBS'}"
22 AC_SUBST(libfirm_conf_env)
31 [ --enable-debug enable assertions and additional debugging routines],
32 [if test "$enableval" = yes; then
33 AC_DEFINE(DEBUG_libfirm)
37 AC_SUBST(enable_debug_libfirm)
42 AC_ARG_ENABLE(profile,
43 [ --enable-profile enable profiling],
44 [if test "$enableval"=yes; then
45 enable_profile_libfirm=yes
47 [enable_profile_libfirm=no])
48 AC_SUBST(enable_profile_libfirm)
50 dnl set auto documentation
51 dnl ----------------------
52 AC_ARG_ENABLE(autodoc,
53 [ --enable-autodoc enable auto documentation],
54 [if test "$enableval"=yes; then
55 enable_auto_documentation=yes
57 [enable_auto_documentation=no])
58 AC_SUBST(enable_auto_documentation)
61 dnl Checks for programs.
62 dnl ====================
64 dnl check for a C compiler
65 dnl ----------------------
68 dnl check for prelinkable linker
69 dnl ----------------------------
71 if test "$libfirm_cv_prog_ld_r" != "yes"; then
72 AC_MSG_ERROR(need a prelinkcapable linker)
77 AC_CHECK_PROG(AR, ar, "ar", "")
78 if test "$AR" != "ar"; then
79 AC_MSG_ERROR(need ar for creating archives)
84 AC_CHECK_PROG(TAR, tar, "tar", "")
85 if test "$TAR" != "tar"; then
86 AC_MSG_ERROR(need tar for creating archives in distribution)
89 dnl check wether ar can handle option -s
90 dnl if not then ranlib is needed
91 dnl for simpliticity we use ranlib every time
97 dnl check for robodoc if enabled
98 dnl ----------------------------
99 if test "$enable_auto_documentation" = yes; then
100 AC_CHECK_PROG(ROBODOC, robodoc, "robodoc", "")
101 if test "$ROBODOC" != "robodoc"; then
102 AC_MSG_ERROR(need robodoc for auto documentation (IPD: module add robodoc))
106 dnl Checks for header files.
107 dnl ========================
111 dnl check for the math header file
113 AC_CHECK_HEADERS(math.h, ac_math_headers="yes", ac_math_headers="no")
114 if test "$ac_math_headers" != yes; then
115 dnl math header not found.
116 AC_MSG_ERROR("math header file not found")
120 dnl check for the gnu multiprecission (gmp) header file
122 AC_CHECK_HEADERS(gmp.h, ac_gmp_headers="yes", ac_gmp_headers="no")
123 if test "$ac_gmp_headers" != yes; then
124 dnl gmp header not found.
125 AC_MSG_ERROR("GNU multiprecission gmp header file not found")
129 dnl check for the obstack header file
131 AC_CHECK_HEADERS(obstack.h, ac_obstack_headers="yes", ac_obstack_headers="no")
132 if test "$ac_obstack_headers" != yes; then
133 dnl obstack header not found.
134 AC_MSG_ERROR("obstack header file not found")
138 dnl Checks for libraries.
139 dnl =====================
141 dnl check for the gnu multiprecission (gmp) library
143 AC_CHECK_LIB(gmp, main, ac_gmp_library="yes", ac_gmp_library="no")
144 if test "$ac_gmp_library" != yes; then
145 dnl gmp library not found.
146 AC_MSG_ERROR("GNU multiprecission gmp library not found")
150 AC_CHECK_LIB(m, main, ac_m_library="yes", ac_m_library="no")
151 if test "$ac_m_library" != yes; then
152 dnl std math library not found.
153 AC_MSG_ERROR("standard math library not found")
157 dnl Checks for typedefs, structures, and compiler characteristics.
158 dnl ==============================================================
161 dnl Checks for library functions.
162 dnl =============================
164 dnl check for strerror
166 AC_CHECK_FUNC(strerror,,
167 AC_MSG_ERROR("need strerror function")
175 AC_OUTPUT($ac_output_file,[ touch stamp-h ])