configure

Sun, 23 Nov 2025 13:15:19 +0100

author
Mike Becker <universe@uap-core.de>
date
Sun, 23 Nov 2025 13:15:19 +0100
changeset 1508
dfc0ddd9571e
parent 1492
cc83ce484bf7
permissions
-rwxr-xr-x

optimize sorted insertion by using the infimum instead of the supremum

The reason is that the supremum returns the equal element with the smallest index, and we want the largest.
Therefore, we use the infimum, which already gives us the largest index when there are equal elements, and increase the index by one. The infimum is also guaranteed to exist in that case.

753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
1 #!/bin/sh
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
2
960
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
3
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
4 # some utility functions
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
5 isplatform()
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
6 {
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
7 for p in $PLATFORM
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
8 do
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
9 if [ "$p" = "$1" ]; then
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
10 return 0
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
11 fi
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
12 done
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
13 return 1
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
14 }
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
15 notisplatform()
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
16 {
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
17 for p in $PLATFORM
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
18 do
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
19 if [ "$p" = "$1" ]; then
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
20 return 1
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
21 fi
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
22 done
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
23 return 0
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
24 }
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
25 istoolchain()
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
26 {
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
27 for t in $TOOLCHAIN
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
28 do
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
29 if [ "$t" = "$1" ]; then
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
30 return 0
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
31 fi
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
32 done
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
33 return 1
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
34 }
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
35 notistoolchain()
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
36 {
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
37 for t in $TOOLCHAIN
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
38 do
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
39 if [ "$t" = "$1" ]; then
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
40 return 1
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
41 fi
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
42 done
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
43 return 0
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
44 }
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
45
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
46 # clean abort
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
47 abort_configure()
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
48 {
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
49 rm -Rf "$TEMP_DIR"
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
50 exit 1
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
51 }
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
52
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
53 # Test for availability of pkg-config
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
54 PKG_CONFIG=`command -v pkg-config`
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
55 : ${PKG_CONFIG:="false"}
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
56
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
57 # Simple uname based platform detection
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
58 # $PLATFORM is used for platform dependent dependency selection
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
59 OS=`uname -s`
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
60 OS_VERSION=`uname -r`
1335
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
61 ARCH=`uname -m`
960
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
62 printf "detect platform... "
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
63 if [ "$OS" = "SunOS" ]; then
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
64 PLATFORM="solaris sunos unix svr4"
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
65 elif [ "$OS" = "Linux" ]; then
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
66 PLATFORM="linux unix"
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
67 elif [ "$OS" = "FreeBSD" ]; then
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
68 PLATFORM="freebsd bsd unix"
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
69 elif [ "$OS" = "OpenBSD" ]; then
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
70 PLATFORM="openbsd bsd unix"
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
71 elif [ "$OS" = "NetBSD" ]; then
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
72 PLATFORM="netbsd bsd unix"
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
73 elif [ "$OS" = "Darwin" ]; then
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
74 PLATFORM="macos osx bsd unix"
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
75 elif echo "$OS" | grep -i "MINGW" > /dev/null; then
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
76 PLATFORM="windows mingw"
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
77 fi
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
78 : ${PLATFORM:="unix"}
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
79
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
80 PLATFORM_NAME=`echo "$PLATFORM" | cut -f1 -d' ' -`
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
81 echo "$PLATFORM_NAME"
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
82
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
83
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
84 # help text
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
85 printhelp()
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
86 {
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
87 echo "Usage: $0 [OPTIONS]..."
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
88 cat << __EOF__
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
89 Installation directories:
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
90 --prefix=PREFIX path prefix for architecture-independent files
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
91 [$prefix]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
92 --exec-prefix=EPREFIX path prefix for architecture-dependent files
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
93 [PREFIX]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
94
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
95 --bindir=DIR user executables [EPREFIX/bin]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
96 --sbindir=DIR system admin executables [EPREFIX/sbin]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
97 --libexecdir=DIR program executables [EPREFIX/libexec]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
98 --sysconfdir=DIR system configuration files [PREFIX/etc]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
99 --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
100 --localstatedir=DIR modifiable single-machine data [PREFIX/var]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
101 --runstatedir=DIR run-time variable data [LOCALSTATEDIR/run]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
102 --libdir=DIR object code libraries [EPREFIX/lib]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
103 --includedir=DIR C header files [PREFIX/include]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
104 --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
105 --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
106 --infodir=DIR info documentation [DATAROOTDIR/info]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
107 --mandir=DIR man documentation [DATAROOTDIR/man]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
108 --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
109
1017
b0098854071f add check for C23 compatibility
Mike Becker <universe@uap-core.de>
parents: 990
diff changeset
110 Build Types:
1310
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
111 --debug add extra compile flags for debug builds
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
112 --release add extra compile flags for release builds
1017
b0098854071f add check for C23 compatibility
Mike Becker <universe@uap-core.de>
parents: 990
diff changeset
113
960
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
114 Optional Features:
1320
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
115 --enable-api-docs run Doxygen during build
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
116 --enable-coverage test coverage with gcov
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
117 --enable-asan address sanitizer
1413
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
118 --disable-memrchr
988
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
119 --disable-cxx-tests the check-cxx makefile target
987
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
120 --disable-szmul-builtin use custom implementation, instead
960
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
121
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
122 __EOF__
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
123 }
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
124
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
125 # create temporary directory
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
126 TEMP_DIR=".tmp-`uname -n`"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
127 rm -Rf "$TEMP_DIR"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
128 if mkdir -p "$TEMP_DIR"; then
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
129 :
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
130 else
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
131 echo "Cannot create tmp dir $TEMP_DIR"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
132 echo "Abort"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
133 exit 1
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
134 fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
135 touch "$TEMP_DIR/options"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
136 touch "$TEMP_DIR/features"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
137
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
138 # define standard variables
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
139 # also define standard prefix (this is where we will search for config.site)
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
140 prefix=/usr
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
141 exec_prefix=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
142 bindir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
143 sbindir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
144 libdir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
145 libexecdir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
146 datarootdir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
147 datadir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
148 sysconfdir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
149 sharedstatedir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
150 localstatedir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
151 runstatedir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
152 includedir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
153 infodir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
154 localedir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
155 mandir=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
156
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
157 # custom variables
960
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
158 if true \
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
159 ; then
1064
f3b04cd60776 change coverage tool from gcov to gcovr
Mike Becker <universe@uap-core.de>
parents: 1017
diff changeset
160 root_dir=`pwd`
960
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
161 DOXYGEN=`command -v doxygen`
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
162 fi
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
163
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
164 # features
1413
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
165 FEATURE_MEMRCHR=auto
988
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
166 FEATURE_CXX_TESTS=auto
987
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
167 FEATURE_SZMUL_BUILTIN=auto
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
168
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
169 #
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
170 # parse arguments
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
171 #
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
172 BUILD_TYPE="default"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
173 for ARG in "$@"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
174 do
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
175 case "$ARG" in
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
176 "--prefix="*) prefix=${ARG#--prefix=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
177 "--exec-prefix="*) exec_prefix=${ARG#--exec-prefix=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
178 "--bindir="*) bindir=${ARG#----bindir=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
179 "--sbindir="*) sbindir=${ARG#--sbindir=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
180 "--libdir="*) libdir=${ARG#--libdir=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
181 "--libexecdir="*) libexecdir=${ARG#--libexecdir=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
182 "--datarootdir="*) datarootdir=${ARG#--datarootdir=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
183 "--datadir="*) datadir=${ARG#--datadir=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
184 "--sysconfdir="*) sysconfdir=${ARG#--sysconfdir=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
185 "--sharedstatedir="*) sharedstatedir=${ARG#--sharedstatedir=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
186 "--localstatedir="*) localstatedir=${ARG#--localstatedir=} ;;
1492
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
187 "--runstatedir="*) runstatedir=${ARG#--runstatedir=} ;;
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
188 "--includedir="*) includedir=${ARG#--includedir=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
189 "--infodir="*) infodir=${ARG#--infodir=} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
190 "--mandir"*) mandir=${ARG#--mandir} ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
191 "--localedir"*) localedir=${ARG#--localedir} ;;
1017
b0098854071f add check for C23 compatibility
Mike Becker <universe@uap-core.de>
parents: 990
diff changeset
192 "--help"*) printhelp; abort_configure ;;
b0098854071f add check for C23 compatibility
Mike Becker <universe@uap-core.de>
parents: 990
diff changeset
193 "--debug") BUILD_TYPE="debug" ;;
b0098854071f add check for C23 compatibility
Mike Becker <universe@uap-core.de>
parents: 990
diff changeset
194 "--release") BUILD_TYPE="release" ;;
1140
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
195 "--enable-api-docs") FEATURE_API_DOCS=on ;;
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
196 "--disable-api-docs") unset FEATURE_API_DOCS ;;
772
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
197 "--enable-coverage") FEATURE_COVERAGE=on ;;
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
198 "--disable-coverage") unset FEATURE_COVERAGE ;;
1320
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
199 "--enable-asan") FEATURE_ASAN=on ;;
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
200 "--disable-asan") unset FEATURE_ASAN ;;
1413
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
201 "--enable-memrchr") FEATURE_MEMRCHR=on ;;
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
202 "--disable-memrchr") unset FEATURE_MEMRCHR ;;
988
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
203 "--enable-cxx-tests") FEATURE_CXX_TESTS=on ;;
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
204 "--disable-cxx-tests") unset FEATURE_CXX_TESTS ;;
987
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
205 "--enable-szmul-builtin") FEATURE_SZMUL_BUILTIN=on ;;
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
206 "--disable-szmul-builtin") unset FEATURE_SZMUL_BUILTIN ;;
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
207 "-"*) echo "unknown option: $ARG"; abort_configure ;;
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
208 esac
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
209 done
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
210
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
211
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
212
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
213 # set defaults for dir variables
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
214 : ${exec_prefix:="$prefix"}
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
215 : ${bindir:='${exec_prefix}/bin'}
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
216 : ${sbindir:='${exec_prefix}/sbin'}
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
217 : ${libdir:='${exec_prefix}/lib'}
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
218 : ${libexecdir:='${exec_prefix}/libexec'}
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
219 : ${datarootdir:='${prefix}/share'}
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
220 : ${datadir:='${datarootdir}'}
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
221 : ${sharedstatedir:='${prefix}/com'}
1492
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
222 if [ -z "$sysconfdir" ]; then
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
223 if [ "$prefix" = '/usr' ]; then
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
224 sysconfdir='/etc'
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
225 else
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
226 sysconfdir='${prefix}/etc'
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
227 fi
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
228 fi
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
229 if [ -z "$localstatedir" ]; then
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
230 if [ "$prefix" = '/usr' ]; then
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
231 localstatedir='/var'
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
232 else
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
233 localstatedir='${prefix}/var'
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
234 fi
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
235 fi
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
236 if [ -z "$runstatedir" ]; then
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
237 if [ "$prefix" = '/usr' ]; then
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
238 runstatedir='/var/run'
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
239 else
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
240 runstatedir='${prefix}/var'
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
241 fi
cc83ce484bf7 update uwproj
Mike Becker <universe@uap-core.de>
parents: 1471
diff changeset
242 fi
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
243 : ${includedir:='${prefix}/include'}
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
244 : ${infodir:='${datarootdir}/info'}
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
245 : ${mandir:='${datarootdir}/man'}
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
246 : ${localedir:='${datarootdir}/locale'}
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
247
1310
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
248 # remember the above values and compare them later
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
249 orig_bindir="$bindir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
250 orig_sbindir="$sbindir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
251 orig_libdir="$libdir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
252 orig_libexecdir="$libexecdir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
253 orig_datarootdir="$datarootdir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
254 orig_datadir="$datadir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
255 orig_sysconfdir="$sysconfdir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
256 orig_sharedstatedir="$sharedstatedir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
257 orig_localstatedir="$localstatedir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
258 orig_runstatedir="$runstatedir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
259 orig_includedir="$includedir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
260 orig_infodir="$infodir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
261 orig_mandir="$mandir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
262 orig_localedir="$localedir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
263
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
264 # check if a config.site exists and load it
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
265 if [ -n "$CONFIG_SITE" ]; then
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
266 # CONFIG_SITE may contain space separated file names
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
267 for cs in $CONFIG_SITE; do
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
268 printf "loading defaults from $cs... "
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
269 . "$cs"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
270 echo ok
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
271 done
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
272 elif [ -f "$prefix/share/config.site" ]; then
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
273 printf "loading site defaults... "
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
274 . "$prefix/share/config.site"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
275 echo ok
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
276 elif [ -f "$prefix/etc/config.site" ]; then
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
277 printf "loading site defaults... "
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
278 . "$prefix/etc/config.site"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
279 echo ok
1335
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
280 else
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
281 # try to detect the correct libdir on our own, except it was changed by the user
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
282 if test "$libdir" = '${exec_prefix}/lib'; then
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
283 if [ "$OS" = "SunOS" ]; then
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
284 test -d "${exec_prefix}/lib/amd64" && libdir='${exec_prefix}/lib/amd64'
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
285 else
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
286 # check if the standard libdir even exists
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
287 if test -d "${exec_prefix}/lib" ; then
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
288 :
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
289 else
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
290 # if it does not, maybe a lib32 exists
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
291 test -d "${exec_prefix}/lib32" && libdir='${exec_prefix}/lib32'
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
292 fi
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
293 # now check if there is a special 64bit libdir that we should use
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
294 for i in x86_64 ppc64 s390x aarch64 aarch64_be arm64 ; do
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
295 if [ $ARCH = $i ]; then
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
296 test -d "${exec_prefix}/lib64" && libdir='${exec_prefix}/lib64'
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
297 break
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
298 fi
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
299 done
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
300 fi
158eb29f0b27 update uwproj - adds libdir detection w/o config.site
Mike Becker <universe@uap-core.de>
parents: 1330
diff changeset
301 fi
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
302 fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
303
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
304
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
305 # generate vars.mk
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
306 cat > "$TEMP_DIR/vars.mk" << __EOF__
821
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
307 prefix=$prefix
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
308 exec_prefix=$exec_prefix
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
309 bindir=$bindir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
310 sbindir=$sbindir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
311 libdir=$libdir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
312 libexecdir=$libexecdir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
313 datarootdir=$datarootdir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
314 datadir=$datadir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
315 sysconfdir=$sysconfdir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
316 sharedstatedir=$sharedstatedir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
317 localstatedir=$localstatedir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
318 runstatedir=$runstatedir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
319 includedir=$includedir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
320 infodir=$infodir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
321 mandir=$mandir
5e6f15005efd update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 815
diff changeset
322 localedir=$localedir
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
323 __EOF__
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
324
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
325 # toolchain detection utilities
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
326 . make/toolchain.sh
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
327
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
328 #
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
329 # DEPENDENCIES
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
330 #
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
331
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
332 # check languages
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
333 lang_c=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
334 lang_cpp=
988
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
335 if detect_cpp_compiler ; then
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
336 lang_cpp=1
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
337 fi
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
338 if detect_c_compiler ; then
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
339 lang_c=1
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
340 fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
341
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
342 # create buffer for make variables required by dependencies
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
343 echo > "$TEMP_DIR/make.mk"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
344
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
345 test_pkg_config()
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
346 {
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
347 if "$PKG_CONFIG" --exists "$1" ; then :
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
348 else return 1 ; fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
349 if [ -z "$2" ] || "$PKG_CONFIG" --atleast-version="$2" "$1" ; then :
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
350 else return 1 ; fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
351 if [ -z "$3" ] || "$PKG_CONFIG" --exact-version="$3" "$1" ; then :
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
352 else return 1 ; fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
353 if [ -z "$4" ] || "$PKG_CONFIG" --max-version="$4" "$1" ; then :
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
354 else return 1 ; fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
355 return 0
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
356 }
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
357
796
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
358 print_check_msg()
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
359 {
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
360 if [ -z "$1" ]; then
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
361 shift
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
362 printf "$@"
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
363 fi
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
364 }
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
365
772
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
366 dependency_error_coverage()
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
367 {
796
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
368 print_check_msg "$dep_checked_coverage" "checking for coverage... "
960
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
369 # dependency coverage toolchain="gcc"
772
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
370 while true
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
371 do
960
a8a5f3dd5c3d test coverage does not really work with clang
Mike Becker <universe@uap-core.de>
parents: 842
diff changeset
372 if notistoolchain "gcc"; then
815
b0c4750cecd8 update uwproj and check toolchain dependency for coverage flags - fixes #345
Mike Becker <universe@uap-core.de>
parents: 796
diff changeset
373 break
b0c4750cecd8 update uwproj and check toolchain dependency for coverage flags - fixes #345
Mike Becker <universe@uap-core.de>
parents: 796
diff changeset
374 fi
1413
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
375 if command -v gcovr > /dev/null 2>&1 ; then
1064
f3b04cd60776 change coverage tool from gcov to gcovr
Mike Becker <universe@uap-core.de>
parents: 1017
diff changeset
376 :
f3b04cd60776 change coverage tool from gcov to gcovr
Mike Becker <universe@uap-core.de>
parents: 1017
diff changeset
377 else
f3b04cd60776 change coverage tool from gcov to gcovr
Mike Becker <universe@uap-core.de>
parents: 1017
diff changeset
378 break
f3b04cd60776 change coverage tool from gcov to gcovr
Mike Becker <universe@uap-core.de>
parents: 1017
diff changeset
379 fi
788
b34ff44e6433 move coverage flags to make/*.mk files - relates to #345
Mike Becker <universe@uap-core.de>
parents: 772
diff changeset
380 TEMP_CFLAGS="$TEMP_CFLAGS \${COVERAGE_CFLAGS}"
b34ff44e6433 move coverage flags to make/*.mk files - relates to #345
Mike Becker <universe@uap-core.de>
parents: 772
diff changeset
381 TEMP_LDFLAGS="$TEMP_LDFLAGS \${COVERAGE_LDFLAGS}"
796
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
382 print_check_msg "$dep_checked_coverage" "yes\n"
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
383 dep_checked_coverage=1
772
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
384 return 1
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
385 done
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
386
796
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
387 print_check_msg "$dep_checked_coverage" "no\n"
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
388 dep_checked_coverage=1
772
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
389 return 0
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
390 }
1320
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
391 dependency_error_asan()
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
392 {
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
393 print_check_msg "$dep_checked_asan" "checking for asan... "
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
394 # dependency asan toolchain="gnuc"
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
395 while true
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
396 do
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
397 if notistoolchain "gnuc"; then
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
398 break
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
399 fi
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
400 TEMP_CFLAGS="$TEMP_CFLAGS -fsanitize=address"
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
401 TEMP_LDFLAGS="$TEMP_LDFLAGS -fsanitize=address"
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
402 print_check_msg "$dep_checked_asan" "yes\n"
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
403 dep_checked_asan=1
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
404 return 1
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
405 done
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
406
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
407 print_check_msg "$dep_checked_asan" "no\n"
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
408 dep_checked_asan=1
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
409 return 0
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
410 }
988
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
411 dependency_error_cxx()
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
412 {
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
413 print_check_msg "$dep_checked_cxx" "checking for cxx... "
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
414 # dependency cxx
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
415 while true
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
416 do
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
417 if [ -z "$lang_cpp" ] ; then
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
418 break
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
419 fi
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
420 print_check_msg "$dep_checked_cxx" "yes\n"
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
421 dep_checked_cxx=1
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
422 return 1
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
423 done
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
424
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
425 print_check_msg "$dep_checked_cxx" "no\n"
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
426 dep_checked_cxx=1
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
427 return 0
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
428 }
1413
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
429 dependency_error_memrchr()
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
430 {
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
431 print_check_msg "$dep_checked_memrchr" "checking for memrchr... "
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
432 # dependency memrchr
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
433 while true
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
434 do
1414
597cf869e8bc missing custom CFLAGS when testing for memrchr availability
Mike Becker <universe@uap-core.de>
parents: 1413
diff changeset
435 if $TOOLCHAIN_CC $CFLAGS -o /dev/null make/test_memrchr.c > /dev/null 2>&1 ; then
1413
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
436 :
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
437 else
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
438 break
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
439 fi
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
440 TEMP_CFLAGS="$TEMP_CFLAGS -DWITH_MEMRCHR"
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
441 print_check_msg "$dep_checked_memrchr" "yes\n"
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
442 dep_checked_memrchr=1
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
443 return 1
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
444 done
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
445
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
446 # dependency memrchr
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
447 while true
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
448 do
1414
597cf869e8bc missing custom CFLAGS when testing for memrchr availability
Mike Becker <universe@uap-core.de>
parents: 1413
diff changeset
449 if $TOOLCHAIN_CC $CFLAGS -o /dev/null -D_GNU_SOURCE make/test_memrchr.c > /dev/null 2>&1 ; then
1413
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
450 :
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
451 else
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
452 break
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
453 fi
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
454 TEMP_CFLAGS="$TEMP_CFLAGS -DWITH_MEMRCHR -DMEMRCHR_NEED_GNU"
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
455 print_check_msg "$dep_checked_memrchr" "yes\n"
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
456 dep_checked_memrchr=1
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
457 return 1
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
458 done
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
459
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
460 print_check_msg "$dep_checked_memrchr" "no\n"
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
461 dep_checked_memrchr=1
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
462 return 0
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
463 }
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
464 dependency_error_doxygen()
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
465 {
796
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
466 print_check_msg "$dep_checked_doxygen" "checking for doxygen... "
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
467 # dependency doxygen
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
468 while true
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
469 do
1413
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
470 if test -n "$DOXYGEN" > /dev/null 2>&1 ; then
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
471 :
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
472 else
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
473 break
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
474 fi
979
bbae1ebf309b fix broken docs target after uwproj update
Mike Becker <universe@uap-core.de>
parents: 960
diff changeset
475 cat >> $TEMP_DIR/make.mk << __EOF__
bbae1ebf309b fix broken docs target after uwproj update
Mike Becker <universe@uap-core.de>
parents: 960
diff changeset
476 # Dependency: doxygen
bbae1ebf309b fix broken docs target after uwproj update
Mike Becker <universe@uap-core.de>
parents: 960
diff changeset
477 DOXYGEN=$DOXYGEN
bbae1ebf309b fix broken docs target after uwproj update
Mike Becker <universe@uap-core.de>
parents: 960
diff changeset
478 __EOF__
796
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
479 print_check_msg "$dep_checked_doxygen" "yes\n"
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
480 dep_checked_doxygen=1
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
481 return 1
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
482 done
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
483
796
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
484 print_check_msg "$dep_checked_doxygen" "no\n"
fec90b848f4b update uwproj configure template
Mike Becker <universe@uap-core.de>
parents: 788
diff changeset
485 dep_checked_doxygen=1
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
486 return 0
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
487 }
990
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
488 dependency_error_no_coverage()
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
489 {
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
490 print_check_msg "$dep_checked_no_coverage" "checking for no_coverage... "
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
491 # dependency no_coverage
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
492 while true
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
493 do
1413
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
494 if test -z "$FEATURE_COVERAGE" > /dev/null 2>&1 ; then
990
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
495 :
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
496 else
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
497 break
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
498 fi
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
499 print_check_msg "$dep_checked_no_coverage" "yes\n"
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
500 dep_checked_no_coverage=1
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
501 return 1
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
502 done
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
503
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
504 print_check_msg "$dep_checked_no_coverage" "no\n"
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
505 dep_checked_no_coverage=1
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
506 return 0
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
507 }
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
508
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
509 # start collecting dependency information
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
510 echo > "$TEMP_DIR/flags.mk"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
511
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
512 DEPENDENCIES_FAILED=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
513 ERROR=0
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
514 # unnamed dependencies
1017
b0098854071f add check for C23 compatibility
Mike Becker <universe@uap-core.de>
parents: 990
diff changeset
515 TEMP_CFLAGS="$CFLAGS"
b0098854071f add check for C23 compatibility
Mike Becker <universe@uap-core.de>
parents: 990
diff changeset
516 TEMP_CXXFLAGS="$CXXFLAGS"
b0098854071f add check for C23 compatibility
Mike Becker <universe@uap-core.de>
parents: 990
diff changeset
517 TEMP_LDFLAGS="$LDFLAGS"
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
518 while true
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
519 do
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
520 while true
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
521 do
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
522
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
523 cat >> "$TEMP_DIR/make.mk" << __EOF__
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
524 # library version
1280
60123b3db06e start development of UCX 3.2
Mike Becker <universe@uap-core.de>
parents: 1140
diff changeset
525 VERSION=3.2.0
1456
fb4f5e37090d ucx 3.2 is not binary compatible - increase the LIBVERSION
Mike Becker <universe@uap-core.de>
parents: 1414
diff changeset
526 LIBVERSION=6.0.0
fb4f5e37090d ucx 3.2 is not binary compatible - increase the LIBVERSION
Mike Becker <universe@uap-core.de>
parents: 1414
diff changeset
527 LIBVERSION_MAJOR=6
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
528
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
529 # build directory structure !! do not change or override !!
1064
f3b04cd60776 change coverage tool from gcov to gcovr
Mike Becker <universe@uap-core.de>
parents: 1017
diff changeset
530 root_dir=${root_dir}
f3b04cd60776 change coverage tool from gcov to gcovr
Mike Becker <universe@uap-core.de>
parents: 1017
diff changeset
531 build_dir=${root_dir}/build
f3b04cd60776 change coverage tool from gcov to gcovr
Mike Becker <universe@uap-core.de>
parents: 1017
diff changeset
532 docs_dir=${root_dir}/build/docs
f3b04cd60776 change coverage tool from gcov to gcovr
Mike Becker <universe@uap-core.de>
parents: 1017
diff changeset
533 dist_dir=${root_dir}/dist
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
534 __EOF__
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
535 break
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
536 done
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
537 break
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
538 done
842
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
539 while true
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
540 do
1460
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
541 while true
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
542 do
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
543
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
544 cat >> "$TEMP_DIR/make.mk" << __EOF__
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
545 MKDIR=/bin/mkdir -p
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
546 RMFILE=/bin/rm -f
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
547 RMDIR=/bin/rm -f -R
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
548 COPYFILE=/bin/cp -f
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
549 COPYALL=/bin/cp -f -R
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
550 SYMLINK=/bin/ln -s
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
551 __EOF__
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
552 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
553 done
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
554 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
555 done
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
556 while true
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
557 do
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
558 if notisplatform "macos"; then
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
559 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
560 fi
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
561 while true
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
562 do
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
563 if [ -z "$lang_c" ] ; then
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
564 ERROR=1
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
565 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
566 fi
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
567
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
568 cat >> "$TEMP_DIR/make.mk" << __EOF__
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
569 AR=ar
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
570 ARFLAGS=r
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
571 STLIB_EXT=.a
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
572 SHLIB_EXT=.dylib
1471
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1461
diff changeset
573
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1461
diff changeset
574 SHLIB_LDFLAGS=-dynamiclib -current_version \$(LIBVERSION) -compatibility_version \$(LIBVERSION)
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1461
diff changeset
575 INSTALL_LIB=\$(root_dir)/make/install-lib-macos.sh
1460
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
576 __EOF__
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
577 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
578 done
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
579 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
580 done
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
581 while true
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
582 do
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
583 if notisplatform "unix"; then
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
584 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
585 fi
1461
dfd79d615049 remove mingw support (we have MSVC support) + fix regression on macos platform
Mike Becker <universe@uap-core.de>
parents: 1460
diff changeset
586 if isplatform "macos" || istoolchain "macos"; then
dfd79d615049 remove mingw support (we have MSVC support) + fix regression on macos platform
Mike Becker <universe@uap-core.de>
parents: 1460
diff changeset
587 break
dfd79d615049 remove mingw support (we have MSVC support) + fix regression on macos platform
Mike Becker <universe@uap-core.de>
parents: 1460
diff changeset
588 fi
1460
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
589 while true
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
590 do
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
591 if [ -z "$lang_c" ] ; then
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
592 ERROR=1
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
593 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
594 fi
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
595
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
596 cat >> "$TEMP_DIR/make.mk" << __EOF__
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
597 AR=ar
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
598 ARFLAGS=cr
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
599 STLIB_EXT=.a
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
600 SHLIB_EXT=.so
1471
2309b553c604 install shared libs with a new install-lib script, with variants for normal unix and macos - fixes #752 broken macos dylib support
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 1461
diff changeset
601 INSTALL_LIB=\$(root_dir)/make/install-lib.sh
1460
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
602 __EOF__
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
603 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
604 done
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
605 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
606 done
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
607 while true
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
608 do
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
609 if notistoolchain "gnuc"; then
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
610 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
611 fi
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
612 if isplatform "macos" || istoolchain "macos"; then
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
613 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
614 fi
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
615 while true
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
616 do
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
617
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
618 cat >> "$TEMP_DIR/make.mk" << __EOF__
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
619 SHLIB_LDFLAGS += -Wl,-soname,libucx\$(SHLIB_EXT).\$(LIBVERSION_MAJOR)
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
620 __EOF__
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
621 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
622 done
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
623 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
624 done
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
625 while true
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
626 do
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
627 if notistoolchain "suncc"; then
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
628 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
629 fi
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
630 while true
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
631 do
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
632
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
633 cat >> "$TEMP_DIR/make.mk" << __EOF__
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
634 SHLIB_LDFLAGS += -h libucx\$(SHLIB_EXT).\$(LIBVERSION_MAJOR)
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
635 __EOF__
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
636 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
637 done
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
638 break
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
639 done
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
640 while true
464f896249c1 add support for multiple parallel versions of ucx
Mike Becker <universe@uap-core.de>
parents: 1456
diff changeset
641 do
842
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
642 if notisplatform "solaris"; then
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
643 break
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
644 fi
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
645 while true
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
646 do
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
647
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
648 TEMP_LDFLAGS="$TEMP_LDFLAGS -lm"
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
649 break
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
650 done
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
651 break
b48cbfa109d4 add -lm to ldflags on Solaris
Olaf Wintermann <olaf.wintermann@gmail.com>
parents: 825
diff changeset
652 done
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
653
1310
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
654 # build type
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
655 if [ "$BUILD_TYPE" = "debug" ]; then
1330
caa66055b025 apply latest uwproj fixes
Mike Becker <universe@uap-core.de>
parents: 1320
diff changeset
656 TEMP_CFLAGS="\${DEBUG_CFLAGS} $TEMP_CFLAGS"
caa66055b025 apply latest uwproj fixes
Mike Becker <universe@uap-core.de>
parents: 1320
diff changeset
657 TEMP_CXXFLAGS="\${DEBUG_CXXFLAGS} $TEMP_CXXFLAGS"
1310
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
658 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
659 if [ "$BUILD_TYPE" = "release" ]; then
1330
caa66055b025 apply latest uwproj fixes
Mike Becker <universe@uap-core.de>
parents: 1320
diff changeset
660 TEMP_CFLAGS="\${RELEASE_CFLAGS} $TEMP_CFLAGS"
caa66055b025 apply latest uwproj fixes
Mike Becker <universe@uap-core.de>
parents: 1320
diff changeset
661 TEMP_CXXFLAGS="\${RELEASE_CXXFLAGS} $TEMP_CXXFLAGS"
1310
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
662 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
663
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
664 # add general dependency flags to flags.mk
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
665 echo "# general flags" >> "$TEMP_DIR/flags.mk"
815
b0c4750cecd8 update uwproj and check toolchain dependency for coverage flags - fixes #345
Mike Becker <universe@uap-core.de>
parents: 796
diff changeset
666 if [ -n "${TEMP_CFLAGS}" ] && [ -n "$lang_c" ]; then
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
667 echo "CFLAGS += $TEMP_CFLAGS" >> "$TEMP_DIR/flags.mk"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
668 fi
815
b0c4750cecd8 update uwproj and check toolchain dependency for coverage flags - fixes #345
Mike Becker <universe@uap-core.de>
parents: 796
diff changeset
669 if [ -n "${TEMP_CXXFLAGS}" ] && [ -n "$lang_cpp" ]; then
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
670 echo "CXXFLAGS += $TEMP_CXXFLAGS" >> "$TEMP_DIR/flags.mk"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
671 fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
672 if [ -n "${TEMP_LDFLAGS}" ]; then
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
673 echo "LDFLAGS += $TEMP_LDFLAGS" >> "$TEMP_DIR/flags.mk"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
674 fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
675
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
676 #
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
677 # OPTION VALUES
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
678 #
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
679
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
680 #
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
681 # TARGETS
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
682 #
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
683
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
684 echo >> "$TEMP_DIR/flags.mk"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
685 echo "configuring global target"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
686 echo "# flags for unnamed target" >> "$TEMP_DIR/flags.mk"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
687 TEMP_CFLAGS=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
688 TEMP_CXXFLAGS=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
689 TEMP_LDFLAGS=
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
690
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
691
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
692 # Features
1140
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
693 if [ -n "$FEATURE_API_DOCS" ]; then
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
694 # check dependency
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
695 if dependency_error_doxygen ; then
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
696 # "auto" features can fail and are just disabled in this case
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
697 if [ "$FEATURE_API_DOCS" = "auto" ]; then
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
698 DISABLE_FEATURE_API_DOCS=1
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
699 else
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
700 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED doxygen "
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
701 ERROR=1
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
702 fi
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
703 fi
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
704 if [ -n "$DISABLE_FEATURE_API_DOCS" ]; then
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
705 unset FEATURE_API_DOCS
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
706 fi
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
707 fi
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
708 if [ -n "$FEATURE_API_DOCS" ]; then
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
709 :
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
710 cat >> "$TEMP_DIR/make.mk" << __EOF__
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
711 # Documentation
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
712 WITH_API_DOCS=yes
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
713 __EOF__
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
714 else
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
715 :
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
716 fi
772
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
717 if [ -n "$FEATURE_COVERAGE" ]; then
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
718 # check dependency
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
719 if dependency_error_coverage ; then
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
720 # "auto" features can fail and are just disabled in this case
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
721 if [ "$FEATURE_COVERAGE" = "auto" ]; then
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
722 DISABLE_FEATURE_COVERAGE=1
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
723 else
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
724 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED coverage "
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
725 ERROR=1
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
726 fi
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
727 fi
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
728 if [ -n "$DISABLE_FEATURE_COVERAGE" ]; then
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
729 unset FEATURE_COVERAGE
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
730 fi
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
731 fi
987
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
732 if [ -n "$FEATURE_COVERAGE" ]; then
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
733 :
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
734 else
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
735 :
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
736 fi
1320
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
737 if [ -n "$FEATURE_ASAN" ]; then
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
738 # check dependency
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
739 if dependency_error_asan ; then
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
740 # "auto" features can fail and are just disabled in this case
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
741 if [ "$FEATURE_ASAN" = "auto" ]; then
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
742 DISABLE_FEATURE_ASAN=1
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
743 else
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
744 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED asan "
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
745 ERROR=1
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
746 fi
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
747 fi
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
748 if [ -n "$DISABLE_FEATURE_ASAN" ]; then
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
749 unset FEATURE_ASAN
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
750 fi
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
751 fi
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
752 if [ -n "$FEATURE_ASAN" ]; then
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
753 :
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
754 else
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
755 :
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
756 fi
1413
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
757 if [ -n "$FEATURE_MEMRCHR" ]; then
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
758 # check dependency
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
759 if dependency_error_memrchr ; then
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
760 # "auto" features can fail and are just disabled in this case
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
761 if [ "$FEATURE_MEMRCHR" = "auto" ]; then
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
762 DISABLE_FEATURE_MEMRCHR=1
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
763 else
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
764 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED memrchr "
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
765 ERROR=1
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
766 fi
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
767 fi
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
768 if [ -n "$DISABLE_FEATURE_MEMRCHR" ]; then
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
769 unset FEATURE_MEMRCHR
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
770 fi
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
771 fi
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
772 if [ -n "$FEATURE_MEMRCHR" ]; then
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
773 :
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
774 else
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
775 :
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
776 fi
988
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
777 if [ -n "$FEATURE_CXX_TESTS" ]; then
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
778 # check dependency
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
779 if dependency_error_cxx ; then
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
780 # "auto" features can fail and are just disabled in this case
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
781 if [ "$FEATURE_CXX_TESTS" = "auto" ]; then
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
782 DISABLE_FEATURE_CXX_TESTS=1
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
783 else
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
784 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED cxx "
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
785 ERROR=1
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
786 fi
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
787 fi
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
788 if [ -n "$DISABLE_FEATURE_CXX_TESTS" ]; then
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
789 unset FEATURE_CXX_TESTS
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
790 fi
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
791 fi
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
792 if [ -n "$FEATURE_CXX_TESTS" ]; then
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
793 :
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
794 cat >> "$TEMP_DIR/make.mk" << __EOF__
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
795 # Enable the check-cxx target
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
796 WITH_CXX_TEST=yes
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
797 __EOF__
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
798 else
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
799 :
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
800 fi
987
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
801 if [ -n "$FEATURE_SZMUL_BUILTIN" ]; then
990
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
802 # check dependency
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
803 if dependency_error_no_coverage ; then
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
804 # "auto" features can fail and are just disabled in this case
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
805 if [ "$FEATURE_SZMUL_BUILTIN" = "auto" ]; then
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
806 DISABLE_FEATURE_SZMUL_BUILTIN=1
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
807 else
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
808 DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED no_coverage "
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
809 ERROR=1
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
810 fi
f708863e7ec6 automatically disable szmul builtin when testing with coverage
Mike Becker <universe@uap-core.de>
parents: 988
diff changeset
811 fi
987
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
812 if [ -n "$DISABLE_FEATURE_SZMUL_BUILTIN" ]; then
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
813 unset FEATURE_SZMUL_BUILTIN
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
814 fi
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
815 fi
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
816 if [ -n "$FEATURE_SZMUL_BUILTIN" ]; then
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
817 :
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
818 else
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
819 :
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
820 TEMP_CFLAGS="$TEMP_CFLAGS -DCX_NO_SZMUL_BUILTIN"
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
821 TEMP_CXXFLAGS="$TEMP_CXXFLAGS -DCX_NO_SZMUL_BUILTIN"
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
822 fi
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
823
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
824
815
b0c4750cecd8 update uwproj and check toolchain dependency for coverage flags - fixes #345
Mike Becker <universe@uap-core.de>
parents: 796
diff changeset
825 if [ -n "${TEMP_CFLAGS}" ] && [ -n "$lang_c" ]; then
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
826 echo "CFLAGS += $TEMP_CFLAGS" >> "$TEMP_DIR/flags.mk"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
827 fi
815
b0c4750cecd8 update uwproj and check toolchain dependency for coverage flags - fixes #345
Mike Becker <universe@uap-core.de>
parents: 796
diff changeset
828 if [ -n "${TEMP_CXXFLAGS}" ] && [ -n "$lang_cpp" ]; then
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
829 echo "CXXFLAGS += $TEMP_CXXFLAGS" >> "$TEMP_DIR/flags.mk"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
830 fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
831 if [ -n "${TEMP_LDFLAGS}" ]; then
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
832 echo "LDFLAGS += $TEMP_LDFLAGS" >> "$TEMP_DIR/flags.mk"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
833 fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
834
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
835
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
836 # final result
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
837 if [ $ERROR -ne 0 ]; then
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
838 echo
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
839 echo "Error: Unresolved dependencies"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
840 echo "$DEPENDENCIES_FAILED"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
841 abort_configure
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
842 fi
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
843
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
844 echo "configure finished"
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
845 echo
1310
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
846 echo "Toolchain"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
847 echo " name: $TOOLCHAIN_NAME"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
848 if [ -n "$TOOLCHAIN_CC" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
849 echo " cc: $TOOLCHAIN_CC"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
850 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
851 if [ -n "$TOOLCHAIN_CXX" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
852 echo " cxx: $TOOLCHAIN_CXX"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
853 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
854 if [ -n "$TOOLCHAIN_WSIZE" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
855 echo " word size: $TOOLCHAIN_WSIZE bit"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
856 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
857 if [ -n "$TOOLCHAIN_CSTD" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
858 echo " default C std: $TOOLCHAIN_CSTD"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
859 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
860 echo
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
861 echo "Build Config:"
1310
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
862 echo " prefix: $prefix"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
863 echo " exec_prefix: $exec_prefix"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
864 if [ "$orig_bindir" != "$bindir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
865 echo " bindir: $bindir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
866 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
867 if [ "$orig_sbindir" != "$sbindir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
868 echo " sbindir: $sbindir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
869 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
870 if [ "$orig_libdir" != "$libdir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
871 echo " libdir: $libdir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
872 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
873 if [ "$orig_libexecdir" != "$libexecdir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
874 echo " libexecdir: $libexecdir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
875 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
876 if [ "$orig_datarootdir" != "$datarootdir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
877 echo " datarootdir: $datarootdir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
878 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
879 if [ "$orig_datadir" != "$datadir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
880 echo " datadir: $datadir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
881 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
882 if [ "$orig_sysconfdir" != "$sysconfdir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
883 echo " sysconfdir: $sysconfdir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
884 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
885 if [ "$orig_sharedstatedir" != "$sharedstatedir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
886 echo " sharedstatedir: $sharedstatedir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
887 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
888 if [ "$orig_localstatedir" != "$localstatedir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
889 echo " localstatedir: $localstatedir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
890 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
891 if [ "$orig_runstatedir" != "$runstatedir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
892 echo " runstatedir: $runstatedir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
893 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
894 if [ "$orig_includedir" != "$includedir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
895 echo " includedir: $includedir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
896 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
897 if [ "$orig_infodir" != "$infodir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
898 echo " infodir: $infodir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
899 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
900 if [ "$orig_mandir" != "$mandir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
901 echo " mandir: $mandir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
902 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
903 if [ "$orig_localedir" != "$localedir" ]; then
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
904 echo " localedir: $localedir"
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
905 fi
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
906 echo
772
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
907 echo "Features:"
1140
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
908 if [ -n "$FEATURE_API_DOCS" ]; then
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
909 echo " api-docs: on"
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
910 else
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
911 echo " api-docs: off"
88a9ee79c102 start overhauling the entire web documentation
Mike Becker <universe@uap-core.de>
parents: 1064
diff changeset
912 fi
772
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
913 if [ -n "$FEATURE_COVERAGE" ]; then
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
914 echo " coverage: on"
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
915 else
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
916 echo " coverage: off"
4586a84c0c0b add coverage feature - relates to #342
Mike Becker <universe@uap-core.de>
parents: 766
diff changeset
917 fi
1320
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
918 if [ -n "$FEATURE_ASAN" ]; then
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
919 echo " asan: on"
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
920 else
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
921 echo " asan: off"
f76b70a72614 add an option to enable address sanitizer
Mike Becker <universe@uap-core.de>
parents: 1310
diff changeset
922 fi
1413
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
923 if [ -n "$FEATURE_MEMRCHR" ]; then
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
924 echo " memrchr: on"
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
925 else
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
926 echo " memrchr: off"
c5a225d7228c improve feature test for memrchr() making it also available on BSD
Mike Becker <universe@uap-core.de>
parents: 1335
diff changeset
927 fi
988
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
928 if [ -n "$FEATURE_CXX_TESTS" ]; then
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
929 echo " cxx-tests: on"
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
930 else
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
931 echo " cxx-tests: off"
15b3ca7ee33f make ucx C++ compatible again (and add tests for it) - fixes #486
Mike Becker <universe@uap-core.de>
parents: 987
diff changeset
932 fi
987
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
933 if [ -n "$FEATURE_SZMUL_BUILTIN" ]; then
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
934 echo " szmul-builtin: on"
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
935 else
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
936 echo " szmul-builtin: off"
53e22f112b11 add configure option for szmul
Mike Becker <universe@uap-core.de>
parents: 982
diff changeset
937 fi
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
938 echo
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
939
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
940 # generate the config.mk file
1310
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
941 pwd=`pwd`
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
942 cat > "$TEMP_DIR/config.mk" << __EOF__
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
943 #
1310
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
944 # config.mk generated by:
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
945 # pwd: $pwd
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
946 # $0 $@
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
947 #
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
948
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
949 __EOF__
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
950 write_toolchain_defaults "$TEMP_DIR/toolchain.mk"
1310
ca52ea73a4ca update uwproj
Mike Becker <universe@uap-core.de>
parents: 1280
diff changeset
951 cat "$TEMP_DIR/config.mk" "$TEMP_DIR/vars.mk" "$TEMP_DIR/toolchain.mk" "$TEMP_DIR/flags.mk" "$TEMP_DIR/make.mk" > config.mk
753
24dc84788dee replace most of the build system with uwproj
Mike Becker <universe@uap-core.de>
parents:
diff changeset
952 rm -Rf "$TEMP_DIR"

mercurial