1#!/bin/sh
2
3SUCCESS=no
4QMKSPEC=$1
5XPLATFORM=`basename "$1"`
6QMAKE_CONFIG=$2
7VERBOSE=$3
8SRCDIR=$4
9OUTDIR=$5
10TEST=$6
11EXE=`basename "$6"`
12DESCRIPTION=$7
13shift 7
14LFLAGS="$SYSROOT_FLAG"
15INCLUDEPATH=""
16CXXFLAGS="$CXXFLAGS $SYSROOT_FLAG"
17MAC_ARCH_CXXFLAGS=""
18MAC_ARCH_LFLAGS=""
19while [ "$#" -gt 0 ]; do
20    PARAM=$1
21    case $PARAM in
22    -config)
23        QMAKE_CONFIG="$QMAKE_CONFIG $2"
24        shift
25        ;;
26    -framework)
27        LFLAGS="$LFLAGS -framework \"$2\""
28        shift
29        ;;
30    -arch)
31        MAC_ARCH_CXXFLAGS="$MAC_ARCH_CXXFLAGS -arch $2"
32        MAC_ARCH_LFLAGS="$MAC_ARCH_LFLAGS -arch $2"
33        shift
34        ;;
35    -sdk)
36        LFLAGS="$LFLAGS -Wl,-syslibroot,$2"
37        CXXFLAGS="$CXXFLAGS -isysroot $2"
38        shift
39        ;;
40    -F*|-m*|-x*)
41        LFLAGS="$LFLAGS $PARAM"
42        CXXFLAGS="$CXXFLAGS $PARAM"
43        ;;
44    -L*|-l*|-pthread)
45	LFLAGS="$LFLAGS $PARAM"
46	;;
47    -I*)
48        INC=`echo $PARAM | sed -e 's/^-I//'`
49        INCLUDEPATH="$INCLUDEPATH $INC"
50        ;;
51    -f*|-D*)
52        CXXFLAGS="$CXXFLAGS $PARAM"
53        ;;
54    -Qoption)
55	# Two-argument form for the Sun Compiler
56	CXXFLAGS="$CXXFLAGS $PARAM \"$2\""
57	shift
58	;;
59    *)  ;;
60    esac
61    shift
62done
63
64# debuggery
65[ "$VERBOSE" = "yes" ] && echo "$DESCRIPTION auto-detection... ($*)"
66
67test -d "$OUTDIR/$TEST" || mkdir -p "$OUTDIR/$TEST"
68
69cd "$OUTDIR/$TEST"
70
71test -r Makefile && $MAKE distclean >/dev/null 2>&1
72# Make sure output from possible previous tests is gone
73rm -f "$EXE" "${EXE}.exe"
74
75echo "QT_BUILD_TREE = $OUTDIR" > "$OUTDIR/$TEST/.qmake.cache"
76"$OUTDIR/bin/qmake" -spec "$QMKSPEC" "CONFIG+=$QMAKE_CONFIG" "CONFIG-=debug_and_release" "LIBS*=$LFLAGS" "LIBS+=$MAC_ARCH_LFLAGS" "INCLUDEPATH*=$INCLUDEPATH" "QMAKE_CXXFLAGS*=$CXXFLAGS" "QMAKE_CXXFLAGS+=$MAC_ARCH_CXXFLAGS" "$SRCDIR/$TEST/$EXE.pro" -o "$OUTDIR/$TEST/Makefile"
77
78if [ "$VERBOSE" = "yes" ]; then
79    $MAKE
80else
81    $MAKE >/dev/null 2>&1
82fi
83
84( [ -x "$EXE" ] || [ -x "${EXE}.exe" ] ) && SUCCESS=yes
85
86# done
87if [ "$SUCCESS" != "yes" ]; then
88    [ "$VERBOSE" = "yes" ] && echo "$DESCRIPTION disabled."
89    exit 1
90else
91    [ "$VERBOSE" = "yes" ] && echo "$DESCRIPTION enabled."
92    exit 0
93fi
94