[llvm] r239987 - config.h.*: Rework r210144. Don't edit config.h.in manually.

NAKAMURA Takumi via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 17 17:18:08 PDT 2015


On Fri, Sep 18, 2015 at 8:44 AM Justin Bogner <mail at justinbogner.com> wrote:

> (Re-sending to the right list)
>
> NAKAMURA Takumi <geek4civic at gmail.com> writes:
> > Author: chapuni
> > Date: Wed Jun 17 23:08:20 2015
> > New Revision: 239987
> >
> > URL: http://llvm.org/viewvc/llvm-project?rev=239987&view=rev
> > Log:
> > config.h.*: Rework r210144. Don't edit config.h.in manually.
> >
> >   - Generate #include in configure.ac.
> >   - Resurrect the copy of llvm-config.h.cmake into config.h.cmake.
>
> Sorry to bring up such an old thread, but *why* did you duplicate
> everything from llvm-config.h.cmake into config.h.cmake? This just makes
> it more error prone to try to update these, since they need to be
> updated in sync. config.h #includes llvm-config.h anyway...
>

I dare to say again, "Don't edit config.h.in manually."
As far as we maintain autoconf build, config.h.in is generated by
configure.ac.

I suppose we were working for config.h.cmake in sync to config.h.in.
That said, config.h.cmake can easily diverge from config.h.in.

And, I suppose llvm-config.h.* may be subset of config.h.*.
I intended r239987 was "trying to keep config.h.cmake in sync to config.h.in"
rather than "copying back from llvm-config.h.cmake into config.h.cmake".

I know this is hairy.


