Import Upstream version 20180207
[hcoop/debian/mlton.git] / doc / guide / src / RunningOnMinGW.adoc
1 RunningOnMinGW
2 ==============
3
4 MLton runs on http://mingw.org[MinGW], a library for porting Unix
5 applications to Windows. Some library functionality is missing or
6 changed.
7
8 == Notes ==
9
10 * To compile MLton on MinGW:
11 ** The <:GnuMP:> library is required.
12 ** The Bash shell is required. If you are using a prebuilt MSYS, you
13 probably want to symlink `bash` to `sh`.
14
15 == Known issues ==
16
17 * Many functions are unimplemented and will `raise SysErr`.
18 ** `MLton.Itimer.set`
19 ** `MLton.ProcEnv.setgroups`
20 ** `MLton.Process.kill`
21 ** `MLton.Process.reap`
22 ** `MLton.World.load`
23 ** `OS.FileSys.readLink`
24 ** `OS.IO.poll`
25 ** `OS.Process.terminate`
26 ** `Posix.FileSys.chown`
27 ** `Posix.FileSys.fchown`
28 ** `Posix.FileSys.fpathconf`
29 ** `Posix.FileSys.link`
30 ** `Posix.FileSys.mkfifo`
31 ** `Posix.FileSys.pathconf`
32 ** `Posix.FileSys.readlink`
33 ** `Posix.FileSys.symlink`
34 ** `Posix.IO.dupfd`
35 ** `Posix.IO.getfd`
36 ** `Posix.IO.getfl`
37 ** `Posix.IO.getlk`
38 ** `Posix.IO.setfd`
39 ** `Posix.IO.setfl`
40 ** `Posix.IO.setlkw`
41 ** `Posix.IO.setlk`
42 ** `Posix.ProcEnv.ctermid`
43 ** `Posix.ProcEnv.getegid`
44 ** `Posix.ProcEnv.geteuid`
45 ** `Posix.ProcEnv.getgid`
46 ** `Posix.ProcEnv.getgroups`
47 ** `Posix.ProcEnv.getlogin`
48 ** `Posix.ProcEnv.getpgrp`
49 ** `Posix.ProcEnv.getpid`
50 ** `Posix.ProcEnv.getppid`
51 ** `Posix.ProcEnv.getuid`
52 ** `Posix.ProcEnv.setgid`
53 ** `Posix.ProcEnv.setpgid`
54 ** `Posix.ProcEnv.setsid`
55 ** `Posix.ProcEnv.setuid`
56 ** `Posix.ProcEnv.sysconf`
57 ** `Posix.ProcEnv.times`
58 ** `Posix.ProcEnv.ttyname`
59 ** `Posix.Process.exece`
60 ** `Posix.Process.execp`
61 ** `Posix.Process.exit`
62 ** `Posix.Process.fork`
63 ** `Posix.Process.kill`
64 ** `Posix.Process.pause`
65 ** `Posix.Process.waitpid_nh`
66 ** `Posix.Process.waitpid`
67 ** `Posix.SysDB.getgrgid`
68 ** `Posix.SysDB.getgrnam`
69 ** `Posix.SysDB.getpwuid`
70 ** `Posix.TTY.TC.drain`
71 ** `Posix.TTY.TC.flow`
72 ** `Posix.TTY.TC.flush`
73 ** `Posix.TTY.TC.getattr`
74 ** `Posix.TTY.TC.getpgrp`
75 ** `Posix.TTY.TC.sendbreak`
76 ** `Posix.TTY.TC.setattr`
77 ** `Posix.TTY.TC.setpgrp`
78 ** `Unix.kill`
79 ** `Unix.reap`
80 ** `UnixSock.fromAddr`
81 ** `UnixSock.toAddr`