but isn't it the "make depend" step that's failing as far as the is-mirage-broken/scripts/mirage-www script is concerned -- hence it won't exit according to point 2. below (-e is ignored if it's any command of an AND-OR list other than the last).
with -e on, seems expected practice is to issue the commands individually i.e.
make depend make configure make build
...and let the -e fail them if required. (assuming you don't want to accumulate info about failures of depend/configure on other platforms before bailing out.) It's here:
And the `make` invocations do seem to exit with a non-zero exit code.
-ani not sure precisely where the script being executed actually is but could it be because it's a command in a multi-command pipeline?
-eWhen this option is on, when any command fails (for any of the reasons listed in Consequences of Shell Errors or by returning an exit status greater than zero), the shell immediately shall exit with the following exceptions:The failure of any individual command in a multi-command pipeline shall not cause the shell to exit. Only the failure of the pipeline itself shall be considered. The -e setting shall be ignored when executing the compound list following the while, until, if, or elif reserved word, a pipeline beginning with the ! reserved word, or any command of an AND-OR list other than the last. If the exit status of a compound command other than a subshell command was the result of a failure while -e was being ignored, then -e shall not apply to this command.
This requirement applies to the shell environment and each subshell environment separately. For example, in: set -e; (false; echo one) | cat; echo two
the false command causes the subshell to exit without executing echo one; however, echo two is executed because the exit status of the pipeline (false; echo one) | cat is zero.
Great! For the rest of the list, it looks like mirage-dev is working with the external OPAM solver (aspcud, on Ubuntu-trusty), but not with the internal one (CentOS builds):
This is probably due to our excessive use of depopts; I will replace those with explicit virtual packages (e.g. dns-mirage) that encode all the dependencies they need.
More mysteriously, the `set -e` in the shell script isn't causing it to terminate early, so the `MIRAGE WORKS` string is always printed. We need a is-mirage-working-working script to fix our is-mirage-working script :-)
-anil
On 20 Oct 2014, at 15:09, Luke Dunstan < lukedunstan81@xxxxxxxxx> wrote: _______________________________________________ MirageOS-devel mailing list MirageOS-devel@xxxxxxxxxxxxxxxxxxxx http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
_______________________________________________ MirageOS-devel mailing list MirageOS-devel@xxxxxxxxxxxxxxxxxxxx http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel
|