>
> > Modified:
> >     llvm/trunk/autoconf/configure.ac
> >     llvm/trunk/include/llvm/Config/config.h.cmake
> >     llvm/trunk/include/llvm/Config/config.h.in
> >
> > Modified: llvm/trunk/autoconf/configure.ac
> > URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/autoconf/configure.ac?rev=239987&r1=239986&r2=239987&view=diff
> >
> ==============================================================================
> >
> > --- llvm/trunk/autoconf/configure.ac (original)
> > +++ llvm/trunk/autoconf/configure.ac Wed Jun 17 23:08:20 2015
> > @@ -2172,7 +2172,10 @@ dnl contains the same list of files as A
> >  dnl files can be updated automatically when their *.in sources change.
> >  AC_CONFIG_HEADERS([include/llvm/Config/config.h
> include/llvm/Config/llvm-config.h])
> >  AH_TOP([#ifndef CONFIG_H
> > -#define CONFIG_H])
> > +#define CONFIG_H
> > +
> > +/* Exported configuration */
> > +#include "llvm/Config/llvm-config.h"])
> >  AH_BOTTOM([#endif])
> >
> >  AC_CONFIG_FILES([include/llvm/Config/Targets.def])
> >
> > Modified: llvm/trunk/include/llvm/Config/config.h.cmake
> > URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Config/config.h.cmake?rev=239987&r1=239986&r2=239987&view=diff
> >
> ==============================================================================
> > --- llvm/trunk/include/llvm/Config/config.h.cmake (original)
> > +++ llvm/trunk/include/llvm/Config/config.h.cmake Wed Jun 17 23:08:20
> 2015
> > @@ -411,12 +411,103 @@
> >  /* Have host's ___chkstk_ms */
> >  #cmakedefine HAVE____CHKSTK_MS ${HAVE____CHKSTK_MS}
> >
> > -/* Define if we link Polly to the tools */
> > -#cmakedefine LINK_POLLY_INTO_TOOLS
> > +/* Linker version detected at compile time. */
> > +#undef HOST_LINK_VERSION
> > +
> > +/* Installation directory for binary executables */
> > +#cmakedefine LLVM_BINDIR "${LLVM_BINDIR}"
> > +
> > +/* Time at which LLVM was configured */
> > +#cmakedefine LLVM_CONFIGTIME "${LLVM_CONFIGTIME}"
> > +
> > +/* Installation directory for data files */
> > +#cmakedefine LLVM_DATADIR "${LLVM_DATADIR}"
> > +
> > +/* Target triple LLVM will generate code for by default */
> > +#cmakedefine LLVM_DEFAULT_TARGET_TRIPLE "${LLVM_DEFAULT_TARGET_TRIPLE}"
> > +
> > +/* Installation directory for documentation */
> > +#cmakedefine LLVM_DOCSDIR "${LLVM_DOCSDIR}"
> > +
> > +/* Define if LLVM is built with asserts and checks that change the
> layout of
> > +   client-visible data structures.  */
> > +#cmakedefine LLVM_ENABLE_ABI_BREAKING_CHECKS
> > +
> > +/* Define if threads enabled */
> > +#cmakedefine01 LLVM_ENABLE_THREADS
> >
> >  /* Define if zlib compression is available */
> >  #cmakedefine01 LLVM_ENABLE_ZLIB
> >
> > +/* Installation directory for config files */
> > +#cmakedefine LLVM_ETCDIR "${LLVM_ETCDIR}"
> > +
> > +/* Has gcc/MSVC atomic intrinsics */
> > +#cmakedefine01 LLVM_HAS_ATOMICS
> > +
> > +/* Host triple LLVM will be executed on */
> > +#cmakedefine LLVM_HOST_TRIPLE "${LLVM_HOST_TRIPLE}"
> > +
> > +/* Installation directory for include files */
> > +#cmakedefine LLVM_INCLUDEDIR "${LLVM_INCLUDEDIR}"
> > +
> > +/* Installation directory for .info files */
> > +#cmakedefine LLVM_INFODIR "${LLVM_INFODIR}"
> > +
> > +/* Installation directory for man pages */
> > +#cmakedefine LLVM_MANDIR "${LLVM_MANDIR}"
> > +
> > +/* LLVM architecture name for the native architecture, if available */
> > +#cmakedefine LLVM_NATIVE_ARCH ${LLVM_NATIVE_ARCH}
> > +
> > +/* LLVM name for the native AsmParser init function, if available */
> > +#cmakedefine LLVM_NATIVE_ASMPARSER
> LLVMInitialize${LLVM_NATIVE_ARCH}AsmParser
> > +
> > +/* LLVM name for the native AsmPrinter init function, if available */
> > +#cmakedefine LLVM_NATIVE_ASMPRINTER
> LLVMInitialize${LLVM_NATIVE_ARCH}AsmPrinter
> > +
> > +/* LLVM name for the native Disassembler init function, if available */
> > +#cmakedefine LLVM_NATIVE_DISASSEMBLER
> LLVMInitialize${LLVM_NATIVE_ARCH}Disassembler
> > +
> > +/* LLVM name for the native Target init function, if available */
> > +#cmakedefine LLVM_NATIVE_TARGET LLVMInitialize${LLVM_NATIVE_ARCH}Target
> > +
> > +/* LLVM name for the native TargetInfo init function, if available */
> > +#cmakedefine LLVM_NATIVE_TARGETINFO
> LLVMInitialize${LLVM_NATIVE_ARCH}TargetInfo
> > +
> > +/* LLVM name for the native target MC init function, if available */
> > +#cmakedefine LLVM_NATIVE_TARGETMC
> LLVMInitialize${LLVM_NATIVE_ARCH}TargetMC
> > +
> > +/* Define if this is Unixish platform */
> > +#cmakedefine LLVM_ON_UNIX ${LLVM_ON_UNIX}
> > +
> > +/* Define if this is Win32ish platform */
> > +#cmakedefine LLVM_ON_WIN32 ${LLVM_ON_WIN32}
> > +
> > +/* Installation prefix directory */
> > +#cmakedefine LLVM_PREFIX "${LLVM_PREFIX}"
> > +
> > +/* Define if we have the Intel JIT API runtime support library */
> > +#cmakedefine LLVM_USE_INTEL_JITEVENTS 1
> > +
> > +/* Define if we have the oprofile JIT-support library */
> > +#cmakedefine LLVM_USE_OPROFILE 1
> > +
> > +/* Major version of the LLVM API */
> > +#define LLVM_VERSION_MAJOR ${LLVM_VERSION_MAJOR}
> > +
> > +/* Minor version of the LLVM API */
> > +#define LLVM_VERSION_MINOR ${LLVM_VERSION_MINOR}
> > +
> > +/* Patch version of the LLVM API */
> > +#define LLVM_VERSION_PATCH ${LLVM_VERSION_PATCH}
> > +
> > +/* LLVM version string */
> > +#define LLVM_VERSION_STRING "${PACKAGE_VERSION}"
> > +
> > +/* Define if we link Polly to the tools */
> > +#cmakedefine LINK_POLLY_INTO_TOOLS
> > +
> >  /* Define if the OS needs help to load dependent libraries for
> dlopen(). */
> >  #cmakedefine LTDL_DLOPEN_DEPLIBS ${LTDL_DLOPEN_DEPLIBS}
> >
> >
> > Modified: llvm/trunk/include/llvm/Config/config.h.in
> > URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Config/config.h.in?rev=239987&r1=239986&r2=239987&view=diff
> >
> ==============================================================================
> > --- llvm/trunk/include/llvm/Config/config.h.in (original)
> > +++ llvm/trunk/include/llvm/Config/config.h.in Wed Jun 17 23:08:20 2015
> > @@ -3,6 +3,9 @@
> >  #ifndef CONFIG_H
> >  #define CONFIG_H
> >
> > +/* Exported configuration */
> > +#include "llvm/Config/llvm-config.h"
> > +
> >  /* Bug report URL. */
> >  #undef BUG_REPORT_URL
> >
> >
> >
> > _______________________________________________
> > llvm-commits mailing list
> > llvm-commits at cs.uiuc.edu
> > http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150918/dcbafae9/attachment.html>


More information about the llvm-commits mailing list