summaryrefslogtreecommitdiff
path: root/tools/llvm-config/CMakeLists.txt
Commit message (Collapse)AuthorAge
* Add back the top-level target for 'llvm-config' and the dependency edgeChandler Carruth2011-11-02
| | | | | | | | | | | | to force it to build after all library targets so it has complete dependency information. This should fix broken 'make install' with CMake. This is a partial revert of r143540, but it doesn't revert the most important part of that change: removing the dependency edge from LLVM tools to the llvm-config script. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143548 91177308-0d34-0410-b5e6-96231b3b80d8
* build/CMake: Remove llvm-config.target used to serialize tool builds onDaniel Dunbar2011-11-02
| | | | | | llvm-config build, there is no longer a point to this after Chandler's work. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143540 91177308-0d34-0410-b5e6-96231b3b80d8
* Have llvm-config --cppflags print correct flags when in CMake build directoryPeter Collingbourne2011-10-28
| | | | | | | | | | | | Previously, if invoked from a CMake build directory, 'llvm-config --cppflags' and friends would only print a -I flag for the build directory's header search path, because it would assume that it was already installed, not recognising its parent directory as being the build directory. Teach llvm-config about CMake build directories so that it prints a -I for both the source and build directory's search paths. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@143171 91177308-0d34-0410-b5e6-96231b3b80d8
* Rewrite the CMake build to use explicit dependencies between libraries,Chandler Carruth2011-07-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | specified in the same file that the library itself is created. This is more idiomatic for CMake builds, and also allows us to correctly specify dependencies that are missed due to bugs in the GenLibDeps perl script, or change from compiler to compiler. On Linux, this returns CMake to a place where it can relably rebuild several targets of LLVM. I have tried not to change the dependencies from the ones in the current auto-generated file. The only places I've really diverged are in places where I was seeing link failures, and added a dependency. The goal of this patch is not to start changing the dependencies, merely to move them into the correct location, and an explicit form that we can control and change when necessary. This also removes a serialization point in the build because we don't have to scan all the libraries before we begin building various tools. We no longer have a step of the build that regenerates a file inside the source tree. A few other associated cleanups fall out of this. This isn't really finished yet though. After talking to dgregor he urged switching to a single CMake macro to construct libraries with both sources and dependencies in the arguments. Migrating from the two macros to that style will be a follow-up patch. Also, llvm-config is still generated with GenLibDeps.pl, which means it still has slightly buggy dependencies. The internal CMake 'llvm-config-like' macro uses the correct explicitly specified dependencies however. A future patch will switch llvm-config generation (when using CMake) to be based on these deps as well. This may well break Windows. I'm getting a machine set up now to dig into any failures there. If anyone can chime in with problems they see or ideas of how to solve them for Windows, much appreciated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@136433 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename LLVMConfig.cmake to LLVM-Config.cmake. The *Config.cmake namingOscar Fuentes2011-04-05
| | | | | | scheme is used by the functionality related to find_package. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128889 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: remove debug code from previous commit.Oscar Fuentes2011-04-01
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128740 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix assignment of -fPIC to CMAKE_C_FLAGS. Configure llvm-config.in.inOscar Fuentes2011-04-01
| | | | | | | | | with the contents of CMAKE_C(XX)_FLAGS too, else `llvm-config --c(xx)flags' doesn't tell the absolute truth. This comes from PR9603 and is based on a patch by Ryuta Suzuki! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@128727 91177308-0d34-0410-b5e6-96231b3b80d8
* Make llvm-config.in configuration more MSYS-friendly.Oscar Fuentes2011-03-19
| | | | | | | Some of those POSIX <-> Windows command line conversions ended on failure. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127958 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: store TARGET_TRIPLE on llvm-config.in.Oscar Fuentes2011-03-19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@127957 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: remove unnecessary variable.Oscar Fuentes2011-02-22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@126224 91177308-0d34-0410-b5e6-96231b3b80d8
* Move library stuff out of the toplevel CMakeLists.txt file.Oscar Fuentes2011-02-18
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@125968 91177308-0d34-0410-b5e6-96231b3b80d8
* Don't show -pedantic, -W and -Wall on the output ofOscar Fuentes2011-01-27
| | | | | | | | | llvm-config --cflags --cxxflags --cppflags We shouldn't impose those flags on people who use llvm-config for building their own projects. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124399 91177308-0d34-0410-b5e6-96231b3b80d8
* Stop the build if cyclic library dependecies found.Oscar Fuentes2010-10-02
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@115405 91177308-0d34-0410-b5e6-96231b3b80d8
* Revert "CMake: Get rid of LLVMLibDeps.cmake and export the libraries normally."Michael J. Spencer2010-09-13
| | | | | | | | | | This reverts commit r113632 Conflicts: cmake/modules/AddLLVM.cmake git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113819 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Get rid of LLVMLibDeps.cmake and export the libraries normally.Michael J. Spencer2010-09-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@113632 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Improved COMMENT on a custom commandOscar Fuentes2010-08-15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@111111 91177308-0d34-0410-b5e6-96231b3b80d8
* Kill off LLVMGCCARCH and LLVMGCC_VERSION make variables.Daniel Dunbar2010-02-23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96909 91177308-0d34-0410-b5e6-96231b3b80d8
* Kill off LLVMGCC_MAJVERS make variable.Daniel Dunbar2010-02-23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96907 91177308-0d34-0410-b5e6-96231b3b80d8
* Stop running get_target_triple more than we need to.Daniel Dunbar2009-11-07
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86418 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: remove .so file extension from library names when buildingOscar Fuentes2009-10-04
| | | | | | | | | dependency info. Patch by Peter Collingbourne! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@83275 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix llvm-config --src-root and --obj-root for CMake builds.Daniel Dunbar2009-09-22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82529 91177308-0d34-0410-b5e6-96231b3b80d8
* Make cmake generated llvm-config output correct JIT backend for non X86 targets.Xerxes Ranby2009-09-16
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@82049 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Automatic regeneration of the library dependencies file.Oscar Fuentes2009-08-14
| | | | | | | | | | | | It doesn't stop or reconfigure the build, though, so the user will see a broken build that magically succeeds at the next attempt. It is technically possible to halt the build with a helpful message, and even to automatically restart the build using the new dependencies as it we did when llvm-config was used by cmake for learning dependencies. This is left on the TODO list. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@79004 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: propagate to the parent scope LLVM_COMMON_DEPENDS. This isOscar Fuentes2009-08-14
| | | | | | | necessary for the changes being effective on the successive targets git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78989 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: build llvm-config before the other tools.Oscar Fuentes2009-08-14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78975 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Localized dependency on Perl.Oscar Fuentes2009-08-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78788 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Re-enabled build of llvm-config. Removed recursive invocationOscar Fuentes2009-08-12
| | | | | | | of cmake. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@78768 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Implements and documents option LLVM_ENABLE_ASSERTS.Oscar Fuentes2009-06-03
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72774 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Set LIBS on llvm-config so we can query the system librariesOscar Fuentes2009-05-27
| | | | | | | used by CMake with --ldflags. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@72470 91177308-0d34-0410-b5e6-96231b3b80d8
* Accommodate empty string for build type. This was previously causing an errorTed Kremenek2009-04-08
| | | | | | | | when generating an Xcode project using the CMake files (thanks to Doug Gregor for identifying the issue). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68618 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: defines and uses macro add_llvm_definitions for keeping trackOscar Fuentes2009-04-04
| | | | | | | | | | | | | of compiler parameters explicitly added by the build specification. This macro replaces the cmake built-in `add_definitions'. Detects glibc and defines _GNU_SOURCE accordingly. Resolves bug 3882. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68428 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: tools/llvm-config/CMakeLists.txt: Use ! instead of comma asOscar Fuentes2009-04-03
| | | | | | | separator in sed scripts. Resolves Bug 3881. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68385 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Build system fixes for XCode. llvm-config still causes us some ↵Douglas Gregor2009-03-16
| | | | | | serious trouble, but it's less serious than it used to be git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67056 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: replace `rm' with portable invocations of cmake.Oscar Fuentes2009-01-07
| | | | | | | Based on a bug report by Yonggang Luo. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@61875 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Removed some cruft.Oscar Fuentes2008-11-15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59376 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Recursively invokes cmake using the right directories.Oscar Fuentes2008-11-15
| | | | | | | | | | LLVM_MAIN_SRC_DIR and LLVM_BINARY_DIR are not the cmake top level directories when LLVM is embedded on the build of other project. Fixes PR #3072. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59374 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: forces rebuild of llvm-config's library dependency info when aOscar Fuentes2008-11-11
| | | | | | | library is added or changed. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@59051 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Corrected detection of `nm'.Oscar Fuentes2008-11-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58941 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Support for cross-compiling. For now, requires a previouslyOscar Fuentes2008-11-09
| | | | | | | | | | | | | | built native tblgen which is passed to cmake in the variable LLVM_TABLEGEN. See http://www.cmake.org/Wiki/CmakeMingw for a quick example on how to cross-compile with CMake. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58939 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: GetTargetTriple: new module for determining the targetOscar Fuentes2008-10-26
| | | | | | | triple. Assign to LLVM_HOSTTRIPLE so it figures in config.h. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58176 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: `make install' for libraries, executables and header files.Oscar Fuentes2008-10-22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@57945 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Builds all targets.Oscar Fuentes2008-09-26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56641 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake build system: support for parallel builds.Oscar Fuentes2008-09-22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56453 91177308-0d34-0410-b5e6-96231b3b80d8
* Initial support for the CMake build system.Oscar Fuentes2008-09-22
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56419 91177308-0d34-0410-b5e6-96231b3b80d8