1#!/bin/bash
2
3# Debian compilers
4GCC46=/usr/bin/g++-4.6
5GCC46_LIB=/usr/lib/gcc/i486-linux-gnu/4.6/
6GCC47=/usr/bin/g++-4.7
7GCC47_LIB=/usr/lib/gcc/i486-linux-gnu/4.7/
8
9# Colours
10RED=$(tput setaf 1)
11GREEN=$(tput setaf 2)
12NORMAL=$(tput sgr0)
13
14col=$(($(tput cols) - 8))
15
16compile_test ()
17{
18    FLAGS=$@
19
20    echo "Running configure $FLAGS... "
21
22    RESULT=`eval ./configure $FLAGS 2>&1`
23
24    if [ $? -eq 0 ]
25    then
26        printf '%*s%s%s' $col "[ $GREEN" "OK" "$NORMAL ]"
27        echo ""
28        echo "Running make... "
29        make clean >/dev/null 2>&1
30        RESULT=`make -j4 2>&1`
31
32        if [ $? -eq 0 ]
33        then
34            printf '%*s%s%s' $col "[ $GREEN" "OK" "$NORMAL ]"
35            echo ""
36        else
37            printf '%*s%s%s' $col "[ $RED" "FAIL" "$NORMAL ]"
38            echo ""
39            echo "DUMPING OUTPUT"
40            echo "===================="
41            echo "$RESULT"
42            echo "===================="
43        fi
44    else
45        printf '%*s%s%s' $col "[ $RED" "FAIL" "$NORMAL ]"
46        echo ""
47        echo "DUMPING OUTPUT"
48        echo "===================="
49        echo "$RESULT"
50        echo "===================="
51    fi
52}
53
54compile_sets ()
55{
56    compile_test
57    compile_test --enable-debug=yes --enable-test=yes
58    compile_test --enable-boost=yes
59    compile_test --enable-taglib=no
60}
61
62echo "Default compiler..."
63echo "------------------------------"
64compile_sets
65
66echo "Default g++ as compiler..."
67echo "------------------------------"
68export CXX=g++
69compile_sets
70
71echo "g++ 4.6 as compiler..."
72echo "------------------------------"
73export CXX=$GCC46 LDFLAGS="-L$GCC46_LIB"
74compile_sets
75
76echo "g++ 4.7 as compiler..."
77echo "------------------------------"
78export CXX=$GCC47 LDFLAGS="-L$GCC47_LIB"
79compile_sets
80
81echo "clang++ as compiler..."
82echo "------------------------------"
83export CC=clang CXX=clang++
84compile_sets
85
86echo "clang++ with libc++ as compiler..."
87echo "------------------------------"
88export CC=clang CXX=clang++ CXXFLAGS="-stdlib=libc++" LDFLAGS="-lc++abi"
89compile_sets
90