Commit Graph

71 Commits

Author SHA1 Message Date
Philippe Canal
852d6676ca With the cmake build of LLVM, not all header ends up in the inst directory.
This fixes the compilation of cling proper with configure/make
2016-07-28 19:29:15 +02:00
Pere Mato
547d42919d Fix for ROOT-8267 - ROOT 6 master fails to compile if clang present in system include paths, picks up system's clang includes! 2016-07-13 14:59:39 +02:00
Axel Naumann
bcb30fac77 Need to eval var when llvm-config is built; do not use ":=". 2016-06-17 15:59:07 +02:00
Axel Naumann
7706107eee Do not inherit extra warning and visibility flags from llvm. 2016-06-17 11:59:13 +02:00
Axel Naumann
81a43ac615 Cling now depends on the LLVMcoverage library. 2016-06-17 11:59:13 +02:00
Axel Naumann
061da2fd5b Simplify and fix Makefile (append instead of subst), still ROOT-8111. 2016-04-21 19:14:47 +02:00
Axel Naumann
2a78137bf1 Remove -fno-rtti / -fno-exception for ExceptionRTTI, also in Module.mk. 2016-04-21 19:14:47 +02:00
CristinaCristescu
1d46fe88d8 Remove runtime namespace from NullDerefException and rename RuntimeException.h to Exception.h.
(cherry picked from commit 234da8bfedce8661c2b8bc50f72632c240c4dfd8)
2015-12-15 20:24:16 +01:00
Boris Perovic
688ad34b3f Minor fixes around printValue, based on comments after the integration. 2015-08-18 18:08:17 +02:00
Boris Perovic
c44940b223 New printValue() integration (printing unified through overloading of printValue() function and template resolution). Modified tests to conform to the new prints. 2015-08-17 18:45:03 +02:00
Axel Naumann
cfd091955e Pass pthread to CIFactory; enable it in LangOpts. 2015-06-23 21:30:17 +02:00
Pere Mato
61112a0f7b Changes needed to make Xcode generation working 2015-03-05 22:53:33 +01:00
Axel Naumann
32a244d8df Add OrcJIT. 2015-02-11 10:57:48 +01:00
Axel Naumann
ddaa27fe23 Link against MCJIT. 2015-02-11 10:57:48 +01:00
Axel Naumann
d6c812a25a Use compiler to generate .d file wherever possible (ROOT-7041).
This makes use of the "advanced" version of the compiler generated dependency
files which also works for missing / generated headers. It ignores dependencies
on system headers.

