utils/clone_and_compile_ns3_dce.sh
author frederic.urbani@inria.fr
Wed, 05 Oct 2011 11:19:31 +0200
changeset 162 cb46566adf75
parent 161 8aff451b298b
child 173 721b6053d1af
permissions -rwxr-xr-x
Add prototype implementation for socket of domain AF_PACKET and type SOCK_RAW.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
119
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
     1
#!/bin/bash
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
     2
# this script checkout NS3 and DCE sources, and build them.
148
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
     3
USE_KERNEL=NO
120
dde8b2c0b748 Fix Scripts.
frederic.urbani@inria.fr
parents: 119
diff changeset
     4
cd `dirname $BASH_SOURCE`/../..
119
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
     5
SAVE_PATH=$PATH
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
     6
SAVE_LDLP=$LD_LIBRARY_PATH
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
     7
SAVE_PKG=$PKG_CONFIG_PATH
120
dde8b2c0b748 Fix Scripts.
frederic.urbani@inria.fr
parents: 119
diff changeset
     8
#echo clone ns-3-dce : 
dde8b2c0b748 Fix Scripts.
frederic.urbani@inria.fr
parents: 119
diff changeset
     9
#hg clone http://code.nsnam.org/furbani/ns-3-dce
119
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    10
echo clone readversiondef
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    11
hg clone http://code.nsnam.org/mathieu/readversiondef
148
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    12
if [ "YES" == "$USE_KERNEL" ]
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    13
then
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    14
	echo clone ns-3-linux
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    15
 	hg clone http://code.nsnam.org/furbani/ns-3-linux
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    16
fi	
134
62b921ab6f2a Merge with ns-3-dev.
frederic.urbani@inria.fr
parents: 120
diff changeset
    17
echo clone ns-3-dev
160
14bcced1a0b4 Add a temporary patch in order to fix ns-3-dev and permit DCE tests to pass .
frederic.urbani@inria.fr
parents: 148
diff changeset
    18
hg clone http://code.nsnam.org/ns-3-dev -r 97606ed04882
119
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    19
mkdir build
134
62b921ab6f2a Merge with ns-3-dev.
frederic.urbani@inria.fr
parents: 120
diff changeset
    20
cd ns-3-dev
161
8aff451b298b Update build script and core patchs in order to run example/ccnx/dce-tap-vlc sample.
frederic.urbani@inria.fr
parents: 160
diff changeset
    21
patch -p1 <../ns-3-dce/utils/buffer_bug1001.patch
8aff451b298b Update build script and core patchs in order to run example/ccnx/dce-tap-vlc sample.
frederic.urbani@inria.fr
parents: 160
diff changeset
    22
patch -p1 <../ns-3-dce/utils/frag_sum_bug_1260.patch
162
cb46566adf75 Add prototype implementation for socket of domain AF_PACKET and type SOCK_RAW.
frederic.urbani@inria.fr
parents: 161
diff changeset
    23
patch -p1 <../ns-3-dce/utils/packet-socket-upgrade-exp.patch
134
62b921ab6f2a Merge with ns-3-dev.
frederic.urbani@inria.fr
parents: 120
diff changeset
    24
./waf configure --prefix=`pwd`/../build --enable-tests
119
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    25
./waf
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    26
./waf install
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    27
cd ..
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    28
export PATH=$SAVE_PATH:`pwd`/build/bin
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    29
export LD_LIBRARY_PATH=$SAVE_LDLP:`pwd`/build/lib
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    30
export PKG_CONFIG_PATH=$SAVE_PKG:`pwd`/build/lib/pkgconfig
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    31
cd readversiondef/
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    32
make 
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    33
make install PREFIX=`pwd`/../build/
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    34
cd ..
148
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    35
if [ "YES" == "$USE_KERNEL" ]
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    36
then
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    37
	cd ns-3-linux/
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    38
 	git clone git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6.git net-next-2.6
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    39
	make unpatch
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    40
	make  setup
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    41
	make defconfig
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    42
	make
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    43
	cd ..
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    44
	wget http://devresources.linuxfoundation.org/dev/iproute2/download/iproute2-2.6.33.tar.bz2
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    45
	tar jxf iproute2-2.6.33.tar.bz2
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    46
	cd iproute2-2.6.33
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    47
	LDFLAGS=-pie make CCOPTS='-fpic -D_GNU_SOURCE -O0 -U_FORTIFY_SOURCE'
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    48
	cd ../ns-3-dce
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    49
	ln -s ../ns-3-linux/libnet-next-2.6.so
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    50
	ln -s ../iproute2-2.6.33/ip/ip
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    51
	cd ..
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    52
fi
119
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    53
cd ns-3-dce/
148
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    54
if [ "YES" == "$USE_KERNEL" ]
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    55
then
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    56
    WAF_KERNEL=--enable-kernel-stack=`pwd`/../ns-3-linux
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    57
fi
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    58
./waf configure --prefix=`pwd`/../build --verbose $WAF_KERNEL
119
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    59
./waf
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    60
./waf install
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    61
export LD_LIBRARY_PATH=$SAVE_LDLP:`pwd`/build/lib:`pwd`/build/bin:`pwd`/../build/lib
148
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    62
. utils/setenv.sh
119
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    63
echo Launch NS3TEST-DCE
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    64
./build/bin/ns3test-dce --verbose
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    65
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    66
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    67
c4e9b1d9e57f Add some utils scripts.
frederic.urbani@inria.fr
parents:
diff changeset
    68
148
5dd2d890f1a0 Update documentation and build script.
frederic.urbani@inria.fr
parents: 140
diff changeset
    69