Changes in configure.sh [1c39d33b:d231a54] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
configure.sh
r1c39d33b rd231a54 39 39 CONFIG_RULES="${SOURCE_DIR}/HelenOS.config" 40 40 CONFIG_DEFAULTS="${SOURCE_DIR}/defaults" 41 42 41 43 42 test "$#" -eq 1 && { test "$1" = "-h" || test "$1" = "--help"; } … … 85 84 fi 86 85 87 if ! which meson ; then86 if ! which meson >/dev/null 2>/dev/null; then 88 87 echo "Your system does not have Meson installed." 89 88 echo 'Please use `pip3 install meson`' … … 91 90 fi 92 91 93 if ! which ninja ; then92 if ! which ninja >/dev/null 2>/dev/null; then 94 93 echo "Your system does not have ninja installed." 95 94 echo 'Please use `pip3 install ninja`' … … 98 97 99 98 # Link tools directory for convenience. 100 ln -s "${SOURCE_DIR}/tools" tools 99 if [ ! -e tools ]; then 100 ln -s "${SOURCE_DIR}/tools" tools 101 fi 101 102 102 103 # Run HelenOS config tool. … … 109 110 PLATFORM=`sed -n '/^PLATFORM\b/p' Makefile.config | sed 's:[^=]*= ::'` 110 111 MACHINE=`sed -n '/^MACHINE\b/p' Makefile.config | sed 's:[^=]*= ::'` 112 COMPILER=`sed -n '/^COMPILER\b/p' Makefile.config | sed 's:[^=]*= ::'` 111 113 112 114 cross_target="$PLATFORM" … … 118 120 fi 119 121 122 if [ "$COMPILER" = 'clang' ]; then 123 cross_target="${cross_target}_clang" 124 fi 125 120 126 cross_def="${SOURCE_DIR}/meson/cross/${cross_target}" 121 127 cc_arch=`sed -n "s:cc_arch = '\(.*\)':\1:p" "$cross_def"` 122 128 123 compname="$cc_arch-helenos-gcc" 129 if [ "$COMPILER" = 'clang' ]; then 130 compname="$cc_arch-helenos-clang" 131 else 132 compname="$cc_arch-helenos-gcc" 133 fi 134 unset compprefix 124 135 125 if which "$compname" ; then136 if which "$compname" >/dev/null 2>/dev/null; then 126 137 # Compiler is in PATH 127 138 compprefix="$cc_arch-helenos-" 128 139 129 140 elif [ -n "$CROSS_PREFIX" ]; then 130 if ! which "$CROSS_PREFIX/bin/$compname"; then 141 if which "$CROSS_PREFIX/bin/$compname" >/dev/null 2>/dev/null; then 142 compprefix="$CROSS_PREFIX/bin/$cc_arch-helenos-" 143 fi 144 145 if [ -z "$compprefix" ]; then 131 146 echo "ERROR: \$CROSS_PREFIX defined but $compname is not present in $CROSS_PREFIX/bin." 132 147 echo "Run tools/toolchain.sh to build cross-compiling toolchain." 133 148 exit 1 134 149 fi 150 else 151 if [ -z "$XDG_DATA_HOME" ]; then 152 XDG_DATA_HOME="$HOME/.local/share" 153 fi 135 154 136 compprefix="$CROSS_PREFIX/bin/$cc_arch-helenos-" 137 else 138 if ! which "/usr/local/cross/bin/$compname"; then 139 echo "ERROR: \$CROSS_PREFIX is not defined and $compname is not present in /usr/local/cross/bin." 155 if which "$XDG_DATA_HOME/HelenOS/cross/bin/$compname" >/dev/null 2>/dev/null; then 156 compprefix="$XDG_DATA_HOME/HelenOS/cross/bin/$cc_arch-helenos-" 157 elif which "/opt/HelenOS/cross/bin/$compname" >/dev/null 2>/dev/null; then 158 compprefix="/opt/HelenOS/cross/bin/$cc_arch-helenos-" 159 elif which "/usr/local/cross/bin/$compname" >/dev/null 2>/dev/null; then 160 compprefix="/usr/local/cross/bin/$cc_arch-helenos-" 161 fi 162 163 if [ -z "$compprefix" ]; then 164 echo "ERROR: \$CROSS_PREFIX is not defined and $compname is not present in any of the following standard locations." 165 echo " * $XDG_DATA_HOME/HelenOS/cross/bin" 166 echo " * /opt/HelenOS/cross/bin" 167 echo " * /usr/local/cross/bin" 140 168 echo "Run tools/toolchain.sh to build cross-compiling toolchain." 141 169 exit 1 142 170 fi 143 144 compprefix="/usr/local/cross/bin/$cc_arch-helenos-"145 171 fi 146 172 147 173 sed "s:@COMPPREFIX@:$compprefix:g" "$cross_def" > crossfile || exit 1 148 174 149 meson "${SOURCE_DIR}" '.' --cross-file crossfile || exit 1175 meson setup "${SOURCE_DIR}" '.' --cross-file crossfile || exit 1 150 176 151 177 echo
Note:
See TracChangeset
for help on using the changeset viewer.