It simply comments the invocation of rmkdepend while still building it for other
users (for instance TMVA's stand-alone Makefile expects to find rmkdepend).
2015-01-21 16:59:05 +01:00
Vassil Vassilev
122233ada6 Do not display suggestions only for ROOT. 2014-09-19 14:05:15 +02:00
Vassil Vassilev
0aa2a31fa0 llvm::OwningPtr is now std::unique_ptr. 2014-08-14 14:56:44 +02:00
Vassil Vassilev
4511d419a2 RewriteCore is gone. 2014-08-14 14:56:43 +02:00
Vassil Vassilev
7c83ac9c44 Follow llvm interface changes. 2014-08-14 14:56:34 +02:00
Vassil Vassilev
20c6cd6fae We need libLLVMProfileData. 2014-08-14 14:56:34 +02:00
Vassil Vassilev
cd3259b39a Improve implementation of ctags. 2014-06-04 09:20:15 +02:00
Vassil Vassilev
ee9fc709ab We don't need the ValuePrinter.h 2014-05-21 18:11:58 +02:00
Vassil Vassilev
58b76265fa Forget about ValuePrinterInfo. 2014-05-18 20:45:56 +02:00
Vassil Vassilev
7ce34cdf3c Propagate the version to the executable code. 2014-05-09 15:28:06 +02:00
Axel Naumann
83722a7084 Include etc/cling headers in PCH; improve dependencies. 2014-04-09 12:08:10 +02:00
Axel Naumann
d00d9e8d54 Simplify; adapt to new Value. 2014-04-01 18:31:58 +02:00
Axel Naumann
f2da5f7cb7 Add backend passes (inlining etc) to cling.
They are usually provided by clang's BackendUtil - which we don't use and which
has no support for incremental ("streaming") compilation but runs the passes on
the whole module the whole time, and does end-of-TU cleanup (e.g. "dead" code
removal) that we cannot use because subsequent transactions might create new
uses - think force_inline functions that must stay.

Instead BackendPass wraps what's in clang's BackendUtil into a
TransactionTransformer. It gets added to the IR transformers. In the future this
should only transform the delta of one Transaction instead of the whole Module.

This fixes the libc++ issue we worked around by
templates' symbols are not exported anymore and cause missing symbols with
XCode 5.1.

We include ObjC passes even though this blows up the list of linked libraries to
make it easier to port cling to ObjC(++).
2014-03-28 15:51:03 +01:00
Axel Naumann
b44c7c69c0 MASSIVE reduction in linked libs. Ouch. 2014-03-22 18:39:57 +01:00
Philippe Canal
8bdb34696e Do not pass on -ffunction-sections.
-ffunction-sections breaks the debugger on some platforms ... and does not help libCling at all.
2014-03-19 22:48:58 +01:00
Axel Naumann
4cffcf37a6 And another location for the new dependency. 2014-03-08 19:11:12 +01:00
Axel Naumann
f3c71160a4 Add more runtime llvm headers. 2014-02-18 11:27:59 +01:00
Axel Naumann
60dc035207 Also copy Allocator.h into etc/cling. 2014-02-18 11:01:04 +01:00
Axel Naumann
fae0d4037f Follow changes in llvm/clang. 2014-02-18 08:29:38 +01:00
Axel Naumann
92fbe9671d Delay eval of CLINGCXXFLAGS: llvm-config is not yet built. 2014-02-14 18:06:52 +01:00
Axel Naumann
9c1fa1f2c3 $(LLVMCONFIG) is only created later; evaluate lazily. Fixes full build. 2014-02-10 15:30:08 +01:00
Axel Naumann
759a79ea22 Do not include -I in cling-compiledata.h (ROOT-6048). 2014-02-10 11:00:58 +01:00
Fons Rademakers
1317314d8a force cling compilation to be 32-bit when configuration is for a 32-bit arch (ROOT-5865). 2014-01-22 21:49:53 +01:00
Axel Naumann
702b719bbb Create build directory before operating on it. 2014-01-22 15:59:56 +01:00
Axel Naumann
45911565a5 We can only evaluate CLINGCXXFLAGS once llvm has been built. 2014-01-20 15:13:59 +01:00
Axel Naumann
4d577a9bf2 Generate cling/lib/Interpreter/cling-compiledata.h. 2014-01-14 16:20:14 +01:00
Bertrand Bellenot
098870d14d Fix compilation issues on Windows (use filter instead of findstring) 2013-12-17 20:15:50 +01:00
Fons Rademakers
bca6686c91 add support for win64gcc.
By Bertrand.
2013-12-17 10:38:57 +01:00
Axel Naumann
b62b5d7937 Combine include path -D; pass src and obj for LLVMDEV/ROOT; remove unused -Ds 2013-09-30 18:09:03 +02:00
Philippe Canal
442922f56a Compile RuntimeException.o with -fexception 2013-09-11 21:26:58 +02:00
Vassil Vassilev
7875d921f6 Update the Module.mk. (Sorry for the mess). 2013-09-09 16:10:59 +02:00
Vassil Vassilev
8618646281 Copy the RuntimeExceptions.h over. Should fix the build. 2013-09-05 21:04:53 +02:00
Axel Naumann
c822c7c81d UserInterface must be compiled with -fexceptions. 2013-08-28 09:39:53 +02:00
Philippe Canal
53a85157fd In CLINGCXXFLAGS, put the source include dir first.
This will make sure that the build is 'consistent' and
the source version of the cling include files is not
superseeded by the (possible stale) copy that might
be in interpreter/llvm/inst.
2013-08-08 22:45:52 +02:00
Bertrand Bellenot
ef5b723bef Allow to build out of source on cygwin/gcc 2013-08-02 12:09:56 +02:00
Vassil Vassilev
b00e66a0c2 Add missing separator. 2013-06-26 16:18:25 +02:00