summaryrefslogtreecommitdiff
path: root/makeint.h
diff options
context:
space:
mode:
authorHartmut Becker <becker.ismaning@freenet.de>2014-08-24 22:06:15 +0200
committerPaul Smith <psmith@gnu.org>2014-09-07 17:41:59 -0400
commit8de07f3e4a67fa1c9bd5293d183090ad08b7be6f (patch)
tree2214e65558248378dad06d192b14bbd051e38367 /makeint.h
parentf970315766906ed789656d87720328b5513e5942 (diff)
downloadgunmake-8de07f3e4a67fa1c9bd5293d183090ad08b7be6f.tar.gz
Enhance/fix VMS exit code handling.
* commands.c, function.c, hash.c, job.c, main.c, output.c: use MAKE exit codes. * makeint.h: encode make exit codes so that they are VMS compatible. * job.c: check child exit code for VMS style exit codes. * vmsjobs.c: save and return VMS style exit code.
Diffstat (limited to 'makeint.h')
-rw-r--r--makeint.h10
1 files changed, 7 insertions, 3 deletions
diff --git a/makeint.h b/makeint.h
index 5133cf1..2237077 100644
--- a/makeint.h
+++ b/makeint.h
@@ -630,10 +630,14 @@ extern int handling_fatal_signal;
#define MAX(_a,_b) ((_a)>(_b)?(_a):(_b))
#endif
+
#ifdef VMS
-# define MAKE_SUCCESS 1
-# define MAKE_TROUBLE 2
-# define MAKE_FAILURE 3
+/* These are the VMS __posix_exit compliant exit codes, constructed out of
+ STS$M_INHIB_MSG, C facility code, a POSIX condition code mask, MAKE_NNN<<3 and
+ the coresponding VMS severity, here STS$K_SUCCESS and STS$K_ERROR. */
+# define MAKE_SUCCESS 0x1035a001
+# define MAKE_TROUBLE 0x1035a00a
+# define MAKE_FAILURE 0x1035a012
#else
# define MAKE_SUCCESS 0
# define MAKE_TROUBLE 1