Граф коммитов

30 Коммитов

Автор SHA1 Сообщение Дата
Chandler Carruth 20316a948e Temporarily revert r161612 while we figure out just what the semantics
of PARALLEL_DIRS are. They apparantly aren't what either Nick, Eric, or
I thought. ;] Should let the bots make forward progress.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161618 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-09 21:02:52 +00:00
Chandler Carruth 86073673d0 Make all of the tools build in parallel. Missing this caused incremental
rebuilds to serially link each tool, which is really really slow.

We still have to build libclang serially first because c-index-test
depends on it.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161612 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-09 20:40:24 +00:00
Chandler Carruth af310b1c7e Recurse into the extra tools repo the correct way from the Makefile
build system. Thanks to Nick for pointing at the actual construct which
should be used here.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161609 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-09 20:21:38 +00:00
Chandler Carruth 2689a080a8 Allow the Makefile build system to find the extra repo if it is checked
out.

Unfortunately, the existing makefiles for the extra repo don't specify
the correct library dependencies. Fixing that next. If you're following
along, you'll get linker errors.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@161549 91177308-0d34-0410-b5e6-96231b3b80d8
2012-08-09 00:05:27 +00:00
Alexander Kornienko 77b1ae5656 Removed standalone clang-ast-dump tool.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160772 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-26 01:44:18 +00:00
Alexander Kornienko dea8fba3c6 The new clang-ast-dump tool for selective AST dumping. Moved common command-line tool stuff to CommandLineClangTool
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@160265 91177308-0d34-0410-b5e6-96231b3b80d8
2012-07-16 12:46:48 +00:00
Manuel Klimek cb971c6726 Adds a tooling library.
Provides an API to run clang tools (FrontendActions) as standalone tools,
or repeatedly in-memory in a process. This is useful for unit-testing,
map-reduce style applications, source transformation daemons or command line
tools.

The ability to run over multiple translation units with different command
line arguments enables building up refactoring tools that need to apply
transformations across translation unit boundaries.

See tools/clang-check/ClangCheck.cpp for an example.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154008 91177308-0d34-0410-b5e6-96231b3b80d8
2012-04-04 12:07:46 +00:00
Eli Friedman 6d402dc963 Misc Minix-specific changes to clang:
. move compiler-rt to a separate directory so the -L argument only includes compiler-rt (thanks joerg)
. build all clang subdirs
. switches the Minix platform to ELF
. normalizes toolchain invocation

Patch by Ben Gras.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146206 91177308-0d34-0410-b5e6-96231b3b80d8
2011-12-08 23:54:21 +00:00
Ted Kremenek 2dc651dfd4 Add 'diagtool' to the 'tools/' directory. diagtool is a new tool (WIP) for analyzing and working with clang diagnostics.
Some interesting stats from 'diagtool list-warnings' on the current version of clang:

  Percentage of warnings with flags: 48.79%
  Number of unique flags: 148
  Average number of diagnostics per flag: 2.041

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@137109 91177308-0d34-0410-b5e6-96231b3b80d8
2011-08-09 03:39:19 +00:00
Argyrios Kyrtzidis 69325d5b7c [arcmt] Introduce new '-ccc-arcmt-migrate <path>' ARC migration driver option.
This is a new mode of migration, where we avoid modifying the original files but
we emit temporary files instead.

<path> will be used to keep migration process metadata. Currently the temporary files
that are produced are put in the system's temp directory but we can put them
in the <path> if is necessary.

Also introduce new ARC migration functions in libclang whose only purpose,
currently, is to accept <path> and provide pairs of original file/transformed file
to map from the originals to the files after transformations are applied.

Finally introduce the c-arcmt-test utility that exercises the new libclang functions,
update arcmt-test, and add tests for the whole process.

