configure

Wed, 31 Dec 2025 17:43:11 +0100

author
Mike Becker <universe@uap-core.de>
date
Wed, 31 Dec 2025 17:43:11 +0100
changeset 101
265545607063
parent 100
714fbd1391a2
permissions
-rwxr-xr-x

update uwproj and ucx

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

mercurial