Merge pull request #5714 from alexischr/update_bockbuild
[mono.git] / scripts / mono-test-install
index 91d4d84aee5bf70cca9a408bdfa06c40937f538c..3c1f74a88924a472fad802fc33de358e0e1faddb 100755 (executable)
@@ -1,4 +1,4 @@
-#!/bin/sh
+#!/usr/bin/env bash
 #
 # Does various checks for people that we can use to diagnose
 # an end user installation
@@ -41,7 +41,6 @@ if pkg-config --modversion mono >& /dev/null; then
            echo "       than the Mono found:"
            echo "       Mono on PATH: $monocmd"
            echo "       Mono from pkg-config: $pkg_config_mono"
-           exit 1
        fi
 else 
         echo "Warning: pkg-config could not find mono installed on this system"
@@ -147,3 +146,32 @@ else
     echo Failed to compile sample System.Drawing program, your installation is broken
     exit 1
 fi
+
+cat > $temp_cs <<EOF
+using System;
+using System.Reflection;
+using System.IO;
+
+class Program {
+
+    public static void Main()
+    {
+        object watcher = new FileSystemWatcher()
+            .GetType ()
+            .GetField ("watcher", BindingFlags.NonPublic | BindingFlags.Static)
+            .GetValue (null);
+        
+        Console.WriteLine ("Your file system watcher is: {0}",
+                   watcher != null
+                   ? watcher.GetType ().FullName
+                   : "unknown");
+    }
+}
+EOF
+
+if mcs $temp_cs >& /dev/null; then
+    mono $temp_exe
+else
+    echo Failed to compile sample test program, your installation is broken
+    exit 1
+fi