Mercurial > hg > quicktun
comparison build.sh @ 13:f7e0145d8e2a
solaris support
author | Gabor Adam Toth <tg@tgbit.net> |
---|---|
date | Sat, 08 Jan 2011 02:25:17 +0100 |
parents | 5be1ecb80cc9 |
children | d9dfeeaff7e8 |
comparison
equal
deleted
inserted
replaced
12:e4b60d041491 | 13:f7e0145d8e2a |
---|---|
1 #!/bin/sh | 1 #!/bin/sh |
2 | |
3 tar=tar | |
4 | |
5 if [ `uname -s` == "SunOS" ]; then | |
6 echo "Detected SunOS" | |
7 tar=gtar | |
8 CFLAGS="$CFLAGS -DSOLARIS -m64" | |
9 LDFLAGS="$LDFLAGS -lnsl -lsocket" | |
10 fi | |
11 | |
2 echo Cleaning up... | 12 echo Cleaning up... |
3 rm -rf out/ obj/ tmp/ | 13 rm -rf out/ obj/ tmp/ |
4 | 14 |
5 mkdir -p out | 15 mkdir -p out |
6 echo Creating source archive... | 16 echo Creating source archive... |
7 tar --transform "s,^\.,quicktun-`cat version`/," -czf "out/quicktun-`cat version`.tgz" . --exclude "./out" --exclude "./lib" --exclude "./debian/data" | 17 $tar --transform "s,^\.,quicktun-`cat version`," -czf "out/quicktun-`cat version`.tgz" . --exclude "./out" --exclude "./lib" --exclude "./debian/data" |
8 | 18 |
9 mkdir -p obj tmp lib | 19 mkdir -p obj tmp lib |
10 | 20 |
11 echo -n Checking for NaCl library... | 21 echo Checking for NaCl library... |
12 if [ ! -e lib/libnacl.a ]; then | 22 if [ ! -e lib/libnacl.a ]; then |
13 echo -n building... | 23 echo building... |
14 mkdir tmp/nacl | 24 mkdir tmp/nacl |
15 cd tmp/nacl | 25 cd tmp/nacl |
16 wget -q -O- http://hyperelliptic.org/nacl/nacl-20090405.tar.bz2 | bunzip2 | tar -xf - --strip-components 1 | 26 wget -q -O- http://hyperelliptic.org/nacl/nacl-20090405.tar.bz2 | bunzip2 | tar -xf - --strip-components 1 |
17 ./do | 27 ./do |
18 cd ../../ | 28 cd ../../ |
25 | 35 |
26 export CPATH=./include/ | 36 export CPATH=./include/ |
27 export LIBRARY_PATH=/usr/local/lib/:./lib/ | 37 export LIBRARY_PATH=/usr/local/lib/:./lib/ |
28 | 38 |
29 echo Building combined binary... | 39 echo Building combined binary... |
30 gcc -c -DCOMBINED_BINARY src/proto.raw.c -o obj/proto.raw.o | 40 gcc $CFLAGS -c -DCOMBINED_BINARY src/proto.raw.c -o obj/proto.raw.o |
31 gcc -c -DCOMBINED_BINARY src/crypto_scalarmult_curve25519.c -o obj/crypto_scalarmult_curve25519.o | 41 gcc $CFLAGS -c -DCOMBINED_BINARY src/crypto_scalarmult_curve25519.c -o obj/crypto_scalarmult_curve25519.o |
32 gcc -c -DCOMBINED_BINARY src/proto.nacl0.c -o obj/proto.nacl0.o | 42 gcc $CFLAGS -c -DCOMBINED_BINARY src/proto.nacl0.c -o obj/proto.nacl0.o |
33 gcc -c -DCOMBINED_BINARY src/proto.nacltai.c -o obj/proto.nacltai.o | 43 gcc $CFLAGS -c -DCOMBINED_BINARY src/proto.nacltai.c -o obj/proto.nacltai.o |
34 gcc -c -DCOMBINED_BINARY src/run.combined.c -o obj/run.combined.o | 44 gcc $CFLAGS -c -DCOMBINED_BINARY src/run.combined.c -o obj/run.combined.o |
35 gcc -c src/common.c -o obj/common.o | 45 gcc $CFLAGS -c src/common.c -o obj/common.o |
36 gcc -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 | 46 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 |
37 | 47 |
38 echo Building single protocol binaries... | 48 echo Building single protocol binaries... |
39 gcc -o out/quicktun.raw src/proto.raw.c | 49 gcc $CFLAGS -o out/quicktun.raw src/proto.raw.c $LDFLAGS |
40 gcc -o out/quicktun.nacl0 src/proto.nacl0.c -lnacl | 50 gcc $CFLAGS -o out/quicktun.nacl0 src/proto.nacl0.c -lnacl $LDFLAGS |
41 gcc -o out/quicktun.nacltai src/proto.nacltai.c src/crypto_scalarmult_curve25519.c -lnacl | 51 gcc $CFLAGS -o out/quicktun.nacltai src/proto.nacltai.c src/crypto_scalarmult_curve25519.c -lnacl $LDFLAGS |
42 gcc -o out/quicktun.keypair src/keypair.c -lnacl | 52 gcc $CFLAGS -o out/quicktun.keypair src/keypair.c -lnacl $LDFLAGS |
43 | 53 |
44 echo Building shared libraries... | 54 echo Building shared libraries... |
45 gcc -fPIC -shared -Wl,-soname,quicktun.raw -o out/libquicktun.raw src/proto.raw.c | 55 gcc $CFLAGS -fPIC -shared -Wl,-soname,quicktun.raw -o out/libquicktun.raw src/proto.raw.c |
46 ##gcc -fPIC -shared -Wl,-soname,quicktun.nacl0 -o out/libquicktun.nacl0 src/proto.nacl0.c -lnacl | 56 ##gcc $CFLAGS -fPIC -shared -Wl,-soname,quicktun.nacl0 -o out/libquicktun.nacl0 src/proto.nacl0.c -lnacl $LDFLAGS |
47 | 57 |
48 ##echo Building frontends... | 58 ##echo Building frontends... |
49 ##gcc -o out/quicktun.debian src/run.debian.c -ldl | 59 ##gcc $CFLAGS -o out/quicktun.debian src/run.debian.c -ldl |
50 | 60 |
51 if [ -f /etc/network/interfaces ]; then | 61 if [ -f /etc/network/interfaces ]; then |
52 echo Building debian binary... | 62 echo Building debian binary... |
53 gcc -c -DCOMBINED_BINARY -DDEBIAN_BINARY src/run.combined.c -o obj/run.debian.o | 63 gcc $CFLAGS -c -DCOMBINED_BINARY -DDEBIAN_BINARY src/run.combined.c -o obj/run.debian.o |
54 gcc -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 | 64 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 |
55 if [ -x /usr/bin/dpkg-deb -a -x /usr/bin/fakeroot ]; then | 65 if [ -x /usr/bin/dpkg-deb -a -x /usr/bin/fakeroot ]; then |
56 echo -n Building debian package... | 66 echo -n Building debian package... |
57 cd debian | 67 cd debian |
58 ./build.sh | 68 ./build.sh |
59 cd .. | 69 cd .. |