comparison build.sh @ 19:3400045a57b8 V2.1.6

Version 2.1.6, changed sourcecode archive generation, use NaCl version 20110221, do not duplicate NaCl sourcecode, support iproute2 for persistent tunnel creation on Debian, support running as root on Debian, removed autogenerated header files
author Ivo Smits <Ivo@UCIS.nl>
date Sun, 27 Feb 2011 22:42:27 +0100
parents c9fba5007577
children bd4259de8459
comparison
equal deleted inserted replaced
18:c9fba5007577 19:3400045a57b8
15 echo Cleaning up... 15 echo Cleaning up...
16 rm -rf out/ obj/ tmp/ 16 rm -rf out/ obj/ tmp/
17 17
18 mkdir -p out 18 mkdir -p out
19 echo Creating source archive... 19 echo Creating source archive...
20 $tar --transform "s,^\.,quicktun-`cat version`," -czf "out/quicktun-`cat version`.tgz" . --exclude "./out" --exclude "./lib" --exclude "./debian/data" --exclude "./dist.sh" 20 $tar --transform "s,^,quicktun-`cat version`/," -czf "out/quicktun-`cat version`.tgz" build.sh clean.sh debian src version --exclude "debian/data"
21 21
22 mkdir -p obj tmp lib 22 mkdir -p obj tmp lib include
23 23
24 echo Checking for NaCl library... 24 echo Checking for NaCl library...
25 if [ ! -e lib/libnacl.a ]; then 25 if [ -e lib/libnacl.a -a -e include/crypto_box.h -a -e include/crypto_box_curve25519xsalsa20poly1305.h -a -e include/crypto_scalarmult_curve25519.h ]; then
26 echo building... 26 echo Found.
27 else
28 echo Not found, building...
27 mkdir tmp/nacl 29 mkdir tmp/nacl
28 cd tmp/nacl 30 cd tmp/nacl
29 wget -q -O- http://hyperelliptic.org/nacl/nacl-20090405.tar.bz2 | bunzip2 | $tar -xf - --strip-components 1 31 wget -q -O- http://hyperelliptic.org/nacl/nacl-20110221.tar.bz2 | bunzip2 | $tar -xf - --strip-components 1
30 ./do 32 ./do
31 cd ../../ 33 cd ../../
32 cp tmp/nacl/build/*/lib/*/libnacl.a lib/ 34 cp tmp/nacl/build/*/lib/*/libnacl.a lib/
33 cp tmp/nacl/build/*/include/*/crypto_box.h include/ 35 cp tmp/nacl/build/*/include/*/crypto_box.h include/
34 cp tmp/nacl/build/*/include/*/crypto_box_curve25519salsa20hmacsha512.h include/
35 cp tmp/nacl/build/*/include/*/crypto_box_curve25519xsalsa20poly1305.h include/ 36 cp tmp/nacl/build/*/include/*/crypto_box_curve25519xsalsa20poly1305.h include/
37 cp tmp/nacl/build/*/include/*/crypto_scalarmult_curve25519.h include/
38 echo Done.
36 fi 39 fi
37 echo Done.
38 40
39 export CPATH=./include/ 41 export CPATH=./include/
40 export LIBRARY_PATH=/usr/local/lib/:./lib/ 42 export LIBRARY_PATH=/usr/local/lib/:./lib/
41 43
42 echo Building combined binary... 44 echo Building combined binary...
43 gcc $CFLAGS -c -DCOMBINED_BINARY src/proto.raw.c -o obj/proto.raw.o 45 gcc $CFLAGS -c -DCOMBINED_BINARY src/proto.raw.c -o obj/proto.raw.o
44 gcc $CFLAGS -c -DCOMBINED_BINARY src/crypto_scalarmult_curve25519.c -o obj/crypto_scalarmult_curve25519.o
45 gcc $CFLAGS -c -DCOMBINED_BINARY src/proto.nacl0.c -o obj/proto.nacl0.o 46 gcc $CFLAGS -c -DCOMBINED_BINARY src/proto.nacl0.c -o obj/proto.nacl0.o
46 gcc $CFLAGS -c -DCOMBINED_BINARY src/proto.nacltai.c -o obj/proto.nacltai.o 47 gcc $CFLAGS -c -DCOMBINED_BINARY src/proto.nacltai.c -o obj/proto.nacltai.o
47 gcc $CFLAGS -c -DCOMBINED_BINARY src/run.combined.c -o obj/run.combined.o 48 gcc $CFLAGS -c -DCOMBINED_BINARY src/run.combined.c -o obj/run.combined.o
48 gcc $CFLAGS -c src/common.c -o obj/common.o 49 gcc $CFLAGS -c src/common.c -o obj/common.o
49 gcc $CFLAGS -o out/quicktun.combined obj/common.o obj/run.combined.o obj/proto.raw.o obj/proto.nacl0.o obj/proto.nacltai.o obj/crypto_scalarmult_curve25519.o -lnacl $LDFLAGS 50 gcc $CFLAGS -o out/quicktun.combined obj/common.o obj/run.combined.o obj/proto.raw.o obj/proto.nacl0.o obj/proto.nacltai.o -lnacl $LDFLAGS
50 51
51 echo Building single protocol binaries... 52 echo Building single protocol binaries...
52 gcc $CFLAGS -o out/quicktun.raw src/proto.raw.c $LDFLAGS 53 gcc $CFLAGS -o out/quicktun.raw src/proto.raw.c $LDFLAGS
53 gcc $CFLAGS -o out/quicktun.nacl0 src/proto.nacl0.c -lnacl $LDFLAGS 54 gcc $CFLAGS -o out/quicktun.nacl0 src/proto.nacl0.c -lnacl $LDFLAGS
54 gcc $CFLAGS -o out/quicktun.nacltai src/proto.nacltai.c src/crypto_scalarmult_curve25519.c -lnacl $LDFLAGS 55 gcc $CFLAGS -o out/quicktun.nacltai src/proto.nacltai.c -lnacl $LDFLAGS
55 gcc $CFLAGS -o out/quicktun.keypair src/keypair.c -lnacl $LDFLAGS 56 gcc $CFLAGS -o out/quicktun.keypair src/keypair.c -lnacl $LDFLAGS
56
57 echo Building shared libraries...
58 gcc $CFLAGS -fPIC -shared -Wl,-soname,quicktun.raw -o out/libquicktun.raw src/proto.raw.c
59 ##gcc $CFLAGS -fPIC -shared -Wl,-soname,quicktun.nacl0 -o out/libquicktun.nacl0 src/proto.nacl0.c -lnacl $LDFLAGS
60
61 ##echo Building frontends...
62 ##gcc $CFLAGS -o out/quicktun.debian src/run.debian.c -ldl
63 57
64 if [ -f /etc/network/interfaces ]; then 58 if [ -f /etc/network/interfaces ]; then
65 echo Building debian binary... 59 echo Building debian binary...
66 gcc $CFLAGS -c -DCOMBINED_BINARY -DDEBIAN_BINARY src/run.combined.c -o obj/run.debian.o 60 gcc $CFLAGS -c -DCOMBINED_BINARY -DDEBIAN_BINARY src/run.combined.c -o obj/run.debian.o
67 gcc $CFLAGS -o out/quicktun.debian obj/common.o obj/run.debian.o obj/proto.raw.o obj/proto.nacl0.o obj/proto.nacltai.o obj/crypto_scalarmult_curve25519.o -lnacl $LDFLAGS 61 gcc $CFLAGS -o out/quicktun.debian obj/common.o obj/run.debian.o obj/proto.raw.o obj/proto.nacl0.o obj/proto.nacltai.o -lnacl $LDFLAGS
68 if [ -x /usr/bin/dpkg-deb -a -x /usr/bin/fakeroot ]; then 62 if [ -x /usr/bin/dpkg-deb -a -x /usr/bin/fakeroot ]; then
69 echo -n Building debian package... 63 echo -n Building debian package...
70 cd debian 64 cd debian
71 ./build.sh 65 ./build.sh
72 cd .. 66 cd ..