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.

74
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
1 #!/bin/sh
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
2
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
3 SQUISH=./buildscripts/squish
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
4 PREFIX="/usr/local"
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
5
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
6 # Help
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
7
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
8 show_help() {
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
9 cat <<EOF
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
10 Configure Prosody prior to building.
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
11
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
12 --help This help.
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
13 --prefix Installation path prefix (used when installing)
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
14 Default: $PREFIX
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
15 --squish Path to squish utility (used for building)
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
16 Default: $SQUISH
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
17 EOF
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
18 }
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
19
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
20
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
21 while [ "$1" ]
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
22 do
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
23 value="`echo $1 | sed 's/[^=]*=\(.*\)/\1/'`"
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
24 if echo "$value" | grep -q "~"
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
25 then
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
26 echo
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
27 echo '*WARNING*: the "~" sign is not expanded in flags.'
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
28 echo 'If you mean the home directory, use $HOME instead.'
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
29 echo
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
30 fi
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
31 case "$1" in
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
32 --help)
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
33 show_help
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
34 exit 0
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
35 ;;
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
36 --with-squish=*)
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
37 SQUISH="$value"
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
38 ;;
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
39 --prefix=*)
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
40 PREFIX="$value"
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
41 ;;
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
42 *)
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
43 echo "Error: Unknown flag: $1"
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
44 exit 1
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
45 ;;
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
46 esac
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
47 shift
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
48 done
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
49
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
50 # Sanity-check options
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
51
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
52 if ! test -x "$SQUISH"; then
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
53 echo "FATAL: Unable to find/use squish: $SQUISH";
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
54 exit 1;
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
55 fi
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
56
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
57 cat <<EOF >config.unix
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
58
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
59 # This file was automatically generated by the configure script.
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
60 # Run "./configure --help" for details.
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
61
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
62 SQUISH=./buildscripts/squish
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
63 PREFIX=$PREFIX
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
64
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
65 EOF
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
66
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
67 echo
87
bd7888c3745a configure: Fix typo (scansion/squish)
Matthew Wild <mwild1@gmail.com>
parents: 74
diff changeset
68 echo "Installing scansion to: $PREFIX/bin"
74
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
69 echo
b3f2711684a7 Add Makefile and other files for building
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
70 echo "Configured successfully. Please run 'make' to proceed."

mercurial