source: release-kits/lirk3/resources/gs3-release-maker/apache-ant-1.6.5/docs/manual/platform.html@ 14982

Last change on this file since 14982 was 14982, checked in by oranfry, 16 years ago

initial import of LiRK3

File size: 5.4 KB
Line 
1<html>
2
3<head>
4<meta http-equiv="Content-Language" content="en-us">
5<title>Platform Issues</title>
6<link rel="stylesheet" type="text/css" href="stylesheets/antmanual.css">
7</head>
8
9<h1>Platform Issues</h1>
10
11
12<h2>Unix</h2>
13
14<ul>
15<li> You should use a GNU version of <tt>tar</tt> to untar the ant source tree,
16if you have downloaded this as a tar file.
17</li>
18<li> Ant does not preserve file permissions when a file is copied, moved or
19archived, because Java does not let it read or write the permissions.
20 Use <tt>&lt;chmod&gt;</tt> to set permissions, and when creating a
21tar archive, use the <tt>mode</tt> attribute of <tt>&lt;tarfileset&gt;</tt>
22to set the permissions in the tar file, or <code>&lt;apply&gt;</code> the real tar program.
23</li>
24<li> Ant is not symbolic link aware in moves, deletes and when recursing down a tree
25of directories to build up a list of files. Unexpected things can happen.
26</ul>
27
28<h2>Microsoft Windows</h2>
29
30Windows 9x (win95, win98, win98SE and winME) has a batch file system which
31does not work fully with long file names, so we recommend that ant and the JDK
32are installed into directories without spaces, and with 8.3 filenames.
33The Perl and Python launcher scripts do not suffer from this limitation.
34
35<p>
36All versions of windows are usually case insensitive, although mounted
37file systems (Unix drives, Clearcase views) can be case sensitive underneath,
38confusing patternsets.
39
40<p>
41Ant can often not delete a directory which is open in an Explorer window.
42There is nothing we can do about this short of spawning a program to kill
43the shell before deleting directories.
44
45<h2>Cygwin</h2>
46
47Cygwin is not really an operating system; rather it is an application suite
48running under Windows and providing some UNIX like functionality. AFAIK, Sun did
49not create any specific Java Development Kit or Java Runtime Environment for
50cygwin. See this link :
51<a href="http://www.inonit.com/cygwin/faq/">http://www.inonit.com/cygwin/faq/</a> .
52Only Windows path
53names are supported by JDK and JRE tools under Windows or cygwin. Relative path
54names such as "src/org/apache/tools" are supported, but Java tools do not
55understand /cygdrive/c to mean c:\.
56<p>
57The utility cygpath (used industrially in the ant script to support cygwin) can
58convert cygwin path names to Windows.
59You can use the <exec/> task in ant to convert cygwin paths to Windows path, for
60instance like that :
61<pre>
62&lt;property name=&quot;some.cygwin.path&quot; value=&quot;/cygdrive/h/somepath&quot;/&gt;
63&lt;exec executable=&quot;cygpath&quot; outputproperty=&quot;windows.pathname&quot;&gt;
64 &lt;arg value=&quot;--windows&quot;/&gt;
65 &lt;arg value=&quot;${some.cygwin.path}&quot;/&gt;
66&lt;/exec&gt;
67&lt;echo message=&quot;${windows.pathname}&quot;/&gt;
68</pre>
69
70<h2>Apple MacOS X</h2>
71
72MacOS X is the first of the Apple platforms that Ant supports completely;
73it is treated like any other Unix.
74
75<h2>Novell Netware</h2>
76
77<p>To give the same level of sophisticated control as Ant's startup scripts on other platforms, it was decided to make the main ant startup on NetWare be via a Perl Script, "runant.pl". This is found in the bin directory (for instance - bootstrap\bin or dist\bin).</p>
78
79<p>One important item of note is that you need to set up the following to run ant:</p>
80<ul><li><code>CLASSPATH</code> - put ant.jar, xercesImpl.jar, xml-apis.jar and any other needed jars on the system classpath.</li>
81 <li><code>ANT_OPTS</code> - On NetWare, <code>ANT_OPTS</code> needs to include a parameter of the form, <nobr>"-envCWD=<code>ANT_HOME</code>"</nobr>, with <code>ANT_HOME</code> being the fully expanded location of Ant, <b>not</b> an environment variable. This is due to the fact that the NetWare System Console has no notion of a current working directory.</li>
82</ul>
83<p>It is suggested that you create up an ant.ncf that sets up these parameters, and calls <code>perl ANT_HOME/dist/bin/runant.pl</code></p>
84<p>The following is an example of such an NCF file(assuming ant is installed in <nobr>'sys:/apache-ant/'):</nobr></p>
85<code>
86 &nbsp;&nbsp;&nbsp;envset CLASSPATH=SYS:/apache-ant/bootstrap/lib/ant.jar<br />
87 &nbsp;&nbsp;&nbsp;envset CLASSPATH=$CLASSPATH;SYS:/apache-ant/lib/xercesImpl.jar <br />
88 &nbsp;&nbsp;&nbsp;envset CLASSPATH=$CLASSPATH;SYS:/apache-ant/lib/xml-apis.jar <br />
89 &nbsp;&nbsp;&nbsp;envset CLASSPATH=$CLASSPATH;SYS:/apache-ant/lib/optional/junit.jar <br />
90 &nbsp;&nbsp;&nbsp;envset CLASSPATH=$CLASSPATH;SYS:/apache-ant/bootstrap/lib/optional.jar <br />
91<br />
92 &nbsp;&nbsp;&nbsp;setenv ANT_OPTS=-envCWD=sys:/apache-ant <br />
93 &nbsp;&nbsp;&nbsp;envset ANT_OPTS=-envCWD=sys:/apache-ant <br />
94 &nbsp;&nbsp;&nbsp;setenv ANT_HOME=sys:/apache-ant/dist/lib <br />
95 &nbsp;&nbsp;&nbsp;envset ANT_HOME=sys:/apache-ant/dist/lib <br />
96<br />
97 &nbsp;&nbsp;&nbsp;perl sys:/apache-ant/dist/bin/runant.pl <br />
98</code>
99
100<p>Ant works on JVM version 1.3 or higher. You may have some luck running it on JVM 1.2, but serious problems have been found running Ant on JVM 1.1.7B. These problems are caused by JVM bugs that will not be fixed.</p>
101<p>JVM 1.3 is supported on Novell NetWare versions 5.1 and higher.</p>
102
103
104<h2>Other platforms</h2>
105Support for other platforms is not guaranteed to be complete, as certain
106techniques to hide platform details from build files need to be written and
107tested on every particular platform. Contributions in this area are welcome.
108
109<hr>
110<p align="center">Copyright &copy; 2002-2004 The Apache Software Foundation. All rights
111Reserved.</p>
112</html>
Note: See TracBrowser for help on using the repository browser.