rdar://9735086.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@134844 91177308-0d34-0410-b5e6-96231b3b80d8
2011-07-09 20:00:58 +00:00
John McCall 8f0e8d2296 The ARC Migration Tool. All the credit goes to Argyrios and Fariborz
for this.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@133104 91177308-0d34-0410-b5e6-96231b3b80d8
2011-06-15 23:25:17 +00:00
NAKAMURA Takumi 4b0104d8e3 libclang and c-index-test can be built on Cygming.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@118480 91177308-0d34-0410-b5e6-96231b3b80d8
2010-11-09 03:25:21 +00:00
Chris Lattner 44bbd79c13 Minix doesn't support dylibs, PR7294
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@107120 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-29 05:05:09 +00:00
Daniel Dunbar afed099bd2 Makefile: Switch Clang Makefiles to always include the top-level Clang Makefile.
- This eliminates most dependencies on how Clang is installed relative to LLVM.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@105637 91177308-0d34-0410-b5e6-96231b3b80d8
2010-06-08 20:34:18 +00:00
Daniel Dunbar f51f20fa34 Rename 'CIndex' to 'libclang', since it has basically become our stable public
(C) API, and will likely grow further in this direction in the future.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@102779 91177308-0d34-0410-b5e6-96231b3b80d8
2010-04-30 21:51:10 +00:00
Anton Korobeynikov 51f4c940d5 Fix thinko and enable clang build on mingw again (hopefully)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@98492 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-14 12:55:35 +00:00
Chris Lattner b196ef78cb disable these dirs which rely on dynamic linking on mingw/cygwin
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97892 91177308-0d34-0410-b5e6-96231b3b80d8
2010-03-07 00:17:28 +00:00
Douglas Gregor 9fb48de917 Eliminate index-test; all of its tested functionality is now in c-index-test.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94211 91177308-0d34-0410-b5e6-96231b3b80d8
2010-01-22 20:40:20 +00:00
Daniel Dunbar 864db01dec Remove clang-cc tool, it has joined in unholy union with clang.
- tools/driver will be renamed to tools/clang at some point.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91195 91177308-0d34-0410-b5e6-96231b3b80d8
2009-12-12 00:56:47 +00:00
Chris Lattner e7a5fd4a29 wpa is an experiment, don't build it by default, it adds to build times due to everything it links in.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@82704 91177308-0d34-0410-b5e6-96231b3b80d8
2009-09-24 19:45:12 +00:00
Steve Naroff 50398199fb Lot's of little changes to get the C-based indexing API going...
Work in progress.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80367 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-28 15:28:48 +00:00
Ted Kremenek d2fa56687f Add initial boilerplate for CIndex, a shared library that will vend high-level
source symbol information (harvested by Clang) through a C API.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@80166 91177308-0d34-0410-b5e6-96231b3b80d8
2009-08-26 22:36:44 +00:00
Daniel Dunbar 9797a8760b Unbreak build?
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75887 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-16 02:02:48 +00:00
Zhongxing Xu c5965992f5 update makefile.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@75878 91177308-0d34-0410-b5e6-96231b3b80d8
2009-07-16 01:05:34 +00:00
Argyrios Kyrtzidis 30b983b5b3 Introduce tools/index-test.
This tool will be the test bed for indexing related operations. It basically reads PCH files passed by the command line and performs various operations.

Currently it can accept a file:line:column which resolves to a declaration/statement and displays some information about them.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@74198 91177308-0d34-0410-b5e6-96231b3b80d8
2009-06-25 18:22:52 +00:00
Daniel Dunbar 45d604e039 Remove ccc from the makefile as well.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@70650 91177308-0d34-0410-b5e6-96231b3b80d8
2009-05-02 23:50:24 +00:00
Daniel Dunbar 073777f3ab Move <root>/Driver into <root>/tools/clang-cc.
Again, I tried to update cmake but it is untested.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67605 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-24 03:00:12 +00:00
Daniel Dunbar 3ede8d0a7d Stub out some structure for C++ driver.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@65867 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-02 19:59:07 +00:00
Daniel Dunbar 7ce86f0839 Makefile isn't executable.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62523 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-19 19:59:59 +00:00
Daniel Dunbar fec7c2a9d0 ccc: Add missing file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@62520 91177308-0d34-0410-b5e6-96231b3b80d8
2009-01-19 19:20:01 +00:00