Import Upstream version 20180207
[hcoop/debian/mlton.git] / doc / guide / localhost / MLBasisPathMap
CommitLineData
7f918cf1
CE
1<!DOCTYPE html>\r
2<html lang="en">\r
3<head>\r
4<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">\r
5<meta name="generator" content="AsciiDoc 8.6.9">\r
6<title>MLBasisPathMap</title>\r
7<link rel="stylesheet" href="./asciidoc.css" type="text/css">\r
8<link rel="stylesheet" href="./pygments.css" type="text/css">\r
9\r
10\r
11<script type="text/javascript" src="./asciidoc.js"></script>\r
12<script type="text/javascript">\r
13/*<![CDATA[*/\r
14asciidoc.install();\r
15/*]]>*/\r
16</script>\r
17<link rel="stylesheet" href="./mlton.css" type="text/css">\r
18</head>\r
19<body class="article">\r
20<div id="banner">\r
21<div id="banner-home">\r
22<a href="./Home">MLton 20180207</a>\r
23</div>\r
24</div>\r
25<div id="header">\r
26<h1>MLBasisPathMap</h1>\r
27</div>\r
28<div id="content">\r
29<div id="preamble">\r
30<div class="sectionbody">\r
31<div class="paragraph"><p>An <a href="MLBasis">ML Basis</a> <em>path map</em> describes a map from ML Basis path\r
32variables (of the form <span class="monospaced">$(VAR)</span>) to file system paths. ML Basis path\r
33variables provide a flexible way to refer to libraries while allowing\r
34them to be moved without changing their clients.</p></div>\r
35<div class="paragraph"><p>The format of an <span class="monospaced">mlb-path-map</span> file is a sequence of lines; each line\r
36consists of two, white-space delimited tokens. The first token is a\r
37path variable <span class="monospaced">VAR</span> and the second token is the path to which the\r
38variable is mapped. The path may include path variables, which are\r
39recursively expanded.</p></div>\r
40<div class="paragraph"><p>The mapping from path variables to paths is initialized by the compiler.\r
41Additional path maps can be specified with <span class="monospaced">-mlb-path-map</span> and\r
42individual path variable mappings can be specified with\r
43<span class="monospaced">-mlb-path-var</span> (see <a href="CompileTimeOptions">CompileTimeOptions</a>). Configuration files are\r
44processed from first to last and from top to bottom, later mappings\r
45take precedence over earlier mappings.</p></div>\r
46<div class="paragraph"><p>The compiler and system-wide configuration file makes the following\r
47path variables available.</p></div>\r
48<table class="tableblock frame-all grid-all"\r
49style="\r
50width:100%;\r
51">\r
52<col style="width:25%;">\r
53<col style="width:75%;">\r
54<thead>\r
55<tr>\r
56<th class="tableblock halign-center valign-top" >MLB path variable</th>\r
57<th class="tableblock halign-left valign-top" >Description</th>\r
58</tr>\r
59</thead>\r
60<tbody>\r
61<tr>\r
62<td class="tableblock halign-center valign-top" ><p class="tableblock"><span class="monospaced">SML_LIB</span></p></td>\r
63<td class="tableblock halign-left valign-top" ><p class="tableblock">path to system-wide libraries, usually <span class="monospaced">/usr/lib/mlton/sml</span></p></td>\r
64</tr>\r
65<tr>\r
66<td class="tableblock halign-center valign-top" ><p class="tableblock"><span class="monospaced">TARGET_ARCH</span></p></td>\r
67<td class="tableblock halign-left valign-top" ><p class="tableblock">string representation of target architecture</p></td>\r
68</tr>\r
69<tr>\r
70<td class="tableblock halign-center valign-top" ><p class="tableblock"><span class="monospaced">TARGET_OS</span></p></td>\r
71<td class="tableblock halign-left valign-top" ><p class="tableblock">string representation of target operating system</p></td>\r
72</tr>\r
73<tr>\r
74<td class="tableblock halign-center valign-top" ><p class="tableblock"><span class="monospaced">DEFAULT_INT</span></p></td>\r
75<td class="tableblock halign-left valign-top" ><p class="tableblock">binding for default int, usually <span class="monospaced">int32</span></p></td>\r
76</tr>\r
77<tr>\r
78<td class="tableblock halign-center valign-top" ><p class="tableblock"><span class="monospaced">DEFAULT_WORD</span></p></td>\r
79<td class="tableblock halign-left valign-top" ><p class="tableblock">binding for default word, usually <span class="monospaced">word32</span></p></td>\r
80</tr>\r
81<tr>\r
82<td class="tableblock halign-center valign-top" ><p class="tableblock"><span class="monospaced">DEFAULT_REAL</span></p></td>\r
83<td class="tableblock halign-left valign-top" ><p class="tableblock">binding for default real, usually <span class="monospaced">real64</span></p></td>\r
84</tr>\r
85</tbody>\r
86</table>\r
87</div>\r
88</div>\r
89</div>\r
90<div id="footnotes"><hr></div>\r
91<div id="footer">\r
92<div id="footer-text">\r
93</div>\r
94<div id="footer-badges">\r
95</div>\r
96</div>\r
97</body>\r
98</html>\r