Fix PR7809 by creating a header for just llvm variables that can be

included in exported interfaces.  Update a couple of exported interfaces.

llvm-svn: 110532
This commit is contained in:
Eric Christopher 2010-08-08 02:44:17 +00:00
parent 18e853f458
commit f24446d0c5
4 changed files with 104 additions and 20 deletions

View File

@ -1580,7 +1580,7 @@ dnl WARNING: dnl If you add or remove any of the following config headers, then
dnl you MUST also update Makefile.rules so that the variable FilesToConfig
dnl contains the same list of files as AC_CONFIG_HEADERS below. This ensures the
dnl files can be updated automatically when their *.in sources change.
AC_CONFIG_HEADERS([include/llvm/Config/config.h])
AC_CONFIG_HEADERS([include/llvm/Config/config.h include/llvm/Config/llvm-config.h])
AC_CONFIG_FILES([include/llvm/Config/Targets.def])
AC_CONFIG_FILES([include/llvm/Config/AsmPrinters.def])
AC_CONFIG_FILES([include/llvm/Config/AsmParsers.def])

View File

@ -1,26 +1,26 @@
/*===-- llvm-c/Target.h - Target Lib C Iface --------------------*- C++ -*-===*\
|* *|
|* The LLVM Compiler Infrastructure *|
|* *|
|* This file is distributed under the University of Illinois Open Source *|
|* License. See LICENSE.TXT for details. *|
|* *|
|*===----------------------------------------------------------------------===*|
|* *|
|* This header declares the C interface to libLLVMTarget.a, which *|
|* implements target information. *|
|* *|
|* Many exotic languages can interoperate with C code but have a harder time *|
|* with C++ due to name mangling. So in addition to C, this interface enables *|
|* tools written in such languages. *|
|* *|
\*===----------------------------------------------------------------------===*/
/*===-- llvm-c/Target.h - Target Lib C Iface --------------------*- C++ -*-===*/
/* */
/* The LLVM Compiler Infrastructure */
/* */
/* This file is distributed under the University of Illinois Open Source */
/* License. See LICENSE.TXT for details. */
/* */
/*===----------------------------------------------------------------------===*/
/* */
/* This header declares the C interface to libLLVMTarget.a, which */
/* implements target information. */
/* */
/* Many exotic languages can interoperate with C code but have a harder time */
/* with C++ due to name mangling. So in addition to C, this interface enables */
/* tools written in such languages. */
/* */
/*===----------------------------------------------------------------------===*/
#ifndef LLVM_C_TARGET_H
#define LLVM_C_TARGET_H
#include "llvm-c/Core.h"
#include "llvm/Config/config.h"
#include "llvm/Config/llvm-config.h"
#ifdef __cplusplus
extern "C" {

View File

@ -0,0 +1,84 @@
/*===-- llvm/config/llvm-config.h - llvm configure variable -------*- C -*-===*/
/* */
/* The LLVM Compiler Infrastructure */
/* */
/* This file is distributed under the University of Illinois Open Source */
/* License. See LICENSE.TXT for details. */
/* */
/*===----------------------------------------------------------------------===*/
/* This file enumerates all of the llvm variables from configure so that
they can be in exported headers and won't override package specific
directives. This is a C file so we can include it in the llvm-c headers. */
/* Installation directory for binary executables */
#undef LLVM_BINDIR
/* Time at which LLVM was configured */
#undef LLVM_CONFIGTIME
/* Installation directory for data files */
#undef LLVM_DATADIR
/* Installation directory for documentation */
#undef LLVM_DOCSDIR
/* Installation directory for config files */
#undef LLVM_ETCDIR
/* Host triple we were built on */
#undef LLVM_HOSTTRIPLE
/* Installation directory for include files */
#undef LLVM_INCLUDEDIR
/* Installation directory for .info files */
#undef LLVM_INFODIR
/* Installation directory for libraries */
#undef LLVM_LIBDIR
/* Installation directory for man pages */
#undef LLVM_MANDIR
/* Build multithreading support into LLVM */
#undef LLVM_MULTITHREADED
/* LLVM architecture name for the native architecture, if available */
#undef LLVM_NATIVE_ARCH
/* Short LLVM architecture name for the native architecture, if available */
#undef LLVM_NATIVE_ARCHNAME
/* Define if this is Unixish platform */
#undef LLVM_ON_UNIX
/* Define if this is Win32ish platform */
#undef LLVM_ON_WIN32
/* Define to path to circo program if found or 'echo circo' otherwise */
#undef LLVM_PATH_CIRCO
/* Define to path to dot program if found or 'echo dot' otherwise */
#undef LLVM_PATH_DOT
/* Define to path to dotty program if found or 'echo dotty' otherwise */
#undef LLVM_PATH_DOTTY
/* Define to path to fdp program if found or 'echo fdp' otherwise */
#undef LLVM_PATH_FDP
/* Define to path to Graphviz program if found or 'echo Graphviz' otherwise */
#undef LLVM_PATH_GRAPHVIZ
/* Define to path to gv program if found or 'echo gv' otherwise */
#undef LLVM_PATH_GV
/* Define to path to neato program if found or 'echo neato' otherwise */
#undef LLVM_PATH_NEATO
/* Define to path to twopi program if found or 'echo twopi' otherwise */
#undef LLVM_PATH_TWOPI
/* Installation prefix directory */
#undef LLVM_PREFIX

View File

@ -16,7 +16,7 @@
#ifndef LLVM_TARGET_TARGETSELECT_H
#define LLVM_TARGET_TARGETSELECT_H
#include "llvm/Config/config.h"
#include "llvm/Config/llvm-config.h"
extern "C" {
// Declare all of the target-initialization functions that are available.