Following script can be used to download&build llvm
#!/bin/sh -x
export LLVM_DIR=$PWD
# check out llvm
cd $LLVM_DIR
svn co http://llvm.org/svn/llvm-project/llvm/trunk llvm
# check out clang
cd $LLVM_DIR/llvm/tools
svn co http://llvm.org/svn/llvm-project/cfe/trunk clang
# Check out extra Clang tools: (optional)
cd $LLVM_DIR/llvm/tools/clang/tools
svn co http://llvm.org/svn/llvm-project/clang-tools-extra/trunk extra
# Checkout LLD linker
cd $LLVM_DIR/llvm/tools
svn co http://llvm.org/svn/llvm-project/lld/trunk lld
# Check out Compiler-RT (optional):
cd $LLVM_DIR/llvm/projects
svn co http://llvm.org/svn/llvm-project/compiler-rt/trunk compiler-rt
# Checkout Libomp
cd $LLVM_DIR/llvm/projects
svn co http://llvm.org/svn/llvm-project/openmp/trunk openmp
# Check out libcxx: (only required to build and run Compiler-RT tests on OS X, optional otherwise)
cd $LLVM_DIR/llvm/projects
svn co http://llvm.org/svn/llvm-project/libcxx/trunk libcxx
svn co http://llvm.org/svn/llvm-project/libcxxabi/trunk libcxxabi
svn co http://llvm.org/svn/llvm-project/test-suite/trunk test-suite
# Build LLVM and Clang:
cd $LLVM_DIR
mkdir build
cd build
cmake -G "Unix Makefiles" ../llvm
#cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=prefix=./install_ ../llvm
make
or
make -j8
(8 is core number, you can select the appropriate number based on your hardware)
# This builds both LLVM and Clang for debug mode.
# Note: For subsequent Clang development, you can just run make clang.
#make install
echo "finished"
#following two command may need to be executed before downloading/compiling lnt:
#installl git subversion
sudo apt-get install git subversion
#eay_install
sudo apt-get install python-setuptools python-dev build-essential
Following script can be used to download&build/run lnt
#/bin/sh -x
export LNT_ROOT=$curdir
sudo easy_install virtualenv
mkdir $curdir/mysandbox
SANDBOX_ROOT=$curdir/mysandbox
virtualenv $SANDBOX_ROOT
source $SANDBOX_ROOT/bin/activate
cd $LNT_ROOT
svn co http://llvm.org/svn/llvm-project/lnt/trunk $LNT_ROOT/lnt
#$SANDBOX_ROOT/bin/python $LNT_ROOT/lnt/setup.py develop
python $LNT_ROOT/lnt/setup.py develop
cd $LNT_ROOT
mkdir $LNT_ROOT/testresult
svn co http://llvm.org/svn/llvm-project/test-suite/trunk ./llvm-test-suite
# to make use of clang build in llvm, add path to PATH
export PATH=$curdir/../llvm/build/bin:$PATH
#lnt runtest nt --sandbox testresult --cc clang --test-suite llvm-test-suite
lnt runtest nt \
--sandbox $LNT_ROOT/testresult \
--cc clang \
--test-suite $LNT_ROOT/llvm-test-suite
#if yacc is not available, please: sudo apt-get install flex bison
# commit data to server
lnt create ./myperfdb
lnt import --commit=1 ./myperfdb ./testresult/test-2017-02-20_16-25-46/report.json
lnt runserver --hostname=10.169.24.106 --port=8000 myperfdb
echo "finished"
submit other data to server:
lnt importreport --machine=MACHINE1 --order=123 --testsuite=nts 1.txt 1.json
lnt submit --commit=1 http://10.169.24.106:8000/submitRun 1.json
Example input file (1.txt):
bar.size 456
foo/bar/baz.size 789details can be seen in lnt/docs/importing_data.rst