[llvm-commits] [hlvm] r37974 - in /hlvm/trunk: ./ autoconf/ autoconf/m4/ docs/ hlvm/ hlvm/AST/ hlvm/Base/ test/ tools/
Reid Spencer
reid at x10sys.com
Sat Jul 7 16:58:30 PDT 2007
Author: reid
Date: Sat Jul 7 18:58:30 2007
New Revision: 37974
URL: http://llvm.org/viewvc/llvm-project?rev=37974&view=rev
Log:
Get a more useful build system going. "make" from the top level
now works, although it doesn't build anything. Also, start adding
some source files.
Added:
hlvm/trunk/Makefile.config.in
hlvm/trunk/Makefile.hlvm
hlvm/trunk/VERSION.in
hlvm/trunk/autoconf/install-sh (with props)
hlvm/trunk/autoconf/m4/check_gnu_make.m4
hlvm/trunk/autoconf/m4/find_std_program.m4
hlvm/trunk/autoconf/m4/path_perl.m4
hlvm/trunk/autoconf/missing (with props)
hlvm/trunk/autoconf/mkinstalldirs (with props)
hlvm/trunk/docs/Doxyfile.in
hlvm/trunk/docs/Makefile
hlvm/trunk/docs/doxygen.css
hlvm/trunk/docs/doxygen.footer
hlvm/trunk/docs/doxygen.header
hlvm/trunk/docs/doxygen.intro
hlvm/trunk/hlvm/
hlvm/trunk/hlvm/AST/
hlvm/trunk/hlvm/AST/Bundle.h
hlvm/trunk/hlvm/AST/Function.h
hlvm/trunk/hlvm/AST/LinkageItem.h
hlvm/trunk/hlvm/AST/Makefile
hlvm/trunk/hlvm/AST/Node.h
hlvm/trunk/hlvm/Base/
hlvm/trunk/hlvm/Base/Config.h.in
hlvm/trunk/hlvm/Base/ConfigData.cpp.in
hlvm/trunk/hlvm/Base/Makefile (with props)
hlvm/trunk/hlvm/Makefile (with props)
hlvm/trunk/test/
hlvm/trunk/test/Makefile (with props)
Removed:
hlvm/trunk/Makefile.common.in
Modified:
hlvm/trunk/Makefile
hlvm/trunk/autoconf/configure.ac
hlvm/trunk/autoconf/m4/config_makefile.m4
hlvm/trunk/configure
hlvm/trunk/tools/Makefile
Modified: hlvm/trunk/Makefile
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/Makefile?rev=37974&r1=37973&r2=37974&view=diff
==============================================================================
--- hlvm/trunk/Makefile (original)
+++ hlvm/trunk/Makefile Sat Jul 7 18:58:30 2007
@@ -10,11 +10,10 @@
# Indicates our relative path to the top of the project's root directory.
#
LEVEL = .
-DIRS = lib tools
+DIRS = hlvm tools
EXTRA_DIST = include
#
# Include the Master Makefile that knows how to build all.
#
-include $(LEVEL)/Makefile.common
-
+include $(LEVEL)/Makefile.hlvm
Removed: hlvm/trunk/Makefile.common.in
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/Makefile.common.in?rev=37973&view=auto
==============================================================================
--- hlvm/trunk/Makefile.common.in (original)
+++ hlvm/trunk/Makefile.common.in (removed)
@@ -1,29 +0,0 @@
-##===- Makefile.common.in ----------------------------------*- Makefile -*-===##
-#
-# This is the top level configured makefile for the HLVM project.
-#
-# Copyright (C) 2006 Reid Spencer. All Rights Reserved.
-#
-##===----------------------------------------------------------------------===##
-# Set the name of the project here
-PROJECT_NAME := HLVM
-PROJ_VERSION := 0.1svn
-
-# Set this variable to the top of the LLVM source tree.
-LLVM_SRC_ROOT = @LLVM_SRC@
-
-# Set this variable to the top level directory where LLVM was built
-# (this is *not* the same as OBJ_ROOT as defined in LLVM's Makefile.config).
-LLVM_OBJ_ROOT = @LLVM_OBJ@
-
-# Set the directory root of this project's source files
-PROJ_SRC_ROOT := $(subst //,/, at abs_top_srcdir@)
-
-# Set the root directory of this project's object files
-PROJ_OBJ_ROOT := $(subst //,/, at abs_top_objdir@)
-
-# Set the root directory of this project's install prefix
-PROJ_INSTALL_ROOT := @prefix@
-
-# Include LLVM's Master Makefile.
-include $(LLVM_OBJ_ROOT)/Makefile.common
Added: hlvm/trunk/Makefile.config.in
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/Makefile.config.in?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/Makefile.config.in (added)
+++ hlvm/trunk/Makefile.config.in Sat Jul 7 18:58:30 2007
@@ -0,0 +1,58 @@
+##===- Makefile.config.in ----------------------------------*- Makefile -*-===##
+#
+# This is the top level configured makefile for the HLVM project.
+#
+# Copyright (C) 2006 Reid Spencer. All Rights Reserved.
+#
+##===----------------------------------------------------------------------===##
+
+# Set HLVM Specific variables
+HLVM_name := @PACKAGE_TARNAME@
+HLVM_version := @PACKAGE_VERSION@
+HLVM_so_version := @HLVM_SO_VERSION@
+HLVM_so_current := @HLVM_SO_CURRENT@
+HLVM_so_revision := @HLVM_SO_REVISION@
+HLVM_so_age := @HLVM_SO_AGE@
+HLVM_prefix := @HLVM_PREFIX@
+HLVM_bindir := @HLVM_PREFIX@/bin
+HLVM_libdir := @HLVM_PREFIX@/lib
+HLVM_includedir := @HLVM_PREFIX@/include
+HLVM_datadir := @HLVM_PREFIX@/data
+HLVM_configdir := @HLVM_PREFIX@/etc
+HLVM_etcdir := @HLVM_PREFIX@/etc
+HLVM_infodir := @HLVM_PREFIX@/info
+HLVM_mandir := @HLVM_PREFIX@/man
+HLVM_wrkspcdir := @HLVM_WITH_WORKSPACE@
+HLVM_llvmsrcdir := @HLVM_WITH_LLVM_SRC@
+HLVM_llvmobjdir := @HLVM_WITH_LLVM_OBJ@
+HLVM_top_srcdir := @abs_top_srcdir@
+HLVM_top_objdir := @abs_top_builddir@
+HLVM_DEBUG := @HLVM_DEBUG@
+HLVM_ASSERT := @HLVM_ASSERT@
+HLVM_INLINE := @HLVM_INLINE@
+HLVM_OPTIMIZE := @HLVM_OPTIMIZE@
+HLVM_SHAREDPREFIX:= @HLVM_SHAREDPREFIX@
+HLVM_TRACE := @HLVM_TRACE@
+HLVM_SMALL := @HLVM_SMALL@
+HLVM_EFENCE := @HLVM_EFENCE@
+HLVM_PROFILING := @HLVM_PROFILING@
+
+# Set the name of the project here
+PROJECT_NAME := $(HLVM_name)
+PROJ_VERSION := $(HLVM_VERSION)
+
+# Set this variable to the top of the LLVM source tree.
+LLVM_SRC_ROOT = @HLVM_WITH_LLVM_SRC@
+
+# Set this variable to the top level directory where LLVM was built
+# (this is *not* the same as OBJ_ROOT as defined in LLVM's Makefile.config).
+LLVM_OBJ_ROOT = @HLVM_WITH_LLVM_OBJ@
+
+# Set the directory root of this project's source files
+PROJ_SRC_ROOT := $(subst //,/, at abs_top_srcdir@)
+
+# Set the root directory of this project's object files
+PROJ_OBJ_ROOT := $(subst //,/, at abs_top_objdir@)
+
+# Set the root directory of this project's install prefix
+PROJ_INSTALL_ROOT := @prefix@
Added: hlvm/trunk/Makefile.hlvm
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/Makefile.hlvm?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/Makefile.hlvm (added)
+++ hlvm/trunk/Makefile.hlvm Sat Jul 7 18:58:30 2007
@@ -0,0 +1,131 @@
+#------------------------------------------------------------------------------
+# Makefile.hlvm - Main HLVM Makefile: included by all
+#
+# Copyright (C) 2006 HLVM Group. All Rights Reserved
+#
+#------------------------------------------------------------------------------
+# This makefile is included in every Makefile in the HLVM project. It provides
+# definitions needed by all makefiles in HLVM. It also includes LLVM Makefile
+# system upon which it is based.
+#------------------------------------------------------------------------------
+
+# Include our configured variables
+include $(LEVEL)/Makefile.config
+
+#
+# Set up compilation variables
+#
+
+CPPFLAGS += -D_POSIX_THREADS -D_POSIX_THREAD_SAFE_FUNCTIONS \
+ -I$(HLVM_top_srcdir) \
+ -I$(HLVM_top_objdir) \
+
+ifeq ($(HLVM_ASSERT),true)
+CPPFLAGS += -DHLVM_ASSERT=1
+endif
+
+HLVM_COMMONFLAGS = -pipe -Wall -W -Wpointer-arith -Wcast-align -Wwrite-strings \
+ -Winline -Wno-unused-parameter
+CXXFLAGS += $(HLVM_COMMONFLAGS) -Wno-deprecated -Wold-style-cast \
+ -Woverloaded-virtual -ffor-scope -foperator-names
+CFLAGS += $(HLVM_COMMONFLAGS)
+
+ifeq ($(HLVM_DEBUG),true)
+CXXFLAGS += -ggdb
+CFLAGS += -ggdb
+endif
+
+ifeq ($(HLVM_OPTIMIZE),true)
+ifeq ($(HLVM_SMALL),true)
+CXXFLAGS += -Os
+CFLAGS += -Os
+endif
+ENABLE_OPTIMIZED := 1
+endif
+
+ifeq ($(HLVM_INLINE),true)
+CXXFLAGS += -DHLVM_INLINE -DHLVM_inline=inline
+CFLAGS += -DHLVM_INLINE -DHLVM_inline=inline
+else
+CXXFLAGS += -fno-inline -DHLVM_inline=
+CFLAGS += -fno-inline -DHLVM_inline=
+endif
+
+ifeq ($(HLVM_PROFILING),true)
+CXXFLAGS += -pg
+CFLAGS += -pg
+endif
+
+#
+# Define the ICU Resource stuff
+#
+SUFFIXES = .E
+ICU_DATA_FILE = $(ICU_NAME).dat
+ICU_MSGS_FILES = $(ICU_RESOURCES:%=%.msgs)
+ICU_RES_FILES = $(ICU_RESOURCES:%=$(ICU_NAME)_%.res)
+ICU_FILE_LIST = $(ICU_NAME).files
+ALL_MSGS_FILES = $(HLVM_ALL_LANGUAGES:%=%.msgs)
+
+# LLVM Requirements for makefile system
+PROJECT_NAME := $(HLVM_name)
+PROJECT_VERSION := $(HLVM_version)
+LLVM_SRC_ROOT := $(HLVM_llvmsrcdir)
+LLVM_OBJ_ROOT := $(HLVM_llvmobjdir)
+PROJ_SRC_ROOT := $(HLVM_top_srcdir)
+PROJ_OBJ_ROOT := $(HLVM_top_objdir)
+PROJ_INSTALL_ROOT := $(HLVM_prefix)
+
+SUFFIXES := .rng .i .hlvm .xml .java .class
+
+TOOLLINKOPTSB := $(LIBS)
+
+# Get configuration data and make rules from LLVM
+include $(HLVM_llvmobjdir)/Makefile.common
+
+EchoCmd := $(ECHO) hlvm [$(MAKELEVEL)]:
+Echo := @$(EchoCmd)
+
+
+$(PROJ_OBJ_ROOT)/Makefile.hlvm: $(PROJ_SRC_ROOT)/Makefile.hlvm
+ $(Echo) "Updating Makefile.hlvm"
+ $(Verb) $(MKDIR) $(@D)
+ $(Verb) $(CP) -f $< $@
+
+preconditions: $(PROJ_OBJ_DIR)/Makefile.hlvm
+
+#$(PROJ_OBJ_DIR)/%Tokenizer.cpp $(PROJ_OBJ_DIR)/%Tokenizer.h $(PROJ_OBJ_DIR)/%TokenHash.i : $(PROJ_SRC_DIR)/%.rng $(HLVM_top_srcdir)/utils/tmplt/Tokenizer_Template.cpp $(HLVM_top_srcdir)/utils/tmplt/Tokenizer_Template.h $(HLVM_top_srcdir)/utils/bin/mkTokenizer
+# $(Echo) Building Tokenizer For $*
+# $(Verb) $(HLVM_top_srcdir)/utils/bin/mkTokenizer -f \
+# $(PROJ_SRC_DIR)/$*.rng
+
+ifdef INSTALL_INCLUDES
+PartialPath := $(patsubst $(PROJ_SRC_ROOT)/%,%,$(PROJ_SRC_DIR))
+IncludesWithPath := $(patsubst %,$(PartialPath)/%,$(INSTALL_INCLUDES))
+InstalledIncludes := $(patsubst %,$(PROJ_includedir)/%,$(IncludesWithPath))
+
+install-local:: $(PROJ_includedir)/$(PartialPath)/.dir $(InstalledIncludes)
+
+$(InstalledIncludes): $(PROJ_includedir)/$(PartialPath)/% : $(PROJ_SRC_DIR)/%
+ $(Echo) Installing $(*)
+ $(Verb) $(DataInstall) $< $@
+
+endif
+
+printvars::
+ $(Echo) "BuildMode : " '$(BuildMode)'
+ $(Echo) "HLVM_VERSION : " '$(HLVM_VERSION)'
+ $(Echo) "HLVM_SO_VERSION : " '$(HLVM_SO_VERSION)'
+ $(Echo) "HLVM_bindir : " '$(HLVM_bindir)'
+ $(Echo) "HLVM_libdir : " '$(HLVM_libdir)'
+ $(Echo) "HLVM_sbindir : " '$(HLVM_sbindir)'
+ $(Echo) "HLVM_libexecdir : " '$(HLVM_libexecdir)'
+ $(Echo) "HLVM_datadir : " '$(HLVM_datadir)'
+ $(Echo) "HLVM_configdir : " '$(HLVM_configdir)'
+ $(Echo) "HLVM_infodir : " '$(HLVM_infodir)'
+ $(Echo) "HLVM_mandir : " '$(HLVM_mandir)'
+ $(Echo) "HLVM_schemasdir : " '$(HLVM_schemasdir)'
+ $(Echo) "HLVM_wrkspcdir : " '$(HLVM_wrkspcdir)'
+ $(Echo) "HLVM_llvmsrcdir : " '$(HLVM_llvmsrcdir)'
+ $(Echo) "HLVM_llvmobjdir : " '$(HLVM_llvmobjdir)'
+ $(Echo) "HLVM_top_srcdir : " '$(HLVM_top_srcdir)'
+ $(Echo) "HLVM_top_builddir: " '$(HLVM_top_builddir)'
Added: hlvm/trunk/VERSION.in
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/VERSION.in?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/VERSION.in (added)
+++ hlvm/trunk/VERSION.in Sat Jul 7 18:58:30 2007
@@ -0,0 +1,25 @@
+HLVM Configuration Details File - @HLVM_CONFIGTIME@
+=============================================================
+Package Name : @PACKAGE_NAME@
+Short Name : @PACKAGE_TARNAME@
+Copyright : @HLVM_COPYRIGHT@
+Version : @HLVM_VERSION@
+Library Revision : @HLVM_SO_VERSION@
+Maintainer : @HLVM_CONFIGURE_MAINTAINER@
+Report Bugs To : @PACKAGE_BUGREPORT@
+
+Source Directory : @abs_top_srcdir@
+Object Directory : @abs_top_builddir@
+Install Prefix : @HLVM_PREFIX@
+XPS Workspace Directory : @HLVM_WITH_WORKSPACE@
+
+Configuration Name : @HLVM_CFGNAME@
+enable-debug : @HLVM_DEBUG@
+enable-assert : @HLVM_ASSERT@
+enable-trace : @HLVM_TRACE@
+enable-inline : @HLVM_INLINE@
+enable-optimize : @HLVM_OPTIMIZE@
+enable-small : @HLVM_SMALL@
+enable-sharedprefix : @HLVM_SHAREDPREFIX@
+enable-efence : @HLVM_EFENCE@
+enable-profiling : @HLVM_PROFILING@
Modified: hlvm/trunk/autoconf/configure.ac
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/autoconf/configure.ac?rev=37974&r1=37973&r2=37974&view=diff
==============================================================================
--- hlvm/trunk/autoconf/configure.ac (original)
+++ hlvm/trunk/autoconf/configure.ac Sat Jul 7 18:58:30 2007
@@ -1,57 +1,411 @@
dnl **************************************************************************
dnl * Initialize
dnl **************************************************************************
-AC_INIT([[[HLVM]]],[[[0.1svn]]],[hlvm-dev at hlvm.org])
-AC_SUBST(HLVM_COPYRIGHT,["Copyright (c) 2006 HLVM Programmer's Group"])
-AC_COPYRIGHT[Copyright (c) 2006 HLVM Programmer's Group])
+AC_INIT([High Level Virtual Machine],[0.1svn],[hlvm-dev at hlvm.org],HLVM)
AC_PREREQ(2.59)
-AC_CONFIG_SRCDIR(["lib/Makefile"])
-AC_CONFIG_FILES(Makefile.common)
+HLVM_COPYRIGHT="Coyright (c) 2006 HLVM Group"
+AC_SUBST(HLVM_COPYRIGHT)
+AC_COPYRIGHT($HLVM_COPYRIGHT)
+AC_CONFIG_SRCDIR([hlvm/AST/Bundle.h])
+AC_REVISION([$Id$])
+
+HLVM_VERSION="${PACKAGE_VERSION}"
+AC_SUBST(HLVM_PACKAGE,$PACKAGE)
+AC_SUBST(HLVM_VERSION)
+AC_PREFIX_DEFAULT([/usr/local/hlvm])
-dnl Configure project makefiles
-dnl List every Makefile that exists within your source tree
-AC_CONFIG_MAKEFILE(Makefile)
-AC_CONFIG_MAKEFILE(lib/Makefile)
-AC_CONFIG_MAKEFILE(tools/Makefile)
dnl **************************************************************************
dnl * Set the location of various third-party software packages
dnl **************************************************************************
-FIND_PACKAGE([llvm],[llvm/Module.h],[LLVMCore.o],[llc],
- [Low Level Virtual Machine])
FIND_PACKAGE([apr],[apr-1/apr.h],[libapr-1.so],[],[Apache Portable Runtime])
-dnl **************************************************************************
-dnl * Determine which system we are building on
-dnl **************************************************************************
-
-dnl **************************************************************************
-dnl * Check for programs.
-dnl **************************************************************************
-
-dnl **************************************************************************
-dnl * Check for libraries.
-dnl **************************************************************************
-
-dnl **************************************************************************
-dnl * Checks for header files.
-dnl **************************************************************************
-
-dnl **************************************************************************
-dnl * Checks for typedefs, structures, and compiler characteristics.
-dnl **************************************************************************
-
-dnl **************************************************************************
-dnl * Checks for library functions.
-dnl **************************************************************************
-
-dnl **************************************************************************
-dnl * Enable various compile-time options
-dnl **************************************************************************
-
-dnl **************************************************************************
-dnl * Create the output files
-dnl **************************************************************************
+dnl ----------------------------------------------------------------------------
+dnl -- Shared Object Versioning For libtool
+dnl --
+dnl -- The following substitution, HLVM_SO_VERSION defines the version number
+dnl -- for the libHLVM.so shared object. This version is not the same as the
+dnl -- HLVM release version! It is dependent on the *ACTUAL* interface (not
+dnl -- implementation) changes in the shared object. The value of
+dnl -- HLVM_SO_VERSION is passed to libtool as the --version-info argument.
+dnl -- Here are the rules for updating these numbers (adapted from libtool
+dnl -- documentation)
+dnl --
+dnl -- 0. CURRENT(C)= current interface version number (of the release)
+dnl -- REVISION(R)= revision of the *impelmentation* of the current interface
+dnl -- AGE(A)= number of prior interface version numbers also supported
+dnl --
+dnl -- 1. Start with version information of `0:0:0'.
+dnl --
+dnl -- 2. Update the version information *only* immediately before a public
+dnl -- release of your software. More frequent updates are unnecessary,
+dnl -- and only say that the current interface number gets larger faster.
+dnl --
+dnl -- 3. If the library source code has changed at all since the last
+dnl -- update, then increment REVISION (`C:R:A' becomes `C:r+1:A').
+dnl --
+dnl -- 4. If any interfaces have been added, removed, or changed since the
+dnl -- last update, increment CURRENT, and set REVISION to 0.
+dnl --
+dnl -- 5. If any interfaces have been added (only!) since the last public
+dnl -- release, then increment AGE.
+dnl --
+dnl -- 6. If any interfaces have been removed since the last public
+dnl -- release, then set AGE to 0.
+dnl ----------------------------------------------------------------------------
+HLVM_SO_CURRENT="0"
+HLVM_SO_REVISION="10"
+HLVM_SO_AGE="0"
+HLVM_SO_VERSION="${HLVM_SO_CURRENT}:${HLVM_SO_REVISION}:${HLVM_SO_AGE}"
+AC_SUBST(HLVM_SO_VERSION)
+AC_SUBST(HLVM_SO_CURRENT)
+AC_SUBST(HLVM_SO_REVISION)
+AC_SUBST(HLVM_SO_AGE)
+
+dnl ----------------------------------------------------------------------------
+dnl --
+dnl -- SECTION 2: Setup The Command Line Arguments For "configure"
+dnl --
+dnl ----------------------------------------------------------------------------
+dnl --
+dnl -- enable-sharedprefix: specifies that the installation prefix is shared
+dnl -- with other packages and that per-configuration directories should not
+dnl -- be created
+AC_MSG_CHECKING(whether to install in a shared prefix)
+AC_ARG_ENABLE(sharedprefix,
+ AS_HELP_STRING([--enable-sharedprefix],
+ [Install in a "--prefix" that is shared. (default=yes)]),
+ [case "${enableval}" in
+ yes) HLVM_SHAREDPREFIX=true;;
+ no) HLVM_SHAREDPREFIX=false;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-sharedprefix);;
+ esac],HLVM_SHAREDPREFIX=true)
+AC_MSG_RESULT($HLVM_SHAREDPREFIX)
+AC_SUBST(HLVM_SHAREDPREFIX)
+if test "$HLVM_SHAREDPREFIX" = true ; then
+ AC_DEFINE(HLVM_SHAREDPREFIX,[],
+ [Defined if all configurations share the same prefix])
+fi
+
+dnl -- enable-debug: specifies that the build be done with debug settings
+dnl -- which makes HLVM (potentially) much more verbose, larger, and slower
+dnl -- (but debuggable)
+AC_MSG_CHECKING(whether to build debug version of HLVM)
+AC_ARG_ENABLE(debug,
+ AS_HELP_STRING([--enable-debug],
+ [Build with debug settings (slower but debuggable). (default=no)]),
+ [case "${enableval}" in
+ yes) HLVM_DEBUG=true;;
+ no) HLVM_DEBUG=false;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-debug);;
+ esac],HLVM_DEBUG=false)
+AC_MSG_RESULT($HLVM_DEBUG)
+AC_SUBST(HLVM_DEBUG)
+
+dnl -- enable-optimize: specifies that the build be done top optimize the speed
+dnl -- of the resulting executables and libraries. Debugging generally will be
+dnl -- difficult with this kind of build.
+AC_MSG_CHECKING(whether to optimize compiliation of HLVM)
+AC_ARG_ENABLE(optimize,
+ AS_HELP_STRING([--enable-optimize],
+ [Optimized build (faster but less debuggable). (default=yes)]),
+ [case "${enableval}" in
+ yes) HLVM_OPTIMIZE=true;;
+ no) HLVM_OPTIMIZE=false;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-OPTIMIZE);;
+ esac], HLVM_OPTIMIZE=true)
+AC_MSG_RESULT($HLVM_OPTIMIZE)
+AC_SUBST(HLVM_OPTIMIZE)
+
+dnl -- enable-inline: specifies that the build use inline functions or not
+dnl -- inline functions make HLVM much faster but harder to debug
+AC_MSG_CHECKING(whether to use inline functions)
+AC_ARG_ENABLE(INLINE,
+ AS_HELP_STRING([--enable-inline],
+ [Build with inline functions. (default=yes)]),
+ [case "${enableval}" in
+ yes) HLVM_INLINE=true;;
+ no) HLVM_INLINE=false;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-inline);;
+ esac],HLVM_INLINE=true)
+AC_MSG_RESULT($HLVM_INLINE)
+AC_SUBST(HLVM_INLINE)
+
+dnl -- enable-assert: specifies that the build use assertion checks
+dnl -- Building with assertions is safer but slower
+AC_MSG_CHECKING(whether to perform assertion checking)
+AC_ARG_ENABLE(ASSERT,
+ AS_HELP_STRING([--enable-assert],
+ [Build with inline functions. (default=yes)]),
+ [case "${enableval}" in
+ yes) HLVM_ASSERT=true;;
+ no) HLVM_ASSERT=false;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-assert);;
+ esac],HLVM_ASSERT=true)
+AC_MSG_RESULT($HLVM_ASSERT)
+AC_SUBST(HLVM_ASSERT)
+
+dnl -- enable-trace: specifies that the build permit runtime tracing
+dnl -- This is useful for debugging but will produce MUCH larger executable
+AC_MSG_CHECKING(whether to allow runtime tracing)
+AC_ARG_ENABLE(TRACE,
+ AS_HELP_STRING([--enable-trace],[Build with tracing support. (default=no)]),
+ [case "${enableval}" in
+ yes) HLVM_TRACE=true;;
+ no) HLVM_TRACE=false;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-trace);;
+ esac],HLVM_TRACE=false)
+AC_MSG_RESULT($HLVM_TRACE)
+AC_SUBST(HLVM_TRACE)
+
+dnl -- enable-small: specifies that the build should be done to make HLVM
+dnl -- as small as possible, omitting non-essential features to reduce memory
+dnl -- footprint.
+AC_MSG_CHECKING(whether to build a small version of HLVM)
+AC_ARG_ENABLE(SMALL,
+ AS_HELP_STRING([--enable-small],
+ [Optimize for smaller executable rather than speed. (default=no)]),
+ [case "${enableval}" in
+ yes) HLVM_SMALL=true;;
+ no) HLVM_SMALL=false;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-small);;
+ esac],HLVM_SMALL=false)
+AC_MSG_RESULT($HLVM_SMALL)
+AC_SUBST(HLVM_SMALL)
+
+dnl -- enable-efence: specifies that Electric Fence should be used for malloc(3)
+dnl -- and related functions to catch memory overrun/underrun errors. When not
+dnl -- enabled, the standard system malloc(3) is used.
+AC_MSG_CHECKING(whether to use Electric Fence)
+AC_ARG_ENABLE(efence,
+ AS_HELP_STRING([--enable-efence],
+ [Build with Electric Fence support. (default=no)]),
+ [case "${enableval}" in
+ yes) HLVM_EFENCE=true;;
+ no) HLVM_EFENCE=false;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-efence);;
+ esac],HLVM_EFENCE=false)
+AC_MSG_RESULT($HLVM_EFENCE)
+AC_SUBST(HLVM_EFENCE)
+
+dnl -- enable-profiling: specifies that the build should create a profiling
+dnl -- executable. The compiler will be passed the -pg switch so that call
+dnl -- graph profiles are generated
+AC_MSG_CHECKING(whether to build with profiling enabled)
+AC_ARG_ENABLE(profiling,
+ AS_HELP_STRING([--enable-profiling],
+ [Build with profiling enabled. (default=no)]),
+ [case "${enableval}" in
+ yes) HLVM_PROFILING=true;;
+ no) HLVM_PROFILING=false;;
+ *) AC_MSG_ERROR(bad value ${enableval} for --enable-profiling);;
+ esac],HLVM_PROFILING=false)
+AC_MSG_RESULT($HLVM_PROFILING)
+AC_SUBST(HLVM_PROFILING)
+
+dnl -- with-workspace: specifies the location of where workspaces are to be
+dnl -- stored
+AC_MSG_CHECKING(location of HLVM workspace)
+AC_ARG_WITH(workspace,
+ AS_HELP_STRING([--with-workspace=<dir>],
+ [dir=location of the HLVM workspace storage (default=/opt/hlvm)]),
+ [case "${withval}" in
+ /*|*/*) HLVM_WITH_WORKSPACE=$withval ;;
+ *) AC_MSG_ERROR(bad value ${withval} for --with-WORKSPACE) ;;
+ esac],[HLVM_WITH_WORKSPACE=/opt/hlvm])
+AC_MSG_RESULT($HLVM_WITH_WORKSPACE)
+AC_SUBST(HLVM_WITH_WORKSPACE)
+
+dnl -- with-expat: specifies the location of the expat library
+AC_MSG_CHECKING(location of expat library)
+AC_ARG_WITH(expat,
+ AS_HELP_STRING([--with-expat=<dir>],
+ [Specify where the expat lbrary is located (default=/usr/local)]),
+ [case "${withval}" in
+ /*) HLVM_WITH_EXPAT=$withval ;;
+ *) AC_MSG_ERROR(bad value ${withval} for --with-expat) ;;
+ esac],[HLVM_WITH_EXPAT=/usr])
+AC_MSG_RESULT($HLVM_WITH_EXPAT)
+AC_SUBST(HLVM_WITH_EXPAT)
+
+dnl -- with-includes: specifies the location of additional header file dirs
+AC_MSG_CHECKING(location of additional header files)
+AC_ARG_WITH(includes,
+ AS_HELP_STRING([--with-includes=-I<dir>...],
+ [Specify additional header file directories (efault=none)]),
+ [case "${withval}" in
+ -I/*) HLVM_WITH_INCLUDES=$withval ;;
+ *) AC_MSG_ERROR(bad value ${withval} for --with-includes) ;;
+ esac],[HLVM_WITH_INCLUDES=])
+AC_MSG_RESULT($HLVM_WITH_INCLUDES)
+AC_SUBST(HLVM_WITH_INCLUDES)
+dnl Set up the CPPFLAGS to include the --with places
+CPPFLAGS="-D_REENTRANT -D_GNU_SOURCE $HLVM_WITH_INCLUDES"
+
+dnl -- with-llvm-src: specifies the location of the LLVM header files
+AC_MSG_CHECKING(location of LLVM source code)
+AC_ARG_WITH(llvm-src,
+ AS_HELP_STRING([--with-llvm-src=<dir>],
+ [dir=the location of LLVM sources (default=/usr)]),
+ [case "${withval}" in
+ /*|*/*) HLVM_WITH_LLVM_SRC=$withval ;;
+ *) AC_MSG_ERROR(bad value ${withval} for --with-llvm-src) ;;
+ esac],[HLVM_WITH_LLVM_SRC=/usr])
+AC_MSG_RESULT($HLVM_WITH_LLVM_SRC)
+AC_SUBST(HLVM_WITH_LLVM_SRC)
+
+dnl -- with-llvm-obj: specifies the location of the LLVM object files
+AC_MSG_CHECKING(location of LLVM object code)
+AC_ARG_WITH(llvm-obj,
+ AS_HELP_STRING([--with-llvm-obj=<dir>],
+ [dir=the location of LLVM objects directory (default=/usr)]),
+ [case "${withval}" in
+ /*|*/*) HLVM_WITH_LLVM_OBJ=$withval ;;
+ *) AC_MSG_ERROR(bad value ${withval} for --with-llvm-obj) ;;
+ esac],[HLVM_WITH_LLVM_OBJ=/usr])
+AC_MSG_RESULT($HLVM_WITH_LLVM_OBJ)
+AC_SUBST(HLVM_WITH_LLVM_OBJ)
+
+dnl -- with-llvm-gcc: specifies the location of the llvm-gcc Compiler
+AC_MSG_CHECKING(location of LLVM GCC compiler)
+AC_ARG_WITH(llvm-gcc,
+ AS_HELP_STRING([--with-llvm-gcc=<dir>],
+ [dir=the location of LLVM's llvm-gcc compiler (default=use normal gcc)]),
+ [case "${withval}" in
+ /*|*/*) HLVM_WITH_LLVMGCC=$withval ;;
+ *) AC_MSG_ERROR(bad value ${withval} for --with-llvmgcc) ;;
+ esac],[HLVM_WITH_LLVMGCC=""])
+AC_MSG_RESULT($HLVM_WITH_LLVMGCC)
+AC_SUBST(HLVM_WITH_LLVMGCC)
+dnl ----------------------------------------------------------------------------
+dnl --
+dnl -- SECTION 3: Check For Programs We Need
+dnl --
+dnl ----------------------------------------------------------------------------
+
+dnl -- Check for the various programs needed for building and installing HLVM
+dnl -- Perl is our choice for utility scripts because of its flexibility and
+dnl -- wide platform support
+AC_PROG_CPP
+AC_PROG_CC(gcc)
+AC_PROG_CXX(g++)
+AC_CHECK_GNU_MAKE
+dnl AC_PATH_PROG(path_EGREP, egrep, egrep)
+dnl AC_PATH_PROG(path_GPERF, gperf, gperf)
+dnl AC_PATH_PROG(path_GPP, g++, g++)
+dnl AC_PATH_PROG(path_GPROF, gprof, gprof)
+dnl AC_PATH_PROG(path_PERL, perl, perl)
+dnl AC_PATH_PROG(path_PKGDATA, pkgdata, pkgdata)
+dnl AC_PATH_PROG(path_SORT, sort, sort)
+dnl AC_PATH_PROG(path_UNIQ, uniq, uniq)
+
+dnl ----------------------------------------------------------------------------
+dnl --
+dnl -- SECTION 4: Check For Needed Libraries
+dnl --
+dnl ----------------------------------------------------------------------------
+
+dnl -- Check for specific libraries we depend on.
+LDFLAGS="-L${HLVM_WITH_LLVM_OBJ}/lib/Debug -L${prefix}/lib -L/usr/local/lib ${LDFLAGS}"
+if test "$HLVM_EFENCE" = true ; then
+ AC_CHECK_LIB(efence,malloc,,
+ AC_MSG_ERROR(Electric Fence library is required: -lefence) )
+fi
+dnl AC_CACHE_VAL(hlvm_cv_lib_c_ok,
+dnl [AC_CHECK_LIB(c,exit,,
+dnl AC_MSG_ERROR(Standard C Library is required: -lc)) ])
+dnl AC_CACHE_VAL(hlvm_cv_lib_m_ok,
+dnl [AC_CHECK_LIB(m,floor,,
+dnl AC_MSG_ERROR(Standard Math Library is required: -lm)) ])
+if test "$HLVM_WITH_EXPAT" = "/usr" ; then
+AC_CACHE_VAL(ac_cv_lib_expat_ok,
+ [AC_CHECK_LIB(expat,XML_Parse,,
+ AC_MSG_ERROR(expat Library is required: -lexpat)) ])
+else
+ if test -r "$HLVM_WITH_EXPAT/libexpat.la" ; then
+ LIBS="$HLVM_WITH_EXPAT/libexpat.la $LIBS"
+ else
+ AC_MSG_ERROR([Can't find libexpat.la])
+ fi
+fi
+
+dnl ----------------------------------------------------------------------------
+dnl --
+dnl -- SECTION 5: Check For Needed Header Files
+dnl --
+dnl ----------------------------------------------------------------------------
+AC_CHECK_HEADERS([apr-1/apr.h expat.h llvm/Module.h])
+
+dnl ----------------------------------------------------------------------------
+dnl --
+dnl -- SECTION 6: HLVM Project specific configuration
+dnl --
+dnl ----------------------------------------------------------------------------
+
+HLVM_CFGNAME=""
+if test "$HLVM_SMALL" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}S" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}s" ; fi
+if test "$HLVM_TRACE" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}T" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}t" ; fi
+if test "$HLVM_ASSERT" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}A" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}a" ; fi
+if test "$HLVM_DEBUG" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}D" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}d" ; fi
+if test "$HLVM_INLINE" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}I" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}i" ; fi
+if test "$HLVM_OPTIMIZE" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}O" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}o" ; fi
+AC_SUBST(HLVM_CFGNAME)
+
+if test "$HLVM_SHAREDPREFIX" = false ; then
+ AC_MSG_NOTICE([Configuring For Unique Installation])
+ eval HLVM_PREFIX="${prefix}/${HLVM_CFGNAME}"
+ if test "${exec_prefix}" = "NONE"; then
+ eval HLVM_EXEC_PREFIX="${prefix}/${HLVM_CFGNAME}"
+ else
+ eval HLVM_EXEC_PREFIX="${exec_prefix}/${HLVM_CFGNAME}"
+ fi
+else
+ AC_MSG_NOTICE([Configuring For Shared Installation: ${HLVM_CFGNAME}])
+ eval HLVM_PREFIX="${prefix}"
+ if test "${exec_prefix}" = "NONE"; then
+ eval HLVM_EXEC_PREFIX="${prefix}"
+ else
+ eval HLVM_EXEC_PREFIX="${exec_prefix}"
+ fi
+fi
+
+dnl Check the --with-* variables for sanity
+dnl if test \! -f "$HLVM_WITH_LLVM_SRC/lib/VMCore/Module.cpp" ; then
+dnl AC_MSG_ERROR([LLVM sources are not in $HLVM_WITH_LLVM_SRC])
+dnl fi
+dnl if test \! -f "$HLVM_WITH_LLVM_OBJ/Makefile.config" ; then
+dnl AC_MSG_ERROR([LLVM objects are not in $HLVM_WITH_LLVM_OBJ])
+dnl fi
+
+HLVM_CONFIGTIME=`date`
+AC_SUBST(HLVM_CONFIGTIME)
+HLVM_PREFIX="$prefix"
+AC_SUBST(HLVM_PREFIX)
+
+dnl ----------------------------------------------------------------------------
+dnl --
+dnl -- SECTION 7: Output the configure script and makefiles.
+dnl --
+dnl ----------------------------------------------------------------------------
+
+AC_CONFIG_HEADER([hlvm/Base/Config.h])
+AC_CONFIG_FILES([VERSION Makefile.config docs/Doxyfile])
+AC_CONFIG_FILES([hlvm/Base/ConfigData.cpp])
+AC_CONFIG_MAKEFILE(Makefile)
+AC_CONFIG_MAKEFILE(Makefile.hlvm)
+AC_CONFIG_MAKEFILE(docs/Makefile)
+AC_CONFIG_MAKEFILE(hlvm/Makefile)
+AC_CONFIG_MAKEFILE(tools/Makefile)
+AC_CONFIG_MAKEFILE(test/Makefile)
dnl This must be last
AC_OUTPUT
+echo ""
+echo "Configuration of HLVM is now finished."
+echo ""
Added: hlvm/trunk/autoconf/install-sh
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/autoconf/install-sh?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/autoconf/install-sh (added)
+++ hlvm/trunk/autoconf/install-sh Sat Jul 7 18:58:30 2007
@@ -0,0 +1,322 @@
+#!/bin/sh
+# install - install a program, script, or datafile
+
+scriptversion=2004-09-10.20
+
+# This originates from X11R5 (mit/util/scripts/install.sh), which was
+# later released in X11R6 (xc/config/util/install.sh) with the
+# following copyright and license.
+#
+# Copyright (C) 1994 X Consortium
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
+# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+# Except as contained in this notice, the name of the X Consortium shall not
+# be used in advertising or otherwise to promote the sale, use or other deal-
+# ings in this Software without prior written authorization from the X Consor-
+# tium.
+#
+#
+# FSF changes to this file are in the public domain.
+#
+# Calling this script install-sh is preferred over install.sh, to prevent
+# `make' implicit rules from creating a file called install from it
+# when there is no Makefile.
+#
+# This script is compatible with the BSD install script, but was written
+# from scratch. It can only install one file at a time, a restriction
+# shared with many OS's install programs.
+
+# set DOITPROG to echo to test this script
+
+# Don't use :- since 4.3BSD and earlier shells don't like it.
+doit="${DOITPROG-}"
+
+# put in absolute paths if you don't have them in your path; or use env. vars.
+
+mvprog="${MVPROG-mv}"
+cpprog="${CPPROG-cp}"
+chmodprog="${CHMODPROG-chmod}"
+chownprog="${CHOWNPROG-chown}"
+chgrpprog="${CHGRPPROG-chgrp}"
+stripprog="${STRIPPROG-strip}"
+rmprog="${RMPROG-rm}"
+mkdirprog="${MKDIRPROG-mkdir}"
+
+chmodcmd="$chmodprog 0755"
+chowncmd=
+chgrpcmd=
+stripcmd=
+rmcmd="$rmprog -f"
+mvcmd="$mvprog"
+src=
+dst=
+dir_arg=
+dstarg=
+no_target_directory=
+
+usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
+ or: $0 [OPTION]... SRCFILES... DIRECTORY
+ or: $0 [OPTION]... -t DIRECTORY SRCFILES...
+ or: $0 [OPTION]... -d DIRECTORIES...
+
+In the 1st form, copy SRCFILE to DSTFILE.
+In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
+In the 4th, create DIRECTORIES.
+
+Options:
+-c (ignored)
+-d create directories instead of installing files.
+-g GROUP $chgrpprog installed files to GROUP.
+-m MODE $chmodprog installed files to MODE.
+-o USER $chownprog installed files to USER.
+-s $stripprog installed files.
+-t DIRECTORY install into DIRECTORY.
+-T report an error if DSTFILE is a directory.
+--help display this help and exit.
+--version display version info and exit.
+
+Environment variables override the default commands:
+ CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
+"
+
+while test -n "$1"; do
+ case $1 in
+ -c) shift
+ continue;;
+
+ -d) dir_arg=true
+ shift
+ continue;;
+
+ -g) chgrpcmd="$chgrpprog $2"
+ shift
+ shift
+ continue;;
+
+ --help) echo "$usage"; exit 0;;
+
+ -m) chmodcmd="$chmodprog $2"
+ shift
+ shift
+ continue;;
+
+ -o) chowncmd="$chownprog $2"
+ shift
+ shift
+ continue;;
+
+ -s) stripcmd=$stripprog
+ shift
+ continue;;
+
+ -t) dstarg=$2
+ shift
+ shift
+ continue;;
+
+ -T) no_target_directory=true
+ shift
+ continue;;
+
+ --version) echo "$0 $scriptversion"; exit 0;;
+
+ *) # When -d is used, all remaining arguments are directories to create.
+ # When -t is used, the destination is already specified.
+ test -n "$dir_arg$dstarg" && break
+ # Otherwise, the last argument is the destination. Remove it from $@.
+ for arg
+ do
+ if test -n "$dstarg"; then
+ # $@ is not empty: it contains at least $arg.
+ set fnord "$@" "$dstarg"
+ shift # fnord
+ fi
+ shift # arg
+ dstarg=$arg
+ done
+ break;;
+ esac
+done
+
+if test -z "$1"; then
+ if test -z "$dir_arg"; then
+ echo "$0: no input file specified." >&2
+ exit 1
+ fi
+ # It's OK to call `install-sh -d' without argument.
+ # This can happen when creating conditional directories.
+ exit 0
+fi
+
+for src
+do
+ # Protect names starting with `-'.
+ case $src in
+ -*) src=./$src ;;
+ esac
+
+ if test -n "$dir_arg"; then
+ dst=$src
+ src=
+
+ if test -d "$dst"; then
+ mkdircmd=:
+ chmodcmd=
+ else
+ mkdircmd=$mkdirprog
+ fi
+ else
+ # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
+ # might cause directories to be created, which would be especially bad
+ # if $src (and thus $dsttmp) contains '*'.
+ if test ! -f "$src" && test ! -d "$src"; then
+ echo "$0: $src does not exist." >&2
+ exit 1
+ fi
+
+ if test -z "$dstarg"; then
+ echo "$0: no destination specified." >&2
+ exit 1
+ fi
+
+ dst=$dstarg
+ # Protect names starting with `-'.
+ case $dst in
+ -*) dst=./$dst ;;
+ esac
+
+ # If destination is a directory, append the input filename; won't work
+ # if double slashes aren't ignored.
+ if test -d "$dst"; then
+ if test -n "$no_target_directory"; then
+ echo "$0: $dstarg: Is a directory" >&2
+ exit 1
+ fi
+ dst=$dst/`basename "$src"`
+ fi
+ fi
+
+ # This sed command emulates the dirname command.
+ dstdir=`echo "$dst" | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
+
+ # Make sure that the destination directory exists.
+
+ # Skip lots of stat calls in the usual case.
+ if test ! -d "$dstdir"; then
+ defaultIFS='
+ '
+ IFS="${IFS-$defaultIFS}"
+
+ oIFS=$IFS
+ # Some sh's can't handle IFS=/ for some reason.
+ IFS='%'
+ set - `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
+ IFS=$oIFS
+
+ pathcomp=
+
+ while test $# -ne 0 ; do
+ pathcomp=$pathcomp$1
+ shift
+ if test ! -d "$pathcomp"; then
+ $mkdirprog "$pathcomp"
+ # mkdir can fail with a `File exist' error in case several
+ # install-sh are creating the directory concurrently. This
+ # is OK.
+ test -d "$pathcomp" || exit
+ fi
+ pathcomp=$pathcomp/
+ done
+ fi
+
+ if test -n "$dir_arg"; then
+ $doit $mkdircmd "$dst" \
+ && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
+ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
+ && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
+ && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
+
+ else
+ dstfile=`basename "$dst"`
+
+ # Make a couple of temp file names in the proper directory.
+ dsttmp=$dstdir/_inst.$$_
+ rmtmp=$dstdir/_rm.$$_
+
+ # Trap to clean up those temp files at exit.
+ trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
+ trap '(exit $?); exit' 1 2 13 15
+
+ # Copy the file name to the temp name.
+ $doit $cpprog "$src" "$dsttmp" &&
+
+ # and set any options; do chmod last to preserve setuid bits.
+ #
+ # If any of these fail, we abort the whole thing. If we want to
+ # ignore errors from any of these, just make sure not to ignore
+ # errors from the above "$doit $cpprog $src $dsttmp" command.
+ #
+ { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
+ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
+ && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
+ && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
+
+ # Now rename the file to the real destination.
+ { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
+ || {
+ # The rename failed, perhaps because mv can't rename something else
+ # to itself, or perhaps because mv is so ancient that it does not
+ # support -f.
+
+ # Now remove or move aside any old file at destination location.
+ # We try this two ways since rm can't unlink itself on some
+ # systems and the destination file might be busy for other
+ # reasons. In this case, the final cleanup might fail but the new
+ # file should still install successfully.
+ {
+ if test -f "$dstdir/$dstfile"; then
+ $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
+ || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
+ || {
+ echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
+ (exit 1); exit
+ }
+ else
+ :
+ fi
+ } &&
+
+ # Now rename the file to the real destination.
+ $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
+ }
+ }
+ fi || { (exit 1); exit; }
+done
+
+# The final little trick to "correctly" pass the exit status to the exit trap.
+{
+ (exit 0); exit
+}
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
Propchange: hlvm/trunk/autoconf/install-sh
------------------------------------------------------------------------------
svn:executable = *
Added: hlvm/trunk/autoconf/m4/check_gnu_make.m4
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/autoconf/m4/check_gnu_make.m4?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/autoconf/m4/check_gnu_make.m4 (added)
+++ hlvm/trunk/autoconf/m4/check_gnu_make.m4 Sat Jul 7 18:58:30 2007
@@ -0,0 +1,26 @@
+#
+# Check for GNU Make. This is originally from
+# http://www.gnu.org/software/ac-archive/htmldoc/check_gnu_make.html
+#
+AC_DEFUN([AC_CHECK_GNU_MAKE],
+[AC_CACHE_CHECK([for GNU make],[llvm_cv_gnu_make_command],
+dnl Search all the common names for GNU make
+[llvm_cv_gnu_make_command=''
+ for a in "$MAKE" make gmake gnumake ; do
+ if test -z "$a" ; then continue ; fi ;
+ if ( sh -c "$a --version" 2> /dev/null | grep GNU 2>&1 > /dev/null )
+ then
+ llvm_cv_gnu_make_command=$a ;
+ break;
+ fi
+ done])
+dnl If there was a GNU version, then set @ifGNUmake@ to the empty string,
+dnl '#' otherwise
+ if test "x$llvm_cv_gnu_make_command" != "x" ; then
+ ifGNUmake='' ;
+ else
+ ifGNUmake='#' ;
+ AC_MSG_RESULT("Not found");
+ fi
+ AC_SUBST(ifGNUmake)
+])
Modified: hlvm/trunk/autoconf/m4/config_makefile.m4
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/autoconf/m4/config_makefile.m4?rev=37974&r1=37973&r2=37974&view=diff
==============================================================================
--- hlvm/trunk/autoconf/m4/config_makefile.m4 (original)
+++ hlvm/trunk/autoconf/m4/config_makefile.m4 Sat Jul 7 18:58:30 2007
@@ -3,7 +3,5 @@
# date. This macro is unique to LLVM.
#
AC_DEFUN([AC_CONFIG_MAKEFILE],
-[AC_CONFIG_COMMANDS($1,
- [${llvm_src}/autoconf/mkinstalldirs `dirname $1`
- ${SHELL} ${llvm_src}/autoconf/install-sh -c ${srcdir}/$1 $1])
+[AC_CONFIG_COMMANDS($1,${SHELL} ${srcdir}/autoconf/install-sh -c ${srcdir}/$1 $1,${srcdir}/autoconf/mkinstalldirs `dirname $1`)
])
Added: hlvm/trunk/autoconf/m4/find_std_program.m4
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/autoconf/m4/find_std_program.m4?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/autoconf/m4/find_std_program.m4 (added)
+++ hlvm/trunk/autoconf/m4/find_std_program.m4 Sat Jul 7 18:58:30 2007
@@ -0,0 +1,118 @@
+dnl Check for a standard program that has a bin, include and lib directory
+dnl
+dnl Parameters:
+dnl $1 - prefix directory to check
+dnl $2 - program name to check
+dnl $3 - header file to check
+dnl $4 - library file to check
+AC_DEFUN([CHECK_STD_PROGRAM],
+[m4_define([allcapsname],translit($2,a-z,A-Z))
+if test -n "$1" -a -d "$1" -a -n "$2" -a -d "$1/bin" -a -x "$1/bin/$2" ; then
+ AC_SUBST([USE_]allcapsname(),["USE_]allcapsname()[ = 1"])
+ AC_SUBST(allcapsname(),[$1/bin/$2])
+ AC_SUBST(allcapsname()[_BIN],[$1/bin])
+ AC_SUBST(allcapsname()[_DIR],[$1])
+ if test -n "$3" -a -d "$1/include" -a -f "$1/include/$3" ; then
+ AC_SUBST(allcapsname()[_INC],[$1/include])
+ fi
+ if test -n "$4" -a -d "$1/lib" -a -f "$1/lib/$4" ; then
+ AC_SUBST(allcapsname()[_LIB],[$1/lib])
+ fi
+fi
+])
+
+dnl Find a program via --with options, in the path, or well known places
+dnl
+dnl Parameters:
+dnl $1 - program's executable name
+dnl $2 - header file name to check (optional)
+dnl $3 - library file name to check (optional)
+dnl $4 - alternate (long) name for the program
+AC_DEFUN([FIND_STD_PROGRAM],
+[m4_define([allcapsname],translit($1,a-z,A-Z))
+m4_define([stdprog_long_name],ifelse($4,,translit($1,[ !@#$%^&*()-+={}[]:;"',./?],[-]),translit($4,[ !@#$%^&*()-+={}[]:;"',./?],[-])))
+AC_MSG_CHECKING([for ]stdprog_long_name()[ bin/lib/include locations])
+AC_ARG_WITH($1,
+ AS_HELP_STRING([--with-]stdprog_long_name()[=DIR],
+ [Specify that the ]stdprog_long_name()[ install prefix is DIR]),
+ $1[pfxdir=$withval],$1[pfxdir=nada])
+AC_ARG_WITH($1[-bin],
+ AS_HELP_STRING([--with-]stdprog_long_name()[-bin=DIR],
+ [Specify that the ]stdprog_long_name()[ binary is in DIR]),
+ $1[bindir=$withval],$1[bindir=nada])
+AC_ARG_WITH($1[-lib],
+ AS_HELP_STRING([--with-]stdprog_long_name()[-lib=DIR],
+ [Specify that ]stdprog_long_name()[ libraries are in DIR]),
+ $1[libdir=$withval],$1[libdir=nada])
+AC_ARG_WITH($1[-inc],
+ AS_HELP_STRING([--with-]stdprog_long_name()[-inc=DIR],
+ [Specify that the ]stdprog_long_name()[ includes are in DIR]),
+ $1[incdir=$withval],$1[incdir=nada])
+eval pfxval=\$\{$1pfxdir\}
+eval binval=\$\{$1bindir\}
+eval incval=\$\{$1incdir\}
+eval libvar=\$\{$1libdir\}
+if test "${pfxval}" != "nada" ; then
+ CHECK_STD_PROGRAM(${pfxval},$1,$2,$3)
+elif test "${binval}" != "nada" ; then
+ if test "${libval}" != "nada" ; then
+ if test "${incval}" != "nada" ; then
+ if test -d "${binval}" ; then
+ if test -d "${incval}" ; then
+ if test -d "${libval}" ; then
+ AC_SUBST(allcapsname(),${binval}/$1)
+ AC_SUBST(allcapsname()[_BIN],${binval})
+ AC_SUBST(allcapsname()[_INC],${incval})
+ AC_SUBST(allcapsname()[_LIB],${libval})
+ AC_SUBST([USE_]allcapsname(),[1])
+ AC_MSG_RESULT([found via --with options])
+ else
+ AC_MSG_RESULT([failed])
+ AC_MSG_ERROR([The --with-]$1[-libdir value must be a directory])
+ fi
+ else
+ AC_MSG_RESULT([failed])
+ AC_MSG_ERROR([The --with-]$1[-incdir value must be a directory])
+ fi
+ else
+ AC_MSG_RESULT([failed])
+ AC_MSG_ERROR([The --with-]$1[-bindir value must be a directory])
+ fi
+ else
+ AC_MSG_RESULT([failed])
+ AC_MSG_ERROR([The --with-]$1[-incdir option must be specified])
+ fi
+ else
+ AC_MSG_RESULT([failed])
+ AC_MSG_ERROR([The --with-]$1[-libdir option must be specified])
+ fi
+else
+ tmppfxdir=`which $1 2>&1`
+ if test -n "$tmppfxdir" -a -d "${tmppfxdir%*$1}" -a \
+ -d "${tmppfxdir%*$1}/.." ; then
+ tmppfxdir=`cd "${tmppfxdir%*$1}/.." ; pwd`
+ CHECK_STD_PROGRAM($tmppfxdir,$1,$2,$3)
+ AC_MSG_RESULT([found in PATH at ]$tmppfxdir)
+ else
+ checkresult="yes"
+ eval checkval=\$\{"USE_"allcapsname()\}
+ CHECK_STD_PROGRAM([/usr],$1,$2,$3)
+ if test -z "${checkval}" ; then
+ CHECK_STD_PROGRAM([/usr/local],$1,$2,$3)
+ if test -z "${checkval}" ; then
+ CHECK_STD_PROGRAM([/sw],$1,$2,$3)
+ if test -z "${checkval}" ; then
+ CHECK_STD_PROGRAM([/opt],$1,$2,$3)
+ if test -z "${checkval}" ; then
+ CHECK_STD_PROGRAM([/],$1,$2,$3)
+ if test -z "${checkval}" ; then
+ checkresult="no"
+ fi
+ fi
+ fi
+ fi
+ fi
+ AC_MSG_RESULT($checkresult)
+ fi
+fi
+])
Added: hlvm/trunk/autoconf/m4/path_perl.m4
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/autoconf/m4/path_perl.m4?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/autoconf/m4/path_perl.m4 (added)
+++ hlvm/trunk/autoconf/m4/path_perl.m4 Sat Jul 7 18:58:30 2007
@@ -0,0 +1,16 @@
+dnl Check for a reasonable version of Perl.
+dnl $1 - Minimum Perl version. Typically 5.006.
+dnl
+AC_DEFUN([LLVM_PROG_PERL], [
+AC_PATH_PROG(PERL, [perl], [none])
+if test "$PERL" != "none"; then
+ AC_MSG_CHECKING(for Perl $1 or newer)
+ if $PERL -e 'use $1;' 2>&1 > /dev/null; then
+ AC_MSG_RESULT(yes)
+ else
+ PERL=none
+ AC_MSG_RESULT(not found)
+ fi
+fi
+])
+
Added: hlvm/trunk/autoconf/missing
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/autoconf/missing?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/autoconf/missing (added)
+++ hlvm/trunk/autoconf/missing Sat Jul 7 18:58:30 2007
@@ -0,0 +1,353 @@
+#! /bin/sh
+# Common stub for a few missing GNU programs while installing.
+
+scriptversion=2004-09-07.08
+
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004
+# Free Software Foundation, Inc.
+# Originally by Fran,cois Pinard <pinard at iro.umontreal.ca>, 1996.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
+# 02111-1307, USA.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+if test $# -eq 0; then
+ echo 1>&2 "Try \`$0 --help' for more information"
+ exit 1
+fi
+
+run=:
+
+# In the cases where this matters, `missing' is being run in the
+# srcdir already.
+if test -f configure.ac; then
+ configure_ac=configure.ac
+else
+ configure_ac=configure.in
+fi
+
+msg="missing on your system"
+
+case "$1" in
+--run)
+ # Try to run requested program, and just exit if it succeeds.
+ run=
+ shift
+ "$@" && exit 0
+ # Exit code 63 means version mismatch. This often happens
+ # when the user try to use an ancient version of a tool on
+ # a file that requires a minimum version. In this case we
+ # we should proceed has if the program had been absent, or
+ # if --run hadn't been passed.
+ if test $? = 63; then
+ run=:
+ msg="probably too old"
+ fi
+ ;;
+
+ -h|--h|--he|--hel|--help)
+ echo "\
+$0 [OPTION]... PROGRAM [ARGUMENT]...
+
+Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
+error status if there is no known handling for PROGRAM.
+
+Options:
+ -h, --help display this help and exit
+ -v, --version output version information and exit
+ --run try to run the given command, and emulate it if it fails
+
+Supported PROGRAM values:
+ aclocal touch file \`aclocal.m4'
+ autoconf touch file \`configure'
+ autoheader touch file \`config.h.in'
+ automake touch all \`Makefile.in' files
+ bison create \`y.tab.[ch]', if possible, from existing .[ch]
+ flex create \`lex.yy.c', if possible, from existing .c
+ help2man touch the output file
+ lex create \`lex.yy.c', if possible, from existing .c
+ makeinfo touch the output file
+ tar try tar, gnutar, gtar, then tar without non-portable flags
+ yacc create \`y.tab.[ch]', if possible, from existing .[ch]
+
+Send bug reports to <bug-automake at gnu.org>."
+ exit 0
+ ;;
+
+ -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
+ echo "missing $scriptversion (GNU Automake)"
+ exit 0
+ ;;
+
+ -*)
+ echo 1>&2 "$0: Unknown \`$1' option"
+ echo 1>&2 "Try \`$0 --help' for more information"
+ exit 1
+ ;;
+
+esac
+
+# Now exit if we have it, but it failed. Also exit now if we
+# don't have it and --version was passed (most likely to detect
+# the program).
+case "$1" in
+ lex|yacc)
+ # Not GNU programs, they don't have --version.
+ ;;
+
+ tar)
+ if test -n "$run"; then
+ echo 1>&2 "ERROR: \`tar' requires --run"
+ exit 1
+ elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+ exit 1
+ fi
+ ;;
+
+ *)
+ if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
+ # We have it, but it failed.
+ exit 1
+ elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+ # Could not run --version or --help. This is probably someone
+ # running `$TOOL --version' or `$TOOL --help' to check whether
+ # $TOOL exists and not knowing $TOOL uses missing.
+ exit 1
+ fi
+ ;;
+esac
+
+# If it does not exist, or fails to run (possibly an outdated version),
+# try to emulate it.
+case "$1" in
+ aclocal*)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`acinclude.m4' or \`${configure_ac}'. You might want
+ to install the \`Automake' and \`Perl' packages. Grab them from
+ any GNU archive site."
+ touch aclocal.m4
+ ;;
+
+ autoconf)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`${configure_ac}'. You might want to install the
+ \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
+ archive site."
+ touch configure
+ ;;
+
+ autoheader)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`acconfig.h' or \`${configure_ac}'. You might want
+ to install the \`Autoconf' and \`GNU m4' packages. Grab them
+ from any GNU archive site."
+ files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
+ test -z "$files" && files="config.h"
+ touch_files=
+ for f in $files; do
+ case "$f" in
+ *:*) touch_files="$touch_files "`echo "$f" |
+ sed -e 's/^[^:]*://' -e 's/:.*//'`;;
+ *) touch_files="$touch_files $f.in";;
+ esac
+ done
+ touch $touch_files
+ ;;
+
+ automake*)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
+ You might want to install the \`Automake' and \`Perl' packages.
+ Grab them from any GNU archive site."
+ find . -type f -name Makefile.am -print |
+ sed 's/\.am$/.in/' |
+ while read f; do touch "$f"; done
+ ;;
+
+ autom4te)
+ echo 1>&2 "\
+WARNING: \`$1' is needed, but is $msg.
+ You might have modified some files without having the
+ proper tools for further handling them.
+ You can get \`$1' as part of \`Autoconf' from any GNU
+ archive site."
+
+ file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
+ test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
+ if test -f "$file"; then
+ touch $file
+ else
+ test -z "$file" || exec >$file
+ echo "#! /bin/sh"
+ echo "# Created by GNU Automake missing as a replacement of"
+ echo "# $ $@"
+ echo "exit 0"
+ chmod +x $file
+ exit 1
+ fi
+ ;;
+
+ bison|yacc)
+ echo 1>&2 "\
+WARNING: \`$1' $msg. You should only need it if
+ you modified a \`.y' file. You may need the \`Bison' package
+ in order for those modifications to take effect. You can get
+ \`Bison' from any GNU archive site."
+ rm -f y.tab.c y.tab.h
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.y)
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.c
+ fi
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.h
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f y.tab.h ]; then
+ echo >y.tab.h
+ fi
+ if [ ! -f y.tab.c ]; then
+ echo 'main() { return 0; }' >y.tab.c
+ fi
+ ;;
+
+ lex|flex)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a \`.l' file. You may need the \`Flex' package
+ in order for those modifications to take effect. You can get
+ \`Flex' from any GNU archive site."
+ rm -f lex.yy.c
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.l)
+ SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" lex.yy.c
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f lex.yy.c ]; then
+ echo 'main() { return 0; }' >lex.yy.c
+ fi
+ ;;
+
+ help2man)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a dependency of a manual page. You may need the
+ \`Help2man' package in order for those modifications to take
+ effect. You can get \`Help2man' from any GNU archive site."
+
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ if test -z "$file"; then
+ file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
+ fi
+ if [ -f "$file" ]; then
+ touch $file
+ else
+ test -z "$file" || exec >$file
+ echo ".ab help2man is required to generate this page"
+ exit 1
+ fi
+ ;;
+
+ makeinfo)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a \`.texi' or \`.texinfo' file, or any other file
+ indirectly affecting the aspect of the manual. The spurious
+ call might also be the consequence of using a buggy \`make' (AIX,
+ DU, IRIX). You might want to install the \`Texinfo' package or
+ the \`GNU make' package. Grab either from any GNU archive site."
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ if test -z "$file"; then
+ file=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
+ file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $file`
+ fi
+ touch $file
+ ;;
+
+ tar)
+ shift
+
+ # We have already tried tar in the generic part.
+ # Look for gnutar/gtar before invocation to avoid ugly error
+ # messages.
+ if (gnutar --version > /dev/null 2>&1); then
+ gnutar "$@" && exit 0
+ fi
+ if (gtar --version > /dev/null 2>&1); then
+ gtar "$@" && exit 0
+ fi
+ firstarg="$1"
+ if shift; then
+ case "$firstarg" in
+ *o*)
+ firstarg=`echo "$firstarg" | sed s/o//`
+ tar "$firstarg" "$@" && exit 0
+ ;;
+ esac
+ case "$firstarg" in
+ *h*)
+ firstarg=`echo "$firstarg" | sed s/h//`
+ tar "$firstarg" "$@" && exit 0
+ ;;
+ esac
+ fi
+
+ echo 1>&2 "\
+WARNING: I can't seem to be able to run \`tar' with the given arguments.
+ You may want to install GNU tar or Free paxutils, or check the
+ command line arguments."
+ exit 1
+ ;;
+
+ *)
+ echo 1>&2 "\
+WARNING: \`$1' is needed, and is $msg.
+ You might have modified some files without having the
+ proper tools for further handling them. Check the \`README' file,
+ it often tells you about the needed prerequisites for installing
+ this package. You may also peek at any GNU archive site, in case
+ some other package would contain this missing \`$1' program."
+ exit 1
+ ;;
+esac
+
+exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
Propchange: hlvm/trunk/autoconf/missing
------------------------------------------------------------------------------
svn:executable = *
Added: hlvm/trunk/autoconf/mkinstalldirs
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/autoconf/mkinstalldirs?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/autoconf/mkinstalldirs (added)
+++ hlvm/trunk/autoconf/mkinstalldirs Sat Jul 7 18:58:30 2007
@@ -0,0 +1,150 @@
+#! /bin/sh
+# mkinstalldirs --- make directory hierarchy
+
+scriptversion=2004-02-15.20
+
+# Original author: Noah Friedman <friedman at prep.ai.mit.edu>
+# Created: 1993-05-16
+# Public domain.
+#
+# This file is maintained in Automake, please report
+# bugs to <bug-automake at gnu.org> or send patches to
+# <automake-patches at gnu.org>.
+
+errstatus=0
+dirmode=""
+
+usage="\
+Usage: mkinstalldirs [-h] [--help] [--version] [-m MODE] DIR ...
+
+Create each directory DIR (with mode MODE, if specified), including all
+leading file name components.
+
+Report bugs to <bug-automake at gnu.org>."
+
+# process command line arguments
+while test $# -gt 0 ; do
+ case $1 in
+ -h | --help | --h*) # -h for help
+ echo "$usage"
+ exit 0
+ ;;
+ -m) # -m PERM arg
+ shift
+ test $# -eq 0 && { echo "$usage" 1>&2; exit 1; }
+ dirmode=$1
+ shift
+ ;;
+ --version)
+ echo "$0 $scriptversion"
+ exit 0
+ ;;
+ --) # stop option processing
+ shift
+ break
+ ;;
+ -*) # unknown option
+ echo "$usage" 1>&2
+ exit 1
+ ;;
+ *) # first non-opt arg
+ break
+ ;;
+ esac
+done
+
+for file
+do
+ if test -d "$file"; then
+ shift
+ else
+ break
+ fi
+done
+
+case $# in
+ 0) exit 0 ;;
+esac
+
+# Solaris 8's mkdir -p isn't thread-safe. If you mkdir -p a/b and
+# mkdir -p a/c at the same time, both will detect that a is missing,
+# one will create a, then the other will try to create a and die with
+# a "File exists" error. This is a problem when calling mkinstalldirs
+# from a parallel make. We use --version in the probe to restrict
+# ourselves to GNU mkdir, which is thread-safe.
+case $dirmode in
+ '')
+ if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+ # echo "mkdir -p -- $*"
+ exec mkdir -p -- "$@"
+ else
+ # On NextStep and OpenStep, the `mkdir' command does not
+ # recognize any option. It will interpret all options as
+ # directories to create, and then abort because `.' already
+ # exists.
+ test -d ./-p && rmdir ./-p
+ test -d ./--version && rmdir ./--version
+ fi
+ ;;
+ *)
+ if mkdir -m "$dirmode" -p --version . >/dev/null 2>&1 &&
+ test ! -d ./--version; then
+ # echo "mkdir -m $dirmode -p -- $*"
+ exec mkdir -m "$dirmode" -p -- "$@"
+ else
+ # Clean up after NextStep and OpenStep mkdir.
+ for d in ./-m ./-p ./--version "./$dirmode";
+ do
+ test -d $d && rmdir $d
+ done
+ fi
+ ;;
+esac
+
+for file
+do
+ set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'`
+ shift
+
+ pathcomp=
+ for d
+ do
+ pathcomp="$pathcomp$d"
+ case $pathcomp in
+ -*) pathcomp=./$pathcomp ;;
+ esac
+
+ if test ! -d "$pathcomp"; then
+ # echo "mkdir $pathcomp"
+
+ mkdir "$pathcomp" || lasterr=$?
+
+ if test ! -d "$pathcomp"; then
+ errstatus=$lasterr
+ else
+ if test ! -z "$dirmode"; then
+ # echo "chmod $dirmode $pathcomp"
+ lasterr=""
+ chmod "$dirmode" "$pathcomp" || lasterr=$?
+
+ if test ! -z "$lasterr"; then
+ errstatus=$lasterr
+ fi
+ fi
+ fi
+ fi
+
+ pathcomp="$pathcomp/"
+ done
+done
+
+exit $errstatus
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
Propchange: hlvm/trunk/autoconf/mkinstalldirs
------------------------------------------------------------------------------
svn:executable = *
Modified: hlvm/trunk/configure
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/configure?rev=37974&r1=37973&r2=37974&view=diff
==============================================================================
--- hlvm/trunk/configure (original)
+++ hlvm/trunk/configure Sat Jul 7 18:58:30 2007
@@ -1,6 +1,7 @@
#! /bin/sh
+# From configure.ac Id.
# Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.59 for [HLVM] [0.1svn].
+# Generated by GNU Autoconf 2.59 for High Level Virtual Machine 0.1svn.
#
# Report bugs to <hlvm-dev at hlvm.org>.
#
@@ -8,7 +9,7 @@
# This configure script is free software; the Free Software Foundation
# gives unlimited permission to copy, distribute and modify it.
#
-
+# $HLVM_COPYRIGHT
## --------------------- ##
## M4sh Initialization. ##
## --------------------- ##
@@ -269,14 +270,52 @@
: ${ac_max_here_lines=38}
# Identity of this package.
-PACKAGE_NAME='[HLVM]'
-PACKAGE_TARNAME='--hlvm--'
-PACKAGE_VERSION='[0.1svn]'
-PACKAGE_STRING='[HLVM] [0.1svn]'
+PACKAGE_NAME='High Level Virtual Machine'
+PACKAGE_TARNAME='HLVM'
+PACKAGE_VERSION='0.1svn'
+PACKAGE_STRING='High Level Virtual Machine 0.1svn'
PACKAGE_BUGREPORT='hlvm-dev at hlvm.org'
-ac_unique_file=""lib/Makefile""
-ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS HLVM_COPYRIGHT USE_LLC LLC LLC_BIN LLC_DIR LLC_INC LLC_LIB USE_ _BIN _DIR _INC _LIB LIBOBJS LTLIBOBJS'
+ac_unique_file="hlvm/AST/Bundle.h"
+ac_default_prefix=/usr/local/hlvm
+# Factoring default headers for most tests.
+ac_includes_default="\
+#include <stdio.h>
+#if HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#if HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
+#if STDC_HEADERS
+# include <stdlib.h>
+# include <stddef.h>
+#else
+# if HAVE_STDLIB_H
+# include <stdlib.h>
+# endif
+#endif
+#if HAVE_STRING_H
+# if !STDC_HEADERS && HAVE_MEMORY_H
+# include <memory.h>
+# endif
+# include <string.h>
+#endif
+#if HAVE_STRINGS_H
+# include <strings.h>
+#endif
+#if HAVE_INTTYPES_H
+# include <inttypes.h>
+#else
+# if HAVE_STDINT_H
+# include <stdint.h>
+# endif
+#endif
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif"
+
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS HLVM_COPYRIGHT HLVM_PACKAGE HLVM_VERSION USE_ _BIN _DIR _INC _LIB HLVM_SO_VERSION HLVM_SO_CURRENT HLVM_SO_REVISION HLVM_SO_AGE HLVM_SHAREDPREFIX HLVM_DEBUG HLVM_OPTIMIZE HLVM_INLINE HLVM_ASSERT HLVM_TRACE HLVM_SMALL HLVM_EFENCE HLVM_PROFILING HLVM_WITH_WORKSPACE HLVM_WITH_EXPAT HLVM_WITH_INCLUDES HLVM_WITH_LLVM_SRC HLVM_WITH_LLVM_OBJ HLVM_WITH_LLVMGCC CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP CXX CXXFLAGS ac_ct_CXX ifGNUmake EGREP HLVM_CFGNAME HLVM_CONFIGTIME HLVM_PREFIX LIBOBJS LTLIBOBJS'
ac_subst_files=''
# Initialize some variables set by options.
@@ -717,6 +756,34 @@
ac_env_target_alias_value=$target_alias
ac_cv_env_target_alias_set=${target_alias+set}
ac_cv_env_target_alias_value=$target_alias
+ac_env_CC_set=${CC+set}
+ac_env_CC_value=$CC
+ac_cv_env_CC_set=${CC+set}
+ac_cv_env_CC_value=$CC
+ac_env_CFLAGS_set=${CFLAGS+set}
+ac_env_CFLAGS_value=$CFLAGS
+ac_cv_env_CFLAGS_set=${CFLAGS+set}
+ac_cv_env_CFLAGS_value=$CFLAGS
+ac_env_LDFLAGS_set=${LDFLAGS+set}
+ac_env_LDFLAGS_value=$LDFLAGS
+ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
+ac_cv_env_LDFLAGS_value=$LDFLAGS
+ac_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_env_CPPFLAGS_value=$CPPFLAGS
+ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_cv_env_CPPFLAGS_value=$CPPFLAGS
+ac_env_CPP_set=${CPP+set}
+ac_env_CPP_value=$CPP
+ac_cv_env_CPP_set=${CPP+set}
+ac_cv_env_CPP_value=$CPP
+ac_env_CXX_set=${CXX+set}
+ac_env_CXX_value=$CXX
+ac_cv_env_CXX_set=${CXX+set}
+ac_cv_env_CXX_value=$CXX
+ac_env_CXXFLAGS_set=${CXXFLAGS+set}
+ac_env_CXXFLAGS_value=$CXXFLAGS
+ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set}
+ac_cv_env_CXXFLAGS_value=$CXXFLAGS
#
# Report the --help message.
@@ -725,7 +792,7 @@
# Omit some internal or obsolete options to make the list less imposing.
# This message is too long to be a string in the A/UX 3.1 sh.
cat <<_ACEOF
-\`configure' configures [HLVM] [0.1svn] to adapt to many kinds of systems.
+\`configure' configures High Level Virtual Machine 0.1svn to adapt to many kinds of systems.
Usage: $0 [OPTION]... [VAR=VALUE]...
@@ -782,21 +849,30 @@
if test -n "$ac_init_help"; then
case $ac_init_help in
- short | recursive ) echo "Configuration of [HLVM] [0.1svn]:";;
+ short | recursive ) echo "Configuration of High Level Virtual Machine 0.1svn:";;
esac
cat <<\_ACEOF
+Optional Features:
+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --enable-sharedprefix Install in a "--prefix" that is shared.
+ (default=yes)
+ --enable-debug Build with debug settings (slower but debuggable).
+ (default=no)
+ --enable-optimize Optimized build (faster but less debuggable).
+ (default=yes)
+ --enable-inline Build with inline functions. (default=yes)
+ --enable-assert Build with inline functions. (default=yes)
+ --enable-trace Build with tracing support. (default=no)
+ --enable-small Optimize for smaller executable rather than speed.
+ (default=no)
+ --enable-efence Build with Electric Fence support. (default=no)
+ --enable-profiling Build with profiling enabled. (default=no)
+
Optional Packages:
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
--without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no)
- --with-LLVM=DIR Specify that the Low Level Virtual Machine install
- prefix is DIR
- --with-LLVM-bin=DIR Specify that the Low Level Virtual Machine binary is
- in DIR
- --with-LLVM-lib=DIR Specify that Low Level Virtual Machine libraries are
- in DIR
- --with-LLVM-inc=DIR Specify that the Low Level Virtual Machine includes
- are in DIR
--with-APR=DIR Specify that the Apache Portable Runtime install
prefix is DIR
--with-APR-bin=DIR Specify that the Apache Portable Runtime binary is
@@ -805,6 +881,32 @@
in DIR
--with-APR-inc=DIR Specify that the Apache Portable Runtime includes
are in DIR
+ --with-workspace=<dir> dir=location of the HLVM workspace storage
+ (default=/opt/hlvm)
+ --with-expat=<dir> Specify where the expat lbrary is located
+ (default=/usr/local)
+ --with-includes=-I<dir>...
+ Specify additional header file directories
+ (efault=none)
+ --with-llvm-src=<dir> dir=the location of LLVM sources (default=/usr)
+ --with-llvm-obj=<dir> dir=the location of LLVM objects directory
+ (default=/usr)
+ --with-llvm-gcc=<dir> dir=the location of LLVM's llvm-gcc compiler
+ (default=use normal gcc)
+
+Some influential environment variables:
+ CC C compiler command
+ CFLAGS C compiler flags
+ LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
+ nonstandard directory <lib dir>
+ CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have
+ headers in a nonstandard directory <include dir>
+ CPP C preprocessor
+ CXX C++ compiler command
+ CXXFLAGS C++ compiler flags
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
Report bugs to <hlvm-dev at hlvm.org>.
_ACEOF
@@ -902,14 +1004,14 @@
test -n "$ac_init_help" && exit 0
if $ac_init_version; then
cat <<\_ACEOF
-[HLVM] configure [0.1svn]
+High Level Virtual Machine configure 0.1svn
generated by GNU Autoconf 2.59
Copyright (C) 2003 Free Software Foundation, Inc.
This configure script is free software; the Free Software Foundation
gives unlimited permission to copy, distribute and modify it.
-
+$HLVM_COPYRIGHT
_ACEOF
exit 0
fi
@@ -918,7 +1020,7 @@
This file contains any messages produced by compilers while
running configure, to aid debugging if configure makes a mistake.
-It was created by [HLVM] $as_me [0.1svn], which was
+It was created by High Level Virtual Machine $as_me 0.1svn, which was
generated by GNU Autoconf 2.59. Invocation command line was
$ $0 $@
@@ -1254,282 +1356,19 @@
-HLVM_COPYRIGHT="Copyright (c) 2006 HLVM Programmer's Group"
-
-Copyright (c) 2006 HLVM Programmer's Group)
-
-
- ac_config_files="$ac_config_files Makefile.common"
-
-
- ac_config_commands="$ac_config_commands Makefile"
-
-
- ac_config_commands="$ac_config_commands lib/Makefile"
-
-
- ac_config_commands="$ac_config_commands tools/Makefile"
-
-
-
-
-echo "$as_me:$LINENO: checking for Low Level Virtual Machine bin/lib/include locations" >&5
-echo $ECHO_N "checking for Low Level Virtual Machine bin/lib/include locations... $ECHO_C" >&6
-
-# Check whether --with-LLVM or --without-LLVM was given.
-if test "${with_LLVM+set}" = set; then
- withval="$with_LLVM"
- llvmpfxdir=$withval
-else
- llvmpfxdir=nada
-fi;
-
-# Check whether --with-LLVM-bin or --without-LLVM-bin was given.
-if test "${with_LLVM_bin+set}" = set; then
- withval="$with_LLVM_bin"
- llvmbindir=$withval
-else
- llvmbindir=nada
-fi;
-
-# Check whether --with-LLVM-lib or --without-LLVM-lib was given.
-if test "${with_LLVM_lib+set}" = set; then
- withval="$with_LLVM_lib"
- llvmlibdir=$withval
-else
- llvmlibdir=nada
-fi;
-
-# Check whether --with-LLVM-inc or --without-LLVM-inc was given.
-if test "${with_LLVM_inc+set}" = set; then
- withval="$with_LLVM_inc"
- llvmincdir=$withval
-else
- llvmincdir=nada
-fi;
-eval pfxval=\$\{llvmpfxdir\}
-eval binval=\$\{llvmbindir\}
-eval incval=\$\{llvmincdir\}
-eval libvar=\$\{llvmlibdir\}
-if test "${pfxval}" != "nada" ; then
-
-if test -n "${pfxval}" -a -d "${pfxval}" -a -n "llc" -a -d "${pfxval}/bin" -a -x "${pfxval}/bin/llc" ; then
- USE_LLC="USE_LLC = 1"
-
- LLC=${pfxval}/bin/llc
-
- LLC_BIN=${pfxval}/bin
-
- LLC_DIR=${pfxval}
-
- if test -n "llvm/Module.h" -a -d "${pfxval}/include" -a -f "${pfxval}/include/llvm/Module.h" ; then
- LLC_INC=${pfxval}/include
-
- fi
- if test -n "LLVMCore.o" -a -d "${pfxval}/lib" -a -f "${pfxval}/lib/LLVMCore.o" ; then
- LLC_LIB=${pfxval}/lib
-
- fi
-fi
-
-elif test "${binval}" != "nada" ; then
- if test "${libval}" != "nada" ; then
- if test "${incval}" != "nada" ; then
- if test -d "${binval}" ; then
- if test -d "${incval}" ; then
- if test -d "${libval}" ; then
- LLC=${binval}/llvm
-
- LLC_BIN=${binval}
-
- LLC_INC=${incval}
-
- LLC_LIB=${libval}
-
- USE_LLC=1
-
- echo "$as_me:$LINENO: result: found via --with options" >&5
-echo "${ECHO_T}found via --with options" >&6
- else
- echo "$as_me:$LINENO: result: failed" >&5
-echo "${ECHO_T}failed" >&6
- { { echo "$as_me:$LINENO: error: The --with-llvm-libdir value must be a directory" >&5
-echo "$as_me: error: The --with-llvm-libdir value must be a directory" >&2;}
- { (exit 1); exit 1; }; }
- fi
- else
- echo "$as_me:$LINENO: result: failed" >&5
-echo "${ECHO_T}failed" >&6
- { { echo "$as_me:$LINENO: error: The --with-llvm-incdir value must be a directory" >&5
-echo "$as_me: error: The --with-llvm-incdir value must be a directory" >&2;}
- { (exit 1); exit 1; }; }
- fi
- else
- echo "$as_me:$LINENO: result: failed" >&5
-echo "${ECHO_T}failed" >&6
- { { echo "$as_me:$LINENO: error: The --with-llvm-bindir value must be a directory" >&5
-echo "$as_me: error: The --with-llvm-bindir value must be a directory" >&2;}
- { (exit 1); exit 1; }; }
- fi
- else
- echo "$as_me:$LINENO: result: failed" >&5
-echo "${ECHO_T}failed" >&6
- { { echo "$as_me:$LINENO: error: The --with-llvm-incdir option must be specified" >&5
-echo "$as_me: error: The --with-llvm-incdir option must be specified" >&2;}
- { (exit 1); exit 1; }; }
- fi
- else
- echo "$as_me:$LINENO: result: failed" >&5
-echo "${ECHO_T}failed" >&6
- { { echo "$as_me:$LINENO: error: The --with-llvm-libdir option must be specified" >&5
-echo "$as_me: error: The --with-llvm-libdir option must be specified" >&2;}
- { (exit 1); exit 1; }; }
- fi
-else
- tmppfxdir=`which llvm 2>&1`
- if test -n "$tmppfxdir" -a -d "${tmppfxdir%*llvm}" -a \
- -d "${tmppfxdir%*llvm}/.." ; then
- tmppfxdir=`cd "${tmppfxdir%*llvm}/.." ; pwd`
-
-if test -n "$tmppfxdir" -a -d "$tmppfxdir" -a -n "llc" -a -d "$tmppfxdir/bin" -a -x "$tmppfxdir/bin/llc" ; then
- USE_LLC="USE_LLC = 1"
-
- LLC=$tmppfxdir/bin/llc
-
- LLC_BIN=$tmppfxdir/bin
-
- LLC_DIR=$tmppfxdir
-
- if test -n "llvm/Module.h" -a -d "$tmppfxdir/include" -a -f "$tmppfxdir/include/llvm/Module.h" ; then
- LLC_INC=$tmppfxdir/include
-
- fi
- if test -n "LLVMCore.o" -a -d "$tmppfxdir/lib" -a -f "$tmppfxdir/lib/LLVMCore.o" ; then
- LLC_LIB=$tmppfxdir/lib
-
- fi
-fi
-
- echo "$as_me:$LINENO: result: found in PATH at $tmppfxdir" >&5
-echo "${ECHO_T}found in PATH at $tmppfxdir" >&6
- else
- checkresult="yes"
- eval checkval=\$\{"USE_"LLC\}
-
-if test -n "/usr" -a -d "/usr" -a -n "llc" -a -d "/usr/bin" -a -x "/usr/bin/llc" ; then
- USE_LLC="USE_LLC = 1"
-
- LLC=/usr/bin/llc
-
- LLC_BIN=/usr/bin
-
- LLC_DIR=/usr
-
- if test -n "llvm/Module.h" -a -d "/usr/include" -a -f "/usr/include/llvm/Module.h" ; then
- LLC_INC=/usr/include
-
- fi
- if test -n "LLVMCore.o" -a -d "/usr/lib" -a -f "/usr/lib/LLVMCore.o" ; then
- LLC_LIB=/usr/lib
-
- fi
-fi
-
- if test -z "${checkval}" ; then
-
-if test -n "/usr/local" -a -d "/usr/local" -a -n "llc" -a -d "/usr/local/bin" -a -x "/usr/local/bin/llc" ; then
- USE_LLC="USE_LLC = 1"
-
- LLC=/usr/local/bin/llc
-
- LLC_BIN=/usr/local/bin
-
- LLC_DIR=/usr/local
-
- if test -n "llvm/Module.h" -a -d "/usr/local/include" -a -f "/usr/local/include/llvm/Module.h" ; then
- LLC_INC=/usr/local/include
-
- fi
- if test -n "LLVMCore.o" -a -d "/usr/local/lib" -a -f "/usr/local/lib/LLVMCore.o" ; then
- LLC_LIB=/usr/local/lib
-
- fi
-fi
-
- if test -z "${checkval}" ; then
-
-if test -n "/sw" -a -d "/sw" -a -n "llc" -a -d "/sw/bin" -a -x "/sw/bin/llc" ; then
- USE_LLC="USE_LLC = 1"
-
- LLC=/sw/bin/llc
-
- LLC_BIN=/sw/bin
-
- LLC_DIR=/sw
-
- if test -n "llvm/Module.h" -a -d "/sw/include" -a -f "/sw/include/llvm/Module.h" ; then
- LLC_INC=/sw/include
-
- fi
- if test -n "LLVMCore.o" -a -d "/sw/lib" -a -f "/sw/lib/LLVMCore.o" ; then
- LLC_LIB=/sw/lib
-
- fi
-fi
-
- if test -z "${checkval}" ; then
-
-if test -n "/opt" -a -d "/opt" -a -n "llc" -a -d "/opt/bin" -a -x "/opt/bin/llc" ; then
- USE_LLC="USE_LLC = 1"
-
- LLC=/opt/bin/llc
-
- LLC_BIN=/opt/bin
-
- LLC_DIR=/opt
-
- if test -n "llvm/Module.h" -a -d "/opt/include" -a -f "/opt/include/llvm/Module.h" ; then
- LLC_INC=/opt/include
-
- fi
- if test -n "LLVMCore.o" -a -d "/opt/lib" -a -f "/opt/lib/LLVMCore.o" ; then
- LLC_LIB=/opt/lib
- fi
-fi
+HLVM_COPYRIGHT="Coyright (c) 2006 HLVM Group"
- if test -z "${checkval}" ; then
-if test -n "/" -a -d "/" -a -n "llc" -a -d "//bin" -a -x "//bin/llc" ; then
- USE_LLC="USE_LLC = 1"
- LLC=//bin/llc
- LLC_BIN=//bin
- LLC_DIR=/
+HLVM_VERSION="${PACKAGE_VERSION}"
+HLVM_PACKAGE=$PACKAGE
- if test -n "llvm/Module.h" -a -d "//include" -a -f "//include/llvm/Module.h" ; then
- LLC_INC=//include
- fi
- if test -n "LLVMCore.o" -a -d "//lib" -a -f "//lib/LLVMCore.o" ; then
- LLC_LIB=//lib
- fi
-fi
- if test -z "${checkval}" ; then
- checkresult="no"
- fi
- fi
- fi
- fi
- fi
- echo "$as_me:$LINENO: result: $checkresult" >&5
-echo "${ECHO_T}$checkresult" >&6
- fi
-fi
echo "$as_me:$LINENO: checking for Apache Portable Runtime bin/lib/include locations" >&5
@@ -1791,131 +1630,3104 @@
fi
+HLVM_SO_CURRENT="0"
+HLVM_SO_REVISION="10"
+HLVM_SO_AGE="0"
+HLVM_SO_VERSION="${HLVM_SO_CURRENT}:${HLVM_SO_REVISION}:${HLVM_SO_AGE}"
+echo "$as_me:$LINENO: checking whether to install in a shared prefix" >&5
+echo $ECHO_N "checking whether to install in a shared prefix... $ECHO_C" >&6
+# Check whether --enable-sharedprefix or --disable-sharedprefix was given.
+if test "${enable_sharedprefix+set}" = set; then
+ enableval="$enable_sharedprefix"
+ case "${enableval}" in
+ yes) HLVM_SHAREDPREFIX=true;;
+ no) HLVM_SHAREDPREFIX=false;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-sharedprefix" >&5
+echo "$as_me: error: bad value ${enableval} for --enable-sharedprefix" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+else
+ HLVM_SHAREDPREFIX=true
+fi;
+echo "$as_me:$LINENO: result: $HLVM_SHAREDPREFIX" >&5
+echo "${ECHO_T}$HLVM_SHAREDPREFIX" >&6
+if test "$HLVM_SHAREDPREFIX" = true ; then
-
-cat >confcache <<\_ACEOF
-# This file is a shell script that caches the results of configure
-# tests run on this system so they can be shared between configure
-# scripts and configure runs, see configure's option --config-cache.
-# It is not useful on other systems. If it contains results you don't
-# want to keep, you may remove or edit it.
-#
-# config.status only pays attention to the cache file if you give it
-# the --recheck option to rerun configure.
-#
-# `ac_cv_env_foo' variables (set or unset) will be overridden when
-# loading this file, other *unset* `ac_cv_foo' will be assigned the
-# following values.
-
+cat >>confdefs.h <<\_ACEOF
+#define HLVM_SHAREDPREFIX
_ACEOF
-# The following way of writing the cache mishandles newlines in values,
-# but we know of no workaround that is simple, portable, and efficient.
-# So, don't put newlines in cache variables' values.
-# Ultrix sh set writes to stderr and can't be redirected directly,
-# and sets the high bit in the cache file unless we assign to the vars.
-{
- (set) 2>&1 |
- case `(ac_space=' '; set | grep ac_space) 2>&1` in
- *ac_space=\ *)
- # `set' does not quote correctly, so add quotes (double-quote
- # substitution turns \\\\ into \\, and sed turns \\ into \).
- sed -n \
- "s/'/'\\\\''/g;
- s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
- ;;
- *)
- # `set' quotes correctly as required by POSIX, so do not add quotes.
- sed -n \
- "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
- ;;
- esac;
-} |
- sed '
- t clear
- : clear
- s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
- t end
- /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
- : end' >>confcache
-if diff $cache_file confcache >/dev/null 2>&1; then :; else
- if test -w $cache_file; then
- test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
- cat confcache >$cache_file
- else
- echo "not updating unwritable cache $cache_file"
- fi
fi
-rm -f confcache
-test "x$prefix" = xNONE && prefix=$ac_default_prefix
-# Let make expand exec_prefix.
-test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+echo "$as_me:$LINENO: checking whether to build debug version of HLVM" >&5
+echo $ECHO_N "checking whether to build debug version of HLVM... $ECHO_C" >&6
+# Check whether --enable-debug or --disable-debug was given.
+if test "${enable_debug+set}" = set; then
+ enableval="$enable_debug"
+ case "${enableval}" in
+ yes) HLVM_DEBUG=true;;
+ no) HLVM_DEBUG=false;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-debug" >&5
+echo "$as_me: error: bad value ${enableval} for --enable-debug" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+else
+ HLVM_DEBUG=false
+fi;
+echo "$as_me:$LINENO: result: $HLVM_DEBUG" >&5
+echo "${ECHO_T}$HLVM_DEBUG" >&6
-# VPATH may cause trouble with some makes, so we remove $(srcdir),
-# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
-# trailing colons and then remove the whole line if VPATH becomes empty
-# (actually we leave an empty line to preserve line numbers).
-if test "x$srcdir" = x.; then
- ac_vpsub='/^[ ]*VPATH[ ]*=/{
-s/:*\$(srcdir):*/:/;
-s/:*\${srcdir}:*/:/;
-s/:*@srcdir@:*/:/;
-s/^\([^=]*=[ ]*\):*/\1/;
-s/:*$//;
-s/^[^=]*=[ ]*$//;
-}'
-fi
-# Transform confdefs.h into DEFS.
-# Protect against shell expansion while executing Makefile rules.
-# Protect against Makefile macro expansion.
-#
-# If the first sed substitution is executed (which looks for macros that
-# take arguments), then we branch to the quote section. Otherwise,
-# look for a macro that doesn't take arguments.
-cat >confdef2opt.sed <<\_ACEOF
-t clear
-: clear
-s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g
-t quote
-s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g
-t quote
-d
-: quote
-s,[ `~#$^&*(){}\\|;'"<>?],\\&,g
-s,\[,\\&,g
-s,\],\\&,g
-s,\$,$$,g
-p
-_ACEOF
-# We use echo to avoid assuming a particular line-breaking character.
-# The extra dot is to prevent the shell from consuming trailing
-# line-breaks from the sub-command output. A line-break within
-# single-quotes doesn't work because, if this script is created in a
-# platform that uses two characters for line-breaks (e.g., DOS), tr
-# would break.
-ac_LF_and_DOT=`echo; echo .`
-DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'`
-rm -f confdef2opt.sed
+echo "$as_me:$LINENO: checking whether to optimize compiliation of HLVM" >&5
+echo $ECHO_N "checking whether to optimize compiliation of HLVM... $ECHO_C" >&6
+# Check whether --enable-optimize or --disable-optimize was given.
+if test "${enable_optimize+set}" = set; then
+ enableval="$enable_optimize"
+ case "${enableval}" in
+ yes) HLVM_OPTIMIZE=true;;
+ no) HLVM_OPTIMIZE=false;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-OPTIMIZE" >&5
+echo "$as_me: error: bad value ${enableval} for --enable-OPTIMIZE" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+else
+ HLVM_OPTIMIZE=true
+fi;
+echo "$as_me:$LINENO: result: $HLVM_OPTIMIZE" >&5
+echo "${ECHO_T}$HLVM_OPTIMIZE" >&6
-ac_libobjs=
-ac_ltlibobjs=
-for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
- # 1. Remove the extension, and $U if already installed.
- ac_i=`echo "$ac_i" |
- sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
- # 2. Add them.
- ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
- ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
-done
+echo "$as_me:$LINENO: checking whether to use inline functions" >&5
+echo $ECHO_N "checking whether to use inline functions... $ECHO_C" >&6
+# Check whether --enable-INLINE or --disable-INLINE was given.
+if test "${enable_INLINE+set}" = set; then
+ enableval="$enable_INLINE"
+ case "${enableval}" in
+ yes) HLVM_INLINE=true;;
+ no) HLVM_INLINE=false;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-inline" >&5
+echo "$as_me: error: bad value ${enableval} for --enable-inline" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+else
+ HLVM_INLINE=true
+fi;
+echo "$as_me:$LINENO: result: $HLVM_INLINE" >&5
+echo "${ECHO_T}$HLVM_INLINE" >&6
+
+
+echo "$as_me:$LINENO: checking whether to perform assertion checking" >&5
+echo $ECHO_N "checking whether to perform assertion checking... $ECHO_C" >&6
+# Check whether --enable-ASSERT or --disable-ASSERT was given.
+if test "${enable_ASSERT+set}" = set; then
+ enableval="$enable_ASSERT"
+ case "${enableval}" in
+ yes) HLVM_ASSERT=true;;
+ no) HLVM_ASSERT=false;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-assert" >&5
+echo "$as_me: error: bad value ${enableval} for --enable-assert" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+else
+ HLVM_ASSERT=true
+fi;
+echo "$as_me:$LINENO: result: $HLVM_ASSERT" >&5
+echo "${ECHO_T}$HLVM_ASSERT" >&6
+
+
+echo "$as_me:$LINENO: checking whether to allow runtime tracing" >&5
+echo $ECHO_N "checking whether to allow runtime tracing... $ECHO_C" >&6
+# Check whether --enable-TRACE or --disable-TRACE was given.
+if test "${enable_TRACE+set}" = set; then
+ enableval="$enable_TRACE"
+ case "${enableval}" in
+ yes) HLVM_TRACE=true;;
+ no) HLVM_TRACE=false;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-trace" >&5
+echo "$as_me: error: bad value ${enableval} for --enable-trace" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+else
+ HLVM_TRACE=false
+fi;
+echo "$as_me:$LINENO: result: $HLVM_TRACE" >&5
+echo "${ECHO_T}$HLVM_TRACE" >&6
+
+
+echo "$as_me:$LINENO: checking whether to build a small version of HLVM" >&5
+echo $ECHO_N "checking whether to build a small version of HLVM... $ECHO_C" >&6
+# Check whether --enable-SMALL or --disable-SMALL was given.
+if test "${enable_SMALL+set}" = set; then
+ enableval="$enable_SMALL"
+ case "${enableval}" in
+ yes) HLVM_SMALL=true;;
+ no) HLVM_SMALL=false;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-small" >&5
+echo "$as_me: error: bad value ${enableval} for --enable-small" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+else
+ HLVM_SMALL=false
+fi;
+echo "$as_me:$LINENO: result: $HLVM_SMALL" >&5
+echo "${ECHO_T}$HLVM_SMALL" >&6
+
+
+echo "$as_me:$LINENO: checking whether to use Electric Fence" >&5
+echo $ECHO_N "checking whether to use Electric Fence... $ECHO_C" >&6
+# Check whether --enable-efence or --disable-efence was given.
+if test "${enable_efence+set}" = set; then
+ enableval="$enable_efence"
+ case "${enableval}" in
+ yes) HLVM_EFENCE=true;;
+ no) HLVM_EFENCE=false;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-efence" >&5
+echo "$as_me: error: bad value ${enableval} for --enable-efence" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+else
+ HLVM_EFENCE=false
+fi;
+echo "$as_me:$LINENO: result: $HLVM_EFENCE" >&5
+echo "${ECHO_T}$HLVM_EFENCE" >&6
+
+
+echo "$as_me:$LINENO: checking whether to build with profiling enabled" >&5
+echo $ECHO_N "checking whether to build with profiling enabled... $ECHO_C" >&6
+# Check whether --enable-profiling or --disable-profiling was given.
+if test "${enable_profiling+set}" = set; then
+ enableval="$enable_profiling"
+ case "${enableval}" in
+ yes) HLVM_PROFILING=true;;
+ no) HLVM_PROFILING=false;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${enableval} for --enable-profiling" >&5
+echo "$as_me: error: bad value ${enableval} for --enable-profiling" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+else
+ HLVM_PROFILING=false
+fi;
+echo "$as_me:$LINENO: result: $HLVM_PROFILING" >&5
+echo "${ECHO_T}$HLVM_PROFILING" >&6
+
+
+echo "$as_me:$LINENO: checking location of HLVM workspace" >&5
+echo $ECHO_N "checking location of HLVM workspace... $ECHO_C" >&6
+
+# Check whether --with-workspace or --without-workspace was given.
+if test "${with_workspace+set}" = set; then
+ withval="$with_workspace"
+ case "${withval}" in
+ /*|*/*) HLVM_WITH_WORKSPACE=$withval ;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${withval} for --with-WORKSPACE" >&5
+echo "$as_me: error: bad value ${withval} for --with-WORKSPACE" >&2;}
+ { (exit 1); exit 1; }; } ;;
+ esac
+else
+ HLVM_WITH_WORKSPACE=/opt/hlvm
+fi;
+echo "$as_me:$LINENO: result: $HLVM_WITH_WORKSPACE" >&5
+echo "${ECHO_T}$HLVM_WITH_WORKSPACE" >&6
+
+
+echo "$as_me:$LINENO: checking location of expat library" >&5
+echo $ECHO_N "checking location of expat library... $ECHO_C" >&6
+
+# Check whether --with-expat or --without-expat was given.
+if test "${with_expat+set}" = set; then
+ withval="$with_expat"
+ case "${withval}" in
+ /*) HLVM_WITH_EXPAT=$withval ;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${withval} for --with-expat" >&5
+echo "$as_me: error: bad value ${withval} for --with-expat" >&2;}
+ { (exit 1); exit 1; }; } ;;
+ esac
+else
+ HLVM_WITH_EXPAT=/usr
+fi;
+echo "$as_me:$LINENO: result: $HLVM_WITH_EXPAT" >&5
+echo "${ECHO_T}$HLVM_WITH_EXPAT" >&6
+
+
+echo "$as_me:$LINENO: checking location of additional header files" >&5
+echo $ECHO_N "checking location of additional header files... $ECHO_C" >&6
+
+# Check whether --with-includes or --without-includes was given.
+if test "${with_includes+set}" = set; then
+ withval="$with_includes"
+ case "${withval}" in
+ -I/*) HLVM_WITH_INCLUDES=$withval ;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${withval} for --with-includes" >&5
+echo "$as_me: error: bad value ${withval} for --with-includes" >&2;}
+ { (exit 1); exit 1; }; } ;;
+ esac
+else
+ HLVM_WITH_INCLUDES=
+fi;
+echo "$as_me:$LINENO: result: $HLVM_WITH_INCLUDES" >&5
+echo "${ECHO_T}$HLVM_WITH_INCLUDES" >&6
+
+CPPFLAGS="-D_REENTRANT -D_GNU_SOURCE $HLVM_WITH_INCLUDES"
+
+echo "$as_me:$LINENO: checking location of LLVM source code" >&5
+echo $ECHO_N "checking location of LLVM source code... $ECHO_C" >&6
+
+# Check whether --with-llvm-src or --without-llvm-src was given.
+if test "${with_llvm_src+set}" = set; then
+ withval="$with_llvm_src"
+ case "${withval}" in
+ /*|*/*) HLVM_WITH_LLVM_SRC=$withval ;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${withval} for --with-llvm-src" >&5
+echo "$as_me: error: bad value ${withval} for --with-llvm-src" >&2;}
+ { (exit 1); exit 1; }; } ;;
+ esac
+else
+ HLVM_WITH_LLVM_SRC=/usr
+fi;
+echo "$as_me:$LINENO: result: $HLVM_WITH_LLVM_SRC" >&5
+echo "${ECHO_T}$HLVM_WITH_LLVM_SRC" >&6
+
+
+echo "$as_me:$LINENO: checking location of LLVM object code" >&5
+echo $ECHO_N "checking location of LLVM object code... $ECHO_C" >&6
+
+# Check whether --with-llvm-obj or --without-llvm-obj was given.
+if test "${with_llvm_obj+set}" = set; then
+ withval="$with_llvm_obj"
+ case "${withval}" in
+ /*|*/*) HLVM_WITH_LLVM_OBJ=$withval ;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${withval} for --with-llvm-obj" >&5
+echo "$as_me: error: bad value ${withval} for --with-llvm-obj" >&2;}
+ { (exit 1); exit 1; }; } ;;
+ esac
+else
+ HLVM_WITH_LLVM_OBJ=/usr
+fi;
+echo "$as_me:$LINENO: result: $HLVM_WITH_LLVM_OBJ" >&5
+echo "${ECHO_T}$HLVM_WITH_LLVM_OBJ" >&6
+
+
+echo "$as_me:$LINENO: checking location of LLVM GCC compiler" >&5
+echo $ECHO_N "checking location of LLVM GCC compiler... $ECHO_C" >&6
+
+# Check whether --with-llvm-gcc or --without-llvm-gcc was given.
+if test "${with_llvm_gcc+set}" = set; then
+ withval="$with_llvm_gcc"
+ case "${withval}" in
+ /*|*/*) HLVM_WITH_LLVMGCC=$withval ;;
+ *) { { echo "$as_me:$LINENO: error: bad value ${withval} for --with-llvmgcc" >&5
+echo "$as_me: error: bad value ${withval} for --with-llvmgcc" >&2;}
+ { (exit 1); exit 1; }; } ;;
+ esac
+else
+ HLVM_WITH_LLVMGCC=""
+fi;
+echo "$as_me:$LINENO: result: $HLVM_WITH_LLVMGCC" >&5
+echo "${ECHO_T}$HLVM_WITH_LLVMGCC" >&6
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_CC="${ac_tool_prefix}gcc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+ ac_ct_CC=$CC
+ # Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_CC="gcc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ CC=$ac_ct_CC
+else
+ CC="$ac_cv_prog_CC"
+fi
+
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_CC="${ac_tool_prefix}cc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+ ac_ct_CC=$CC
+ # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_CC="cc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ CC=$ac_ct_CC
+else
+ CC="$ac_cv_prog_CC"
+fi
+
+fi
+if test -z "$CC"; then
+ # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+ ac_prog_rejected=no
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+ ac_prog_rejected=yes
+ continue
+ fi
+ ac_cv_prog_CC="cc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+if test $ac_prog_rejected = yes; then
+ # We found a bogon in the path, so make sure we never use it.
+ set dummy $ac_cv_prog_CC
+ shift
+ if test $# != 0; then
+ # We chose a different compiler from the bogus one.
+ # However, it has the same basename, so the bogon will be chosen
+ # first if we set CC to just the basename; use the full file name.
+ shift
+ ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+ fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ for ac_prog in cl
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$CC" && break
+ done
+fi
+if test -z "$CC"; then
+ ac_ct_CC=$CC
+ for ac_prog in cl
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_CC="$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$ac_ct_CC" && break
+done
+
+ CC=$ac_ct_CC
+fi
+
+fi
+
+
+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&5
+echo "$as_me: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+
+# Provide some information about the compiler.
+echo "$as_me:$LINENO:" \
+ "checking for C compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
+ (eval $ac_compiler --version </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
+ (eval $ac_compiler -v </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
+ (eval $ac_compiler -V </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.exe b.out"
+# Try to create an executable without -o first, disregard a.out.
+# It will help us diagnose broken compilers, and finding out an intuition
+# of exeext.
+echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
+echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
+ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
+ (eval $ac_link_default) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ # Find the output, starting from the most likely. This scheme is
+# not robust to junk in `.', hence go to wildcards (a.*) only as a last
+# resort.
+
+# Be careful to initialize this variable, since it used to be cached.
+# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
+ac_cv_exeext=
+# b.out is created by i960 compilers.
+for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
+do
+ test -f "$ac_file" || continue
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj )
+ ;;
+ conftest.$ac_ext )
+ # This is the source file.
+ ;;
+ [ab].out )
+ # We found the default executable, but exeext='' is most
+ # certainly right.
+ break;;
+ *.* )
+ ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+ # FIXME: I believe we export ac_cv_exeext for Libtool,
+ # but it would be cool to find out if it's true. Does anybody
+ # maintain Libtool? --akim.
+ export ac_cv_exeext
+ break;;
+ * )
+ break;;
+ esac
+done
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
+See \`config.log' for more details." >&5
+echo "$as_me: error: C compiler cannot create executables
+See \`config.log' for more details." >&2;}
+ { (exit 77); exit 77; }; }
+fi
+
+ac_exeext=$ac_cv_exeext
+echo "$as_me:$LINENO: result: $ac_file" >&5
+echo "${ECHO_T}$ac_file" >&6
+
+# Check the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:$LINENO: checking whether the C compiler works" >&5
+echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+# If not cross compiling, check that we can run a simple program.
+if test "$cross_compiling" != yes; then
+ if { ac_try='./$ac_file'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ cross_compiling=no
+ else
+ if test "$cross_compiling" = maybe; then
+ cross_compiling=yes
+ else
+ { { echo "$as_me:$LINENO: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot run C compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+ fi
+fi
+echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
+rm -f a.out a.exe conftest$ac_cv_exeext b.out
+ac_clean_files=$ac_clean_files_save
+# Check the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
+echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
+echo "$as_me:$LINENO: result: $cross_compiling" >&5
+echo "${ECHO_T}$cross_compiling" >&6
+
+echo "$as_me:$LINENO: checking for suffix of executables" >&5
+echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ # If both `conftest.exe' and `conftest' are `present' (well, observable)
+# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
+# work properly (i.e., refer to `conftest.exe'), while it won't with
+# `rm'.
+for ac_file in conftest.exe conftest conftest.*; do
+ test -f "$ac_file" || continue
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;;
+ *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+ export ac_cv_exeext
+ break;;
+ * ) break;;
+ esac
+done
+else
+ { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest$ac_cv_exeext
+echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+echo "${ECHO_T}$ac_cv_exeext" >&6
+
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+echo "$as_me:$LINENO: checking for suffix of object files" >&5
+echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
+if test "${ac_cv_objext+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
+ *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+ break;;
+ esac
+done
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+echo "${ECHO_T}$ac_cv_objext" >&6
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+#ifndef __GNUC__
+ choke me
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_compiler_gnu=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_compiler_gnu=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
+GCC=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+CFLAGS="-g"
+echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_g+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_prog_cc_g=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_prog_cc_g=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
+if test "$ac_test_CFLAGS" = set; then
+ CFLAGS=$ac_save_CFLAGS
+elif test $ac_cv_prog_cc_g = yes; then
+ if test "$GCC" = yes; then
+ CFLAGS="-g -O2"
+ else
+ CFLAGS="-g"
+ fi
+else
+ if test "$GCC" = yes; then
+ CFLAGS="-O2"
+ else
+ CFLAGS=
+ fi
+fi
+echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_stdc+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_cv_prog_cc_stdc=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+ char **p;
+ int i;
+{
+ return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+ char *s;
+ va_list v;
+ va_start (v,p);
+ s = g (p, va_arg (v,int));
+ va_end (v);
+ return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
+ function prototypes and stuff, but not '\xHH' hex character constants.
+ These don't provoke an error unfortunately, instead are silently treated
+ as 'x'. The following induces an error, until -std1 is added to get
+ proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
+ array size at least. It's necessary to write '\x00'==0 to get something
+ that's true only with -std1. */
+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
+ ;
+ return 0;
+}
+_ACEOF
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX -qlanglvl=ansi
+# Ultrix and OSF/1 -std1
+# HP-UX 10.20 and later -Ae
+# HP-UX older versions -Aa -D_HPUX_SOURCE
+# SVR4 -Xc -D__EXTENSIONS__
+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+ CC="$ac_save_CC $ac_arg"
+ rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_prog_cc_stdc=$ac_arg
+break
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+done
+rm -f conftest.$ac_ext conftest.$ac_objext
+CC=$ac_save_CC
+
+fi
+
+case "x$ac_cv_prog_cc_stdc" in
+ x|xno)
+ echo "$as_me:$LINENO: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6 ;;
+ *)
+ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
+ CC="$CC $ac_cv_prog_cc_stdc" ;;
+esac
+
+# Some people use a C++ compiler to compile C. Since we use `exit',
+# in C++ we need to declare it. In case someone uses the same compiler
+# for both compiling C and C++ we need to have the C++ compiler decide
+# the declaration of exit, since it's the most demanding environment.
+cat >conftest.$ac_ext <<_ACEOF
+#ifndef __cplusplus
+ choke me
+#endif
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ for ac_declaration in \
+ '' \
+ 'extern "C" void std::exit (int) throw (); using std::exit;' \
+ 'extern "C" void std::exit (int); using std::exit;' \
+ 'extern "C" void exit (int) throw ();' \
+ 'extern "C" void exit (int);' \
+ 'void exit (int);'
+do
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_declaration
+#include <stdlib.h>
+int
+main ()
+{
+exit (42);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+continue
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_declaration
+int
+main ()
+{
+exit (42);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ break
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+rm -f conftest*
+if test -n "$ac_declaration"; then
+ echo '#ifdef __cplusplus' >>confdefs.h
+ echo $ac_declaration >>confdefs.h
+ echo '#endif' >>confdefs.h
+fi
+
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
+echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+ CPP=
+fi
+if test -z "$CPP"; then
+ if test "${ac_cv_prog_CPP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ # Double quotes because CPP needs to be expanded
+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+ do
+ ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether non-existent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ # Broken: success on invalid input.
+continue
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ break
+fi
+
+ done
+ ac_cv_prog_CPP=$CPP
+
+fi
+ CPP=$ac_cv_prog_CPP
+else
+ ac_cv_prog_CPP=$CPP
+fi
+echo "$as_me:$LINENO: result: $CPP" >&5
+echo "${ECHO_T}$CPP" >&6
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether non-existent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ # Broken: success on invalid input.
+continue
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ :
+else
+ { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&5
+echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+ for ac_prog in gcc
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$CC" && break
+ done
+fi
+if test -z "$CC"; then
+ ac_ct_CC=$CC
+ for ac_prog in gcc
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_CC="$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$ac_ct_CC" && break
+done
+
+ CC=$ac_ct_CC
+fi
+
+
+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&5
+echo "$as_me: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+
+# Provide some information about the compiler.
+echo "$as_me:$LINENO:" \
+ "checking for C compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
+ (eval $ac_compiler --version </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
+ (eval $ac_compiler -v </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
+ (eval $ac_compiler -V </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+
+echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+#ifndef __GNUC__
+ choke me
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_compiler_gnu=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_compiler_gnu=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
+GCC=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+CFLAGS="-g"
+echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_g+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_prog_cc_g=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_prog_cc_g=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
+if test "$ac_test_CFLAGS" = set; then
+ CFLAGS=$ac_save_CFLAGS
+elif test $ac_cv_prog_cc_g = yes; then
+ if test "$GCC" = yes; then
+ CFLAGS="-g -O2"
+ else
+ CFLAGS="-g"
+ fi
+else
+ if test "$GCC" = yes; then
+ CFLAGS="-O2"
+ else
+ CFLAGS=
+ fi
+fi
+echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_stdc+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_cv_prog_cc_stdc=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+ char **p;
+ int i;
+{
+ return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+ char *s;
+ va_list v;
+ va_start (v,p);
+ s = g (p, va_arg (v,int));
+ va_end (v);
+ return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
+ function prototypes and stuff, but not '\xHH' hex character constants.
+ These don't provoke an error unfortunately, instead are silently treated
+ as 'x'. The following induces an error, until -std1 is added to get
+ proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
+ array size at least. It's necessary to write '\x00'==0 to get something
+ that's true only with -std1. */
+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
+ ;
+ return 0;
+}
+_ACEOF
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX -qlanglvl=ansi
+# Ultrix and OSF/1 -std1
+# HP-UX 10.20 and later -Ae
+# HP-UX older versions -Aa -D_HPUX_SOURCE
+# SVR4 -Xc -D__EXTENSIONS__
+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+ CC="$ac_save_CC $ac_arg"
+ rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_prog_cc_stdc=$ac_arg
+break
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+done
+rm -f conftest.$ac_ext conftest.$ac_objext
+CC=$ac_save_CC
+
+fi
+
+case "x$ac_cv_prog_cc_stdc" in
+ x|xno)
+ echo "$as_me:$LINENO: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6 ;;
+ *)
+ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
+ CC="$CC $ac_cv_prog_cc_stdc" ;;
+esac
+
+# Some people use a C++ compiler to compile C. Since we use `exit',
+# in C++ we need to declare it. In case someone uses the same compiler
+# for both compiling C and C++ we need to have the C++ compiler decide
+# the declaration of exit, since it's the most demanding environment.
+cat >conftest.$ac_ext <<_ACEOF
+#ifndef __cplusplus
+ choke me
+#endif
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ for ac_declaration in \
+ '' \
+ 'extern "C" void std::exit (int) throw (); using std::exit;' \
+ 'extern "C" void std::exit (int); using std::exit;' \
+ 'extern "C" void exit (int) throw ();' \
+ 'extern "C" void exit (int);' \
+ 'void exit (int);'
+do
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_declaration
+#include <stdlib.h>
+int
+main ()
+{
+exit (42);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+continue
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_declaration
+int
+main ()
+{
+exit (42);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ break
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+rm -f conftest*
+if test -n "$ac_declaration"; then
+ echo '#ifdef __cplusplus' >>confdefs.h
+ echo $ac_declaration >>confdefs.h
+ echo '#endif' >>confdefs.h
+fi
+
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+ac_ext=cc
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+ for ac_prog in $CCC g++
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CXX+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CXX"; then
+ ac_cv_prog_CXX="$CXX" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+CXX=$ac_cv_prog_CXX
+if test -n "$CXX"; then
+ echo "$as_me:$LINENO: result: $CXX" >&5
+echo "${ECHO_T}$CXX" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$CXX" && break
+ done
+fi
+if test -z "$CXX"; then
+ ac_ct_CXX=$CXX
+ for ac_prog in $CCC g++
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_CXX"; then
+ ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_CXX="$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
+if test -n "$ac_ct_CXX"; then
+ echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5
+echo "${ECHO_T}$ac_ct_CXX" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$ac_ct_CXX" && break
+done
+test -n "$ac_ct_CXX" || ac_ct_CXX="g++"
+
+ CXX=$ac_ct_CXX
+fi
+
+
+# Provide some information about the compiler.
+echo "$as_me:$LINENO:" \
+ "checking for C++ compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
+ (eval $ac_compiler --version </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
+ (eval $ac_compiler -v </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
+ (eval $ac_compiler -V </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+
+echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6
+if test "${ac_cv_cxx_compiler_gnu+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+#ifndef __GNUC__
+ choke me
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_cxx_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_compiler_gnu=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_compiler_gnu=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6
+GXX=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CXXFLAGS=${CXXFLAGS+set}
+ac_save_CXXFLAGS=$CXXFLAGS
+CXXFLAGS="-g"
+echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5
+echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6
+if test "${ac_cv_prog_cxx_g+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_cxx_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_prog_cxx_g=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_prog_cxx_g=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6
+if test "$ac_test_CXXFLAGS" = set; then
+ CXXFLAGS=$ac_save_CXXFLAGS
+elif test $ac_cv_prog_cxx_g = yes; then
+ if test "$GXX" = yes; then
+ CXXFLAGS="-g -O2"
+ else
+ CXXFLAGS="-g"
+ fi
+else
+ if test "$GXX" = yes; then
+ CXXFLAGS="-O2"
+ else
+ CXXFLAGS=
+ fi
+fi
+for ac_declaration in \
+ '' \
+ 'extern "C" void std::exit (int) throw (); using std::exit;' \
+ 'extern "C" void std::exit (int); using std::exit;' \
+ 'extern "C" void exit (int) throw ();' \
+ 'extern "C" void exit (int);' \
+ 'void exit (int);'
+do
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_declaration
+#include <stdlib.h>
+int
+main ()
+{
+exit (42);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_cxx_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+continue
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_declaration
+int
+main ()
+{
+exit (42);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_cxx_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ break
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+rm -f conftest*
+if test -n "$ac_declaration"; then
+ echo '#ifdef __cplusplus' >>confdefs.h
+ echo $ac_declaration >>confdefs.h
+ echo '#endif' >>confdefs.h
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+echo "$as_me:$LINENO: checking for GNU make" >&5
+echo $ECHO_N "checking for GNU make... $ECHO_C" >&6
+if test "${llvm_cv_gnu_make_command+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ llvm_cv_gnu_make_command=''
+ for a in "$MAKE" make gmake gnumake ; do
+ if test -z "$a" ; then continue ; fi ;
+ if ( sh -c "$a --version" 2> /dev/null | grep GNU 2>&1 > /dev/null )
+ then
+ llvm_cv_gnu_make_command=$a ;
+ break;
+ fi
+ done
+fi
+echo "$as_me:$LINENO: result: $llvm_cv_gnu_make_command" >&5
+echo "${ECHO_T}$llvm_cv_gnu_make_command" >&6
+ if test "x$llvm_cv_gnu_make_command" != "x" ; then
+ ifGNUmake='' ;
+ else
+ ifGNUmake='#' ;
+ echo "$as_me:$LINENO: result: \"Not found\"" >&5
+echo "${ECHO_T}\"Not found\"" >&6;
+ fi
+
+
+
+
+LDFLAGS="-L${HLVM_WITH_LLVM_OBJ}/lib/Debug -L${prefix}/lib -L/usr/local/lib ${LDFLAGS}"
+if test "$HLVM_EFENCE" = true ; then
+
+
+echo "$as_me:$LINENO: checking for malloc in -lefence" >&5
+echo $ECHO_N "checking for malloc in -lefence... $ECHO_C" >&6
+if test "${ac_cv_lib_efence_malloc+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lefence $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char malloc ();
+int
+main ()
+{
+malloc ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_efence_malloc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_lib_efence_malloc=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:$LINENO: result: $ac_cv_lib_efence_malloc" >&5
+echo "${ECHO_T}$ac_cv_lib_efence_malloc" >&6
+if test $ac_cv_lib_efence_malloc = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBEFENCE 1
+_ACEOF
+
+ LIBS="-lefence $LIBS"
+
+else
+ { { echo "$as_me:$LINENO: error: Electric Fence library is required: -lefence" >&5
+echo "$as_me: error: Electric Fence library is required: -lefence" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+fi
+if test "$HLVM_WITH_EXPAT" = "/usr" ; then
+if test "${ac_cv_lib_expat_ok+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+
+echo "$as_me:$LINENO: checking for XML_Parse in -lexpat" >&5
+echo $ECHO_N "checking for XML_Parse in -lexpat... $ECHO_C" >&6
+if test "${ac_cv_lib_expat_XML_Parse+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lexpat $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char XML_Parse ();
+int
+main ()
+{
+XML_Parse ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_expat_XML_Parse=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_lib_expat_XML_Parse=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:$LINENO: result: $ac_cv_lib_expat_XML_Parse" >&5
+echo "${ECHO_T}$ac_cv_lib_expat_XML_Parse" >&6
+if test $ac_cv_lib_expat_XML_Parse = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBEXPAT 1
+_ACEOF
+
+ LIBS="-lexpat $LIBS"
+
+else
+ { { echo "$as_me:$LINENO: error: expat Library is required: -lexpat" >&5
+echo "$as_me: error: expat Library is required: -lexpat" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+fi
+
+else
+ if test -r "$HLVM_WITH_EXPAT/libexpat.la" ; then
+ LIBS="$HLVM_WITH_EXPAT/libexpat.la $LIBS"
+ else
+ { { echo "$as_me:$LINENO: error: Can't find libexpat.la" >&5
+echo "$as_me: error: Can't find libexpat.la" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+fi
+
+
+echo "$as_me:$LINENO: checking for egrep" >&5
+echo $ECHO_N "checking for egrep... $ECHO_C" >&6
+if test "${ac_cv_prog_egrep+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if echo a | (grep -E '(a|b)') >/dev/null 2>&1
+ then ac_cv_prog_egrep='grep -E'
+ else ac_cv_prog_egrep='egrep'
+ fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5
+echo "${ECHO_T}$ac_cv_prog_egrep" >&6
+ EGREP=$ac_cv_prog_egrep
+
+
+echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
+if test "${ac_cv_header_stdc+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdlib.h>
+#include <stdarg.h>
+#include <string.h>
+#include <float.h>
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_header_stdc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_header_stdc=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+
+if test $ac_cv_header_stdc = yes; then
+ # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <string.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "memchr" >/dev/null 2>&1; then
+ :
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdlib.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "free" >/dev/null 2>&1; then
+ :
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
+ if test "$cross_compiling" = yes; then
+ :
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ctype.h>
+#if ((' ' & 0x0FF) == 0x020)
+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#else
+# define ISLOWER(c) \
+ (('a' <= (c) && (c) <= 'i') \
+ || ('j' <= (c) && (c) <= 'r') \
+ || ('s' <= (c) && (c) <= 'z'))
+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
+#endif
+
+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
+int
+main ()
+{
+ int i;
+ for (i = 0; i < 256; i++)
+ if (XOR (islower (i), ISLOWER (i))
+ || toupper (i) != TOUPPER (i))
+ exit(2);
+ exit (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ :
+else
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+ac_cv_header_stdc=no
+fi
+rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+echo "${ECHO_T}$ac_cv_header_stdc" >&6
+if test $ac_cv_header_stdc = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define STDC_HEADERS 1
+_ACEOF
+
+fi
+
+# On IRIX 5.3, sys/types and inttypes.h are conflicting.
+
+
+
+
+
+
+
+
+
+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
+ inttypes.h stdint.h unistd.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "$as_ac_Header=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+
+
+
+for ac_header in apr-1/apr.h expat.h llvm/Module.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+else
+ # Is the header compilable?
+echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_header_compiler=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_header_compiler=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6
+
+# Is the header present?
+echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+ (
+ cat <<\_ASBOX
+## -------------------------------- ##
+## Report this to hlvm-dev at hlvm.org ##
+## -------------------------------- ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+esac
+echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ eval "$as_ac_Header=\$ac_header_preproc"
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+
+HLVM_CFGNAME=""
+if test "$HLVM_SMALL" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}S" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}s" ; fi
+if test "$HLVM_TRACE" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}T" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}t" ; fi
+if test "$HLVM_ASSERT" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}A" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}a" ; fi
+if test "$HLVM_DEBUG" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}D" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}d" ; fi
+if test "$HLVM_INLINE" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}I" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}i" ; fi
+if test "$HLVM_OPTIMIZE" = true ; then HLVM_CFGNAME="${HLVM_CFGNAME}O" ; else
+ HLVM_CFGNAME="${HLVM_CFGNAME}o" ; fi
+
+
+if test "$HLVM_SHAREDPREFIX" = false ; then
+ { echo "$as_me:$LINENO: Configuring For Unique Installation" >&5
+echo "$as_me: Configuring For Unique Installation" >&6;}
+ eval HLVM_PREFIX="${prefix}/${HLVM_CFGNAME}"
+ if test "${exec_prefix}" = "NONE"; then
+ eval HLVM_EXEC_PREFIX="${prefix}/${HLVM_CFGNAME}"
+ else
+ eval HLVM_EXEC_PREFIX="${exec_prefix}/${HLVM_CFGNAME}"
+ fi
+else
+ { echo "$as_me:$LINENO: Configuring For Shared Installation: ${HLVM_CFGNAME}" >&5
+echo "$as_me: Configuring For Shared Installation: ${HLVM_CFGNAME}" >&6;}
+ eval HLVM_PREFIX="${prefix}"
+ if test "${exec_prefix}" = "NONE"; then
+ eval HLVM_EXEC_PREFIX="${prefix}"
+ else
+ eval HLVM_EXEC_PREFIX="${exec_prefix}"
+ fi
+fi
+
+
+HLVM_CONFIGTIME=`date`
+
+HLVM_PREFIX="$prefix"
+
+
+
+ ac_config_headers="$ac_config_headers hlvm/Base/Config.h"
+
+ ac_config_files="$ac_config_files VERSION Makefile.config docs/Doxyfile"
+
+ ac_config_files="$ac_config_files hlvm/Base/ConfigData.cpp"
+
+ ac_config_commands="$ac_config_commands Makefile"
+
+
+ ac_config_commands="$ac_config_commands Makefile.hlvm"
+
+
+ ac_config_commands="$ac_config_commands docs/Makefile"
+
+
+ ac_config_commands="$ac_config_commands hlvm/Makefile"
+
+
+ ac_config_commands="$ac_config_commands tools/Makefile"
+
+
+ ac_config_commands="$ac_config_commands test/Makefile"
+
+
+
+cat >confcache <<\_ACEOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs, see configure's option --config-cache.
+# It is not useful on other systems. If it contains results you don't
+# want to keep, you may remove or edit it.
+#
+# config.status only pays attention to the cache file if you give it
+# the --recheck option to rerun configure.
+#
+# `ac_cv_env_foo' variables (set or unset) will be overridden when
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
+# following values.
+
+_ACEOF
+
+# The following way of writing the cache mishandles newlines in values,
+# but we know of no workaround that is simple, portable, and efficient.
+# So, don't put newlines in cache variables' values.
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+{
+ (set) 2>&1 |
+ case `(ac_space=' '; set | grep ac_space) 2>&1` in
+ *ac_space=\ *)
+ # `set' does not quote correctly, so add quotes (double-quote
+ # substitution turns \\\\ into \\, and sed turns \\ into \).
+ sed -n \
+ "s/'/'\\\\''/g;
+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+ ;;
+ *)
+ # `set' quotes correctly as required by POSIX, so do not add quotes.
+ sed -n \
+ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+ ;;
+ esac;
+} |
+ sed '
+ t clear
+ : clear
+ s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+ t end
+ /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+ : end' >>confcache
+if diff $cache_file confcache >/dev/null 2>&1; then :; else
+ if test -w $cache_file; then
+ test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
+ cat confcache >$cache_file
+ else
+ echo "not updating unwritable cache $cache_file"
+ fi
+fi
+rm -f confcache
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+# VPATH may cause trouble with some makes, so we remove $(srcdir),
+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# trailing colons and then remove the whole line if VPATH becomes empty
+# (actually we leave an empty line to preserve line numbers).
+if test "x$srcdir" = x.; then
+ ac_vpsub='/^[ ]*VPATH[ ]*=/{
+s/:*\$(srcdir):*/:/;
+s/:*\${srcdir}:*/:/;
+s/:*@srcdir@:*/:/;
+s/^\([^=]*=[ ]*\):*/\1/;
+s/:*$//;
+s/^[^=]*=[ ]*$//;
+}'
+fi
+
+DEFS=-DHAVE_CONFIG_H
+
+ac_libobjs=
+ac_ltlibobjs=
+for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
+ # 1. Remove the extension, and $U if already installed.
+ ac_i=`echo "$ac_i" |
+ sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
+ # 2. Add them.
+ ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
+ ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
+done
LIBOBJS=$ac_libobjs
LTLIBOBJS=$ac_ltlibobjs
@@ -2192,7 +5004,7 @@
} >&5
cat >&5 <<_CSEOF
-This file was extended by [HLVM] $as_me [0.1svn], which was
+This file was extended by High Level Virtual Machine $as_me 0.1svn, which was
generated by GNU Autoconf 2.59. Invocation command line was
CONFIG_FILES = $CONFIG_FILES
@@ -2238,10 +5050,15 @@
--recheck update $as_me by reconfiguring in the same conditions
--file=FILE[:TEMPLATE]
instantiate the configuration file FILE
+ --header=FILE[:TEMPLATE]
+ instantiate the configuration header FILE
Configuration files:
$config_files
+Configuration headers:
+$config_headers
+
Configuration commands:
$config_commands
@@ -2250,7 +5067,7 @@
cat >>$CONFIG_STATUS <<_ACEOF
ac_cs_version="\\
-[HLVM] config.status [0.1svn]
+High Level Virtual Machine config.status 0.1svn
configured by $0, generated by GNU Autoconf 2.59,
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
@@ -2343,7 +5160,19 @@
_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+#
+# INIT-COMMANDS section.
+#
+
+${srcdir}/autoconf/mkinstalldirs `dirname Makefile`
+${srcdir}/autoconf/mkinstalldirs `dirname Makefile.hlvm`
+${srcdir}/autoconf/mkinstalldirs `dirname docs/Makefile`
+${srcdir}/autoconf/mkinstalldirs `dirname hlvm/Makefile`
+${srcdir}/autoconf/mkinstalldirs `dirname tools/Makefile`
+${srcdir}/autoconf/mkinstalldirs `dirname test/Makefile`
+_ACEOF
@@ -2352,10 +5181,17 @@
do
case "$ac_config_target" in
# Handling of arguments.
- "Makefile.common" ) CONFIG_FILES="$CONFIG_FILES Makefile.common" ;;
+ "VERSION" ) CONFIG_FILES="$CONFIG_FILES VERSION" ;;
+ "Makefile.config" ) CONFIG_FILES="$CONFIG_FILES Makefile.config" ;;
+ "docs/Doxyfile" ) CONFIG_FILES="$CONFIG_FILES docs/Doxyfile" ;;
+ "hlvm/Base/ConfigData.cpp" ) CONFIG_FILES="$CONFIG_FILES hlvm/Base/ConfigData.cpp" ;;
"Makefile" ) CONFIG_COMMANDS="$CONFIG_COMMANDS Makefile" ;;
- "lib/Makefile" ) CONFIG_COMMANDS="$CONFIG_COMMANDS lib/Makefile" ;;
+ "Makefile.hlvm" ) CONFIG_COMMANDS="$CONFIG_COMMANDS Makefile.hlvm" ;;
+ "docs/Makefile" ) CONFIG_COMMANDS="$CONFIG_COMMANDS docs/Makefile" ;;
+ "hlvm/Makefile" ) CONFIG_COMMANDS="$CONFIG_COMMANDS hlvm/Makefile" ;;
"tools/Makefile" ) CONFIG_COMMANDS="$CONFIG_COMMANDS tools/Makefile" ;;
+ "test/Makefile" ) CONFIG_COMMANDS="$CONFIG_COMMANDS test/Makefile" ;;
+ "hlvm/Base/Config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS hlvm/Base/Config.h" ;;
*) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
{ (exit 1); exit 1; }; };;
@@ -2368,6 +5204,7 @@
# bizarre bug on SunOS 4.1.3.
if $ac_need_defaults; then
test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
+ test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
fi
@@ -2441,17 +5278,48 @@
s, at ECHO_T@,$ECHO_T,;t t
s, at LIBS@,$LIBS,;t t
s, at HLVM_COPYRIGHT@,$HLVM_COPYRIGHT,;t t
-s, at USE_LLC@,$USE_LLC,;t t
-s, at LLC@,$LLC,;t t
-s, at LLC_BIN@,$LLC_BIN,;t t
-s, at LLC_DIR@,$LLC_DIR,;t t
-s, at LLC_INC@,$LLC_INC,;t t
-s, at LLC_LIB@,$LLC_LIB,;t t
+s, at HLVM_PACKAGE@,$HLVM_PACKAGE,;t t
+s, at HLVM_VERSION@,$HLVM_VERSION,;t t
s, at USE_@,$USE_,;t t
s, at _BIN@,$_BIN,;t t
s, at _DIR@,$_DIR,;t t
s, at _INC@,$_INC,;t t
s, at _LIB@,$_LIB,;t t
+s, at HLVM_SO_VERSION@,$HLVM_SO_VERSION,;t t
+s, at HLVM_SO_CURRENT@,$HLVM_SO_CURRENT,;t t
+s, at HLVM_SO_REVISION@,$HLVM_SO_REVISION,;t t
+s, at HLVM_SO_AGE@,$HLVM_SO_AGE,;t t
+s, at HLVM_SHAREDPREFIX@,$HLVM_SHAREDPREFIX,;t t
+s, at HLVM_DEBUG@,$HLVM_DEBUG,;t t
+s, at HLVM_OPTIMIZE@,$HLVM_OPTIMIZE,;t t
+s, at HLVM_INLINE@,$HLVM_INLINE,;t t
+s, at HLVM_ASSERT@,$HLVM_ASSERT,;t t
+s, at HLVM_TRACE@,$HLVM_TRACE,;t t
+s, at HLVM_SMALL@,$HLVM_SMALL,;t t
+s, at HLVM_EFENCE@,$HLVM_EFENCE,;t t
+s, at HLVM_PROFILING@,$HLVM_PROFILING,;t t
+s, at HLVM_WITH_WORKSPACE@,$HLVM_WITH_WORKSPACE,;t t
+s, at HLVM_WITH_EXPAT@,$HLVM_WITH_EXPAT,;t t
+s, at HLVM_WITH_INCLUDES@,$HLVM_WITH_INCLUDES,;t t
+s, at HLVM_WITH_LLVM_SRC@,$HLVM_WITH_LLVM_SRC,;t t
+s, at HLVM_WITH_LLVM_OBJ@,$HLVM_WITH_LLVM_OBJ,;t t
+s, at HLVM_WITH_LLVMGCC@,$HLVM_WITH_LLVMGCC,;t t
+s, at CC@,$CC,;t t
+s, at CFLAGS@,$CFLAGS,;t t
+s, at LDFLAGS@,$LDFLAGS,;t t
+s, at CPPFLAGS@,$CPPFLAGS,;t t
+s, at ac_ct_CC@,$ac_ct_CC,;t t
+s, at EXEEXT@,$EXEEXT,;t t
+s, at OBJEXT@,$OBJEXT,;t t
+s, at CPP@,$CPP,;t t
+s, at CXX@,$CXX,;t t
+s, at CXXFLAGS@,$CXXFLAGS,;t t
+s, at ac_ct_CXX@,$ac_ct_CXX,;t t
+s, at ifGNUmake@,$ifGNUmake,;t t
+s, at EGREP@,$EGREP,;t t
+s, at HLVM_CFGNAME@,$HLVM_CFGNAME,;t t
+s, at HLVM_CONFIGTIME@,$HLVM_CONFIGTIME,;t t
+s, at HLVM_PREFIX@,$HLVM_PREFIX,;t t
s, at LIBOBJS@,$LIBOBJS,;t t
s, at LTLIBOBJS@,$LTLIBOBJS,;t t
CEOF
@@ -2690,6 +5558,229 @@
cat >>$CONFIG_STATUS <<\_ACEOF
#
+# CONFIG_HEADER section.
+#
+
+# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
+# NAME is the cpp macro being defined and VALUE is the value it is being given.
+#
+# ac_d sets the value in "#define NAME VALUE" lines.
+ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)'
+ac_dB='[ ].*$,\1#\2'
+ac_dC=' '
+ac_dD=',;t'
+# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
+ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)'
+ac_uB='$,\1#\2define\3'
+ac_uC=' '
+ac_uD=',;t'
+
+for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
+ # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+ case $ac_file in
+ - | *:- | *:-:* ) # input from stdin
+ cat >$tmp/stdin
+ ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+ *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+ * ) ac_file_in=$ac_file.in ;;
+ esac
+
+ test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+
+ # First look for the input files in the build tree, otherwise in the
+ # src tree.
+ ac_file_inputs=`IFS=:
+ for f in $ac_file_in; do
+ case $f in
+ -) echo $tmp/stdin ;;
+ [\\/$]*)
+ # Absolute (can't be DOS-style, as IFS=:)
+ test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+ { (exit 1); exit 1; }; }
+ # Do quote $f, to prevent DOS paths from being IFS'd.
+ echo "$f";;
+ *) # Relative
+ if test -f "$f"; then
+ # Build tree
+ echo "$f"
+ elif test -f "$srcdir/$f"; then
+ # Source tree
+ echo "$srcdir/$f"
+ else
+ # /dev/null tree
+ { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+ { (exit 1); exit 1; }; }
+ fi;;
+ esac
+ done` || { (exit 1); exit 1; }
+ # Remove the trailing spaces.
+ sed 's/[ ]*$//' $ac_file_inputs >$tmp/in
+
+_ACEOF
+
+# Transform confdefs.h into two sed scripts, `conftest.defines' and
+# `conftest.undefs', that substitutes the proper values into
+# config.h.in to produce config.h. The first handles `#define'
+# templates, and the second `#undef' templates.
+# And first: Protect against being on the right side of a sed subst in
+# config.status. Protect against being in an unquoted here document
+# in config.status.
+rm -f conftest.defines conftest.undefs
+# Using a here document instead of a string reduces the quoting nightmare.
+# Putting comments in sed scripts is not portable.
+#
+# `end' is used to avoid that the second main sed command (meant for
+# 0-ary CPP macros) applies to n-ary macro definitions.
+# See the Autoconf documentation for `clear'.
+cat >confdef2sed.sed <<\_ACEOF
+s/[\\&,]/\\&/g
+s,[\\$`],\\&,g
+t clear
+: clear
+s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
+t end
+s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
+: end
+_ACEOF
+# If some macros were called several times there might be several times
+# the same #defines, which is useless. Nevertheless, we may not want to
+# sort them, since we want the *last* AC-DEFINE to be honored.
+uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
+sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
+rm -f confdef2sed.sed
+
+# This sed command replaces #undef with comments. This is necessary, for
+# example, in the case of _POSIX_SOURCE, which is predefined and required
+# on some systems where configure will not decide to define it.
+cat >>conftest.undefs <<\_ACEOF
+s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
+_ACEOF
+
+# Break up conftest.defines because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
+echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS
+echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
+echo ' :' >>$CONFIG_STATUS
+rm -f conftest.tail
+while grep . conftest.defines >/dev/null
+do
+ # Write a limited-size here document to $tmp/defines.sed.
+ echo ' cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
+ # Speed up: don't consider the non `#define' lines.
+ echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS
+ # Work around the forget-to-reset-the-flag bug.
+ echo 't clr' >>$CONFIG_STATUS
+ echo ': clr' >>$CONFIG_STATUS
+ sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
+ echo 'CEOF
+ sed -f $tmp/defines.sed $tmp/in >$tmp/out
+ rm -f $tmp/in
+ mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+ sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
+ rm -f conftest.defines
+ mv conftest.tail conftest.defines
+done
+rm -f conftest.defines
+echo ' fi # grep' >>$CONFIG_STATUS
+echo >>$CONFIG_STATUS
+
+# Break up conftest.undefs because some shells have a limit on the size
+# of here documents, and old seds have small limits too (100 cmds).
+echo ' # Handle all the #undef templates' >>$CONFIG_STATUS
+rm -f conftest.tail
+while grep . conftest.undefs >/dev/null
+do
+ # Write a limited-size here document to $tmp/undefs.sed.
+ echo ' cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
+ # Speed up: don't consider the non `#undef'
+ echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS
+ # Work around the forget-to-reset-the-flag bug.
+ echo 't clr' >>$CONFIG_STATUS
+ echo ': clr' >>$CONFIG_STATUS
+ sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
+ echo 'CEOF
+ sed -f $tmp/undefs.sed $tmp/in >$tmp/out
+ rm -f $tmp/in
+ mv $tmp/out $tmp/in
+' >>$CONFIG_STATUS
+ sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
+ rm -f conftest.undefs
+ mv conftest.tail conftest.undefs
+done
+rm -f conftest.undefs
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+ # Let's still pretend it is `configure' which instantiates (i.e., don't
+ # use $as_me), people would be surprised to read:
+ # /* config.h. Generated by config.status. */
+ if test x"$ac_file" = x-; then
+ echo "/* Generated by configure. */" >$tmp/config.h
+ else
+ echo "/* $ac_file. Generated by configure. */" >$tmp/config.h
+ fi
+ cat $tmp/in >>$tmp/config.h
+ rm -f $tmp/in
+ if test x"$ac_file" != x-; then
+ if diff $ac_file $tmp/config.h >/dev/null 2>&1; then
+ { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
+echo "$as_me: $ac_file is unchanged" >&6;}
+ else
+ ac_dir=`(dirname "$ac_file") 2>/dev/null ||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$ac_file" : 'X\(//\)[^/]' \| \
+ X"$ac_file" : 'X\(//\)$' \| \
+ X"$ac_file" : 'X\(/\)' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+ /^X\(\/\/\)$/{ s//\1/; q; }
+ /^X\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+ { if $as_mkdir_p; then
+ mkdir -p "$ac_dir"
+ else
+ as_dir="$ac_dir"
+ as_dirs=
+ while test ! -d "$as_dir"; do
+ as_dirs="$as_dir $as_dirs"
+ as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+ /^X\(\/\/\)$/{ s//\1/; q; }
+ /^X\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+ done
+ test ! -n "$as_dirs" || mkdir $as_dirs
+ fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+ { (exit 1); exit 1; }; }; }
+
+ rm -f $ac_file
+ mv $tmp/config.h $ac_file
+ fi
+ else
+ cat $tmp/config.h
+ rm -f $tmp/config.h
+ fi
+done
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+#
# CONFIG_COMMANDS section.
#
for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
@@ -2801,12 +5892,12 @@
{ echo "$as_me:$LINENO: executing $ac_dest commands" >&5
echo "$as_me: executing $ac_dest commands" >&6;}
case $ac_dest in
- Makefile ) ${llvm_src}/autoconf/mkinstalldirs `dirname Makefile`
- ${SHELL} ${llvm_src}/autoconf/install-sh -c ${srcdir}/Makefile Makefile ;;
- lib/Makefile ) ${llvm_src}/autoconf/mkinstalldirs `dirname lib/Makefile`
- ${SHELL} ${llvm_src}/autoconf/install-sh -c ${srcdir}/lib/Makefile lib/Makefile ;;
- tools/Makefile ) ${llvm_src}/autoconf/mkinstalldirs `dirname tools/Makefile`
- ${SHELL} ${llvm_src}/autoconf/install-sh -c ${srcdir}/tools/Makefile tools/Makefile ;;
+ Makefile ) ${SHELL} ${srcdir}/autoconf/install-sh -c ${srcdir}/Makefile Makefile ;;
+ Makefile.hlvm ) ${SHELL} ${srcdir}/autoconf/install-sh -c ${srcdir}/Makefile.hlvm Makefile.hlvm ;;
+ docs/Makefile ) ${SHELL} ${srcdir}/autoconf/install-sh -c ${srcdir}/docs/Makefile docs/Makefile ;;
+ hlvm/Makefile ) ${SHELL} ${srcdir}/autoconf/install-sh -c ${srcdir}/hlvm/Makefile hlvm/Makefile ;;
+ tools/Makefile ) ${SHELL} ${srcdir}/autoconf/install-sh -c ${srcdir}/tools/Makefile tools/Makefile ;;
+ test/Makefile ) ${SHELL} ${srcdir}/autoconf/install-sh -c ${srcdir}/test/Makefile test/Makefile ;;
esac
done
_ACEOF
@@ -2840,3 +5931,6 @@
$ac_cs_success || { (exit 1); exit 1; }
fi
+echo ""
+echo "Configuration of HLVM is now finished."
+echo ""
Added: hlvm/trunk/docs/Doxyfile.in
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/docs/Doxyfile.in?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/docs/Doxyfile.in (added)
+++ hlvm/trunk/docs/Doxyfile.in Sat Jul 7 18:58:30 2007
@@ -0,0 +1,1007 @@
+# Doxyfile 1.3-rc2
+
+# This file describes the settings to be used by the documentation system
+# doxygen (www.doxygen.org) for a project
+#
+# All text after a hash (#) is considered a comment and will be ignored
+# The format is:
+# TAG = value [value, ...]
+# For lists items can also be appended using:
+# TAG += value [value, ...]
+# Values that contain spaces should be placed between quotes (" ")
+
+#---------------------------------------------------------------------------
+# General configuration options
+#---------------------------------------------------------------------------
+
+# The PROJECT_NAME tag is a single word (or a sequence of words surrounded
+# by quotes) that should identify the project.
+
+PROJECT_NAME = "XPS API"
+
+# The PROJECT_NUMBER tag can be used to enter a project or revision number.
+# This could be handy for archiving the generated documentation or
+# if some version control system is used.
+
+PROJECT_NUMBER = @XPS_VERSION@
+
+# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
+# base path where the generated documentation will be put.
+# If a relative path is entered, it will be relative to the location
+# where doxygen was started. If left blank the current directory will be used.
+
+OUTPUT_DIRECTORY = ./www/apis
+
+# The OUTPUT_LANGUAGE tag is used to specify the language in which all
+# documentation generated by doxygen is written. Doxygen will use this
+# information to generate all constant output in the proper language.
+# The default language is English, other supported languages are:
+# Brazilian, Catalan, Chinese, Chinese-Traditional, Croatian, Czech, Danish, Dutch,
+# Finnish, French, German, Greek, Hungarian, Italian, Japanese, Japanese-en
+# (Japanese with english messages), Korean, Norwegian, Polish, Portuguese,
+# Romanian, Russian, Serbian, Slovak, Slovene, Spanish, Swedish and Ukrainian.
+
+OUTPUT_LANGUAGE = English
+
+# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in
+# documentation are documented, even if no documentation was available.
+# Private class members and static file members will be hidden unless
+# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
+
+EXTRACT_ALL = NO
+
+# If the EXTRACT_PRIVATE tag is set to YES all private members of a class
+# will be included in the documentation.
+
+EXTRACT_PRIVATE = NO
+
+# If the EXTRACT_STATIC tag is set to YES all static members of a file
+# will be included in the documentation.
+
+EXTRACT_STATIC = YES
+
+# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs)
+# defined locally in source files will be included in the documentation.
+# If set to NO only classes defined in header files are included.
+
+EXTRACT_LOCAL_CLASSES = NO
+
+# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all
+# undocumented members of documented classes, files or namespaces.
+# If set to NO (the default) these members will be included in the
+# various overviews, but no documentation section is generated.
+# This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_MEMBERS = YES
+
+# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all
+# undocumented classes that are normally visible in the class hierarchy.
+# If set to NO (the default) these class will be included in the various
+# overviews. This option has no effect if EXTRACT_ALL is enabled.
+
+HIDE_UNDOC_CLASSES = YES
+
+# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all
+# friend (class|struct|union) declarations.
+# If set to NO (the default) these declarations will be included in the
+# documentation.
+
+HIDE_FRIEND_COMPOUNDS = YES
+
+# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any
+# documentation blocks found inside the body of a function.
+# If set to NO (the default) these blocks will be appended to the
+# function's detailed documentation block.
+
+HIDE_IN_BODY_DOCS = YES
+
+# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will
+# include brief member descriptions after the members that are listed in
+# the file and class documentation (similar to JavaDoc).
+# Set to NO to disable this.
+
+BRIEF_MEMBER_DESC = YES
+
+# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend
+# the brief description of a member or function before the detailed description.
+# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+# brief descriptions will be completely suppressed.
+
+REPEAT_BRIEF = NO
+
+# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+# Doxygen will generate a detailed section even if there is only a brief
+# description.
+
+ALWAYS_DETAILED_SEC = NO
+
+# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all inherited
+# members of a class in the documentation of that class as if those members were
+# ordinary class members. Constructors, destructors and assignment operators of
+# the base classes will not be shown.
+
+INLINE_INHERITED_MEMB = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full
+# path before files name in the file list and in the header files. If set
+# to NO the shortest path that makes the file name unique will be used.
+
+FULL_PATH_NAMES = NO
+
+# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag
+# can be used to strip a user defined part of the path. Stripping is
+# only done if one of the specified strings matches the left-hand part of
+# the path. It is allowed to use relative paths in the argument list.
+
+STRIP_FROM_PATH =
+
+# The INTERNAL_DOCS tag determines if documentation
+# that is typed after a \internal command is included. If the tag is set
+# to NO (the default) then the documentation will be excluded.
+# Set it to YES to include the internal documentation.
+
+INTERNAL_DOCS = NO
+
+# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate
+# file names in lower case letters. If set to YES upper case letters are also
+# allowed. This is useful if you have classes or files whose names only differ
+# in case and if your file system supports case sensitive file names. Windows
+# users are adviced to set this option to NO.
+
+CASE_SENSE_NAMES = YES
+
+# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter
+# (but less readable) file names. This can be useful is your file systems
+# doesn't support long names like on DOS, Mac, or CD-ROM.
+
+SHORT_NAMES = NO
+
+# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen
+# will show members with their full class and namespace scopes in the
+# documentation. If set to YES the scope will be hidden.
+
+HIDE_SCOPE_NAMES = YES
+
+# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen
+# will generate a verbatim copy of the header file for each class for
+# which an include is specified. Set to NO to disable this.
+
+VERBATIM_HEADERS = NO
+
+# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen
+# will put list of the files that are included by a file in the documentation
+# of that file.
+
+SHOW_INCLUDE_FILES = YES
+
+# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen
+# will interpret the first line (until the first dot) of a JavaDoc-style
+# comment as the brief description. If set to NO, the JavaDoc
+# comments will behave just like the Qt-style comments (thus requiring an
+# explict @brief command for a brief description.
+
+JAVADOC_AUTOBRIEF = NO
+
+# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen
+# treat a multi-line C++ special comment block (i.e. a block of //! or ///
+# comments) as a brief description. This used to be the default behaviour.
+# The new default is to treat a multi-line C++ comment block as a detailed
+# description. Set this tag to YES if you prefer the old behaviour instead.
+
+MULTILINE_CPP_IS_BRIEF = NO
+
+# If the DETAILS_AT_TOP tag is set to YES then Doxygen
+# will output the detailed description near the top, like JavaDoc.
+# If set to NO, the detailed description appears after the member
+# documentation.
+
+DETAILS_AT_TOP = NO
+
+# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented
+# member inherits the documentation from any documented member that it
+# reimplements.
+
+INHERIT_DOCS = YES
+
+# If the INLINE_INFO tag is set to YES (the default) then a tag [inline]
+# is inserted in the documentation for inline members.
+
+INLINE_INFO = YES
+
+# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen
+# will sort the (detailed) documentation of file and class members
+# alphabetically by member name. If set to NO the members will appear in
+# declaration order.
+
+SORT_MEMBER_DOCS = YES
+
+# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+# tag is set to YES, then doxygen will reuse the documentation of the first
+# member in the group (if any) for the other members of the group. By default
+# all members of a group must be documented explicitly.
+
+DISTRIBUTE_GROUP_DOC = NO
+
+# The TAB_SIZE tag can be used to set the number of spaces in a tab.
+# Doxygen uses this value to replace tabs by spaces in code fragments.
+
+TAB_SIZE = 8
+
+# The GENERATE_TODOLIST tag can be used to enable (YES) or
+# disable (NO) the todo list. This list is created by putting \todo
+# commands in the documentation.
+
+GENERATE_TODOLIST = YES
+
+# The GENERATE_TESTLIST tag can be used to enable (YES) or
+# disable (NO) the test list. This list is created by putting \test
+# commands in the documentation.
+
+GENERATE_TESTLIST = YES
+
+# The GENERATE_BUGLIST tag can be used to enable (YES) or
+# disable (NO) the bug list. This list is created by putting \bug
+# commands in the documentation.
+
+GENERATE_BUGLIST = YES
+
+# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or
+# disable (NO) the deprecated list. This list is created by putting
+# \deprecated commands in the documentation.
+
+GENERATE_DEPRECATEDLIST= YES
+
+# This tag can be used to specify a number of aliases that acts
+# as commands in the documentation. An alias has the form "name=value".
+# For example adding "sideeffect=\par Side Effects:\n" will allow you to
+# put the command \sideeffect (or @sideeffect) in the documentation, which
+# will result in a user defined paragraph with heading "Side Effects:".
+# You can put \n's in the value part of an alias to insert newlines.
+
+ALIASES =
+
+# The ENABLED_SECTIONS tag can be used to enable conditional
+# documentation sections, marked by \if sectionname ... \endif.
+
+ENABLED_SECTIONS =
+
+# The MAX_INITIALIZER_LINES tag determines the maximum number of lines
+# the initial value of a variable or define consist of for it to appear in
+# the documentation. If the initializer consists of more lines than specified
+# here it will be hidden. Use a value of 0 to hide initializers completely.
+# The appearance of the initializer of individual variables and defines in the
+# documentation can be controlled using \showinitializer or \hideinitializer
+# command in the documentation regardless of this setting.
+
+MAX_INITIALIZER_LINES = 0
+
+# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+# only. Doxygen will then generate output that is more tailored for C.
+# For instance some of the names that are used will be different. The list
+# of all members will be omitted, etc.
+
+OPTIMIZE_OUTPUT_FOR_C = NO
+
+# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java sources
+# only. Doxygen will then generate output that is more tailored for Java.
+# For instance namespaces will be presented as packages, qualified scopes
+# will look different, etc.
+
+OPTIMIZE_OUTPUT_JAVA = NO
+
+# Set the SHOW_USED_FILES tag to NO to disable the list of files generated
+# at the bottom of the documentation of classes and structs. If set to YES the
+# list will mention the files that were used to generate the documentation.
+
+SHOW_USED_FILES = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to warning and progress messages
+#---------------------------------------------------------------------------
+
+# The QUIET tag can be used to turn on/off the messages that are generated
+# by doxygen. Possible values are YES and NO. If left blank NO is used.
+
+QUIET = NO
+
+# The WARNINGS tag can be used to turn on/off the warning messages that are
+# generated by doxygen. Possible values are YES and NO. If left blank
+# NO is used.
+
+WARNINGS = YES
+
+# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings
+# for undocumented members. If EXTRACT_ALL is set to YES then this flag will
+# automatically be disabled.
+
+WARN_IF_UNDOCUMENTED = NO
+
+# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for
+# potential errors in the documentation, such as not documenting some
+# parameters in a documented function, or documenting parameters that
+# don't exist or using markup commands wrongly.
+
+WARN_IF_DOC_ERROR = YES
+
+# The WARN_FORMAT tag determines the format of the warning messages that
+# doxygen can produce. The string should contain the $file, $line, and $text
+# tags, which will be replaced by the file and line number from which the
+# warning originated and the warning text.
+
+WARN_FORMAT = "$file:$line: $text"
+
+# The WARN_LOGFILE tag can be used to specify a file to which warning
+# and error messages should be written. If left blank the output is written
+# to stderr.
+
+WARN_LOGFILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the input files
+#---------------------------------------------------------------------------
+
+# The INPUT tag can be used to specify the files and/or directories that contain
+# documented source files. You may enter file names like "myfile.cpp" or
+# directories like "/usr/src/myproject". Separate the files or directories
+# with spaces.
+
+INPUT = @abs_top_srcdir@/xps @abs_srcdir@/doxygen.intro
+
+# If the value of the INPUT tag contains directories, you can use the
+# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank the following patterns are tested:
+# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx *.hpp
+# *.h++ *.idl *.odl
+
+FILE_PATTERNS = *.C *.h *.i *.t *.p *.doxy *.msgs
+
+# The RECURSIVE tag can be used to turn specify whether or not subdirectories
+# should be searched for input files as well. Possible values are YES and NO.
+# If left blank NO is used.
+
+RECURSIVE = YES
+
+# The EXCLUDE tag can be used to specify files and/or directories that should
+# excluded from the INPUT source files. This way you can easily exclude a
+# subdirectory from a directory tree whose root is specified with the INPUT tag.
+
+EXCLUDE =
+
+# The EXCLUDE_SYMLINKS tag can be used select whether or not files or directories
+# that are symbolic links (a Unix filesystem feature) are excluded from the input.
+
+EXCLUDE_SYMLINKS = YES
+
+# If the value of the INPUT tag contains directories, you can use the
+# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+# certain files from those directories.
+
+EXCLUDE_PATTERNS = */tests/* */doc/* */task/* */xvmapi/* */xplec/* */new/* */save/* */os/solaris/* */os/win32/*
+
+# The EXAMPLE_PATH tag can be used to specify one or more files or
+# directories that contain example code fragments that are included (see
+# the \include command).
+
+EXAMPLE_PATH =
+
+# If the value of the EXAMPLE_PATH tag contains directories, you can use the
+# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp
+# and *.h) to filter out the source-files in the directories. If left
+# blank all files are included.
+
+EXAMPLE_PATTERNS =
+
+# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+# searched for input files to be used with the \include or \dontinclude
+# commands irrespective of the value of the RECURSIVE tag.
+# Possible values are YES and NO. If left blank NO is used.
+
+EXAMPLE_RECURSIVE = NO
+
+# The IMAGE_PATH tag can be used to specify one or more files or
+# directories that contain image that are included in the documentation (see
+# the \image command).
+
+IMAGE_PATH =
+
+# The INPUT_FILTER tag can be used to specify a program that doxygen should
+# invoke to filter for each input file. Doxygen will invoke the filter program
+# by executing (via popen()) the command <filter> <input-file>, where <filter>
+# is the value of the INPUT_FILTER tag, and <input-file> is the name of an
+# input file. Doxygen will then use the output that the filter program writes
+# to standard output.
+
+INPUT_FILTER =
+
+# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+# INPUT_FILTER) will be used to filter the input files when producing source
+# files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
+FILTER_SOURCE_FILES = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to source browsing
+#---------------------------------------------------------------------------
+
+# If the SOURCE_BROWSER tag is set to YES then a list of source files will
+# be generated. Documented entities will be cross-referenced with these sources.
+
+SOURCE_BROWSER = YES
+
+# Setting the INLINE_SOURCES tag to YES will include the body
+# of functions and classes directly in the documentation.
+
+INLINE_SOURCES = NO
+
+# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct
+# doxygen to hide any special comment blocks from generated source code
+# fragments. Normal C and C++ comments will always remain visible.
+
+STRIP_CODE_COMMENTS = YES
+
+# If the REFERENCED_BY_RELATION tag is set to YES (the default)
+# then for each documented function all documented
+# functions referencing it will be listed.
+
+REFERENCED_BY_RELATION = NO
+
+# If the REFERENCES_RELATION tag is set to YES (the default)
+# then for each documented function all documented entities
+# called/used by that function will be listed.
+
+REFERENCES_RELATION = YES
+
+#---------------------------------------------------------------------------
+# configuration options related to the alphabetical class index
+#---------------------------------------------------------------------------
+
+# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index
+# of all compounds will be generated. Enable this if the project
+# contains a lot of classes, structs, unions or interfaces.
+
+ALPHABETICAL_INDEX = YES
+
+# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then
+# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns
+# in which this list will be split (can be a number in the range [1..20])
+
+COLS_IN_ALPHA_INDEX = 3
+
+# In case all classes in a project start with a common prefix, all
+# classes will be put under the same header in the alphabetical index.
+# The IGNORE_PREFIX tag can be used to specify one or more prefixes that
+# should be ignored while generating the index headers.
+
+IGNORE_PREFIX =
+
+#---------------------------------------------------------------------------
+# configuration options related to the HTML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_HTML tag is set to YES (the default) Doxygen will
+# generate HTML output.
+
+GENERATE_HTML = YES
+
+# The HTML_OUTPUT tag is used to specify where the HTML docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `html' will be used as the default path.
+
+HTML_OUTPUT = html
+
+# The HTML_FILE_EXTENSION tag can be used to specify the file extension for
+# each generated HTML page (for example: .htm,.php,.asp). If it is left blank
+# doxygen will generate files with .html extension.
+
+HTML_FILE_EXTENSION = .html
+
+# The HTML_HEADER tag can be used to specify a personal HTML header for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard header.
+
+HTML_HEADER = @abs_srcdir@/doxygen.header
+
+# The HTML_FOOTER tag can be used to specify a personal HTML footer for
+# each generated HTML page. If it is left blank doxygen will generate a
+# standard footer.
+
+HTML_FOOTER = @abs_srcdir@/doxygen.footer
+
+# The HTML_STYLESHEET tag can be used to specify a user defined cascading
+# style sheet that is used by each HTML page. It can be used to
+# fine-tune the look of the HTML output. If the tag is left blank doxygen
+# will generate a default style sheet
+
+HTML_STYLESHEET = doxygen.css
+
+# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes,
+# files or namespaces will be aligned in HTML using tables. If set to
+# NO a bullet list will be used.
+
+HTML_ALIGN_MEMBERS = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, additional index files
+# will be generated that can be used as input for tools like the
+# Microsoft HTML help workshop to generate a compressed HTML help file (.chm)
+# of the generated HTML documentation.
+
+GENERATE_HTMLHELP = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can
+# be used to specify the file name of the resulting .chm file. You
+# can add a path in front of the file if the result should not be
+# written to the html output dir.
+
+CHM_FILE =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can
+# be used to specify the location (absolute path including file name) of
+# the HTML help compiler (hhc.exe). If non empty doxygen will try to run
+# the html help compiler on the generated index.hhp.
+
+HHC_LOCATION =
+
+# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag
+# controls if a separate .chi index file is generated (YES) or that
+# it should be included in the master .chm file (NO).
+
+GENERATE_CHI = NO
+
+# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag
+# controls whether a binary table of contents is generated (YES) or a
+# normal table of contents (NO) in the .chm file.
+
+BINARY_TOC = NO
+
+# The TOC_EXPAND flag can be set to YES to add extra items for group members
+# to the contents of the Html help documentation and to the tree view.
+
+TOC_EXPAND = NO
+
+# The DISABLE_INDEX tag can be used to turn on/off the condensed index at
+# top of each HTML page. The value NO (the default) enables the index and
+# the value YES disables it.
+
+DISABLE_INDEX = NO
+
+# This tag can be used to set the number of enum values (range [1..20])
+# that doxygen will group on one line in the generated HTML documentation.
+
+ENUM_VALUES_PER_LINE = 3
+
+# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
+# generated containing a tree-like index structure (just like the one that
+# is generated for HTML Help). For this to work a browser that supports
+# JavaScript and frames is required (for instance Mozilla, Netscape 4.0+,
+# or Internet explorer 4.0+). Note that for large projects the tree generation
+# can take a very long time. In such cases it is better to disable this feature.
+# Windows users are probably better off using the HTML help feature.
+
+GENERATE_TREEVIEW = NO
+
+# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be
+# used to set the initial width (in pixels) of the frame in which the tree
+# is shown.
+
+TREEVIEW_WIDTH = 250
+
+#---------------------------------------------------------------------------
+# configuration options related to the LaTeX output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will
+# generate Latex output.
+
+GENERATE_LATEX = NO
+
+# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `latex' will be used as the default path.
+
+LATEX_OUTPUT = latex
+
+# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+# invoked. If left blank `latex' will be used as the default command name.
+
+LATEX_CMD_NAME = latex
+
+# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to
+# generate index for LaTeX. If left blank `makeindex' will be used as the
+# default command name.
+
+MAKEINDEX_CMD_NAME = makeindex
+
+# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact
+# LaTeX documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_LATEX = NO
+
+# The PAPER_TYPE tag can be used to set the paper type that is used
+# by the printer. Possible values are: a4, a4wide, letter, legal and
+# executive. If left blank a4wide will be used.
+
+PAPER_TYPE = a4wide
+
+# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX
+# packages that should be included in the LaTeX output.
+
+EXTRA_PACKAGES =
+
+# The LATEX_HEADER tag can be used to specify a personal LaTeX header for
+# the generated latex document. The header should contain everything until
+# the first chapter. If it is left blank doxygen will generate a
+# standard header. Notice: only use this tag if you know what you are doing!
+
+LATEX_HEADER =
+
+# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated
+# is prepared for conversion to pdf (using ps2pdf). The pdf file will
+# contain links (just like the HTML output) instead of page references
+# This makes the output suitable for online browsing using a pdf viewer.
+
+PDF_HYPERLINKS = NO
+
+# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of
+# plain latex in the generated Makefile. Set this option to YES to get a
+# higher quality PDF documentation.
+
+USE_PDFLATEX = NO
+
+# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode.
+# command to the generated LaTeX files. This will instruct LaTeX to keep
+# running if errors occur, instead of asking the user for help.
+# This option is also used when generating formulas in HTML.
+
+LATEX_BATCHMODE = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the RTF output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output
+# The RTF output is optimised for Word 97 and may not look very pretty with
+# other RTF readers or editors.
+
+GENERATE_RTF = NO
+
+# The RTF_OUTPUT tag is used to specify where the RTF docs will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `rtf' will be used as the default path.
+
+RTF_OUTPUT = rtf
+
+# If the COMPACT_RTF tag is set to YES Doxygen generates more compact
+# RTF documents. This may be useful for small projects and may help to
+# save some trees in general.
+
+COMPACT_RTF = NO
+
+# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated
+# will contain hyperlink fields. The RTF file will
+# contain links (just like the HTML output) instead of page references.
+# This makes the output suitable for online browsing using WORD or other
+# programs which support those fields.
+# Note: wordpad (write) and others do not support links.
+
+RTF_HYPERLINKS = NO
+
+# Load stylesheet definitions from file. Syntax is similar to doxygen's
+# config file, i.e. a series of assigments. You only have to provide
+# replacements, missing definitions are set to their default value.
+
+RTF_STYLESHEET_FILE =
+
+# Set optional variables used in the generation of an rtf document.
+# Syntax is similar to doxygen's config file.
+
+RTF_EXTENSIONS_FILE =
+
+#---------------------------------------------------------------------------
+# configuration options related to the man page output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_MAN tag is set to YES (the default) Doxygen will
+# generate man pages
+
+GENERATE_MAN = NO
+
+# The MAN_OUTPUT tag is used to specify where the man pages will be put.
+# If a relative path is entered the value of OUTPUT_DIRECTORY will be
+# put in front of it. If left blank `man' will be used as the default path.
+
+MAN_OUTPUT = man
+
+# The MAN_EXTENSION tag determines the extension that is added to
+# the generated man pages (default is the subroutine's section .3)
+
+MAN_EXTENSION = .3
+
+# If the MAN_LINKS tag is set to YES and Doxygen generates man output,
+# then it will generate one additional man file for each entity
+# documented in the real man page(s). These additional files
+# only source the real man page, but without them the man command
+# would be unable to find the correct page. The default is NO.
+
+MAN_LINKS = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the XML output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_XML tag is set to YES Doxygen will
+# generate an XML file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_XML = NO
+
+# The XML_SCHEMA tag can be used to specify an XML schema,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_SCHEMA =
+
+# The XML_DTD tag can be used to specify an XML DTD,
+# which can be used by a validating XML parser to check the
+# syntax of the XML files.
+
+XML_DTD =
+
+#---------------------------------------------------------------------------
+# configuration options for the AutoGen Definitions output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will
+# generate an AutoGen Definitions (see autogen.sf.net) file
+# that captures the structure of the code including all
+# documentation. Note that this feature is still experimental
+# and incomplete at the moment.
+
+GENERATE_AUTOGEN_DEF = NO
+
+#---------------------------------------------------------------------------
+# configuration options related to the Perl module output
+#---------------------------------------------------------------------------
+
+# If the GENERATE_PERLMOD tag is set to YES Doxygen will
+# generate a Perl module file that captures the structure of
+# the code including all documentation. Note that this
+# feature is still experimental and incomplete at the
+# moment.
+
+GENERATE_PERLMOD = NO
+
+# If the PERLMOD_LATEX tag is set to YES Doxygen will generate
+# the necessary Makefile rules, Perl scripts and LaTeX code to be able
+# to generate PDF and DVI output from the Perl module output.
+
+PERLMOD_LATEX = NO
+
+# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be
+# nicely formatted so it can be parsed by a human reader. This is useful
+# if you want to understand what is going on. On the other hand, if this
+# tag is set to NO the size of the Perl module output will be much smaller
+# and Perl will parse it just the same.
+
+PERLMOD_PRETTY = YES
+
+# The names of the make variables in the generated doxyrules.make file
+# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX.
+# This is useful so different doxyrules.make files included by the same
+# Makefile don't overwrite each other's variables.
+
+PERLMOD_MAKEVAR_PREFIX =
+
+#---------------------------------------------------------------------------
+# Configuration options related to the preprocessor
+#---------------------------------------------------------------------------
+
+# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will
+# evaluate all C-preprocessor directives found in the sources and include
+# files.
+
+ENABLE_PREPROCESSING = YES
+
+# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro
+# names in the source code. If set to NO (the default) only conditional
+# compilation will be performed. Macro expansion can be done in a controlled
+# way by setting EXPAND_ONLY_PREDEF to YES.
+
+MACRO_EXPANSION = NO
+
+# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES
+# then the macro expansion is limited to the macros specified with the
+# PREDEFINED and EXPAND_AS_PREDEFINED tags.
+
+EXPAND_ONLY_PREDEF = NO
+
+# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files
+# in the INCLUDE_PATH (see below) will be search if a #include is found.
+
+SEARCH_INCLUDES = YES
+
+# The INCLUDE_PATH tag can be used to specify one or more directories that
+# contain include files that are not input files but should be processed by
+# the preprocessor.
+
+INCLUDE_PATH = @abs_top_srcdir@
+
+# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+# patterns (like *.h and *.hpp) to filter out the header-files in the
+# directories. If left blank, the patterns specified with FILE_PATTERNS will
+# be used.
+
+INCLUDE_FILE_PATTERNS = *.h
+
+# The PREDEFINED tag can be used to specify one or more macro names that
+# are defined before the preprocessor is started (similar to the -D option of
+# gcc). The argument of the tag is a list of macros of the form: name
+# or name=definition (no spaces). If the definition and the = are
+# omitted =1 is assumed.
+
+PREDEFINED = XPS_VERSION="@XPS_VESION@" _GNU_SOURCE _REENTRANT _POSIX_THREADS
+
+# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then
+# this tag can be used to specify a list of macro names that should be expanded.
+# The macro definition that is found in the sources will be used.
+# Use the PREDEFINED tag if you want to use a different macro definition.
+
+EXPAND_AS_DEFINED =
+
+# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then
+# doxygen's preprocessor will remove all function-like macros that are alone
+# on a line, have an all uppercase name, and do not end with a semicolon. Such
+# function macros are typically used for boiler-plate code, and will confuse the
+# parser if not removed.
+
+SKIP_FUNCTION_MACROS = YES
+
+#---------------------------------------------------------------------------
+# Configuration::addtions related to external references
+#---------------------------------------------------------------------------
+
+# The TAGFILES tag can be used to specify one or more tagfiles.
+
+TAGFILES =
+
+# When a file name is specified after GENERATE_TAGFILE, doxygen will create
+# a tag file that is based on the input files it reads.
+
+GENERATE_TAGFILE =
+
+# If the ALLEXTERNALS tag is set to YES all external classes will be listed
+# in the class index. If set to NO only the inherited external classes
+# will be listed.
+
+ALLEXTERNALS = NO
+
+# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed
+# in the modules index. If set to NO, only the current project's groups will
+# be listed.
+
+EXTERNAL_GROUPS = NO
+
+# The PERL_PATH should be the absolute path and name of the perl script
+# interpreter (i.e. the result of `which perl').
+
+PERL_PATH = /usr/bin/perl
+
+#---------------------------------------------------------------------------
+# Configuration options related to the dot tool
+#---------------------------------------------------------------------------
+
+# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will
+# generate a inheritance diagram (in Html, RTF and LaTeX) for classes with base or
+# super classes. Setting the tag to NO turns the diagrams off. Note that this
+# option is superceded by the HAVE_DOT option below. This is only a fallback. It is
+# recommended to install and use dot, since it yield more powerful graphs.
+
+CLASS_DIAGRAMS = YES
+
+# If set to YES, the inheritance and collaboration graphs will hide
+# inheritance and usage relations if the target is undocumented
+# or is not a class.
+
+HIDE_UNDOC_RELATIONS = YES
+
+# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+# available from the path. This tool is part of Graphviz, a graph visualization
+# toolkit from AT&T and Lucent Bell Labs. The other options in this section
+# have no effect if this option is set to NO (the default)
+
+HAVE_DOT = YES
+
+# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect inheritance relations. Setting this tag to YES will force the
+# the CLASS_DIAGRAMS tag to NO.
+
+CLASS_GRAPH = YES
+
+# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen
+# will generate a graph for each documented class showing the direct and
+# indirect implementation dependencies (inheritance, containment, and
+# class references variables) of the class with other documented classes.
+
+COLLABORATION_GRAPH = YES
+
+# If set to YES, the inheritance and collaboration graphs will show the
+# relations between templates and their instances.
+
+TEMPLATE_RELATIONS = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT
+# tags are set to YES then doxygen will generate a graph for each documented
+# file showing the direct and indirect include dependencies of the file with
+# other documented files.
+
+INCLUDE_GRAPH = YES
+
+# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and
+# HAVE_DOT tags are set to YES then doxygen will generate a graph for each
+# documented header file showing the documented files that directly or
+# indirectly include this file.
+
+INCLUDED_BY_GRAPH = YES
+
+# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen
+# will graphical hierarchy of all classes instead of a textual one.
+
+GRAPHICAL_HIERARCHY = YES
+
+# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+# generated by dot. Possible values are png, jpg, or gif
+# If left blank png will be used.
+
+DOT_IMAGE_FORMAT = gif
+
+# The tag DOT_PATH can be used to specify the path where the dot tool can be
+# found. If left blank, it is assumed the dot tool can be found on the path.
+
+DOT_PATH =
+
+# The DOTFILE_DIRS tag can be used to specify one or more directories that
+# contain dot files that are included in the documentation (see the
+# \dotfile command).
+
+DOTFILE_DIRS =
+
+# The MAX_DOT_GRAPH_WIDTH tag can be used to set the maximum allowed width
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_WIDTH = 800
+
+# The MAX_DOT_GRAPH_HEIGHT tag can be used to set the maximum allows height
+# (in pixels) of the graphs generated by dot. If a graph becomes larger than
+# this value, doxygen will try to truncate the graph, so that it fits within
+# the specified constraint. Beware that most browsers cannot cope with very
+# large images.
+
+MAX_DOT_GRAPH_HEIGHT = 240
+
+# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will
+# generate a legend page explaining the meaning of the various boxes and
+# arrows in the dot generated graphs.
+
+GENERATE_LEGEND = YES
+
+# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will
+# remove the intermedate dot files that are used to generate
+# the various graphs.
+
+DOT_CLEANUP = YES
+
+#---------------------------------------------------------------------------
+# Configuration::addtions related to the search engine
+#---------------------------------------------------------------------------
+
+# The SEARCHENGINE tag specifies whether or not a search engine should be
+# used. If set to NO the values of all tags below this one will be ignored.
+
+SEARCHENGINE = NO
Added: hlvm/trunk/docs/Makefile
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/docs/Makefile?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/docs/Makefile (added)
+++ hlvm/trunk/docs/Makefile Sat Jul 7 18:58:30 2007
@@ -0,0 +1,53 @@
+# Copyright (C) 2006 HLVM Group. All Rights Reserved.
+#
+# This program is open source software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License (GPL) as published by
+# the Free Software Foundation. You should have received a copy of the GPL
+# in a file named COPYING that was included with this file.
+#
+################################################################################
+
+LEVEL := ..
+
+EXTRA_DIST := Doxyfile.in doxygen.css doxygen.footer doxygen.header \
+ doxygen.intro www
+
+include $(LEVEL)/Makefile.xps
+
+DOCS_TAR_FILE := $(PROJ_OBJ_DIR)/xps.www.tar
+DOCS_TGZ_FILE := $(PROJ_OBJ_DIR)/xps.www.tar.gz
+
+.PHONY: doxygen
+
+doxygen:: $(DOCS_TGZ_FILE)
+
+DOXYGEN_DEPS = \
+ Doxyfile \
+ www/apis/html/.dir \
+ $(PROJ_SRC_DIR)/doxygen.css \
+ $(PROJ_SRC_DIR)/doxygen.header \
+ $(PROJ_SRC_DIR)/doxygen.footer \
+ $(PROJ_SRC_DIR)/doxygen.intro \
+ $(PROJ_SRC_ROOT)/xps/base/Base.h \
+ $(PROJ_SRC_ROOT)/xps/xml/Handler.h \
+ $(PROJ_SRC_ROOT)/xps/xpl/Handler.h \
+ $(PROJ_SRC_ROOT)/xps/xplbe/XPLTargetMachine.h
+
+www/apis/html/index.html : $(DOXYGEN_DEPS)
+ $(Echo) Running Doxygen (be patient)
+ $(Verb) cp $(PROJ_SRC_DIR)/doxygen.css doxygen.css
+ $(Verb) doxygen Doxyfile >doxygen.out 2>&1
+ $(Verb) cp $(PROJ_SRC_DIR)/doxygen.css www/apis/html
+
+DOCS_TAR_DEPS = \
+ www/apis/html/index.html \
+ $(wildcard $(PROJ_SRC_DIR)/www/%.incl) \
+ $(wildcard $(PROJ_SRC_DIR)/www/%.shtml)
+
+$(DOCS_TGZ_FILE): www/apis/html/.dir $(DOCS_TAR_DEPS)
+ $(Echo) Creating gzipped tar file for documentation
+ $(Verb) find $(PROJ_SRC_DIR)/www -type d -exec chmod 755 {} \;
+ $(Verb) find $(PROJ_SRC_DIR)/www -type f -exec chmod 644 {} \;
+ $(Verb) tar --directory $(PROJ_SRC_DIR) -lcf $(DOCS_TAR_FILE) www
+ $(Verb) tar --directory $(PROJ_OBJ_DIR) -lrf $(DOCS_TAR_FILE) www
+ $(Verb) gzip -f9 $(DOCS_TAR_FILE)
Added: hlvm/trunk/docs/doxygen.css
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/docs/doxygen.css?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/docs/doxygen.css (added)
+++ hlvm/trunk/docs/doxygen.css Sat Jul 7 18:58:30 2007
@@ -0,0 +1,84 @@
+BODY { background: white; color: black; font-family: Verdana,Arial,sans-serif; }
+H1 { text-align: center; }
+H2 { text-align: center; }
+H3 { text-align: center; }
+CAPTION { font-weight: bold }
+A.qindex {}
+A.qindexRef {}
+A.el { text-decoration: none; font-weight: bold }
+A.elRef { font-weight: bold }
+A.code { text-decoration: none; font-weight: normal; color: #4444ee }
+A.codeRef { font-weight: normal; color: #4444ee }
+A:link {
+ cursor: pointer;
+ text-decoration: none;
+ font-weight: bolder;
+}
+A:visited {
+ cursor: pointer;
+ text-decoration: underline;
+ font-weight: bolder;
+}
+A:hover {
+ cursor: pointer;
+ text-decoration: underline;
+ font-weight: bolder;
+}
+A:active {
+ cursor: pointer;
+ text-decoration: underline;
+ font-weight: bolder;
+ font-style: italic;
+}
+DL.el { margin-left: -1cm }
+DIV.fragment { width: 100%; border: none; background-color: #eeeeee }
+DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
+TD.md { background-color: #f2f2ff; font-weight: bold; }
+TD.mdname1 { background-color: #f2f2ff; font-weight: bold; color: #602020; }
+TD.mdname { background-color: #f2f2ff; font-weight: bold; color: #602020; width: 600px; }
+DIV.groupHeader { margin-left: 16px; margin-top: 12px; margin-bottom: 6px; font-weight: bold }
+DIV.groupText { margin-left: 16px; font-style: italic; font-size: smaller }
+TD.indexkey {
+ background-color: #eeeeff;
+ font-weight: bold;
+ padding-right : 10px;
+ padding-top : 2px;
+ padding-left : 10px;
+ padding-bottom : 2px;
+ margin-left : 0px;
+ margin-right : 0px;
+ margin-top : 2px;
+ margin-bottom : 2px
+}
+TD.indexvalue {
+ background-color: #eeeeff;
+ font-style: italic;
+ padding-right : 10px;
+ padding-top : 2px;
+ padding-left : 10px;
+ padding-bottom : 2px;
+ margin-left : 0px;
+ margin-right : 0px;
+ margin-top : 2px;
+ margin-bottom : 2px
+}
+span.keyword { color: #008000 }
+span.keywordtype { color: #604020 }
+span.keywordflow { color: #e08000 }
+span.comment { color: #800000 }
+span.preprocessor { color: #806020 }
+span.stringliteral { color: #002080 }
+span.charliteral { color: #008080 }
+
+.footer {
+ font-size: 80%;
+ font-weight: bold;
+ text-align: center;
+ vertical-align: middle;
+}
+.title {
+ font-size: 105%
+ font-weight: bold;
+ text-decoration: underline;
+ text-align: center;
+}
Added: hlvm/trunk/docs/doxygen.footer
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/docs/doxygen.footer?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/docs/doxygen.footer (added)
+++ hlvm/trunk/docs/doxygen.footer Sat Jul 7 18:58:30 2007
@@ -0,0 +1,16 @@
+<hr>
+<p class="footer">
+Generated on $datetime for $projectname version $projectnumber by
+<a href="http://www.doxygen.org/index.html">doxygen $doxygenversion</a><br/>
+Copyright © 2003-2005, eXtensible Systems, Inc. All Rights Reserved.<br/>
+<a href="/index.php" onmouseover="window.status='Go To XPS Home Page';return true;" title="XPS Home Page">
+<img src="/images/logo_xps_small.jpeg" style="border:none" alt="XPS Logo"/></a>
+<a href="http://sourceforge.net/" onmouseover="window.status='Go To Source Forge Home Page';return true;" title="Source Forge Home Page">
+<img src="http://sourceforge.net/sflogo.php?group_id=51164&type=1" style="border:none" alt="SourceForge.net Logo"/>
+</a>
+<a href="http://www.opensource.org/docs/definition.php" onmouseover="window.status='Go To OSI Definition Page';return true;"
+title="Open Source Definition">
+<img src="/theme/osi-certified-60x50.gif" alt="OSI Certification Logo" style="border:none"/></a>
+<a href="http://www.doxygen.org/index.html" onmouseover="window.status='Go To Doxygen Home Page';return true;" title="Doxygen Home Page">
+<img src="doxygen.png" alt="Doxygen Logo" style="border:none;"/></a>
+</p></body></html>
Added: hlvm/trunk/docs/doxygen.header
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/docs/doxygen.header?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/docs/doxygen.header (added)
+++ hlvm/trunk/docs/doxygen.header Sat Jul 7 18:58:30 2007
@@ -0,0 +1,9 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html><head>
+<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
+<meta name="keywords" content="C++,XPS,doxygen,eXtensible Programming System,API,documentation"/>
+<meta name="description" content="C++ source code API documentation for the eXtensible Programming System (XPS)."/>
+<title>XPS $projectnumber : $title </title>
+<link href="doxygen.css" rel="stylesheet" type="text/css"/>
+</head><body>
+<p class="title">XPS API Documentation</p>
Added: hlvm/trunk/docs/doxygen.intro
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/docs/doxygen.intro?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/docs/doxygen.intro (added)
+++ hlvm/trunk/docs/doxygen.intro Sat Jul 7 18:58:30 2007
@@ -0,0 +1,207 @@
+//------------------------------------------------------------------------------
+// Copyright (C) 2002 eXtensible Systems, Inc. All Rights Reserved.
+//
+// This program is open source software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License (GPL) as published by
+// the Free Software Foundation; either version 2 of the License, or (at your
+// option) any later version. You should have received a copy of the GPL in a
+// file named COPYING that was included with this program; if not, you can
+// obtain a copy of the license through the Internet at http://www.fsf.org/
+//
+// This program is distributed in the hope that it will be useful, but
+// WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+// for more details.
+//
+////////////////////////////////////////////////////////////////////////////////
+/// @file doxygen.intro
+/// @author Reid Spencer <raspencer at users.sourceforge.net> (original author)
+/// @date 2003/04/17
+/// @brief XPS documentation introduction.
+////////////////////////////////////////////////////////////////////////////////
+
+/// @mainpage XPS:eXtensible Programming System
+///
+/// @section main_intro Introduction
+/// Welcome to the eXtensible Programming System (XPS).
+///
+/// This documentation describes the @b internal software that makes
+/// up XPS, not the @b external use of XPS. There are no instructions
+/// here on how to use XPS, only how to develop it. For usage instructions
+/// please obtain the programmer's guide or user's guide for XPL and XPS
+/// respectively.
+///
+/// @section main_caveat Caveat
+/// This documentation is generated directly from the source code with doxygen.
+/// Since XPS is constantly under active development, what you're about to
+/// read is out of date! However, it may still be useful since certain
+/// portions of XPS are relatively stable (base, os, mem ). When XPS reaches
+/// full stability (around release 0.9), this caveat will be removed and the
+/// documentation will pertain to a specific release of the software. Until
+/// then, refer back often to this page as it is updated between releases as
+/// significant changes are made.
+///
+/// @section main_overview Overview
+/// XPS is a comprehensive programming platform that hides all the "hard stuff"
+/// and makes programming much easier. By "hard stuff" we mean at least the
+/// following:
+/// - platform independence
+/// - flexible and efficient transient and persistent memory management
+/// - efficient network protocols implementations
+/// - internationalization (i18n) and localization (l10n)
+/// - security (authentication, authorization, encryption, non-repudiation)
+/// - asynchronous event management
+/// - correct pattern implementations for network programming
+/// - dynamic compilation, linking, and execution of programs
+/// - software version management
+/// - software configuration management
+/// - software deployment management
+/// - transaction coordination and management
+/// - multi-user distributed software development
+/// - multi-user distributed application architecture
+/// - development of robust, high-availability, fault-tolerant applications
+/// - dynamic application monitoring and tuning
+/// - extensibility
+///
+/// Individually, none of the "hard stuff" is new.
+/// There are many software packages and tools that provide these functions
+/// competently. What is new is the ability to package all the "hard stuff"
+/// into a single well-integrated product that then hides the details from the
+/// programmer. By providing a comprehensive platform upon which robust
+/// Internet applications are developed, XPS makes that development easier.
+///
+/// But that's just the beginning. It isn't enough to produce just a
+/// best-of-class development environment. Programming is also hampered by its
+/// low level of abstraction. After 50+ years of software development, we're
+/// still only a few levels removed from the physical machine. This low level
+/// of abstraction still requires highly-skilled programmers to produce
+/// extremely technical code. While that fosters job security, it doesn't do
+/// much to advance the state of the art. One of XPS's stated goals is to
+/// bring programming to layperson and expert alike. We envision a day when
+/// programming is just plain easy.
+///
+/// XPS uses a variety of techniques to address this situation:
+/// - use of an efficient virtual machine (XVM)
+/// - a high-level programming language (XPL)
+/// - horizontal and vertical extensibility
+///
+/// Each of these is described in the following subsections.
+///
+/// @subsection xvm eXtensible Virtual Machine (XVM)
+/// The XVM is the basic building block of XPS. It is responsible for the
+/// correct execution of XPL programs. Virtual machines are nothing new,
+/// they've been around for decades. However, the XVM differs from previous
+/// virtual machine implementations in the following ways:
+/// - there is no byte code interpretation, everything executes at machine
+/// speeds (JITing as necessary).
+/// - the machine semantics are not limited by hardware constraints
+/// - operations range from the mundane low-level bit manipulations familiar in most virtual machines to very high-order operations such as transaction commit.
+/// - the machine only manages state, not execution. Consequently, there are no branching instructions!
+/// - special attention is paid to security, robustness, fault tolerance, and provable semantics.
+/// - the machine provides efficient monitoring, tracing, and debugging facilities.
+///
+/// @subsection xpl eXtensible Programming Language (XPL)
+/// XPL is a high-level programming language. It supports the usual definition of
+/// types, functions, object classes and methods, and etc. However, it also
+/// provides numerous complicated features by simply declaring them. That is, you
+/// don't do any procedural programming for these features, you just declare that
+/// you want them. Some of the features that can be applied declaratively are:
+/// - reference counting
+/// - memory usage optimization
+/// - memory allocation strategies
+/// - persistent memory
+/// - multi-thread synchronization
+/// - asynchronous function/method invocation
+/// - atomic operations
+/// - parallelism
+/// - transactions
+/// - security
+/// - complex collection types
+/// - active objects
+/// - configurable program behavior
+/// - network protocols
+/// - software engineering features (assertions, invariants, etc.)
+///
+/// By handling these kinds of things as simple selectable options, the programmer
+/// needn't be bogged down in trying to correctly implement them in every program.
+/// Furthermore, XPS handles any combination of these features efficiently. It
+/// carefully analyzes which features a given program construct is requesting and
+/// generates the best code for that combination.
+///
+/// XPL is also very flexible. Because it is based on XML, all the power of XML
+/// processing tools can be utilized. Two are worthy of mentioning here:
+/// @par XML Substitution Groups (Horizontal Extension)
+/// XPL uses XML substitution groups in its schema definition to allow \em additional syntax
+/// and semantics to be added to the base XPL language. Unlike more static languages, this
+/// means it is possible for the XPL compiler recognize language constructs not originally
+/// envisioned.
+/// @par XSL Transformations (Vertical Extension)
+/// The XPL compiler can compile higher order languages if there is an XSL Transformation
+/// available from the high order language to XPL. The transformations is automatically and
+/// transparently applied by the compiler. This allows programmers to rapidly invent their
+/// own languages to meet the needs of their particular application domain.
+///
+/// Together these two features comprise the extensibility features for XPL.
+///
+/// @subsection extension Horizontal and Vertical eXtensibility
+/// As just noted, XPL supports horizontal and vertical extensiblity. First, lets define what we mean by this. If you think of
+/// XPS as a black box sitting on the floor, you can put other boxes around (horizontally on the floor) or on top of it (building a
+/// stack vertically). When we speak of horizontal extensibility, we mean adding things to the fundamental nature of XPS. For example,
+/// a web server's plugin is a kind of horizontal extensibility. You add some code that gets invoked through a well defined interface
+/// to make the web server do something it didn't do before .. little boxes laid out on the floor. When we speak of vertical
+/// extensibility we mean using the core features of XPS (and, possibily, its horizontal extensions) in new and interesting ways
+/// without changing XPS itself. For example, the C pre-processor is an example of vertical extensibility. You can make regular old
+/// C and C++ programs much more concise by breaking it into multiple #included files and using macros to eliminate repetitive or
+/// complex constructs.
+///
+/// To support horizontal extensibility, XPS provides the following:
+/// - XPL can be extended by including new programming constructs into the base language.
+/// - The XPL compiler can be extended to generate code in a variety of new ways, especially for XPL extensions.
+/// - The XVM can be extended by creating new fundamental opcodes that can be used in XPL programs.
+/// - The XPS daemon can be extended to provide new services to users of XPS.
+/// - The XPS shell can be extended to process new commands from users.
+///
+/// To support vertical extensibility, XPS provides the following:
+/// - The XPL compiler can recursively and automatically apply XSL Transformations to non-XPL XML input. That is, you can write your program in whatever language you like as long as a series of transformations to XPL (or some extension of XPL) is provided.
+/// - Similarly, the XPS shell can recursively translate and execute command definitions written in higher-order command languages.
+/// - The XVM can interpret opcode sets built strictly from other, existing opcodes.
+/// - The XPS daemon supports loadable services that can be re-used in XPL programs.
+///
+/// @section main_other Other Features
+/// Although the overview above describes the main features of XPS, there are some additional
+/// features worthy of at least making a note here:
+/// - XPS supports a complete build management service so that all programming related chores in XPS can be done remotely and safely. Programmer's have workspaces in which they can create, check-in, check-out, merge, compile, link, and execute their programs.
+/// - XPS supports a complete deployment management service so that applications can be rigorously and safely deployed into a production environment. Services for testing, configuring, updating, and activating a running application are provided in such a way that downtime is minimized.
+/// - Logic programming will be added as an extension to the core. It will look familiar to Prolog programmers.
+/// - Fuzzy logic programming will be added as an extension to the core. Fuzzy variables will be available to all programs.
+/// - A high-order multimedia 4D user interface extension will be added.
+/// - A 4D software development environment will be added once the user interface extensions is complete.
+///
+/// @section main_summary Summary
+/// XPS provides a wealth of tools to the programmer. And, those tools are aimed at making
+/// programming easier, not more complicated. The "hard stuff" is encoded into the internals
+/// of XPS so that programmer's can simply select the features they need in their programs.
+/// Extensibility further enhances simplicity by allowing programming to be done at higher
+/// and higher levels of abstraction without loss of performance. Planned extensions will
+/// directly support the rapid creation of high-quality software.
+///
+/// @section main_plug Shameless Plug
+/// If you've been programming for at least a couple of years, you're probably salivating
+/// by now. XPS, as described above, is aimed at being programming heaven. But, before you
+/// get your hopes up too high, take to heart that XPS is currently a work in progress.
+/// Much of what is described above is just jotted down notes, ruminations from past
+/// experience, and the desire to be really, really lazy when it comes to programming high
+/// quality applications. Unfortunately, it takes a lot of hard work to be that lazy.
+/// Although we believe XPS to be doable in the short term, it is definitely a challenge -- a challenge worth taking.
+///
+/// So, here's where you come in. If you've gotten over laughing at the audaciousness
+/// of the project, and think it is a worthy ambition, why not lend a hand? We need help
+/// in just about every area. Why not utilize your best talents and add your name to the
+/// roster of contributors to what will eventually become @em the way to program Internet
+/// applications?
+///
+/// We look forward to your future contributions.
+///
+/// @section main_changelog Change Log
+/// - Original Introduction written 4/23/2003 by Reid Spencer
+/// - Overview, Other Features & Summary written 4/26/2003 by Reid Spencer
Added: hlvm/trunk/hlvm/AST/Bundle.h
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/AST/Bundle.h?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/hlvm/AST/Bundle.h (added)
+++ hlvm/trunk/hlvm/AST/Bundle.h Sat Jul 7 18:58:30 2007
@@ -0,0 +1,60 @@
+//
+// Copyright (C) 2006 HLVM Group. All Rights Reserved.
+//
+// This program is open source software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License (GPL) as published by
+// the Free Software Foundation; either version 2 of the License, or (at your
+// option) any later version. You should have received a copy of the GPL in a
+// file named COPYING that was included with this program; if not, you can
+// obtain a copy of the license through the Internet at http://www.fsf.org/
+//
+// This program is distributed in the hope that it will be useful, but
+// WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+// for more details.
+//
+////////////////////////////////////////////////////////////////////////////////
+/// @file hlvm/AST/Bundle.h
+/// @author Reid Spencer <reid at hlvm.org> (original author)
+/// @date 2006/05/04
+/// @since 0.1.0
+/// @brief Declares the class hlvm::AST::Bundle
+////////////////////////////////////////////////////////////////////////////////
+
+#ifndef HLVM_AST_BUNDLE_H
+#define HLVM_AST_BUNDLE_H
+
+#include <hlvm/AST/Node.h>
+
+namespace hlvm
+{
+namespace AST
+{
+ /// This class represents an HLVM Bundle. A Bundle is simply a collection of
+ /// declarations and definitions. It is the root of the AST tree and also
+ /// the grouping and namespace construct in HLVM. Every compilation unit is
+ /// a Bundle. Bundles can also be nested in other Bundles. All programming
+ /// constructs are defined as child nodes of some Bundle.
+ /// @brief HLVM AST Bundle Node
+ class Bundle : Node
+ {
+ /// @name Constructors
+ /// @{
+ public:
+ Bundle(
+ Bundle* parent, ///< The bundle to which this bundle belongs
+ const std::string& name ///< The name of this bundle
+ ) : Node(parent,name) {}
+ virtual ~Bundle();
+
+ /// @}
+ /// @name Data
+ /// @{
+ protected:
+ /// @}
+ };
+}
+
+#endif
+
+#endif
Added: hlvm/trunk/hlvm/AST/Function.h
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/AST/Function.h?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/hlvm/AST/Function.h (added)
+++ hlvm/trunk/hlvm/AST/Function.h Sat Jul 7 18:58:30 2007
@@ -0,0 +1,67 @@
+//
+// Copyright (C) 2006 HLVM Group. All Rights Reserved.
+//
+// This program is open source software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License (GPL) as published by
+// the Free Software Foundation; either version 2 of the License, or (at your
+// option) any later version. You should have received a copy of the GPL in a
+// file named COPYING that was included with this program; if not, you can
+// obtain a copy of the license through the Internet at http://www.fsf.org/
+//
+// This program is distributed in the hope that it will be useful, but
+// WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+// for more details.
+//
+////////////////////////////////////////////////////////////////////////////////
+/// @file hlvm/AST/Function.h
+/// @author Reid Spencer <reid at hlvm.org> (original author)
+/// @date 2006/05/04
+/// @since 0.1.0
+/// @brief Declares the class hlvm::AST::Function
+////////////////////////////////////////////////////////////////////////////////
+
+#ifndef HLVM_AST_FUNCTION_H
+#define HLVM_AST_FUNCTION_H
+
+#include <hlvm/AST/LinkageItem.h>
+#include <hlvm/AST/NamedType.h>
+
+namespace hlvm
+{
+namespace AST
+{
+ class Block; // Forward declare
+ class Type; // Forward declare
+
+ /// This class represents an Function in the HLVM Abstract Syntax Tree.
+ /// A Function is a callable block of code that accepts parameters and
+ /// returns a result. This is the basic unit of code in HLVM. A Function
+ /// has a name, a set of formal arguments, a return type, and a block of
+ /// code to execute.
+ /// @brief HLVM AST Function Node
+ class Function : LinkageItem
+ {
+ /// @name Constructors
+ /// @{
+ public:
+ Function(
+ Bundle* parent, ///< The bundle in which the function is defined
+ const std::string& name ///< The name of the function
+ ) : LinkageItem(parent,name) {}
+ virtual ~Function();
+
+ /// @}
+ /// @name Data
+ /// @{
+ protected:
+ Block * block_; ///< The code block to be executed
+ Type* result_; ///< The type of the function's result
+ std::vector<NamedType> arguments_;///< The formal arguments
+ /// @}
+ };
+}
+
+#endif
+
+#endif
Added: hlvm/trunk/hlvm/AST/LinkageItem.h
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/AST/LinkageItem.h?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/hlvm/AST/LinkageItem.h (added)
+++ hlvm/trunk/hlvm/AST/LinkageItem.h Sat Jul 7 18:58:30 2007
@@ -0,0 +1,70 @@
+//
+// Copyright (C) 2006 HLVM Group. All Rights Reserved.
+//
+// This program is open source software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License (GPL) as published by
+// the Free Software Foundation; either version 2 of the License, or (at your
+// option) any later version. You should have received a copy of the GPL in a
+// file named COPYING that was included with this program; if not, you can
+// obtain a copy of the license through the Internet at http://www.fsf.org/
+//
+// This program is distributed in the hope that it will be useful, but
+// WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+// for more details.
+//
+////////////////////////////////////////////////////////////////////////////////
+/// @file hlvm/AST/LinkageItem.h
+/// @author Reid Spencer <reid at hlvm.org> (original author)
+/// @date 2006/05/04
+/// @since 0.1.0
+/// @brief Declares the class hlvm::AST::LinkageItem
+////////////////////////////////////////////////////////////////////////////////
+
+#ifndef HLVM_AST_LINKAGEITEM_H
+#define HLVM_AST_LINKAGEITEM_H
+
+#include <hlvm/AST/Node.h>
+
+namespace hlvm
+{
+namespace AST
+{
+ /// This enumeration is used to specify the kinds of linkage that are
+ /// permitted for a LinkageItem.
+ enum LinkageTypes {
+ ExternalLinkage, ///< Externally visible item
+ InternalLinkage ///< Rename collisions when linking (static funcs)
+ LinkOnceLinkage, ///< Keep one copy of item when linking (inline)
+ WeakLinkage, ///< Keep one copy of item when linking (weak)
+ AppendingLinkage, ///< Append item to an array of similar items
+ };
+
+ /// This class represents an LinkageItem in the HLVM Abstract Syntax Tree.
+ /// A LinkageItem is any construct that can be linked; that is, referred to
+ /// elsewhere and linked into another bundle to resolve the reference. The
+ /// LinkageItem declares what kind of linkage is to be performed.
+ /// @brief HLVM AST Bundle Node
+ class LinkageItem : Node
+ {
+ /// @name Constructors
+ /// @{
+ public:
+ LinkageItem(
+ Bundle* parent, ///< The Bundle to which this bundle belongs, or null
+ const std::string& name ///< The name of the bundle
+ ) : Node(parent,name) {}
+ virtual ~Bundle();
+
+ /// @}
+ /// @name Data
+ /// @{
+ protected:
+ LinkageTypes type_; ///< The type of linkage to perform for this item
+ /// @}
+ };
+}
+
+#endif
+
+#endif
Added: hlvm/trunk/hlvm/AST/Makefile
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/AST/Makefile?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/hlvm/AST/Makefile (added)
+++ hlvm/trunk/hlvm/AST/Makefile Sat Jul 7 18:58:30 2007
@@ -0,0 +1,14 @@
+#-------------------------------------------------------------------------------
+#
+# Copyright (C) 2006 HLVM Group. All Rights Reserved
+#
+#-------------------------------------------------------------------------------
+
+LEVEL = ../..
+LIBRARYNAME = HLVMAST
+DONT_BUILD_RELINKED := 1
+BUILD_ARCHIVE := 1
+INSTALL_INCLUDES := Bundle.h Conditionable.h Function.h LinkageItem.h \
+ NamedType.h Node.h Variable.h
+
+include $(LEVEL)/Makefile.hlvm
Added: hlvm/trunk/hlvm/AST/Node.h
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/AST/Node.h?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/hlvm/AST/Node.h (added)
+++ hlvm/trunk/hlvm/AST/Node.h Sat Jul 7 18:58:30 2007
@@ -0,0 +1,65 @@
+//
+// Copyright (C) 2006 HLVM Group. All Rights Reserved.
+//
+// This program is open source software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License (GPL) as published by
+// the Free Software Foundation; either version 2 of the License, or (at your
+// option) any later version. You should have received a copy of the GPL in a
+// file named COPYING that was included with this program; if not, you can
+// obtain a copy of the license through the Internet at http://www.fsf.org/
+//
+// This program is distributed in the hope that it will be useful, but
+// WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+// for more details.
+//
+////////////////////////////////////////////////////////////////////////////////
+/// @file hlvm/AST/Node.h
+/// @author Reid Spencer <reid at hlvm.org> (original author)
+/// @date 2006/05/04
+/// @since 0.1.0
+/// @brief Declares the class hlvm::AST::Node
+////////////////////////////////////////////////////////////////////////////////
+
+#ifndef HLVM_AST_NODE_H
+#define HLVM_AST_NODE_H
+
+#include <vector>
+#include <string>
+
+namespace hlvm
+{
+namespace AST
+{
+ class Type;
+
+ /// A NamedType is simply a pair involving a name and a pointer to a Type.
+ /// This is so frequently needed, it is declared here for convenience.
+ typedef std::pair<std::string,Type*> NamedType;
+
+ /// This class is the base class of HLVM Abstract Syntax Tree (AST). All
+ /// other AST nodes are subclasses of this class.
+ /// @brief Abstract base class of all HLVM AST node classes
+ class Node
+ {
+ /// @name Constructors
+ /// @{
+ public:
+ Node(Node* parent, const std::string& name)
+ : parent_(parent), name_(name) {}
+ virtual ~Node();
+
+ /// @}
+ /// @name Data
+ /// @{
+ protected:
+ std::string name_; ///< The name of this node.
+ Node* parent_; ///< The node that owns this node.
+ std::vector<Node> kids_; ///< The vector of children nodes.
+ /// @}
+ };
+}
+
+#endif
+
+#endif
Added: hlvm/trunk/hlvm/Base/Config.h.in
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/Base/Config.h.in?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/hlvm/Base/Config.h.in (added)
+++ hlvm/trunk/hlvm/Base/Config.h.in Sat Jul 7 18:58:30 2007
@@ -0,0 +1,70 @@
+/* xps/base/config.h.in. Generated from autoconf/configure.ac by autoheader. */
+
+/* Define to 1 if you have the <apr-1/apr.h> header file. */
+#undef HAVE_APR_1_APR_H
+
+/* Define to 1 if you have the <expat.h> header file. */
+#undef HAVE_EXPAT_H
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#undef HAVE_INTTYPES_H
+
+/* Define to 1 if you have the `aprutil-1' library (-laprutil-1). */
+#undef HAVE_LIBAPRUTIL_1
+
+/* Define to 1 if you have the `apr-1' library (-lapr-1). */
+#undef HAVE_LIBAPR_1
+
+/* Define to 1 if you have the `efence' library (-lefence). */
+#undef HAVE_LIBEFENCE
+
+/* Define to 1 if you have the `expat' library (-lexpat). */
+#undef HAVE_LIBEXPAT
+
+/* Define to 1 if you have the <llvm/Module.h> header file. */
+#undef HAVE_LLVM_MODULE_H
+
+/* Define to 1 if you have the <memory.h> header file. */
+#undef HAVE_MEMORY_H
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#undef HAVE_STDINT_H
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#undef HAVE_STDLIB_H
+
+/* Define to 1 if you have the <strings.h> header file. */
+#undef HAVE_STRINGS_H
+
+/* Define to 1 if you have the <string.h> header file. */
+#undef HAVE_STRING_H
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#undef HAVE_SYS_STAT_H
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#undef HAVE_SYS_TYPES_H
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#undef HAVE_UNISTD_H
+
+/* Define to the address where bug reports for this package should be sent. */
+#undef PACKAGE_BUGREPORT
+
+/* Define to the full name of this package. */
+#undef PACKAGE_NAME
+
+/* Define to the full name and version of this package. */
+#undef PACKAGE_STRING
+
+/* Define to the one symbol short name of this package. */
+#undef PACKAGE_TARNAME
+
+/* Define to the version of this package. */
+#undef PACKAGE_VERSION
+
+/* Define to 1 if you have the ANSI C header files. */
+#undef STDC_HEADERS
+
+/* Defined if all configurations share the same prefix */
+#undef XPS_SHAREDPREFIX
Added: hlvm/trunk/hlvm/Base/ConfigData.cpp.in
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/Base/ConfigData.cpp.in?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/hlvm/Base/ConfigData.cpp.in (added)
+++ hlvm/trunk/hlvm/Base/ConfigData.cpp.in Sat Jul 7 18:58:30 2007
@@ -0,0 +1,75 @@
+////////////////////////////////////////////////////////////////////////////////
+//
+// Copyright (C) 2002-2005 eXtensible Systems, Inc. All Rights Reserved.
+//
+// This program is open source software; you can redistribute it and/or modify
+// it under the terms of the GNU General Public License (GPL) as published by
+// the Free Software Foundation; either version 2 of the License, or (at your
+// option) any later version. You should have received a copy of the GPL in a
+// file named COPYING that was included with this program; if not, you can
+// obtain a copy of the license through the Internet at http://www.fsf.org/
+//
+// This program is distributed in the hope that it will be useful, but
+// WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+// or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
+// for more details.
+//
+////////////////////////////////////////////////////////////////////////////////
+/// @file xps/base/Dirs.C.in
+/// @author Reid Spencer <rspencer at x10sys.com>
+/// @date 2003/04/25
+/// @since 0.1.9
+/// @brief Configuration template for getting configurable directories etc.
+////////////////////////////////////////////////////////////////////////////////
+
+#include <xps/base/Base.h>
+
+namespace XPS_base
+{
+
+const char xps_prefix[] = "@XPS_PREFIX@";
+const char xps_workspace_dir[] = "@XPS_WITH_WORKSPACE@";
+const char xps_bindir[] = "@XPS_PREFIX@/bin";
+const char xps_libdir[] = "@XPS_PREFIX@/lib";
+const char xps_includedir[] = "@XPS_PREFIX@/include";
+const char xps_datadir[] = "@XPS_PREFIX@/data";
+const char xps_configdir[] = "@XPS_PREFIX@/etc";
+const char xps_infodir[] = "@XPS_PREFIX@/info";
+const char xps_mandir[] = "@XPS_PREFIX@/man";
+const char xps_schemasdir[] = "@XPS_PREFIX@/schemas";
+const char xps_src_dir[] = "@abs_top_srcdir@";
+const char xps_build_dir[] = "@abs_top_builddir@";
+const char xps_config_time[] = "@XPS_CONFIGTIME@";
+const char xps_config[] = "XPS.cfg";
+const char xps_config_path[] = "@XPS_PREFIX@/etc/XPS.cfg";
+const char xps_version[] = "@XPS_VERSION@";
+const char xps_so_version[] = "@XPS_SO_VERSION@";
+const char xps_xpl_rng_path[] = "@XPS_PREFIX@/schemas/XPL.rng";
+const char xps_package_name[] = "@PACKAGE_NAME@";
+const char xps_package_bugreport[] = "@PACKAGE_BUGREPORT@";
+const char xps_package_string[] = "@PACKAGE_STRING@";
+const char xps_package_version[] = "@PACKAGE_VERSION@";
+const int xps_lib_current = @XPS_SO_CURRENT@;
+const int xps_lib_revision = @XPS_SO_REVISION@;
+const int xps_lib_AGE = @XPS_SO_AGE@;
+
+const char Configuration_schema_location[] =
+ "http://x-p-s.net/XPS/Schemas/Configuration "
+ "@XPS_PREFIX@/schemas/Config.rng";
+
+const char XPL_schema_location[] =
+ "http://x-p-s.net/XPS/Schemas/XPL "
+ "@XPS_PREFIX@/schemas/XPL.rng";
+
+const char Command_schema_location[] =
+ "http://x-p-s.net/XPS/Schemas/Command "
+ "@XPS_PREFIX@/schemas/Command.rng";
+
+const char XHTML_schema_location[] =
+ "http://www.w3.org/1999/xhtml "
+ "@XPS_PREFIX@/schemas/XHTML.xsd";
+
+const char XSLT_schema_location[] =
+ "http://www.w3.org/1999/XSL/Transform "
+ "@XPS_PREFIX@/schemas/XSLT.xsd";
+}
Added: hlvm/trunk/hlvm/Base/Makefile
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/Base/Makefile?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/hlvm/Base/Makefile (added)
+++ hlvm/trunk/hlvm/Base/Makefile Sat Jul 7 18:58:30 2007
@@ -0,0 +1,12 @@
+##===- hlvm/Base/Makefile ----------------------------------*- Makefile -*-===##
+#
+# Relative path to the top of the source tree.
+#
+LEVEL=../..
+
+#
+# List all of the subdirectories that we will compile.
+#
+DIRS=
+
+include $(LEVEL)/Makefile.hlvm
Propchange: hlvm/trunk/hlvm/Base/Makefile
------------------------------------------------------------------------------
svn:executable = *
Added: hlvm/trunk/hlvm/Makefile
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/hlvm/Makefile?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/hlvm/Makefile (added)
+++ hlvm/trunk/hlvm/Makefile Sat Jul 7 18:58:30 2007
@@ -0,0 +1,12 @@
+##===- hlvm/Makefile ---------------------------------------*- Makefile -*-===##
+#
+# Relative path to the top of the source tree.
+#
+LEVEL=..
+
+#
+# List all of the subdirectories that we will compile.
+#
+DIRS=Base AST
+
+include $(LEVEL)/Makefile.hlvm
Propchange: hlvm/trunk/hlvm/Makefile
------------------------------------------------------------------------------
svn:executable = *
Added: hlvm/trunk/test/Makefile
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/test/Makefile?rev=37974&view=auto
==============================================================================
--- hlvm/trunk/test/Makefile (added)
+++ hlvm/trunk/test/Makefile Sat Jul 7 18:58:30 2007
@@ -0,0 +1,13 @@
+##===- test/Makefile ---------------------------------------*- Makefile -*-===##
+
+#
+# Relative path to the top of the source tree.
+#
+LEVEL=..
+
+#
+# List all of the subdirectories that we will compile.
+#
+DIRS=
+
+include $(LEVEL)/Makefile.hlvm
Propchange: hlvm/trunk/test/Makefile
------------------------------------------------------------------------------
svn:executable = *
Modified: hlvm/trunk/tools/Makefile
URL: http://llvm.org/viewvc/llvm-project/hlvm/trunk/tools/Makefile?rev=37974&r1=37973&r2=37974&view=diff
==============================================================================
--- hlvm/trunk/tools/Makefile (original)
+++ hlvm/trunk/tools/Makefile Sat Jul 7 18:58:30 2007
@@ -10,4 +10,4 @@
#
DIRS=
-include $(LEVEL)/Makefile.common
+include $(LEVEL)/Makefile.hlvm
More information about the llvm-commits
mailing list