Cling - The Interactive C++ Interpreter
Go to file
Anirudha Bose 16d6dbd1cc Wrap long commit messages to 75 columns wide following Debian Policy
Old changelogs (prior to tag v0.1) do not need wrapping. Debian Policy Manual
suggests changelog entries should not exceed 80 columns. The "fmt" tool
provided by GNU Coreutils wraps text to 75 columns by default. This can be
modified by: fmt --split-only --width=80
2014-06-04 09:20:14 +02:00
demo Changes related to the use of gendered or binary language in the code. 2014-05-17 15:04:59 +02:00
docs Remove obsolete config switches. 2014-05-21 09:36:56 +02:00
include We don't need the ValuePrinter.h 2014-05-21 18:11:58 +02:00
lib Remove useless error msg. 2014-06-04 09:20:09 +02:00
patches Use markdown 2014-02-27 12:49:09 +01:00
test Fix value printing for functions. Needs test! 2014-05-28 18:09:57 +02:00
tools Wrap long commit messages to 75 columns wide following Debian Policy 2014-06-04 09:20:14 +02:00
www dos2unix 2013-05-03 14:14:17 +02:00
CMakeLists.txt Pass the CLING_VERSION as compiler flag and remove it from cling_compiledata.h file 2014-05-13 16:47:56 +02:00
CREDITS.txt Add credits. 2014-01-07 11:43:53 +01:00
LastKnownGoodLLVMSVNRevision.txt Also note the llvm/clang update here! 2014-03-03 19:52:00 +01:00
LICENSE.TXT Add LICENSE.TXT file, to be referenced by all files in cling. 2014-01-07 11:13:55 +01:00
Makefile Fix wrong path of VERSION in Makefile 2014-05-15 13:51:55 +02:00
Module.mk We don't need the ValuePrinter.h 2014-05-21 18:11:58 +02:00
README.md Use actual md syntax. 2014-03-04 16:57:16 +01:00
VERSION Use debian style version naming. 2014-05-11 18:27:58 +02:00

      _  _  _      _         _  _  _   _           _      _  _  _
   _ (_)(_)(_) _  (_)       (_)(_)(_) (_) _       (_)  _ (_)(_)(_) _
  (_)         (_) (_)          (_)    (_)(_)_     (_) (_)         (_)
  (_)             (_)          (_)    (_)  (_)_   (_) (_)    _  _  _
  (_)             (_)          (_)    (_)    (_)_ (_) (_)   (_)(_)(_)
  (_)          _  (_)          (_)    (_)      (_)(_) (_)         (_)
  (_) _  _  _ (_) (_) _  _   _ (_) _  (_)         (_) (_) _  _  _ (_)
     (_)(_)(_)    (_)(_)(_) (_)(_)(_) (_)         (_)    (_)(_)(_)(_)

##INSTALLATION
###Binaries
We offer binary snapshots for download at https://ecsft.cern.ch/dist/cling

###Source
CLING source depends on the LLVM[1] and CLANG[2] headers and libraries. You will also need CMake[3] >= 2.6.1 or GNU Make to build all of those packages and subversion[4] and git[5] to get the source code.

[1] http://llvm.org
[2] http://clang.llvm.org
[3] http://cmake.org
[4] http://subversion.tigris.org
[5] http://git-scm.com

####Building
Building LLVM and CLANG you must:

  • Check out the sources:
    git clone http://root.cern.ch/git/llvm.git src
    cd src
    git checkout cling-patches
    cd tools
    git clone http://root.cern.ch/git/cling.git
    git clone http://root.cern.ch/git/clang.git
    cd clang
    git checkout cling-patches
  • Configure, build and install them, either using CMake:
    cd ..
    mkdir build
    cd build
    cmake -DCMAKE_INSTALL_PREFIX=/some/install/dir \
          -DLLVM_TARGETS_TO_BUILD=CBackend\;CppBackend\;X86 \
          -DCMAKE_BUILD_TYPE=Debug \
          ../src
    make
    make install
  • or GNU Make (see ../src/configure --help for all options):
    cd ..
    mkdir build
    cd build
    ../src/configure --prefix=/some/install/dir
    make
    make install

##USAGE
To get started run: /some/install/dir/bin/cling --help or type /some/install/dir/bin/cling [cling]$ .help

##DEVELOPERS' CORNER:
We have doxygen documentation of cling's code at: http://cling.web.cern.ch/cling/doxygen/