configure

Thu, 23 Mar 2023 12:14:53 +0000

author
Matthew Wild <mwild1@gmail.com>
date
Thu, 23 Mar 2023 12:14:53 +0000
changeset 172
2c17151ed21b
parent 87
bd7888c3745a
permissions
-rwxr-xr-x

client: Fix timeout handling

Previously, the timeout handler would fire an error that would get caught and
logged by the timer code. However that error never reached the upper levels of
scansion, leading to the whole thing just hanging.

Now we just trigger resumption of the async runner, and throw the error from
there if we haven't received the stanza yet.

With this change, timeouts are now correctly handled and reported as failures.

#!/bin/sh

SQUISH=./buildscripts/squish
PREFIX="/usr/local"

# Help

show_help() {
cat <<EOF
Configure Prosody prior to building.

--help                      This help.
--prefix                    Installation path prefix (used when installing)
                            Default: $PREFIX
--squish                    Path to squish utility (used for building)
                            Default: $SQUISH
EOF
}


while [ "$1" ]
do
   value="`echo $1 | sed 's/[^=]*=\(.*\)/\1/'`"
   if echo "$value" | grep -q "~"
   then
      echo
      echo '*WARNING*: the "~" sign is not expanded in flags.'
      echo 'If you mean the home directory, use $HOME instead.'
      echo
   fi
   case "$1" in
   --help)
      show_help
      exit 0
      ;;
   --with-squish=*)
      SQUISH="$value"
      ;;
   --prefix=*)
      PREFIX="$value"
      ;;
   *)
      echo "Error: Unknown flag: $1"
      exit 1
      ;;
   esac
   shift
done

# Sanity-check options

if ! test -x "$SQUISH"; then
	echo "FATAL: Unable to find/use squish: $SQUISH";
	exit 1;
fi

cat <<EOF >config.unix

# This file was automatically generated by the configure script.
# Run "./configure --help" for details.

SQUISH=./buildscripts/squish
PREFIX=$PREFIX

EOF

echo
echo "Installing scansion to:      $PREFIX/bin"
echo
echo "Configured successfully. Please run 'make' to proceed."

mercurial