configure

Fri, 17 Apr 2026 12:00:18 +0200

author
Mike Becker <universe@uap-core.de>
date
Fri, 17 Apr 2026 12:00:18 +0200
changeset 102
463c648e6a9b
parent 86
f187e97f845e
permissions
-rwxr-xr-x

change return type of write_pgn to void

The return value was always unused and zero.
Then intention apparently was to return the number
of written bytes, but that never happened.

71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
1 #!/bin/sh
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
2
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
3
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
4 # some utility functions
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
5 isplatform()
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
6 {
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
7 for p in $PLATFORM
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
8 do
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
9 if [ "$p" = "$1" ]; then
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
10 return 0
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
11 fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
12 done
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
13 return 1
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
14 }
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
15 notisplatform()
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
16 {
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
17 for p in $PLATFORM
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
18 do
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
19 if [ "$p" = "$1" ]; then
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
20 return 1
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
21 fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
22 done
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
23 return 0
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
24 }
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
25 istoolchain()
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
26 {
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
27 for t in $TOOLCHAIN
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
28 do
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
29 if [ "$t" = "$1" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
30 return 0
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
31 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
32 done
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
33 return 1
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
34 }
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
35 notistoolchain()
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
36 {
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
37 for t in $TOOLCHAIN
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
38 do
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
39 if [ "$t" = "$1" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
40 return 1
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
41 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
42 done
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
43 return 0
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
44 }
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
45
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
46 # clean abort
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
47 abort_configure()
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
48 {
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
49 rm -Rf "$TEMP_DIR"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
50 exit 1
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
51 }
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
52
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
53 # Test for availability of pkg-config
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
54 PKG_CONFIG=`command -v pkg-config`
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
55 : ${PKG_CONFIG:="false"}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
56
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
57 # Simple uname based platform detection
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
58 # $PLATFORM is used for platform dependent dependency selection
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
59 OS=`uname -s`
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
60 OS_VERSION=`uname -r`
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
61 ARCH=`uname -m`
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
62 printf "detect platform... "
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
63 if [ "$OS" = "SunOS" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
64 PLATFORM="solaris sunos unix svr4"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
65 elif [ "$OS" = "Linux" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
66 PLATFORM="linux unix"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
67 elif [ "$OS" = "FreeBSD" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
68 PLATFORM="freebsd bsd unix"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
69 elif [ "$OS" = "OpenBSD" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
70 PLATFORM="openbsd bsd unix"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
71 elif [ "$OS" = "NetBSD" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
72 PLATFORM="netbsd bsd unix"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
73 elif [ "$OS" = "Darwin" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
74 PLATFORM="macos osx bsd unix"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
75 elif echo "$OS" | grep -i "MINGW" > /dev/null; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
76 PLATFORM="windows mingw"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
77 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
78 : ${PLATFORM:="unix"}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
79
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
80 PLATFORM_NAME=`echo "$PLATFORM" | cut -f1 -d' ' -`
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
81 echo "$PLATFORM_NAME"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
82
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
83
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
84 # help text
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
85 printhelp()
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
86 {
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
87 echo "Usage: $0 [OPTIONS]..."
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
88 echo 'Configuration:'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
89 if true \
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
90 ; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
91 :
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
92 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
93 cat << '__EOF__'
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
94
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
95 Build Types:
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
96 --debug add extra compile flags for debug builds
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
97 --release add extra compile flags for release builds
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
98
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
99 __EOF__
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
100 abort_configure
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
101 }
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
102
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
103 # create temporary directory
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
104 TEMP_DIR=".tmp-`uname -n`"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
105 rm -Rf "$TEMP_DIR"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
106 if mkdir -p "$TEMP_DIR"; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
107 :
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
108 else
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
109 echo "Cannot create tmp dir $TEMP_DIR"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
110 echo "Abort"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
111 exit 1
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
112 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
113 touch "$TEMP_DIR/options"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
114 touch "$TEMP_DIR/features"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
115
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
116 # config variables
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
117 if true \
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
118 ; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
119 :
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
120 if test -z "$SRCDIR__initialized__"; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
121 SRCDIR__initialized__=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
122 SRCDIR=`pwd`
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
123 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
124 if test -z "$BUILDDIR__initialized__"; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
125 BUILDDIR__initialized__=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
126 BUILDDIR='${SRCDIR}/build'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
127 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
128 if test -z "$LIB_EXT__initialized__"; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
129 LIB_EXT__initialized__=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
130 LIB_EXT='.a'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
131 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
132 if test -z "$MKDIR__initialized__"; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
133 MKDIR__initialized__=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
134 MKDIR='mkdir'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
135 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
136 if test -z "$MKDIRFLAGS__initialized__"; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
137 MKDIRFLAGS__initialized__=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
138 MKDIRFLAGS='-p'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
139 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
140 if test -z "$RM__initialized__"; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
141 RM__initialized__=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
142 RM='rm'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
143 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
144 if test -z "$RMFLAGS__initialized__"; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
145 RMFLAGS__initialized__=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
146 RMFLAGS='-f -R'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
147 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
148 if test -z "$AR__initialized__"; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
149 AR__initialized__=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
150 AR='ar'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
151 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
152 if test -z "$ARFLAGS__initialized__"; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
153 ARFLAGS__initialized__=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
154 ARFLAGS='-r'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
155 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
156 fi
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
157
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
158 # features
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
159
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
160 #
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
161 # parse arguments
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
162 #
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
163 BUILD_TYPE="default"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
164 for ARG in "$@"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
165 do
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
166 case "$ARG" in
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
167 "--help"*) printhelp ;;
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
168 "--debug") BUILD_TYPE="debug" ;;
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
169 "--release") BUILD_TYPE="release" ;;
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
170 "-"*) echo "unknown option: $ARG"; abort_configure ;;
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
171 esac
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
172 done
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
173
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
174 # toolchain detection utilities
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
175 . make/toolchain.sh
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
176
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
177 # check languages
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
178 lang_c=
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
179 lang_cpp=
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
180 if detect_c_compiler ; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
181 lang_c=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
182 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
183
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
184
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
185
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
186 # set defaults for dir variables
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
187 : ${exec_prefix:="$prefix"}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
188 : ${bindir:='${exec_prefix}/bin'}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
189 : ${sbindir:='${exec_prefix}/sbin'}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
190 : ${libdir:='${exec_prefix}/lib'}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
191 : ${libexecdir:='${exec_prefix}/libexec'}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
192 : ${datarootdir:='${prefix}/share'}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
193 : ${datadir:='${datarootdir}'}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
194 : ${sharedstatedir:='${prefix}/com'}
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
195 if [ -z "$sysconfdir" ]; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
196 if [ "$prefix" = '/usr' ]; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
197 sysconfdir='/etc'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
198 else
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
199 sysconfdir='${prefix}/etc'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
200 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
201 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
202 if [ -z "$localstatedir" ]; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
203 if [ "$prefix" = '/usr' ]; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
204 localstatedir='/var'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
205 else
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
206 localstatedir='${prefix}/var'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
207 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
208 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
209 if [ -z "$runstatedir" ]; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
210 if [ "$prefix" = '/usr' ]; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
211 runstatedir='/var/run'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
212 else
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
213 runstatedir='${prefix}/var'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
214 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
215 fi
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
216 : ${includedir:='${prefix}/include'}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
217 : ${infodir:='${datarootdir}/info'}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
218 : ${mandir:='${datarootdir}/man'}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
219 : ${localedir:='${datarootdir}/locale'}
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
220
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
221
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
222 # check if a config.site exists and load it
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
223 CONFIG_SITE_OK=0
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
224 if [ -n "$CONFIG_SITE" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
225 # CONFIG_SITE may contain space separated file names
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
226 for cs in $CONFIG_SITE; do
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
227 printf "loading defaults from $cs... "
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
228 if [ -f "$cs" ]; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
229 . "$cs"
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
230 echo ok
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
231 CONFIG_SITE_OK=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
232 break
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
233 else
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
234 echo "not found"
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
235 fi
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
236 done
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
237 elif [ -f "$prefix/share/config.site" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
238 printf "loading site defaults... "
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
239 . "$prefix/share/config.site"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
240 echo ok
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
241 CONFIG_SITE_OK=1
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
242 elif [ -f "$prefix/etc/config.site" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
243 printf "loading site defaults... "
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
244 . "$prefix/etc/config.site"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
245 echo ok
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
246 CONFIG_SITE_OK=1
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
247 fi
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
248
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
249 if [ $CONFIG_SITE_OK -eq 0 ]; then
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
250 # try to detect the correct libdir on our own, except it was changed by the user
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
251 if [ "$libdir" = '${exec_prefix}/lib' ] ; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
252 if [ "$TOOLCHAIN_WSIZE" = "64" ] ; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
253 if [ "$OS" = "SunOS" ]; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
254 [ -d "${exec_prefix}/lib/64" ] && libdir='${exec_prefix}/lib/64'
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
255 else
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
256 [ -d "${exec_prefix}/lib64" ] && libdir='${exec_prefix}/lib64'
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
257 fi
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
258 elif [ "$TOOLCHAIN_WSIZE" = "32" ] ; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
259 if [ "$OS" = "SunOS" ]; then
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
260 [ -d "${exec_prefix}/lib/32" ] && libdir='${exec_prefix}/lib/32'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
261 else
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
262 [ -d "${exec_prefix}/lib32" ] && libdir='${exec_prefix}/lib32'
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
263 fi
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
264 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
265 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
266 fi
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
267
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
268
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
269 # generate vars.mk
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
270 cat > "$TEMP_DIR/vars.mk" << __EOF__
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
271 SRCDIR=$SRCDIR
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
272 BUILDDIR=$BUILDDIR
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
273 LIB_EXT=$LIB_EXT
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
274 MKDIR=$MKDIR
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
275 MKDIRFLAGS=$MKDIRFLAGS
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
276 RM=$RM
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
277 RMFLAGS=$RMFLAGS
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
278 AR=$AR
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
279 ARFLAGS=$ARFLAGS
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
280 __EOF__
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
281
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
282
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
283 #
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
284 # DEPENDENCIES
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
285 #
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
286
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
287
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
288
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
289 # create buffer for make variables required by dependencies
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
290 echo > "$TEMP_DIR/make.mk"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
291
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
292 test_pkg_config()
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
293 {
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
294 if "$PKG_CONFIG" --exists "$1" ; then :
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
295 else return 1 ; fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
296 if [ -z "$2" ] || "$PKG_CONFIG" --atleast-version="$2" "$1" ; then :
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
297 else return 1 ; fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
298 if [ -z "$3" ] || "$PKG_CONFIG" --exact-version="$3" "$1" ; then :
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
299 else return 1 ; fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
300 if [ -z "$4" ] || "$PKG_CONFIG" --max-version="$4" "$1" ; then :
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
301 else return 1 ; fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
302 return 0
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
303 }
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
304
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
305 print_check_msg()
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
306 {
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
307 if [ -z "$1" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
308 shift
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
309 printf "$@"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
310 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
311 }
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
312
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
313 dependency_error_ncurses()
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
314 {
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
315 print_check_msg "$dep_checked_ncurses" "checking for ncurses... "
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
316 # dependency ncurses
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
317 while true
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
318 do
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
319 if [ -z "$PKG_CONFIG" ]; then
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
320 break
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
321 fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
322 if test_pkg_config "ncursesw" "" "" "" ; then
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
323 TEMP_CFLAGS="$TEMP_CFLAGS `"$PKG_CONFIG" --cflags ncursesw`"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
324 TEMP_LDFLAGS="$TEMP_LDFLAGS `"$PKG_CONFIG" --libs ncursesw`"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
325 else
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
326 break
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
327 fi
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
328 print_check_msg "$dep_checked_ncurses" "yes\n"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
329 dep_checked_ncurses=1
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
330 return 1
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
331 done
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
332
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
333 print_check_msg "$dep_checked_ncurses" "no\n"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
334 dep_checked_ncurses=1
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
335 return 0
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
336 }
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
337
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
338 # start collecting dependency information
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
339 echo > "$TEMP_DIR/flags.mk"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
340
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
341 DEPENDENCIES_FAILED=
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
342 ERROR=0
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
343 # unnamed dependencies
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
344 TEMP_CFLAGS="$CFLAGS"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
345 TEMP_CXXFLAGS="$CXXFLAGS"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
346 TEMP_LDFLAGS="$LDFLAGS"
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
347 while true
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
348 do
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
349 while true
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
350 do
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
351 if [ -z "$lang_c" ] ; then
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
352 ERROR=1
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
353 break
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
354 fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
355
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
356 break
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
357 done
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
358 break
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
359 done
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
360
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
361 # build type
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
362 if [ "$BUILD_TYPE" = "debug" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
363 TEMP_CFLAGS="\${DEBUG_CFLAGS} $TEMP_CFLAGS"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
364 TEMP_CXXFLAGS="\${DEBUG_CXXFLAGS} $TEMP_CXXFLAGS"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
365 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
366 if [ "$BUILD_TYPE" = "release" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
367 TEMP_CFLAGS="\${RELEASE_CFLAGS} $TEMP_CFLAGS"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
368 TEMP_CXXFLAGS="\${RELEASE_CXXFLAGS} $TEMP_CXXFLAGS"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
369 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
370
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
371 # add general dependency flags to flags.mk
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
372 echo "# general flags" >> "$TEMP_DIR/flags.mk"
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
373 if [ -n "${TEMP_CFLAGS}" ] && [ -n "$lang_c" ]; then
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
374 echo "CFLAGS += $TEMP_CFLAGS" >> "$TEMP_DIR/flags.mk"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
375 fi
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
376 if [ -n "${TEMP_CXXFLAGS}" ] && [ -n "$lang_cpp" ]; then
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
377 echo "CXXFLAGS += $TEMP_CXXFLAGS" >> "$TEMP_DIR/flags.mk"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
378 fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
379 if [ -n "${TEMP_LDFLAGS}" ]; then
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
380 echo "LDFLAGS += $TEMP_LDFLAGS" >> "$TEMP_DIR/flags.mk"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
381 fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
382
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
383 #
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
384 # OPTION VALUES
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
385 #
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
386
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
387 #
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
388 # TARGETS
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
389 #
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
390
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
391 echo >> "$TEMP_DIR/flags.mk"
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
392 echo "configuring target: default"
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
393 echo "# flags for target default" >> "$TEMP_DIR/flags.mk"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
394 TEMP_CFLAGS=
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
395 TEMP_CXXFLAGS=
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
396 TEMP_LDFLAGS=
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
397
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
398 if dependency_error_ncurses; then
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
399 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED ncurses "
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
400 ERROR=1
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
401 fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
402
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
403 # Features
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
404
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
405
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
406 if [ -n "${TEMP_CFLAGS}" ] && [ -n "$lang_c" ]; then
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
407 echo "CFLAGS += $TEMP_CFLAGS" >> "$TEMP_DIR/flags.mk"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
408 fi
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
409 if [ -n "${TEMP_CXXFLAGS}" ] && [ -n "$lang_cpp" ]; then
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
410 echo "CXXFLAGS += $TEMP_CXXFLAGS" >> "$TEMP_DIR/flags.mk"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
411 fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
412 if [ -n "${TEMP_LDFLAGS}" ]; then
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
413 echo "LDFLAGS += $TEMP_LDFLAGS" >> "$TEMP_DIR/flags.mk"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
414 fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
415
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
416
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
417 # final result
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
418 if [ $ERROR -ne 0 ]; then
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
419 echo
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
420 echo "Error: Unresolved dependencies"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
421 echo "$DEPENDENCIES_FAILED"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
422 abort_configure
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
423 fi
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
424
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
425 echo "configure finished"
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
426 echo
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
427 echo "Toolchain:"
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
428 echo " name: $TOOLCHAIN_NAME"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
429 if [ -n "$TOOLCHAIN_CC" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
430 echo " cc: $TOOLCHAIN_CC"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
431 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
432 if [ -n "$TOOLCHAIN_CXX" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
433 echo " cxx: $TOOLCHAIN_CXX"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
434 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
435 if [ -n "$TOOLCHAIN_WSIZE" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
436 echo " word size: $TOOLCHAIN_WSIZE bit"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
437 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
438 if [ -n "$TOOLCHAIN_CSTD" ]; then
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
439 echo " default C std: $TOOLCHAIN_CSTD"
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
440 fi
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
441 echo
86
f187e97f845e update uwproj and simplify project file
Mike Becker <universe@uap-core.de>
parents: 85
diff changeset
442 echo "Config:"
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
443 echo
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
444
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
445 # generate the config.mk file
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
446 pwd=`pwd`
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
447 cat > "$TEMP_DIR/config.mk" << __EOF__
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
448 #
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
449 # config.mk generated by:
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
450 # pwd: $pwd
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
451 # $0 $@
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
452 #
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
453
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
454 __EOF__
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
455 write_toolchain_defaults "$TEMP_DIR/toolchain.mk"
76
c2a4fb5024b4 update uwproj
Mike Becker <universe@uap-core.de>
parents: 72
diff changeset
456 cat "$TEMP_DIR/config.mk" "$TEMP_DIR/vars.mk" "$TEMP_DIR/toolchain.mk" "$TEMP_DIR/flags.mk" "$TEMP_DIR/make.mk" > config.mk
71
0bdb910478cc add uwproj configure script generator
Mike Becker <universe@uap-core.de>
parents:
diff changeset
457 rm -Rf "$TEMP_DIR"

mercurial