configure

Sun, 08 Jun 2025 14:57:54 +0200

author
Mike Becker <universe@uap-core.de>
date
Sun, 08 Jun 2025 14:57:54 +0200
changeset 138
2ceb0368b02d
parent 128
c36170c76a2b
permissions
-rwxr-xr-x

add option to enable ASan

0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
1 #!/bin/sh
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
2
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
3
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
4 # some utility functions
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
5 isplatform()
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
6 {
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
7 for p in $PLATFORM
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
8 do
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
9 if [ "$p" = "$1" ]; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
10 return 0
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
11 fi
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
12 done
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
13 return 1
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
14 }
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
15 notisplatform()
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
16 {
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
17 for p in $PLATFORM
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
18 do
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
19 if [ "$p" = "$1" ]; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
20 return 1
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
21 fi
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
22 done
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
23 return 0
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
24 }
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
25 istoolchain()
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
26 {
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
27 for t in $TOOLCHAIN
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
28 do
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
29 if [ "$t" = "$1" ]; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
30 return 0
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
31 fi
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
32 done
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
33 return 1
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
34 }
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
35 notistoolchain()
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
36 {
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
37 for t in $TOOLCHAIN
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
38 do
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
39 if [ "$t" = "$1" ]; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
40 return 1
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
41 fi
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
42 done
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
43 return 0
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
44 }
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
45
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
46 # clean abort
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
47 abort_configure()
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
48 {
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
49 rm -Rf "$TEMP_DIR"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
50 exit 1
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
51 }
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
52
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
53 # Test for availability of pkg-config
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
54 PKG_CONFIG=`command -v pkg-config`
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
55 : ${PKG_CONFIG:="false"}
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
56
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
57 # Simple uname based platform detection
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
58 # $PLATFORM is used for platform dependent dependency selection
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
59 OS=`uname -s`
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
60 OS_VERSION=`uname -r`
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
61 printf "detect platform... "
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
62 if [ "$OS" = "SunOS" ]; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
63 PLATFORM="solaris sunos unix svr4"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
64 elif [ "$OS" = "Linux" ]; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
65 PLATFORM="linux unix"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
66 elif [ "$OS" = "FreeBSD" ]; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
67 PLATFORM="freebsd bsd unix"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
68 elif [ "$OS" = "OpenBSD" ]; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
69 PLATFORM="openbsd bsd unix"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
70 elif [ "$OS" = "NetBSD" ]; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
71 PLATFORM="netbsd bsd unix"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
72 elif [ "$OS" = "Darwin" ]; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
73 PLATFORM="macos osx bsd unix"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
74 elif echo "$OS" | grep -i "MINGW" > /dev/null; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
75 PLATFORM="windows mingw"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
76 fi
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
77 : ${PLATFORM:="unix"}
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
78
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
79 PLATFORM_NAME=`echo "$PLATFORM" | cut -f1 -d' ' -`
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
80 echo "$PLATFORM_NAME"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
81
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
82
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
83 # help text
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
84 printhelp()
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
85 {
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
86 echo "Usage: $0 [OPTIONS]..."
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
87 cat << __EOF__
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
88 Installation directories:
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
89 --prefix=PREFIX path prefix for architecture-independent files
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
90 [$prefix]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
91 --exec-prefix=EPREFIX path prefix for architecture-dependent files
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
92 [PREFIX]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
93
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
94 --bindir=DIR user executables [EPREFIX/bin]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
95 --sbindir=DIR system admin executables [EPREFIX/sbin]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
96 --libexecdir=DIR program executables [EPREFIX/libexec]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
97 --sysconfdir=DIR system configuration files [PREFIX/etc]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
98 --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
99 --localstatedir=DIR modifiable single-machine data [PREFIX/var]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
100 --runstatedir=DIR run-time variable data [LOCALSTATEDIR/run]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
101 --libdir=DIR object code libraries [EPREFIX/lib]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
102 --includedir=DIR C header files [PREFIX/include]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
103 --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
104 --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
105 --infodir=DIR info documentation [DATAROOTDIR/info]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
106 --mandir=DIR man documentation [DATAROOTDIR/man]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
107 --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
108
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
109 Build Types:
103
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
110 --debug add extra compile flags for debug builds
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
111 --release add extra compile flags for release builds
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
112
138
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
113 Optional Features:
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
114 --enable-asan Enable address sanitization.
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
115
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
116 __EOF__
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
117 }
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
118
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
119 # create temporary directory
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
120 TEMP_DIR=".tmp-`uname -n`"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
121 rm -Rf "$TEMP_DIR"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
122 if mkdir -p "$TEMP_DIR"; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
123 :
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
124 else
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
125 echo "Cannot create tmp dir $TEMP_DIR"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
126 echo "Abort"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
127 exit 1
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
128 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
129 touch "$TEMP_DIR/options"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
130 touch "$TEMP_DIR/features"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
131
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
132 # define standard variables
1
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
133 # also define standard prefix (this is where we will search for config.site)
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
134 prefix=/usr
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
135 exec_prefix=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
136 bindir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
137 sbindir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
138 libdir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
139 libexecdir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
140 datarootdir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
141 datadir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
142 sysconfdir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
143 sharedstatedir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
144 localstatedir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
145 runstatedir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
146 includedir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
147 infodir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
148 localedir=
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
149 mandir=
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
150
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
151 # custom variables
84
e4116b4b5774 put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
152 if true \
e4116b4b5774 put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
153 ; then
e4116b4b5774 put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
154 SRCDIR=`pwd`
e4116b4b5774 put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
155 fi
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
156
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
157 # features
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
158
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
159 #
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
160 # parse arguments
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
161 #
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
162 BUILD_TYPE="default"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
163 for ARG in "$@"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
164 do
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
165 case "$ARG" in
1
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
166 "--prefix="*) prefix=${ARG#--prefix=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
167 "--exec-prefix="*) exec_prefix=${ARG#--exec-prefix=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
168 "--bindir="*) bindir=${ARG#----bindir=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
169 "--sbindir="*) sbindir=${ARG#--sbindir=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
170 "--libdir="*) libdir=${ARG#--libdir=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
171 "--libexecdir="*) libexecdir=${ARG#--libexecdir=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
172 "--datarootdir="*) datarootdir=${ARG#--datarootdir=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
173 "--datadir="*) datadir=${ARG#--datadir=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
174 "--sysconfdir="*) sysconfdir=${ARG#--sysconfdir=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
175 "--sharedstatedir="*) sharedstatedir=${ARG#--sharedstatedir=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
176 "--localstatedir="*) localstatedir=${ARG#--localstatedir=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
177 "--includedir="*) includedir=${ARG#--includedir=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
178 "--infodir="*) infodir=${ARG#--infodir=} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
179 "--mandir"*) mandir=${ARG#--mandir} ;;
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
180 "--localedir"*) localedir=${ARG#--localedir} ;;
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
181 "--help"*) printhelp; abort_configure ;;
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
182 "--debug") BUILD_TYPE="debug" ;;
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
183 "--release") BUILD_TYPE="release" ;;
138
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
184 "--enable-asan") FEATURE_ASAN=on ;;
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
185 "--disable-asan") unset FEATURE_ASAN ;;
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
186 "-"*) echo "unknown option: $ARG"; abort_configure ;;
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
187 esac
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
188 done
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
189
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
190
1
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
191
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
192 # set defaults for dir variables
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
193 : ${exec_prefix:="$prefix"}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
194 : ${bindir:='${exec_prefix}/bin'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
195 : ${sbindir:='${exec_prefix}/sbin'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
196 : ${libdir:='${exec_prefix}/lib'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
197 : ${libexecdir:='${exec_prefix}/libexec'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
198 : ${datarootdir:='${prefix}/share'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
199 : ${datadir:='${datarootdir}'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
200 : ${sysconfdir:='${prefix}/etc'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
201 : ${sharedstatedir:='${prefix}/com'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
202 : ${localstatedir:='${prefix}/var'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
203 : ${runstatedir:='${localstatedir}/run'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
204 : ${includedir:='${prefix}/include'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
205 : ${infodir:='${datarootdir}/info'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
206 : ${mandir:='${datarootdir}/man'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
207 : ${localedir:='${datarootdir}/locale'}
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
208
103
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
209 # remember the above values and compare them later
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
210 orig_bindir="$bindir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
211 orig_sbindir="$sbindir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
212 orig_libdir="$libdir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
213 orig_libexecdir="$libexecdir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
214 orig_datarootdir="$datarootdir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
215 orig_datadir="$datadir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
216 orig_sysconfdir="$sysconfdir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
217 orig_sharedstatedir="$sharedstatedir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
218 orig_localstatedir="$localstatedir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
219 orig_runstatedir="$runstatedir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
220 orig_includedir="$includedir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
221 orig_infodir="$infodir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
222 orig_mandir="$mandir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
223 orig_localedir="$localedir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
224
1
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
225 # check if a config.site exists and load it
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
226 if [ -n "$CONFIG_SITE" ]; then
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
227 # CONFIG_SITE may contain space separated file names
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
228 for cs in $CONFIG_SITE; do
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
229 printf "loading defaults from $cs... "
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
230 . "$cs"
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
231 echo ok
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
232 done
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
233 elif [ -f "$prefix/share/config.site" ]; then
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
234 printf "loading site defaults... "
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
235 . "$prefix/share/config.site"
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
236 echo ok
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
237 elif [ -f "$prefix/etc/config.site" ]; then
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
238 printf "loading site defaults... "
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
239 . "$prefix/etc/config.site"
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
240 echo ok
e3113d4e2fc0 update uwproj files
Mike Becker <universe@uap-core.de>
parents: 0
diff changeset
241 fi
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
242
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
243
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
244 # generate vars.mk
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
245 cat > "$TEMP_DIR/vars.mk" << __EOF__
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
246 prefix=$prefix
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
247 exec_prefix=$exec_prefix
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
248 bindir=$bindir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
249 sbindir=$sbindir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
250 libdir=$libdir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
251 libexecdir=$libexecdir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
252 datarootdir=$datarootdir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
253 datadir=$datadir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
254 sysconfdir=$sysconfdir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
255 sharedstatedir=$sharedstatedir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
256 localstatedir=$localstatedir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
257 runstatedir=$runstatedir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
258 includedir=$includedir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
259 infodir=$infodir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
260 mandir=$mandir
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
261 localedir=$localedir
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
262 __EOF__
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
263
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
264 # toolchain detection utilities
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
265 . make/toolchain.sh
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
266
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
267 #
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
268 # DEPENDENCIES
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
269 #
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
270
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
271 # check languages
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
272 lang_c=
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
273 lang_cpp=
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
274 if detect_c_compiler ; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
275 lang_c=1
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
276 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
277
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
278 # create buffer for make variables required by dependencies
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
279 echo > "$TEMP_DIR/make.mk"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
280
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
281 test_pkg_config()
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
282 {
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
283 if "$PKG_CONFIG" --exists "$1" ; then :
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
284 else return 1 ; fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
285 if [ -z "$2" ] || "$PKG_CONFIG" --atleast-version="$2" "$1" ; then :
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
286 else return 1 ; fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
287 if [ -z "$3" ] || "$PKG_CONFIG" --exact-version="$3" "$1" ; then :
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
288 else return 1 ; fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
289 if [ -z "$4" ] || "$PKG_CONFIG" --max-version="$4" "$1" ; then :
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
290 else return 1 ; fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
291 return 0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
292 }
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
293
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
294 print_check_msg()
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
295 {
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
296 if [ -z "$1" ]; then
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
297 shift
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
298 printf "$@"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
299 fi
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
300 }
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
301
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
302 dependency_error_sdl2_ttf()
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
303 {
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
304 print_check_msg "$dep_checked_sdl2_ttf" "checking for sdl2_ttf... "
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
305 # dependency sdl2_ttf
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
306 while true
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
307 do
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
308 if [ -z "$PKG_CONFIG" ]; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
309 break
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
310 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
311 if test_pkg_config "SDL2_ttf" "" "" "" ; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
312 TEMP_CFLAGS="$TEMP_CFLAGS `"$PKG_CONFIG" --cflags SDL2_ttf`"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
313 TEMP_LDFLAGS="$TEMP_LDFLAGS `"$PKG_CONFIG" --libs SDL2_ttf`"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
314 else
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
315 break
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
316 fi
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
317 print_check_msg "$dep_checked_sdl2_ttf" "yes\n"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
318 dep_checked_sdl2_ttf=1
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
319 return 1
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
320 done
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
321
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
322 print_check_msg "$dep_checked_sdl2_ttf" "no\n"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
323 dep_checked_sdl2_ttf=1
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
324 return 0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
325 }
138
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
326 dependency_error_asan()
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
327 {
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
328 print_check_msg "$dep_checked_asan" "checking for asan... "
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
329 # dependency asan toolchain="gnuc"
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
330 while true
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
331 do
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
332 if notistoolchain "gnuc"; then
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
333 break
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
334 fi
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
335 TEMP_CFLAGS="$TEMP_CFLAGS -fsanitize=address"
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
336 TEMP_LDFLAGS="$TEMP_LDFLAGS -fsanitize=address"
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
337 print_check_msg "$dep_checked_asan" "yes\n"
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
338 dep_checked_asan=1
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
339 return 1
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
340 done
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
341
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
342 print_check_msg "$dep_checked_asan" "no\n"
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
343 dep_checked_asan=1
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
344 return 0
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
345 }
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
346 dependency_error_sdl2()
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
347 {
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
348 print_check_msg "$dep_checked_sdl2" "checking for sdl2... "
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
349 # dependency sdl2
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
350 while true
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
351 do
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
352 if [ -z "$PKG_CONFIG" ]; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
353 break
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
354 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
355 if test_pkg_config "sdl2" "" "" "" ; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
356 TEMP_CFLAGS="$TEMP_CFLAGS `"$PKG_CONFIG" --cflags sdl2`"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
357 TEMP_LDFLAGS="$TEMP_LDFLAGS `"$PKG_CONFIG" --libs sdl2`"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
358 else
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
359 break
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
360 fi
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
361 print_check_msg "$dep_checked_sdl2" "yes\n"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
362 dep_checked_sdl2=1
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
363 return 1
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
364 done
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
365
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
366 print_check_msg "$dep_checked_sdl2" "no\n"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
367 dep_checked_sdl2=1
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
368 return 0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
369 }
88
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
370 dependency_error_sdl2_image()
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
371 {
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
372 print_check_msg "$dep_checked_sdl2_image" "checking for sdl2_image... "
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
373 # dependency sdl2_image
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
374 while true
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
375 do
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
376 if [ -z "$PKG_CONFIG" ]; then
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
377 break
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
378 fi
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
379 if test_pkg_config "SDL2_image" "" "" "" ; then
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
380 TEMP_CFLAGS="$TEMP_CFLAGS `"$PKG_CONFIG" --cflags SDL2_image`"
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
381 TEMP_LDFLAGS="$TEMP_LDFLAGS `"$PKG_CONFIG" --libs SDL2_image`"
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
382 else
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
383 break
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
384 fi
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
385 print_check_msg "$dep_checked_sdl2_image" "yes\n"
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
386 dep_checked_sdl2_image=1
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
387 return 1
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
388 done
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
389
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
390 print_check_msg "$dep_checked_sdl2_image" "no\n"
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
391 dep_checked_sdl2_image=1
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
392 return 0
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
393 }
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
394 dependency_error_glew()
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
395 {
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
396 print_check_msg "$dep_checked_glew" "checking for glew... "
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
397 # dependency glew
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
398 while true
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
399 do
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
400 if [ -z "$PKG_CONFIG" ]; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
401 break
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
402 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
403 if test_pkg_config "glew" "" "" "" ; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
404 TEMP_CFLAGS="$TEMP_CFLAGS `"$PKG_CONFIG" --cflags glew`"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
405 TEMP_LDFLAGS="$TEMP_LDFLAGS `"$PKG_CONFIG" --libs glew`"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
406 else
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
407 break
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
408 fi
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
409 print_check_msg "$dep_checked_glew" "yes\n"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
410 dep_checked_glew=1
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
411 return 1
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
412 done
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
413
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
414 print_check_msg "$dep_checked_glew" "no\n"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
415 dep_checked_glew=1
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
416 return 0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
417 }
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
418 dependency_error_ucx()
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
419 {
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
420 print_check_msg "$dep_checked_ucx" "checking for ucx... "
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
421 # dependency ucx
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
422 while true
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
423 do
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
424 if check_lib ucx cx/common.h > /dev/null ; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
425 :
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
426 else
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
427 break
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
428 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
429 TEMP_LDFLAGS="$TEMP_LDFLAGS -lucx"
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
430 print_check_msg "$dep_checked_ucx" "yes\n"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
431 dep_checked_ucx=1
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
432 return 1
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
433 done
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
434
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
435 print_check_msg "$dep_checked_ucx" "no\n"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
436 dep_checked_ucx=1
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
437 return 0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
438 }
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
439
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
440 # start collecting dependency information
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
441 echo > "$TEMP_DIR/flags.mk"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
442
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
443 DEPENDENCIES_FAILED=
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
444 ERROR=0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
445 # unnamed dependencies
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
446 TEMP_CFLAGS="$CFLAGS"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
447 TEMP_CXXFLAGS="$CXXFLAGS"
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
448 TEMP_LDFLAGS="$LDFLAGS"
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
449 while true
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
450 do
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
451 while true
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
452 do
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
453 if [ -z "$lang_c" ] ; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
454 ERROR=1
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
455 break
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
456 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
457
128
c36170c76a2b add UI scaling
Mike Becker <universe@uap-core.de>
parents: 103
diff changeset
458 TEMP_LDFLAGS="$TEMP_LDFLAGS -lm"
84
e4116b4b5774 put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
459 cat >> "$TEMP_DIR/make.mk" << __EOF__
e4116b4b5774 put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
460 srcdir=$SRCDIR
e4116b4b5774 put snake test program into separate directory
Mike Becker <universe@uap-core.de>
parents: 76
diff changeset
461 __EOF__
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
462 break
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
463 done
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
464 break
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
465 done
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
466
103
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
467 # build type
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
468 if [ "$BUILD_TYPE" = "debug" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
469 TEMP_CFLAGS="\${DEBUG_CFLAGS}$TEMP_CFLAGS"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
470 TEMP_CXXFLAGS="\${DEBUG_CXXFLAGS}$TEMP_CXXFLAGS"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
471 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
472 if [ "$BUILD_TYPE" = "release" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
473 TEMP_CFLAGS="\${RELEASE_CFLAGS}$TEMP_CFLAGS"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
474 TEMP_CXXFLAGS="\${RELEASE_CXXFLAGS}$TEMP_CXXFLAGS"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
475 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
476
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
477 # add general dependency flags to flags.mk
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
478 echo "# general flags" >> "$TEMP_DIR/flags.mk"
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
479 if [ -n "${TEMP_CFLAGS}" ] && [ -n "$lang_c" ]; then
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
480 echo "CFLAGS += $TEMP_CFLAGS" >> "$TEMP_DIR/flags.mk"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
481 fi
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
482 if [ -n "${TEMP_CXXFLAGS}" ] && [ -n "$lang_cpp" ]; then
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
483 echo "CXXFLAGS += $TEMP_CXXFLAGS" >> "$TEMP_DIR/flags.mk"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
484 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
485 if [ -n "${TEMP_LDFLAGS}" ]; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
486 echo "LDFLAGS += $TEMP_LDFLAGS" >> "$TEMP_DIR/flags.mk"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
487 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
488
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
489 #
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
490 # OPTION VALUES
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
491 #
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
492
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
493 #
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
494 # TARGETS
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
495 #
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
496
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
497 echo >> "$TEMP_DIR/flags.mk"
138
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
498 echo "configuring global target"
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
499 echo "# flags for unnamed target" >> "$TEMP_DIR/flags.mk"
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
500 TEMP_CFLAGS=
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
501 TEMP_CXXFLAGS=
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
502 TEMP_LDFLAGS=
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
503
138
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
504 if dependency_error_ucx; then
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
505 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED ucx "
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
506 ERROR=1
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
507 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
508 if dependency_error_sdl2; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
509 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED sdl2 "
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
510 ERROR=1
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
511 fi
138
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
512 if dependency_error_sdl2_ttf; then
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
513 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED sdl2_ttf "
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
514 ERROR=1
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
515 fi
88
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
516 if dependency_error_sdl2_image; then
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
517 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED sdl2_image "
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
518 ERROR=1
6234b7ea48f3 add support for 2d textures in sprite shader - fixes #386
Mike Becker <universe@uap-core.de>
parents: 84
diff changeset
519 fi
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
520 if dependency_error_glew; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
521 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED glew "
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
522 ERROR=1
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
523 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
524
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
525 # Features
138
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
526 if [ -n "$FEATURE_ASAN" ]; then
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
527 # check dependency
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
528 if dependency_error_asan ; then
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
529 # "auto" features can fail and are just disabled in this case
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
530 if [ "$FEATURE_ASAN" = "auto" ]; then
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
531 DISABLE_FEATURE_ASAN=1
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
532 else
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
533 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED asan "
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
534 ERROR=1
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
535 fi
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
536 fi
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
537 if [ -n "$DISABLE_FEATURE_ASAN" ]; then
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
538 unset FEATURE_ASAN
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
539 fi
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
540 fi
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
541 if [ -n "$FEATURE_ASAN" ]; then
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
542 :
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
543 else
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
544 :
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
545 fi
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
546
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
547
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
548 if [ -n "${TEMP_CFLAGS}" ] && [ -n "$lang_c" ]; then
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
549 echo "CFLAGS += $TEMP_CFLAGS" >> "$TEMP_DIR/flags.mk"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
550 fi
76
eb16be99b0ad update to newest versions of uwproj and ucx
Mike Becker <universe@uap-core.de>
parents: 1
diff changeset
551 if [ -n "${TEMP_CXXFLAGS}" ] && [ -n "$lang_cpp" ]; then
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
552 echo "CXXFLAGS += $TEMP_CXXFLAGS" >> "$TEMP_DIR/flags.mk"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
553 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
554 if [ -n "${TEMP_LDFLAGS}" ]; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
555 echo "LDFLAGS += $TEMP_LDFLAGS" >> "$TEMP_DIR/flags.mk"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
556 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
557
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
558
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
559 # final result
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
560 if [ $ERROR -ne 0 ]; then
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
561 echo
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
562 echo "Error: Unresolved dependencies"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
563 echo "$DEPENDENCIES_FAILED"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
564 abort_configure
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
565 fi
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
566
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
567 echo "configure finished"
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
568 echo
103
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
569 echo "Toolchain"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
570 echo " name: $TOOLCHAIN_NAME"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
571 if [ -n "$TOOLCHAIN_CC" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
572 echo " cc: $TOOLCHAIN_CC"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
573 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
574 if [ -n "$TOOLCHAIN_CXX" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
575 echo " cxx: $TOOLCHAIN_CXX"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
576 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
577 if [ -n "$TOOLCHAIN_WSIZE" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
578 echo " word size: $TOOLCHAIN_WSIZE bit"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
579 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
580 if [ -n "$TOOLCHAIN_CSTD" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
581 echo " default C std: $TOOLCHAIN_CSTD"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
582 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
583 echo
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
584 echo "Build Config:"
103
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
585 echo " prefix: $prefix"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
586 echo " exec_prefix: $exec_prefix"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
587 if [ "$orig_bindir" != "$bindir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
588 echo " bindir: $bindir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
589 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
590 if [ "$orig_sbindir" != "$sbindir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
591 echo " sbindir: $sbindir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
592 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
593 if [ "$orig_libdir" != "$libdir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
594 echo " libdir: $libdir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
595 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
596 if [ "$orig_libexecdir" != "$libexecdir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
597 echo " libexecdir: $libexecdir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
598 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
599 if [ "$orig_datarootdir" != "$datarootdir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
600 echo " datarootdir: $datarootdir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
601 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
602 if [ "$orig_datadir" != "$datadir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
603 echo " datadir: $datadir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
604 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
605 if [ "$orig_sysconfdir" != "$sysconfdir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
606 echo " sysconfdir: $sysconfdir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
607 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
608 if [ "$orig_sharedstatedir" != "$sharedstatedir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
609 echo " sharedstatedir: $sharedstatedir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
610 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
611 if [ "$orig_localstatedir" != "$localstatedir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
612 echo " localstatedir: $localstatedir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
613 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
614 if [ "$orig_runstatedir" != "$runstatedir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
615 echo " runstatedir: $runstatedir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
616 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
617 if [ "$orig_includedir" != "$includedir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
618 echo " includedir: $includedir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
619 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
620 if [ "$orig_infodir" != "$infodir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
621 echo " infodir: $infodir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
622 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
623 if [ "$orig_mandir" != "$mandir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
624 echo " mandir: $mandir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
625 fi
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
626 if [ "$orig_localedir" != "$localedir" ]; then
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
627 echo " localedir: $localedir"
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
628 fi
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
629 echo
138
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
630 echo "Features:"
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
631 if [ -n "$FEATURE_ASAN" ]; then
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
632 echo " asan: on"
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
633 else
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
634 echo " asan: off"
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
635 fi
2ceb0368b02d add option to enable ASan
Mike Becker <universe@uap-core.de>
parents: 128
diff changeset
636 echo
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
637
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
638 # generate the config.mk file
103
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
639 pwd=`pwd`
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
640 cat > "$TEMP_DIR/config.mk" << __EOF__
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
641 #
103
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
642 # config.mk generated by:
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
643 # pwd: $pwd
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
644 # $0 $@
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
645 #
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
646
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
647 __EOF__
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
648 write_toolchain_defaults "$TEMP_DIR/toolchain.mk"
103
d9549dd8e9a9 update uwproj
Mike Becker <universe@uap-core.de>
parents: 88
diff changeset
649 cat "$TEMP_DIR/config.mk" "$TEMP_DIR/vars.mk" "$TEMP_DIR/toolchain.mk" "$TEMP_DIR/flags.mk" "$TEMP_DIR/make.mk" > config.mk
0
593b60458157 initial commit
Mike Becker <universe@uap-core.de>
parents:
diff changeset
650 rm -Rf "$TEMP_DIR"

mercurial