aboutsummaryrefslogtreecommitdiffstats
path: root/build-root/bootstrap.sh
blob: 3ae94098ee2b76b85d7d3c72f8cc4b91f7051a17 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
#!/bin/bash

build_root=`pwd`
cd ../
wsroot=`pwd`

# PATH
CCACHE_DIR="$build_root/.ccache"
ADD_TO_PATH="$build_root/tools/ccache-bin:$build_root/tools/bin"

# Construct build-config.mk
cd $build_root
echo SOURCE_PATH = $wsroot > build-config.mk
echo 
echo Saving PATH settings in `pwd`/path_setup
echo Source this file later, as needed
cat >path_setup <<EOF
#!/bin/bash

export PATH=$ADD_TO_PATH:$PATH
export CCACHE_DIR=$CCACHE_DIR
EOF

# regenerate tools/ccache-bin
rm -rf tools/ccache-bin
mkdir -p tools/ccache-bin

if [ ! -f /usr/bin/ccache ] ; then
    echo Please install ccache AYEC and re-run this script
fi

cd tools/ccache-bin
for c in gcc g++
    do
    if [ -f /usr/bin/ccache ] ; then
        ln -s /usr/bin/ccache $c
    else
        ln -s /usr/bin/gcc
    fi
done

cd $wsroot

for dir in vppapigen vppinfra sample-plugin vppversion svm vlib vlib-api vnet \
    vpp vpp-api-test vpp-japi 
do
    cd $dir
    echo "Autowank in $dir"
    ../build-root/autowank --touch
    cd $wsroot
done

cd $build_root
echo Compile native tools
for tool in vppapigen vppversion
do
    make V=0 is_build_tool=yes $tool-install
done