src/Pure/System/cygwin.scala
changeset 52553 d5d150d159ad
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/Pure/System/cygwin.scala	Sun Jul 07 22:58:34 2013 +0200
@@ -0,0 +1,31 @@
+/*  Title:      Pure/System/cygwin.scala
+    Author:     Makarius
+
+Support for Cygwin.
+*/
+
+package isabelle
+
+
+import java.io.{File => JFile}
+import java.nio.file.{Paths, Files}
+
+
+object Cygwin
+{
+  /* symlinks */
+
+  def write_symlink(file: JFile, content: String)
+  {
+    require(Platform.is_windows)
+
+    val path = file.toPath
+
+    val writer = Files.newBufferedWriter(path, UTF8.charset)
+    try { writer.write("!<symlink>" + content + "\0") }
+    finally { writer.close }
+
+    Files.setAttribute(path, "dos:system", true)
+  }
+}
+