diff options
-rw-r--r-- | Makefile.config.in | 15 | ||||
-rw-r--r-- | autoconf/configure.ac | 24 | ||||
-rw-r--r-- | autoconf/m4/define_subst.m4 | 5 | ||||
-rwxr-xr-x | configure | 76 |
4 files changed, 100 insertions, 20 deletions
diff --git a/Makefile.config.in b/Makefile.config.in index dcca45f36c..7633be29da 100644 --- a/Makefile.config.in +++ b/Makefile.config.in @@ -15,6 +15,8 @@ # Define LLVM specific info and directories based on the autoconf variables LLVMPackageName := @PACKAGE_TARNAME@ LLVMVersion := @PACKAGE_VERSION@ +LLVM_VERSION_MAJOR := @LLVM_VERSION_MAJOR@ +LLVM_VERSION_MINOR := @LLVM_VERSION_MINOR@ LLVM_CONFIGTIME := @LLVM_CONFIGTIME@ ########################################################################### @@ -118,6 +120,7 @@ HOST_ARCH=@HOST_ARCH@ # Target hardware architecture ARCH=@ARCH@ TARGET_NATIVE_ARCH := $(ARCH) +LLVM_NATIVE_ARCH := @LLVM_NATIVE_ARCH@ # Indicates, whether we're cross-compiling LLVM or not LLVM_CROSS_COMPILING=@LLVM_CROSS_COMPILING@ @@ -207,13 +210,22 @@ POD2MAN := @POD2MAN@ PDFROFF := @PDFROFF@ ZIP := @ZIP@ +HAVE_LIBZ := @HAVE_LIBZ@ +HAVE_DLOPEN := @HAVE_DLOPEN@ HAVE_PTHREAD := @HAVE_PTHREAD@ +HAVE_TERMINFO := @HAVE_TERMINFO@ LIBS := @LIBS@ +# Targets that are possible to build +ALL_TARGETS := @ALL_TARGETS@ + # Targets that we should build TARGETS_TO_BUILD=@TARGETS_TO_BUILD@ +# Targets supporting JIT +TARGETS_WITH_JIT := @TARGETS_WITH_JIT@ + # Path to directory where object files should be stored during a build. # Set OBJ_ROOT to "." if you do not want to use a separate place for # object files. @@ -250,6 +262,9 @@ ENABLE_CLANG_STATIC_ANALYZER = @ENABLE_CLANG_STATIC_ANALYZER@ # When ENABLE_WERROR is enabled, we'll pass -Werror on the command line ENABLE_WERROR = @ENABLE_WERROR@ +# When ENABLE_TERMINFO is enabled, we use terminfo. +ENABLE_TERMINFO = @ENABLE_TERMINFO@ + # When ENABLE_OPTIMIZED is enabled, LLVM code is optimized and output is put # into the "Release" directories. Otherwise, LLVM code is not optimized and # output is put in the "Debug" directories. diff --git a/autoconf/configure.ac b/autoconf/configure.ac index bffee5fad2..f376e03d97 100644 --- a/autoconf/configure.ac +++ b/autoconf/configure.ac @@ -32,8 +32,8 @@ dnl===-----------------------------------------------------------------------=== dnl Initialize autoconf and define the package name, version number and dnl address for reporting bugs. AC_INIT([LLVM],[3.5svn],[http://llvm.org/bugs/]) -AC_DEFINE([LLVM_VERSION_MAJOR], [3], [Major version of the LLVM API]) -AC_DEFINE([LLVM_VERSION_MINOR], [5], [Minor version of the LLVM API]) +LLVM_DEFINE_SUBST([LLVM_VERSION_MAJOR], [3], [Major version of the LLVM API]) +LLVM_DEFINE_SUBST([LLVM_VERSION_MINOR], [5], [Minor version of the LLVM API]) dnl Provide a copyright substitution and ensure the copyright notice is included dnl in the output of --version option of the generated configure script. @@ -432,6 +432,7 @@ esac dnl Define a substitution, ARCH, for the target architecture AC_SUBST(ARCH,$llvm_cv_target_arch) +AC_SUBST(LLVM_NATIVE_ARCH,$LLVM_NATIVE_ARCH) dnl Determine what our host architecture. dnl This will allow MCJIT regress tests runs only for supported @@ -768,6 +769,9 @@ else esac fi +TARGETS_WITH_JIT="AArch64 ARM Mips PowerPC SystemZ X86" +AC_SUBST(TARGETS_WITH_JIT,$TARGETS_WITH_JIT) + dnl Allow enablement of building and installing docs AC_ARG_ENABLE(docs, AS_HELP_STRING([--enable-docs], @@ -917,6 +921,10 @@ if test "$llvm_cv_enable_crash_overrides" = "yes" ; then [Define to enable crash handling overrides]) fi +dnl List all possible targets +ALL_TARGETS="X86 Sparc PowerPC AArch64 ARM Mips XCore MSP430 CppBackend NVPTX Hexagon SystemZ R600" +AC_SUBST(ALL_TARGETS,$ALL_TARGETS) + dnl Allow specific targets to be specified for building (or not) TARGETS_TO_BUILD="" AC_ARG_ENABLE([targets],AS_HELP_STRING([--enable-targets], @@ -928,7 +936,7 @@ if test "$enableval" = host-only ; then enableval=host fi case "$enableval" in - all) TARGETS_TO_BUILD="X86 Sparc PowerPC AArch64 ARM Mips XCore MSP430 CppBackend NVPTX Hexagon SystemZ R600" ;; + all) TARGETS_TO_BUILD="$ALL_TARGETS" ;; *)for a_target in `echo $enableval|sed -e 's/,/ /g' ` ; do case "$a_target" in x86) TARGETS_TO_BUILD="X86 $TARGETS_TO_BUILD" ;; @@ -1189,6 +1197,10 @@ AC_ARG_ENABLE(terminfo,AS_HELP_STRING( *) AC_MSG_ERROR([Invalid setting for --enable-terminfo. Use "yes" or "no"]) ;; esac], llvm_cv_enable_terminfo="yes") +case "$llvm_cv_enable_terminfo" in + yes) AC_SUBST(ENABLE_TERMINFO,[1]) ;; + no) AC_SUBST(ENABLE_TERMINFO,[0]) ;; +esac dnl --enable-libedit: check whether the user wants to turn off libedit. AC_ARG_ENABLE(libedit,AS_HELP_STRING( @@ -1500,7 +1512,7 @@ if test "$llvm_cv_os_type" = "MingW" ; then fi dnl dlopen() is required for plugin support. -AC_SEARCH_LIBS(dlopen,dl,AC_DEFINE([HAVE_DLOPEN],[1], +AC_SEARCH_LIBS(dlopen,dl,LLVM_DEFINE_SUBST([HAVE_DLOPEN],[1], [Define if dlopen() is available on this platform.]), AC_MSG_WARN([dlopen() not found - disabling plugin support])) @@ -1513,8 +1525,8 @@ dnl The curses library is optional; used for querying terminal info if test "$llvm_cv_enable_terminfo" = "yes" ; then dnl We need the has_color functionality in curses for it to be useful. AC_SEARCH_LIBS(setupterm,tinfo terminfo curses ncurses ncursesw, - AC_DEFINE([HAVE_TERMINFO],[1], - [Define if the setupterm() function is supported this platform.])) + LLVM_DEFINE_SUBST([HAVE_TERMINFO],[1], + [Define if the setupterm() function is supported this platform.])) fi dnl The libedit library is optional; used by lib/LineEditor diff --git a/autoconf/m4/define_subst.m4 b/autoconf/m4/define_subst.m4 new file mode 100644 index 0000000000..c66333f2fb --- /dev/null +++ b/autoconf/m4/define_subst.m4 @@ -0,0 +1,5 @@ +# Combine AC_DEFINE and AC_SUBST +AC_DEFUN([LLVM_DEFINE_SUBST], [ +AC_DEFINE([$1], [$2], [$3]) +AC_SUBST([$1], ['$2']) +]) @@ -639,6 +639,8 @@ LIBS build_alias host_alias target_alias +LLVM_VERSION_MAJOR +LLVM_VERSION_MINOR LLVM_COPYRIGHT CC CFLAGS @@ -674,6 +676,7 @@ NOLINKALL LLVM_ON_UNIX LLVM_ON_WIN32 ARCH +LLVM_NATIVE_ARCH HOST_ARCH LLVM_CROSS_COMPILING BUILD_CC @@ -697,6 +700,7 @@ DEBUG_SYMBOLS KEEP_SYMBOLS JIT TARGET_HAS_JIT +TARGETS_WITH_JIT ENABLE_DOCS ENABLE_DOXYGEN LLVM_ENABLE_THREADS @@ -706,6 +710,7 @@ ENABLE_PIC ENABLE_SHARED ENABLE_EMBED_STDCXX ENABLE_TIMESTAMPS +ALL_TARGETS TARGETS_TO_BUILD LLVM_ENUM_TARGETS LLVM_ENUM_ASM_PRINTERS @@ -716,6 +721,7 @@ EXTRA_OPTIONS EXTRA_LD_OPTIONS CLANG_SRC_ROOT BINUTILS_INCDIR +ENABLE_TERMINFO INTERNAL_PREFIX NM ifGNUmake @@ -770,6 +776,8 @@ COVERED_SWITCH_DEFAULT NO_MAYBE_UNINITIALIZED NO_UNINITIALIZED PYTHON +HAVE_DLOPEN +HAVE_TERMINFO USE_UDIS86 USE_OPROFILE USE_INTEL_JITEVENTS @@ -1930,15 +1938,23 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu + cat >>confdefs.h <<\_ACEOF #define LLVM_VERSION_MAJOR 3 _ACEOF +LLVM_VERSION_MAJOR='3' + + + cat >>confdefs.h <<\_ACEOF #define LLVM_VERSION_MINOR 5 _ACEOF +LLVM_VERSION_MINOR='5' + + LLVM_COPYRIGHT="Copyright (c) 2003-2014 University of Illinois at Urbana-Champaign." @@ -4160,6 +4176,8 @@ esac ARCH=$llvm_cv_target_arch +LLVM_NATIVE_ARCH=$LLVM_NATIVE_ARCH + case $host in i?86-*) host_arch="x86" ;; @@ -5079,6 +5097,10 @@ else esac fi +TARGETS_WITH_JIT="AArch64 ARM Mips PowerPC SystemZ X86" +TARGETS_WITH_JIT=$TARGETS_WITH_JIT + + # Check whether --enable-docs was given. if test "${enable_docs+set}" = set; then enableval=$enable_docs; @@ -5312,6 +5334,10 @@ _ACEOF fi +ALL_TARGETS="X86 Sparc PowerPC AArch64 ARM Mips XCore MSP430 CppBackend NVPTX Hexagon SystemZ R600" +ALL_TARGETS=$ALL_TARGETS + + TARGETS_TO_BUILD="" # Check whether --enable-targets was given. if test "${enable_targets+set}" = set; then @@ -5324,7 +5350,7 @@ if test "$enableval" = host-only ; then enableval=host fi case "$enableval" in - all) TARGETS_TO_BUILD="X86 Sparc PowerPC AArch64 ARM Mips XCore MSP430 CppBackend NVPTX Hexagon SystemZ R600" ;; + all) TARGETS_TO_BUILD="$ALL_TARGETS" ;; *)for a_target in `echo $enableval|sed -e 's/,/ /g' ` ; do case "$a_target" in x86) TARGETS_TO_BUILD="X86 $TARGETS_TO_BUILD" ;; @@ -5681,6 +5707,12 @@ else llvm_cv_enable_terminfo="yes" fi +case "$llvm_cv_enable_terminfo" in + yes) ENABLE_TERMINFO=1 + ;; + no) ENABLE_TERMINFO=0 + ;; +esac # Check whether --enable-libedit was given. if test "${enable_libedit+set}" = set; then @@ -10678,7 +10710,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<EOF -#line 10681 "configure" +#line 10713 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12357,10 +12389,14 @@ ac_res=$ac_cv_search_dlopen if test "$ac_res" != no; then test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + cat >>confdefs.h <<\_ACEOF #define HAVE_DLOPEN 1 _ACEOF +HAVE_DLOPEN='1' + + else { echo "$as_me:$LINENO: WARNING: dlopen() not found - disabling plugin support" >&5 echo "$as_me: WARNING: dlopen() not found - disabling plugin support" >&2;} @@ -12565,10 +12601,14 @@ ac_res=$ac_cv_search_setupterm if test "$ac_res" != no; then test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + cat >>confdefs.h <<\_ACEOF #define HAVE_TERMINFO 1 _ACEOF +HAVE_TERMINFO='1' + + fi fi @@ -23324,6 +23364,8 @@ LIBS!$LIBS$ac_delim build_alias!$build_alias$ac_delim host_alias!$host_alias$ac_delim target_alias!$target_alias$ac_delim +LLVM_VERSION_MAJOR!$LLVM_VERSION_MAJOR$ac_delim +LLVM_VERSION_MINOR!$LLVM_VERSION_MINOR$ac_delim LLVM_COPYRIGHT!$LLVM_COPYRIGHT$ac_delim CC!$CC$ac_delim CFLAGS!$CFLAGS$ac_delim @@ -23359,6 +23401,7 @@ NOLINKALL!$NOLINKALL$ac_delim LLVM_ON_UNIX!$LLVM_ON_UNIX$ac_delim LLVM_ON_WIN32!$LLVM_ON_WIN32$ac_delim ARCH!$ARCH$ac_delim +LLVM_NATIVE_ARCH!$LLVM_NATIVE_ARCH$ac_delim HOST_ARCH!$HOST_ARCH$ac_delim LLVM_CROSS_COMPILING!$LLVM_CROSS_COMPILING$ac_delim BUILD_CC!$BUILD_CC$ac_delim @@ -23381,9 +23424,6 @@ DEBUG_RUNTIME!$DEBUG_RUNTIME$ac_delim DEBUG_SYMBOLS!$DEBUG_SYMBOLS$ac_delim KEEP_SYMBOLS!$KEEP_SYMBOLS$ac_delim JIT!$JIT$ac_delim -TARGET_HAS_JIT!$TARGET_HAS_JIT$ac_delim -ENABLE_DOCS!$ENABLE_DOCS$ac_delim -ENABLE_DOXYGEN!$ENABLE_DOXYGEN$ac_delim _ACEOF if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then @@ -23425,6 +23465,10 @@ _ACEOF ac_delim='%!_!# ' for ac_last_try in false false false false false :; do cat >conf$$subs.sed <<_ACEOF +TARGET_HAS_JIT!$TARGET_HAS_JIT$ac_delim +TARGETS_WITH_JIT!$TARGETS_WITH_JIT$ac_delim +ENABLE_DOCS!$ENABLE_DOCS$ac_delim +ENABLE_DOXYGEN!$ENABLE_DOXYGEN$ac_delim LLVM_ENABLE_THREADS!$LLVM_ENABLE_THREADS$ac_delim ENABLE_PTHREADS!$ENABLE_PTHREADS$ac_delim LLVM_ENABLE_ZLIB!$LLVM_ENABLE_ZLIB$ac_delim @@ -23432,6 +23476,7 @@ ENABLE_PIC!$ENABLE_PIC$ac_delim ENABLE_SHARED!$ENABLE_SHARED$ac_delim ENABLE_EMBED_STDCXX!$ENABLE_EMBED_STDCXX$ac_delim ENABLE_TIMESTAMPS!$ENABLE_TIMESTAMPS$ac_delim +ALL_TARGETS!$ALL_TARGETS$ac_delim TARGETS_TO_BUILD!$TARGETS_TO_BUILD$ac_delim LLVM_ENUM_TARGETS!$LLVM_ENUM_TARGETS$ac_delim LLVM_ENUM_ASM_PRINTERS!$LLVM_ENUM_ASM_PRINTERS$ac_delim @@ -23442,6 +23487,7 @@ EXTRA_OPTIONS!$EXTRA_OPTIONS$ac_delim EXTRA_LD_OPTIONS!$EXTRA_LD_OPTIONS$ac_delim CLANG_SRC_ROOT!$CLANG_SRC_ROOT$ac_delim BINUTILS_INCDIR!$BINUTILS_INCDIR$ac_delim +ENABLE_TERMINFO!$ENABLE_TERMINFO$ac_delim INTERNAL_PREFIX!$INTERNAL_PREFIX$ac_delim NM!$NM$ac_delim ifGNUmake!$ifGNUmake$ac_delim @@ -23496,6 +23542,8 @@ COVERED_SWITCH_DEFAULT!$COVERED_SWITCH_DEFAULT$ac_delim NO_MAYBE_UNINITIALIZED!$NO_MAYBE_UNINITIALIZED$ac_delim NO_UNINITIALIZED!$NO_UNINITIALIZED$ac_delim PYTHON!$PYTHON$ac_delim +HAVE_DLOPEN!$HAVE_DLOPEN$ac_delim +HAVE_TERMINFO!$HAVE_TERMINFO$ac_delim USE_UDIS86!$USE_UDIS86$ac_delim USE_OPROFILE!$USE_OPROFILE$ac_delim USE_INTEL_JITEVENTS!$USE_INTEL_JITEVENTS$ac_delim @@ -23514,14 +23562,6 @@ LLVM_BINDIR!$LLVM_BINDIR$ac_delim LLVM_DATADIR!$LLVM_DATADIR$ac_delim LLVM_DOCSDIR!$LLVM_DOCSDIR$ac_delim LLVM_ETCDIR!$LLVM_ETCDIR$ac_delim -LLVM_INCLUDEDIR!$LLVM_INCLUDEDIR$ac_delim -LLVM_INFODIR!$LLVM_INFODIR$ac_delim -LLVM_MANDIR!$LLVM_MANDIR$ac_delim -LLVM_CONFIGTIME!$LLVM_CONFIGTIME$ac_delim -BINDINGS_TO_BUILD!$BINDINGS_TO_BUILD$ac_delim -ALL_BINDINGS!$ALL_BINDINGS$ac_delim -OCAML_LIBDIR!$OCAML_LIBDIR$ac_delim -ENABLE_VISIBILITY_INLINES_HIDDEN!$ENABLE_VISIBILITY_INLINES_HIDDEN$ac_delim _ACEOF if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 97; then @@ -23563,6 +23603,14 @@ _ACEOF ac_delim='%!_!# ' for ac_last_try in false false false false false :; do cat >conf$$subs.sed <<_ACEOF +LLVM_INCLUDEDIR!$LLVM_INCLUDEDIR$ac_delim +LLVM_INFODIR!$LLVM_INFODIR$ac_delim +LLVM_MANDIR!$LLVM_MANDIR$ac_delim +LLVM_CONFIGTIME!$LLVM_CONFIGTIME$ac_delim +BINDINGS_TO_BUILD!$BINDINGS_TO_BUILD$ac_delim +ALL_BINDINGS!$ALL_BINDINGS$ac_delim +OCAML_LIBDIR!$OCAML_LIBDIR$ac_delim +ENABLE_VISIBILITY_INLINES_HIDDEN!$ENABLE_VISIBILITY_INLINES_HIDDEN$ac_delim RPATH!$RPATH$ac_delim RDYNAMIC!$RDYNAMIC$ac_delim program_prefix!$program_prefix$ac_delim @@ -23570,7 +23618,7 @@ LIBOBJS!$LIBOBJS$ac_delim LTLIBOBJS!$LTLIBOBJS$ac_delim _ACEOF - if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 5; then + if test `sed -n "s/.*$ac_delim\$/X/p" conf$$subs.sed | grep -c X` = 13; then break elif $ac_last_try; then { { echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 |