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