X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=autoconf%2Fconfigure.ac;h=4ca4296cc6e2ed53fd9c1c3c2a21961ce0309d97;hb=19ee52a3d7694fcdc3e8baec01dfde6d22c59900;hp=55c4d7e37c5bb53a37bc94ff179fea4432316d90;hpb=59ee43662a3fa5e4dbedabdf69dce60026158d51;p=oota-llvm.git diff --git a/autoconf/configure.ac b/autoconf/configure.ac index 55c4d7e37c5..4ca4296cc6e 100644 --- a/autoconf/configure.ac +++ b/autoconf/configure.ac @@ -8,7 +8,7 @@ dnl Quit if the source directory has already been configured. dnl NOTE: This relies upon undocumented autoconf behavior. if test ${srcdir} != "." then - if test -f ${srcdir}/include/Config/config.h + if test -f ${srcdir}/include/llvm/Config/config.h then AC_MSG_ERROR([Already configured in ${srcdir}]) fi @@ -17,25 +17,32 @@ fi dnl Configure all of the projects present in our source tree. for i in `ls ${srcdir}/projects` do - if test ${i} != "CVS" - then - if test -f ${srcdir}/projects/${i}/configure - then - AC_CONFIG_SUBDIRS(projects/${i}) - fi + if test -d ${srcdir}/projects/${i} ; then + case ${i} in + "CVS") ;; + "sample") AC_CONFIG_SUBDIRS([projects/sample]) ;; + "Stacker") AC_CONFIG_SUBDIRS([projects/Stacker]) ;; + "llvm-test") AC_CONFIG_SUBDIRS([projects/llvm-test]) ;; + "llvm-reopt") AC_CONFIG_SUBDIRS([projects/llvm-reopt]);; + "llvm-gcc") AC_CONFIG_SUBDIRS([projects/llvm-gcc]) ;; + "llvm-java") AC_CONFIG_SUBDIRS([projects/llvm-java]) ;; + "llvm-tv") AC_CONFIG_SUBDIRS([projects/llvm-tv]) ;; + "llvm-fefw") AC_CONFIG_SUBDIRS([projects/llvm-fefw]) ;; + *) AC_CONFIG_SUBDIRS(${i}) ;; + esac fi done dnl Configure header files -AC_CONFIG_HEADERS(include/Config/config.h) +AC_CONFIG_HEADERS(include/llvm/Config/config.h) dnl Configure other output file AC_CONFIG_FILES(Makefile.config - include/Support/DataTypes.h - include/Support/ThreadSupport.h - include/Support/hash_map - include/Support/hash_set - include/Support/iterator) + include/llvm/Support/DataTypes.h + include/llvm/Support/ThreadSupport.h + include/llvm/ADT/hash_map + include/llvm/ADT/hash_set + include/llvm/ADT/iterator) dnl Do special configuration of Makefiles AC_CONFIG_MAKEFILE(Makefile) @@ -47,45 +54,6 @@ AC_CONFIG_MAKEFILE(test/Makefile) AC_CONFIG_MAKEFILE(test/Makefile.tests) AC_CONFIG_MAKEFILE(test/QMTest/llvm.py) AC_CONFIG_MAKEFILE(test/QMTest/llvmdb.py) -AC_CONFIG_MAKEFILE(test/Programs/Makefile) -AC_CONFIG_MAKEFILE(test/Programs/Makefile.programs) -AC_CONFIG_MAKEFILE(test/Programs/Makefile.tests) -AC_CONFIG_MAKEFILE(test/Programs/TEST.aa.Makefile) -AC_CONFIG_MAKEFILE(test/Programs/TEST.dsgraph.report) -AC_CONFIG_MAKEFILE(test/Programs/TEST.aa.report) -AC_CONFIG_MAKEFILE(test/Programs/TEST.example.Makefile) -AC_CONFIG_MAKEFILE(test/Programs/TEST.nightly.Makefile) -AC_CONFIG_MAKEFILE(test/Programs/TEST.buildrepo.Makefile) -AC_CONFIG_MAKEFILE(test/Programs/TEST.jit.Makefile) -AC_CONFIG_MAKEFILE(test/Programs/TEST.nightly.report) -AC_CONFIG_MAKEFILE(test/Programs/TEST.dsgraph.Makefile) -AC_CONFIG_MAKEFILE(test/Programs/TEST.jit.report) -AC_CONFIG_MAKEFILE(test/Programs/TEST.typesafe.Makefile) -AC_CONFIG_MAKEFILE(test/Programs/TEST.dsgraph.gnuplot) -AC_CONFIG_MAKEFILE(test/Programs/TEST.vtl.Makefile) -AC_CONFIG_MAKEFILE(test/Programs/External/Makefile) -AC_CONFIG_MAKEFILE(test/Programs/External/SPEC/Makefile) -AC_CONFIG_MAKEFILE(test/Programs/External/SPEC/Makefile.spec) -AC_CONFIG_MAKEFILE(test/Programs/External/SPEC/Makefile.spec2000) -AC_CONFIG_MAKEFILE(test/Programs/External/SPEC/Makefile.spec95) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Makefile) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Makefile.multisrc) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/analyzer/test.in) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/distray/Makefile) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/distray/test.in) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/fourinarow/Makefile) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/fourinarow/test.in) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/mason/Makefile) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/mason/test.in) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/neural/Makefile) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/neural/test.in) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/pcompress2/Makefile) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/pcompress2/test.in) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/pifft/Makefile) -AC_CONFIG_MAKEFILE(test/Programs/MultiSource/Benchmarks/FreeBench/pifft/test.in) -AC_CONFIG_MAKEFILE(test/Programs/SingleSource/Makefile) -AC_CONFIG_MAKEFILE(test/Programs/SingleSource/Makefile.singlesrc) -AC_CONFIG_MAKEFILE(test/Programs/SingleSource/UnitTests/SetjmpLongjmp/Makefile) AC_CONFIG_MAKEFILE(tools/Makefile) AC_CONFIG_MAKEFILE(utils/Makefile) AC_CONFIG_MAKEFILE(projects/Makefile) @@ -99,7 +67,29 @@ AC_CANONICAL_TARGET dnl Set the "OS" Makefile variable based on the system we are building on. dnl We will use the build machine information to set some variables. + +AC_MSG_CHECKING([support for generic build operating system]) case $build in + *-*-aix*) + AC_SUBST(OS,[AIX]) + platform_type="AIX" + ;; + *-*-cygwin*) + AC_SUBST(OS,[Cygwin]) + platform_type="Cygwin" + ;; + *-*-darwin*) + AC_SUBST(OS,[Darwin]) + platform_type="Darwin" + ;; + *-*-freebsd*) + AC_SUBST(OS,[Linux]) + platform_type="FreeBSD" + ;; + *-*-interix*) + AC_SUBST(OS,[SunOS]) + platform_type="Interix" + ;; *-*-linux*) AC_SUBST(OS,[Linux]) platform_type="Linux" @@ -116,18 +106,6 @@ case $build in AC_SUBST(LLVMGCCDIR,[/home/vadve/lattner/local/sparc/llvm-gcc/]) fi ;; - *-*-cygwin*) - AC_SUBST(OS,[Cygwin]) - platform_type="Cygwin" - ;; - *-*-darwin*) - AC_SUBST(OS,[Darwin]) - platform_type="Darwin" - ;; - *-*-aix*) - AC_SUBST(OS,[AIX]) - platform_type="AIX" - ;; *-*-win32*) AC_SUBST(OS,[Win32]) platform_type="Win32" @@ -138,11 +116,19 @@ case $build in ;; esac +dnl Make sure we aren't attempting to configure for an unknown system +if test "$platform_type" = "Unknown" ; then + AC_MSG_ERROR([Platform is unknown, configure can't continue]) +fi + dnl Make a link from lib/System/platform to lib/System/$platform_type dnl This helps the #inclusion of the system specific include files dnl for the operating system abstraction library AC_CONFIG_LINKS(lib/System/platform:lib/System/$platform_type) +AC_MSG_RESULT($platform_type) + +AC_MSG_CHECKING(target architecture) dnl If we are targetting a Sparc machine running Solaris, pretend that it is dnl V9, since that is all that we support at the moment, and autoconf will only dnl tell us we're a sparc. @@ -155,16 +141,26 @@ dnl Determine what our target architecture is and configure accordingly. dnl This will allow Makefiles to make a distinction between the hardware and dnl the OS. case $target in - i*86-*) AC_SUBST(ARCH,[x86]) - ;; - sparc*-*) AC_SUBST(ARCH,[Sparc]) - ;; - powerpc*-*) AC_SUBST(ARCH,[PowerPC]) - ;; - *) AC_SUBST(ARCH,[Unknown]) - ;; + i*86-*) + ARCH="x86" + AC_SUBST(ARCH,[x86]) + ;; + sparc*-*) + ARCH="Sparc" + AC_SUBST(ARCH,[Sparc]) + ;; + powerpc*-*) + ARCH="PowerPC" + AC_SUBST(ARCH,[PowerPC]) + ;; + *) + ARCH="Unknown" + AC_SUBST(ARCH,[Unknown]) + ;; esac +AC_MSG_RESULT($ARCH) + dnl Check for compilation tools AC_PROG_CXX AC_PROG_CC(gcc) @@ -188,7 +184,7 @@ then fi dnl Check for GNU Make. We use its extensions too, so don't build without it -CHECK_GNU_MAKE +AC_CHECK_GNU_MAKE if test -z "$_cv_gnu_make_command" then AC_MSG_ERROR([GNU Make required but not found]) @@ -287,7 +283,9 @@ dnl Check for types AC_TYPE_PID_T AC_TYPE_SIZE_T AC_CHECK_TYPES([int64_t],,AC_MSG_ERROR([Type int64_t required but not found])) -AC_CHECK_TYPES([uint64_t],,AC_MSG_ERROR([Type uint64_t required but not found])) +AC_CHECK_TYPES([uint64_t],, + AC_CHECK_TYPES([u_int64_t],, + AC_MSG_ERROR([Type uint64_t or u_int64_t required but not found]))) AC_HEADER_TIME AC_STRUCT_TM @@ -337,69 +335,6 @@ else AC_SUBST(ENABLE_OPTIMIZED,[[ENABLE_OPTIMIZED=1]]) fi -AC_DEFUN(EXTERNAL_BENCHMARK, -[m4_define([allcapsname],translit($1,a-z,A-Z)) - AC_ARG_ENABLE($1, - AC_HELP_STRING([--enable-$1=ARG], - [Use $1 as a benchmark (srcs in DIR)]), - checkresult=$enableval, - checkresult=auto) -AC_MSG_CHECKING([for $1 benchmark sources]) -case "$checkresult" in -auto|yes) - defaultdir=$2 - if test -d "$defaultdir" - then - AC_SUBST(allcapsname()[_ROOT],[$defaultdir]) - AC_SUBST([USE_]allcapsname(),[USE_]allcapsname()=1) - checkresult="yes, found in $defaultdir" - else - checkresult=no - fi - ;; -no) - AC_SUBST(allcapsname()[_ROOT],[]) - AC_SUBST([USE_]allcapsname(),[]) - checkresult=no - ;; -*) if test -d "$checkresult" - then - AC_SUBST(allcapsname()[_ROOT],"$checkresult") - AC_SUBST([USE_]allcapsname(),[USE_]allcapsname()=1) - checkresult="yes, in $checkresult" - else - AC_SUBST(allcapsname()[_ROOT],[]) - AC_SUBST([USE_]allcapsname(),[]) - checkresult="no, not found in $checkresult" - fi - ;; -esac -AC_MSG_RESULT($checkresult) -m4_undefine([allcapsname]) -]) - -EXTERNAL_BENCHMARK(spec95,/home/vadve/shared/benchmarks/spec95/benchspec) -EXTERNAL_BENCHMARK(spec2000,/home/vadve/shared/benchmarks/speccpu2000/benchspec) -EXTERNAL_BENCHMARK(povray,/home/vadve/shared/benchmarks/povray31) - -dnl Precompiled Bytecode Option -AC_ARG_ENABLE(precompiled_bytecode,AC_HELP_STRING([--enable-precompiled_bytecode],[Use pre-compiled bytecode (default is NO)]),,enableval=no) -if test ${enableval} = "no" -then - AC_SUBST(UPB,[[]]) -else - AC_SUBST(UPB,[[USE_PRECOMPILED_BYTECODE=1]]) -fi - -dnl LLC Diff Option -AC_ARG_ENABLE(llc_diffs,AC_HELP_STRING([--enable-llc_diffs],[Enable LLC Diffs when testing (default is YES)]),,enableval=yes) -if test ${enableval} = "no" -then - AC_SUBST(DISABLE_LLC_DIFFS,[DISABLE_LLC_DIFFS:=1]) -else - AC_SUBST(DISABLE_LLC_DIFFS,[[]]) -fi - dnl JIT Option AC_ARG_ENABLE(jit,AC_HELP_STRING([--enable-jit],[Enable Just In Time Compiling (default is YES)]),,enableval=default) if test ${enableval} = "no" @@ -458,12 +393,6 @@ then llvmgccwarn=yes fi -dnl Location of the bytecode repository -AC_ARG_WITH(bcrepos,AC_HELP_STRING([--with-bcrepos],[Location of Bytecode Repository]),AC_SUBST(BCR,[$withval]),AC_SUBST(BCR,[/home/vadve/lattner/LLVMPrograms])) - -dnl Location of PAPI -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])) - dnl Get libtool's idea of what the shared library suffix is. dnl (This is a hack; it relies on undocumented behavior.) AC_MSG_CHECKING([for shared library suffix])