]> git.saurik.com Git - apple/ld64.git/blobdiff - FireOpal/unit-tests/bin/exit-non-zero-pass.pl
ld64-85.2.1.tar.gz
[apple/ld64.git] / FireOpal / unit-tests / bin / exit-non-zero-pass.pl
diff --git a/FireOpal/unit-tests/bin/exit-non-zero-pass.pl b/FireOpal/unit-tests/bin/exit-non-zero-pass.pl
new file mode 100755 (executable)
index 0000000..fcc65eb
--- /dev/null
@@ -0,0 +1,27 @@
+#!/usr/bin/perl -w
+
+#
+# Usage:
+#
+#              ${PASS_UNLESS} "test name" command
+#
+
+use strict;
+
+my $string = shift @ARGV;
+my $ret = system(@ARGV);
+my $exit_value  = $ret >> 8;
+my $signal_num  = $ret & 127;
+my $dumped_core = $ret & 128;
+my $crashed  = $signal_num + $dumped_core;
+
+if(0 == $exit_value || 0 != $crashed)
+{
+    printf("FAIL $string\n");
+}
+else
+{
+    printf("PASS $string\n");
+}
+
+exit 0;