annotate setup.sh @ 98:a591accb07b5

Support for CCACHE and automatically download needed packages on Debian.
author Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
date Thu, 13 Feb 2014 14:52:23 +0100
parents aae83c0a771d
children 0df1552123e7
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
1 #!/bin/sh
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
2
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
3 ADD_DEFINITION() {
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
4 KEY=$1
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
5 VALUE=$(eval "echo \${${KEY}}")
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
6 if [ -n "${VALUE}" ]
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
7 then
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
8 DEFINITIONS="${DEFINITIONS} -D${KEY}=${VALUE}"
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
9 fi
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
10 }
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
11
98
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
12 USE() {
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
13 KEY=$1
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
14 VALUE=$(eval "echo \${${KEY}}")
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
15 [ "${VALUE}" = "true" ]
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
16 }
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
17
1
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
18 LOCATION=$(dirname $0)
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
19
98
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
20 if [ -f /etc/debian_version ]
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
21 then
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
22 NEEDED_PACKAGES="g++ libqt4-dev libsqlite3-dev libboost-filesystem-dev libboost-test-dev"
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
23 dpkg -s ${NEEDED_PACKAGES} ||
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
24 sudo apt-get install ${NEEDED_PACKAGES}
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
25 fi
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
26
1
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
27 if [ -f ~/.auto_cmake ]
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
28 then
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
29 . ~/.auto_cmake
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
30 fi
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
31
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
32 DEFINITIONS=""
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
33
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
34 ADD_DEFINITION BOOST_ROOT
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
35 ADD_DEFINITION QT_QMAKE_EXECUTABLE
98
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
36 if USE CCACHE
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
37 then
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
38 DEFINITIONS="${DEFINITIONS} -DCMAKE_CXX_COMPILER=/usr/lib/ccache/g++ -DCMAKE_C_COMPILER=/usr/lib/ccache/gcc"
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
39 fi
1
aae83c0a771d Refactor:
Tom Fredrik Blenning Klaussen <bfg@blenning.no>
parents:
diff changeset
40
98
a591accb07b5 Support for CCACHE and automatically download needed packages on Debian.
Tom Fredrik Blenning Klaussen <bfg@bfgconsult.no>
parents: 1
diff changeset
41 eval "cmake -DCMAKE_CXX_COMPILER=/usr/lib/ccache/g++ ${DEFINITIONS} ${LOCATION}"