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/.dummy 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)
82 dnl check wether ar can handle option -s
83 dnl if not then ranlib is needed
84 dnl for simpliticity we use ranlib every time
90 dnl check for robodoc if enabled
91 dnl ----------------------------
92 if test "$enable_auto_documentation" = yes; then
93 AC_CHECK_PROG(ROBODOC, robodoc, "robodoc", "")
94 if test "$ROBODOC" != "robodoc"; then
95 AC_MSG_ERROR(need robodoc for auto documentation (IPD: module add robodoc))
99 dnl Checks for header files.
100 dnl ========================
104 dnl check for the math header file
106 AC_CHECK_HEADERS(math.h, ac_math_headers="yes", ac_math_headers="no")
107 if test "$ac_math_headers" != yes; then
108 dnl math header not found.
109 AC_MSG_ERROR("math header file not found")
113 dnl check for the gnu multiprecission (gmp) header file
115 AC_CHECK_HEADERS(gmp.h, ac_gmp_headers="yes", ac_gmp_headers="no")
116 if test "$ac_gmp_headers" != yes; then
117 dnl gmp header not found.
118 AC_MSG_ERROR("GNU multiprecission gmp header file not found")
122 dnl check for the obstack header file
124 AC_CHECK_HEADERS(obstack.h, ac_obstack_headers="yes", ac_obstack_headers="no")
125 if test "$ac_obstack_headers" != yes; then
126 dnl obstack header not found.
127 AC_MSG_ERROR("obstack header file not found")
131 dnl Checks for libraries.
132 dnl =====================
134 dnl check for the gnu multiprecission (gmp) library
136 AC_CHECK_LIB(gmp, main, ac_gmp_library="yes", ac_gmp_library="no")
137 if test "$ac_gmp_library" != yes; then
138 dnl gmp library not found.
139 AC_MSG_ERROR("GNU multiprecission gmp library not found")
143 AC_CHECK_LIB(m, main, ac_m_library="yes", ac_m_library="no")
144 if test "$ac_m_library" != yes; then
145 dnl std math library not found.
146 AC_MSG_ERROR("standard math library not found")
150 dnl Checks for typedefs, structures, and compiler characteristics.
151 dnl ==============================================================
154 dnl Checks for library functions.
155 dnl =============================
157 dnl check for strerror
159 AC_CHECK_FUNC(strerror,,
160 AC_MSG_ERROR("need strerror function")
168 AC_OUTPUT($ac_output_file,[ touch stamp-h ])