Don't just assume that either uint64_t or u_int64_t is available. Instead,
[oota-llvm.git] / autoconf / configure.ac
1 dnl Initialize autoconf
2 AC_INIT([[LLVM]],[[1.4]],[llvmbugs@cs.uiuc.edu])
3
4 dnl Place all of the extra autoconf files into the config subdirectory
5 AC_CONFIG_AUX_DIR([autoconf])
6
7 dnl Quit if the source directory has already been configured.
8 dnl NOTE: This relies upon undocumented autoconf behavior.
9 if test ${srcdir} != "."
10 then
11         if test -f ${srcdir}/include/llvm/Config/config.h
12         then
13                 AC_MSG_ERROR([Already configured in ${srcdir}])
14         fi
15 fi
16
17 dnl Configure all of the projects present in our source tree.
18 for i in `ls ${srcdir}/projects`
19 do
20   if test ${i} != "CVS"
21   then
22     if test -f ${srcdir}/projects/${i}/configure
23     then
24       AC_CONFIG_SUBDIRS(projects/${i})
25     fi
26   fi
27 done
28
29 dnl Configure header files
30 AC_CONFIG_HEADERS(include/llvm/Config/config.h)
31
32 dnl Configure other output file
33 AC_CONFIG_FILES(Makefile.config
34  include/llvm/Support/DataTypes.h
35  include/llvm/Support/ThreadSupport.h
36  include/llvm/ADT/hash_map
37  include/llvm/ADT/hash_set
38  include/llvm/ADT/iterator)
39
40 dnl Do special configuration of Makefiles
41 AC_CONFIG_MAKEFILE(Makefile)
42 AC_CONFIG_MAKEFILE(Makefile.common)
43 AC_CONFIG_MAKEFILE(examples/Makefile)
44 AC_CONFIG_MAKEFILE(lib/Makefile)
45 AC_CONFIG_MAKEFILE(runtime/Makefile)
46 AC_CONFIG_MAKEFILE(test/Makefile)
47 AC_CONFIG_MAKEFILE(test/Makefile.tests)
48 AC_CONFIG_MAKEFILE(test/QMTest/llvm.py)
49 AC_CONFIG_MAKEFILE(test/QMTest/llvmdb.py)
50 AC_CONFIG_MAKEFILE(test/Programs/Makefile)
51 AC_CONFIG_MAKEFILE(test/Programs/Makefile.programs)
52 AC_CONFIG_MAKEFILE(test/Programs/Makefile.tests)
53 AC_CONFIG_MAKEFILE(test/Programs/TEST.aa.Makefile)
54 AC_CONFIG_MAKEFILE(test/Programs/TEST.dsgraph.report)
55 AC_CONFIG_MAKEFILE(test/Programs/TEST.aa.report)
56 AC_CONFIG_MAKEFILE(test/Programs/TEST.example.Makefile)
57 AC_CONFIG_MAKEFILE(test/Programs/TEST.nightly.Makefile)
58 AC_CONFIG_MAKEFILE(test/Programs/TEST.buildrepo.Makefile)
59 AC_CONFIG_MAKEFILE(test/Programs/TEST.jit.Makefile)
60 AC_CONFIG_MAKEFILE(test/Programs/TEST.nightly.report)
61 AC_CONFIG_MAKEFILE(test/Programs/TEST.dsgraph.Makefile)
62 AC_CONFIG_MAKEFILE(test/Programs/TEST.jit.report)
63 AC_CONFIG_MAKEFILE(test/Programs/TEST.typesafe.Makefile)
64 AC_CONFIG_MAKEFILE(test/Programs/TEST.dsgraph.gnuplot)
65 AC_CONFIG_MAKEFILE(test/Programs/TEST.vtl.Makefile)
66 AC_CONFIG_MAKEFILE(test/Programs/External/Makefile)
67 AC_CONFIG_MAKEFILE(test/Programs/External/SPEC/Makefile)
68 AC_CONFIG_MAKEFILE(test/Programs/External/SPEC/Makefile.spec)
69 AC_CONFIG_MAKEFILE(test/Programs/External/SPEC/Makefile.spec2000)
70 AC_CONFIG_MAKEFILE(test/Programs/External/SPEC/Makefile.spec95)
71 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Makefile)
72 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Makefile.multisrc)
73 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/analyzer/test.in)
74 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/distray/Makefile)
75 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/distray/test.in)
76 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/fourinarow/Makefile)
77 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/fourinarow/test.in)
78 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/mason/Makefile)
79 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/mason/test.in)
80 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/neural/Makefile)
81 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/neural/test.in)
82 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/pcompress2/Makefile)
83 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/pcompress2/test.in)
84 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/pifft/Makefile)
85 AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/pifft/test.in)
86 AC_CONFIG_MAKEFILE(test/Programs/SingleSource/Makefile)
87 AC_CONFIG_MAKEFILE(test/Programs/SingleSource/Makefile.singlesrc)
88 AC_CONFIG_MAKEFILE(test/Programs/SingleSource/UnitTests/SetjmpLongjmp/Makefile)
89 AC_CONFIG_MAKEFILE(tools/Makefile)
90 AC_CONFIG_MAKEFILE(utils/Makefile)
91 AC_CONFIG_MAKEFILE(projects/Makefile)
92
93 dnl Find the install program (needs to be done before canonical stuff)
94 AC_PROG_INSTALL
95
96 dnl Check which host for which we're compiling.  This will tell us which LLVM
97 dnl compiler will be used for compiling SSA into object code.
98 AC_CANONICAL_TARGET
99
100 dnl Set the "OS" Makefile variable based on the system we are building on.
101 dnl We will use the build machine information to set some variables.
102
103 AC_MSG_CHECKING([support for generic build operating system])
104 case $build in
105         *-*-aix*)
106              AC_SUBST(OS,[AIX])
107              platform_type="AIX"
108              ;;
109         *-*-cygwin*)
110              AC_SUBST(OS,[Cygwin])
111              platform_type="Cygwin"
112              ;;
113         *-*-darwin*)
114              AC_SUBST(OS,[Darwin])
115              platform_type="Darwin"
116              ;;
117         *-*-freebsd*)
118              AC_SUBST(OS,[Linux])
119              platform_type="FreeBSD"
120              ;;
121         *-*-interix*)
122              AC_SUBST(OS,[SunOS])
123              platform_type="Interix"
124              ;;
125         *-*-linux*)
126              AC_SUBST(OS,[Linux])
127              platform_type="Linux"
128              if test -d /home/vadve/lattner/local/x86/llvm-gcc
129              then
130                AC_SUBST(LLVMGCCDIR,[/home/vadve/lattner/local/x86/llvm-gcc/])
131              fi
132              ;;
133         *-*-solaris*)
134              AC_SUBST(OS,[SunOS])
135              platform_type="SunOS"
136              if test -d /home/vadve/lattner/local/sparc/llvm-gcc
137              then
138                AC_SUBST(LLVMGCCDIR,[/home/vadve/lattner/local/sparc/llvm-gcc/])
139              fi
140              ;;
141         *-*-win32*)
142              AC_SUBST(OS,[Win32])
143              platform_type="Win32"
144              ;;
145         *)   
146              AC_SUBST(OS,[Unknown])
147              platform_type="Unknown"
148              ;;
149 esac
150
151 dnl Make sure we aren't attempting to configure for an unknown system
152 if test "$platform_type" = "Unknown" ; then
153   AC_MSG_ERROR([Platform is unknown, configure can't continue])
154 fi
155
156 dnl Make a link from lib/System/platform to lib/System/$platform_type
157 dnl This helps the #inclusion of the system specific include files
158 dnl for the operating system abstraction library
159 AC_CONFIG_LINKS(lib/System/platform:lib/System/$platform_type)
160
161 AC_MSG_RESULT($platform_type)
162
163 AC_MSG_CHECKING(target architecture)
164 dnl If we are targetting a Sparc machine running Solaris, pretend that it is
165 dnl V9, since that is all that we support at the moment, and autoconf will only
166 dnl tell us we're a sparc.
167 case $target in
168         sparc*-*-solaris*)  AC_SUBST(target,[[sparcv9-sun-solaris2.8]])
169                             ;;
170 esac
171
172 dnl Determine what our target architecture is and configure accordingly.
173 dnl This will allow Makefiles to make a distinction between the hardware and
174 dnl the OS.
175 case $target in
176         i*86-*)       
177           ARCH="x86"
178           AC_SUBST(ARCH,[x86])
179           ;;
180         sparc*-*)         
181           ARCH="Sparc"
182           AC_SUBST(ARCH,[Sparc])
183           ;;
184         powerpc*-*)       
185           ARCH="PowerPC"
186           AC_SUBST(ARCH,[PowerPC])
187           ;;
188         *)                
189           ARCH="Unknown"
190           AC_SUBST(ARCH,[Unknown])
191           ;;
192 esac
193
194 AC_MSG_RESULT($ARCH)
195
196 dnl Check for compilation tools
197 AC_PROG_CXX
198 AC_PROG_CC(gcc)
199 AC_PROG_CPP
200
201 dnl Ensure that compilation tools are GCC; we use GCC specific extensions
202 if test "$GCC" != "yes"
203 then
204         AC_MSG_ERROR([gcc required but not found])
205 fi
206 if test "$GXX" != "yes"
207 then
208         AC_MSG_ERROR([g++ required but not found])
209 fi
210
211 dnl Verify that GCC is version 3.0 or higher
212 gccmajor=`$CC --version | head -n 1 | awk '{print $NF;}' | cut -d. -f1`
213 if test "$gccmajor" -lt "3"
214 then
215         AC_MSG_ERROR([gcc 3.x required, but you have a lower version])
216 fi
217
218 dnl Check for GNU Make.  We use its extensions too, so don't build without it
219 CHECK_GNU_MAKE
220 if test -z "$_cv_gnu_make_command"
221 then
222         AC_MSG_ERROR([GNU Make required but not found])
223 fi
224
225 dnl Checks for other tools
226 AC_PROG_FLEX
227 AC_PROG_BISON
228 AC_PROG_LIBTOOL
229
230 dnl Checks for tools we can get away with not having:
231 AC_PATH_PROG(DOT,[dot],[true dot])
232 AC_PATH_PROG(ETAGS,[etags],[true etags])
233 dnl Check if we know how to tell etags we are using C++:
234 etags_version=`$ETAGS --version 2>&1`
235 case "$etags_version" in
236         *[Ee]xuberant*) ETAGSFLAGS="--language-force=c++" ;;
237         *GNU\ Emacs*) ETAGSFLAGS="-l c++" ;;
238         *) ETAGSFLAGS="" ;;
239 esac
240 AC_SUBST(ETAGSFLAGS,$ETAGSFLAGS)
241 AC_PATH_PROG(PYTHON,[python],[true python])
242 if test "$PYTHON" = "false"
243 then
244         AC_MSG_WARN([Python is required for the test suite, but it was not found])
245 fi
246 AC_PATH_PROG(QMTEST,[qmtest],[true qmtest])
247 if test "$QMTEST" = "false"
248 then
249         AC_MSG_WARN([QMTest is required for the test suite, but it was not found])
250 fi
251
252 dnl Verify that the version of python available is high enough for qmtest
253 pyversion=`$PYTHON -V 2>&1 | cut -d\  -f2`
254 pymajor=`echo $pyversion | cut -d. -f1`
255 pyminor=`echo $pyversion | cut -d. -f2`
256
257 if test "$pymajor" -ge "2"
258 then
259         if test "$pymajor" -eq "2"
260         then
261                 if test "$pyminor" -lt "2"
262                 then
263                         AC_MSG_WARN([QMTest requires Python 2.2 or later])
264                 fi
265         fi
266 else
267         AC_MSG_WARN([QMTest requires Python 2.2 or later])
268 fi
269
270 dnl Verify that the source directory is valid
271 AC_CONFIG_SRCDIR(["Makefile.config.in"])
272
273 dnl Checks for libraries:
274 dnl libelf is for sparc only; we can ignore it if we don't have it
275 AC_CHECK_LIB(elf, elf_begin)
276
277 dnl dlopen() is required for plugin support.
278 AC_SEARCH_LIBS(dlopen,dl,AC_DEFINE([HAVE_DLOPEN],[1],[Define if dlopen() is available on this platform.]),AC_MSG_WARN([dlopen() not found - disabling plugin support]))
279
280 dnl mallinfo is optional; the code can compile (minus features) without it
281 AC_SEARCH_LIBS(mallinfo,malloc,AC_DEFINE([HAVE_MALLINFO],[1],[Define if mallinfo() is available on this platform.]))
282
283 dnl pthread locking functions are optional - but llvm will not be thread-safe
284 dnl without locks.
285 AC_SEARCH_LIBS(pthread_mutex_lock,pthread,HAVE_PTHREAD_MUTEX_LOCK=1,HAVE_PTHREAD_MUTEX_LOCK=0)
286 AC_SUBST(HAVE_PTHREAD_MUTEX_LOCK)
287
288 dnl Checks for header files.
289 dnl We don't check for ancient stuff or things that are guaranteed to be there
290 dnl by the C++ standard. We always use the <cfoo> versions of <foo.h> C headers.
291 AC_HEADER_STDC
292 AC_HEADER_SYS_WAIT
293
294 dnl Checks for POSIX and other various system-specific header files
295 AC_CHECK_HEADERS(fcntl.h limits.h sys/time.h unistd.h malloc.h sys/mman.h sys/resource.h dlfcn.h link.h execinfo.h windows.h)
296
297 dnl Check for things that need to be included in public headers, and so
298 dnl for which we may not have access to a HAVE_* preprocessor #define.
299 dnl (primarily used in DataTypes.h)
300 AC_CHECK_HEADER([sys/types.h],
301                 [INCLUDE_SYS_TYPES_H='#include <sys/types.h>'],
302                 [INCLUDE_SYS_TYPES_H=''])
303 AC_SUBST(INCLUDE_SYS_TYPES_H)
304 AC_CHECK_HEADER([inttypes.h],
305                 [INCLUDE_INTTYPES_H='#include <inttypes.h>'],
306                 [INCLUDE_INTTYPES_H=''])
307 AC_SUBST(INCLUDE_INTTYPES_H)
308 AC_CHECK_HEADER([stdint.h],
309                 [INCLUDE_STDINT_H='#include <stdint.h>'],
310                 [INCLUDE_STDINT_H=''])
311 AC_SUBST(INCLUDE_STDINT_H)
312
313
314 dnl Check for types
315 AC_TYPE_PID_T
316 AC_TYPE_SIZE_T
317 AC_CHECK_TYPES([int64_t],,AC_MSG_ERROR([Type int64_t required but not found]))
318 AC_CHECK_TYPES([uint64_t],,
319                AC_CHECK_TYPES([u_int64_t],,
320                               AC_MSG_ERROR([Type uint64_t or u_int64_t required but not found])))
321 AC_HEADER_TIME
322 AC_STRUCT_TM
323
324 dnl Check for various C features
325 AC_C_PRINTF_A
326
327 dnl Check for the endianness of the target
328 AC_C_BIGENDIAN(AC_SUBST([ENDIAN],[big]),AC_SUBST([ENDIAN],[little]))
329
330 dnl Check for C++ extensions
331 AC_CXX_HAVE_HASH_MAP
332 AC_CXX_HAVE_HASH_SET
333 AC_CXX_HAVE_STD_ITERATOR
334 AC_CXX_HAVE_BI_ITERATOR
335 AC_CXX_HAVE_FWD_ITERATOR
336
337 AC_FUNC_ISNAN
338 AC_FUNC_ISINF
339
340 dnl Checks for library functions.
341 AC_FUNC_ALLOCA
342 AC_FUNC_MMAP
343 if test "$ac_cv_func_mmap_fixed_mapped" = "no"
344 then
345         AC_MSG_WARN([mmap() required but not found])
346 fi
347 AC_FUNC_MMAP_FILE
348 if test "$ac_cv_func_mmap_file" = "no"
349 then
350         AC_MSG_WARN([mmap() of files required but not found])
351 fi
352 AC_HEADER_MMAP_ANONYMOUS
353 AC_TYPE_SIGNAL
354 AC_CHECK_FUNCS(getcwd gettimeofday strdup strtoq strtoll backtrace isatty mkstemp getrusage)
355 AC_CHECK_FUNC(mprotect,,AC_MSG_ERROR([Function mprotect() required but not found]))
356
357 dnl Determine if the linker supports the -R option.
358 AC_LINK_USE_R
359
360 dnl --enable/--with command-line options:
361 dnl Check whether they want to do an optimized build:
362 AC_ARG_ENABLE(optimized,AC_HELP_STRING([--enable-optimized],[Compile with optimizations enabled (default is NO)]),,enableval=no)
363 if test ${enableval} = "no"
364 then
365         AC_SUBST(ENABLE_OPTIMIZED,[[]])
366 else
367         AC_SUBST(ENABLE_OPTIMIZED,[[ENABLE_OPTIMIZED=1]])
368 fi
369
370 AC_DEFUN(EXTERNAL_BENCHMARK,
371 [m4_define([allcapsname],translit($1,a-z,A-Z))
372  AC_ARG_ENABLE($1,
373  AC_HELP_STRING([--enable-$1=ARG], 
374                 [Use $1 as a benchmark (srcs in DIR)]),
375  checkresult=$enableval,
376  checkresult=auto)
377 AC_MSG_CHECKING([for $1 benchmark sources])
378 case "$checkresult" in
379 auto|yes)
380     defaultdir=$2
381         if test -d "$defaultdir"
382         then
383                 AC_SUBST(allcapsname()[_ROOT],[$defaultdir])
384                 AC_SUBST([USE_]allcapsname(),[USE_]allcapsname()=1)
385         checkresult="yes, found in $defaultdir"
386     else
387         checkresult=no
388     fi
389     ;;
390 no)
391     AC_SUBST(allcapsname()[_ROOT],[])
392     AC_SUBST([USE_]allcapsname(),[])
393     checkresult=no
394     ;;
395 *)  if test -d "$checkresult"
396     then
397         AC_SUBST(allcapsname()[_ROOT],"$checkresult")
398         AC_SUBST([USE_]allcapsname(),[USE_]allcapsname()=1)
399         checkresult="yes, in $checkresult"
400     else
401         AC_SUBST(allcapsname()[_ROOT],[])
402         AC_SUBST([USE_]allcapsname(),[])
403         checkresult="no, not found in $checkresult"
404     fi
405     ;;
406 esac
407 AC_MSG_RESULT($checkresult)
408 m4_undefine([allcapsname])
409 ])
410
411 EXTERNAL_BENCHMARK(spec95,/home/vadve/shared/benchmarks/spec95/benchspec)
412 EXTERNAL_BENCHMARK(spec2000,/home/vadve/shared/benchmarks/speccpu2000/benchspec)
413 EXTERNAL_BENCHMARK(povray,/home/vadve/shared/benchmarks/povray31)
414
415 dnl Precompiled Bytecode Option
416 AC_ARG_ENABLE(precompiled_bytecode,AC_HELP_STRING([--enable-precompiled_bytecode],[Use pre-compiled bytecode (default is NO)]),,enableval=no)
417 if test ${enableval} = "no"
418 then
419         AC_SUBST(UPB,[[]])
420 else
421         AC_SUBST(UPB,[[USE_PRECOMPILED_BYTECODE=1]])
422 fi
423
424 dnl LLC Diff Option
425 AC_ARG_ENABLE(llc_diffs,AC_HELP_STRING([--enable-llc_diffs],[Enable LLC Diffs when testing (default is YES)]),,enableval=yes)
426 if test ${enableval} = "no"
427 then
428         AC_SUBST(DISABLE_LLC_DIFFS,[DISABLE_LLC_DIFFS:=1])
429 else
430         AC_SUBST(DISABLE_LLC_DIFFS,[[]])
431 fi
432
433 dnl JIT Option
434 AC_ARG_ENABLE(jit,AC_HELP_STRING([--enable-jit],[Enable Just In Time Compiling (default is YES)]),,enableval=default)
435 if test ${enableval} = "no"
436 then
437         AC_SUBST(JIT,[[]])
438 else
439         case $target in
440                 *i*86*)
441                         AC_SUBST(JIT,[[TARGET_HAS_JIT=1]])
442                         ;;
443                 *sparc*)
444                         AC_SUBST(JIT,[[TARGET_HAS_JIT=1]])
445                         ;;
446                 *)
447                         AC_SUBST(JIT,[[]])
448                         ;;
449         esac
450 fi
451
452 dnl Find the LLVM GCC-based C/C++ front end
453 AC_ARG_WITH(llvmgccdir,AC_HELP_STRING([--with-llvmgccdir],[Location of LLVM GCC front-end]),AC_SUBST(LLVMGCCDIR,[$withval]))
454 AC_MSG_CHECKING([for llvm-gcc])
455 LLVM_GCC_CHECK=no
456 if test -d "$LLVMGCCDIR"
457 then
458         if test -x "$LLVMGCCDIR/bin/gcc"
459         then
460                 LLVM_GCC_CHECK="$LLVMGCCDIR/bin/gcc"
461         fi
462 fi
463 llvmgccwarn=no
464 AC_MSG_RESULT($LLVM_GCC_CHECK)
465 if test "$LLVM_GCC_CHECK" = "no"
466 then
467     llvmgccwarn=yes
468 fi
469 AC_MSG_CHECKING([whether llvm-gcc is sane])
470 LLVM_GCC_SANE=no
471 if test -x "$LLVM_GCC_CHECK"
472 then
473         cp /dev/null conftest.c
474     "$LLVM_GCC_CHECK" -S -o - conftest.c | grep implementation > /dev/null 2>&1
475         if test $? -eq 0
476         then
477                 LLVM_GCC_SANE=yes
478         fi
479         rm conftest.c
480         llvmcc1path=`"$LLVM_GCC_CHECK" --print-prog-name=cc1`
481         AC_SUBST(LLVMCC1,$llvmcc1path)
482         llvmcc1pluspath=`"$LLVM_GCC_CHECK" --print-prog-name=cc1plus`
483         AC_SUBST(LLVMCC1PLUS,$llvmcc1pluspath)
484 fi
485 AC_MSG_RESULT($LLVM_GCC_SANE)
486 if test "$LLVM_GCC_SANE" = "no"
487 then
488         llvmgccwarn=yes
489 fi
490
491 dnl Location of the bytecode repository
492 AC_ARG_WITH(bcrepos,AC_HELP_STRING([--with-bcrepos],[Location of Bytecode Repository]),AC_SUBST(BCR,[$withval]),AC_SUBST(BCR,[/home/vadve/lattner/LLVMPrograms]))
493
494 dnl Location of PAPI
495 AC_ARG_WITH(papi,AC_HELP_STRING([--with-papi],[Location of PAPI]),AC_SUBST(PAPIDIR,[$withval]),AC_SUBST(PAPIDIR,[/home/vadve/shared/Sparc/papi-2.3.4.1]))
496
497 dnl Get libtool's idea of what the shared library suffix is.
498 dnl (This is a hack; it relies on undocumented behavior.)
499 AC_MSG_CHECKING([for shared library suffix])
500 eval "SHLIBEXT=$shrext"
501 AC_MSG_RESULT($SHLIBEXT)
502 dnl Propagate it to the Makefiles and config.h (for gccld & bugpoint).
503 AC_SUBST(SHLIBEXT,$SHLIBEXT)
504 AC_DEFINE_UNQUOTED(SHLIBEXT,"$SHLIBEXT",
505                    [Extension that shared libraries have, e.g., ".so".])
506
507 # Translate the various configuration directories and other basic
508 # information into substitutions that will end up in config.h.in so
509 # that these configured values can be hard-wired into a program.
510 eval LLVM_PREFIX="${prefix}";
511 eval LLVM_BINDIR="${prefix}/bin";
512 eval LLVM_LIBDIR="${prefix}/lib";
513 eval LLVM_DATADIR="${prefix}/data";
514 eval LLVM_DOCSDIR="${prefix}/docs";
515 eval LLVM_ETCDIR="${prefix}/etc";
516 eval LLVM_INCLUDEDIR="${prefix}/include";
517 eval LLVM_INFODIR="${prefix}/info";
518 eval LLVM_MANDIR="${prefix}/man";
519 LLVM_CONFIGTIME=`date`
520 AC_SUBST(LLVM_PREFIX)
521 AC_SUBST(LLVM_BINDIR)
522 AC_SUBST(LLVM_LIBDIR)
523 AC_SUBST(LLVM_DATADIR)
524 AC_SUBST(LLVM_DOCSDIR)
525 AC_SUBST(LLVM_ETCDIR)
526 AC_SUBST(LLVM_INCLUDEDIR)
527 AC_SUBST(LLVM_INFODIR)
528 AC_SUBST(LLVM_MANDIR)
529 AC_SUBST(LLVM_CONFIGTIME)
530 AC_DEFINE_UNQUOTED(LLVM_PREFIX,"$LLVM_PREFIX", [Installation prefix directory])
531 AC_DEFINE_UNQUOTED(LLVM_BINDIR, "$LLVM_BINDIR", [Installation directory for binary executables])
532 AC_DEFINE_UNQUOTED(LLVM_LIBDIR, "$LLVM_LIBDIR", [Installation directory for libraries])
533 AC_DEFINE_UNQUOTED(LLVM_DATADIR, "$LLVM_DATADIR", [Installation directory for data files])
534 AC_DEFINE_UNQUOTED(LLVM_DATADIR, "$LLVM_DOCSDIR", [Installation directory for documentation])
535 AC_DEFINE_UNQUOTED(LLVM_ETCDIR, "$LLVM_ETCDIR", [Installation directory for config files])
536 AC_DEFINE_UNQUOTED(LLVM_INCLUDEDIR, "$LLVM_INCLUDEDIR", [Installation directory for include files])
537 AC_DEFINE_UNQUOTED(LLVM_INFODIR, "$LLVM_INFODIR", [Installation directory for .info files])
538 AC_DEFINE_UNQUOTED(LLVM_MANDIR, "$LLVM_MANDIR", [Installation directory for man pages])
539 AC_DEFINE_UNQUOTED(LLVM_CONFIGTIME, "$LLVM_CONFIGTIME", [Time at which LLVM was configured])
540
541 dnl Create the output files
542 AC_OUTPUT()
543
544 dnl Warn loudly if llvm-gcc was not obviously working
545 if test $llvmgccwarn = yes
546 then
547         AC_MSG_WARN([***** llvm C/C++ front end was not found, or does not])
548         AC_MSG_WARN([***** appear to be working.])
549         AC_MSG_WARN([***** ])
550         AC_MSG_WARN([***** Please check configure's --with-llvmgccdir option.])
551         AC_MSG_WARN([***** Runtime libraries (in llvm/runtime) will not be built,])
552         AC_MSG_WARN([***** but you should be able to build the llvm tools.])
553 fi
554