source: general/prog/apache-ant.xml@ 8fdbeef

11.3 12.0 12.1 kea ken/TL2024 ken/tuningfonts lazarus lxqt plabs/newcss python3.11 qt5new rahul/power-profiles-daemon renodr/vulkan-addition trunk xry111/llvm18 xry111/xf86-video-removal
Last change on this file since 8fdbeef was 8fdbeef, checked in by Bruce Dubbs <bdubbs@…>, 14 months ago

Fix apache-ant fetch.xml problem.

apache-ant tries to download NetRexx.zip from an IBM site
that no longer accepts annonymous ftp. We now host that
file on anduin.

  • Property mode set to 100644
File size: 11.6 KB
Line 
1<?xml version="1.0" encoding="ISO-8859-1"?>
2<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
3 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
4 <!ENTITY % general-entities SYSTEM "../../general.ent">
5 %general-entities;
6
7 <!ENTITY apache-ant-download-http "https://archive.apache.org/dist/ant/source/apache-ant-&apache-ant-version;-src.tar.xz">
8 <!ENTITY apache-ant-download-ftp " ">
9 <!ENTITY apache-ant-md5sum "4cf5c6728612f4787eda265b0a2d266b">
10 <!ENTITY apache-ant-size "3.7 MB">
11 <!ENTITY apache-ant-buildsize "242 MB">
12 <!ENTITY apache-ant-time "0.3 SBU (excluding download time)">
13]>
14
15<sect1 id="apache-ant" xreflabel="apache-ant-&apache-ant-version;">
16 <?dbhtml filename="apache-ant.html"?>
17
18
19 <title>apache-ant-&apache-ant-version;</title>
20
21 <indexterm zone="apache-ant">
22 <primary sortas="a-Apache-Ant">Apache Ant</primary>
23 </indexterm>
24
25 <sect2 role="package">
26 <title>Introduction to Apache Ant</title>
27
28 <para>
29 The <application>Apache Ant</application> package is a
30 <application>Java</application>-based build tool. In theory, it is
31 like the <command>make</command> command, but without
32 <command>make</command>'s wrinkles. <application>Ant</application> is
33 different. Instead of a model that is extended with shell-based commands,
34 <application>Ant</application> is extended using
35 <application>Java</application> classes. Instead of writing shell
36 commands, the configuration files are XML-based, calling out a target
37 tree that executes various tasks. Each task is run by an object that
38 implements a particular task interface.
39 </para>
40
41 &lfs113_checked;
42
43 <bridgehead renderas="sect3">Package Information</bridgehead>
44 <itemizedlist spacing="compact">
45 <listitem>
46 <para>
47 Download (HTTP): <ulink url="&apache-ant-download-http;"/>
48 </para>
49 </listitem>
50 <listitem>
51 <para>
52 Download (FTP): <ulink url="&apache-ant-download-ftp;"/>
53 </para>
54 </listitem>
55 <listitem>
56 <para>
57 Download MD5 sum: &apache-ant-md5sum;
58 </para>
59 </listitem>
60 <listitem>
61 <para>
62 Download size: &apache-ant-size;
63 </para>
64 </listitem>
65 <listitem>
66 <para>
67 Estimated disk space required: &apache-ant-buildsize;
68 </para>
69 </listitem>
70 <listitem>
71 <para>
72 Estimated build time: &apache-ant-time;
73 </para>
74 </listitem>
75 </itemizedlist>
76<!--
77 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
78 <itemizedlist spacing="compact">
79 <listitem>
80 <para>
81 Required file: <ulink
82 url="https://repository.jboss.org/nexus/content/repositories/thirdparty-releases/javax/media/jai-core/1.1.3/jai-core-1.1.3.jar"/>
83 </para>
84 </listitem>
85 <listitem>
86 <para>
87 Required file: <ulink
88 url="https://repository.jboss.org/nexus/content/repositories/thirdparty-releases/com/sun/media/jai-codec/1.1.3/jai-codec-1.1.3.jar"/>
89 </para>
90 </listitem>
91 <listitem>
92 <para>
93 Required file: <ulink
94 url="http://central.maven.org/maven2/org/tukaani/xz/1.0/xz-1.0.jar"/>
95 </para>
96 </listitem>
97 <listitem>
98 <para>
99 Required file: <ulink
100 url="http://www.netrexx.org/files/NetRexx-3.06-GA.zip"/>
101 </para>
102 </listitem>
103 </itemizedlist>
104-->
105 <bridgehead renderas="sect3">Apache Ant Dependencies</bridgehead>
106
107 <bridgehead renderas="sect4">Required</bridgehead>
108 <para role="required">
109 A JDK (<xref linkend="java-bin"/> or <xref linkend="openjdk"/>) and
110 <xref linkend="glib2"/>
111 </para>
112
113<!-- <bridgehead renderas="sect4">Recommended</bridgehead>
114 <para role="recommended">
115 <xref linkend="junit"/>
116 </para>
117-->
118 <para condition="html" role="usernotes">User Notes:
119 <ulink url="&blfs-wiki;/apache-ant"/></para>
120
121 </sect2>
122
123 <sect2 role="installation">
124 <title>Installation of Apache Ant</title>
125
126<!-- Not needed with 1.10.10
127 <para>
128 First fix an incompatibility issue between the documentation standard
129 used in the build tree, and the one expected by <xref
130 linkend="openjdk"/>:
131 </para>
132
133<screen><userinput>sed -i 's/- -add-modules java.activation/-html4/' build.xml</userinput></screen>
134-->
135
136 <para>
137 Build a limited bootstrap version of <application>Apache
138 Ant</application> using the following command:
139 </para>
140
141<screen><userinput>./bootstrap.sh</userinput></screen>
142
143 <para>
144 Now fix a problem when the next command tries to download a file from
145 a problem site:
146 </para>
147
148<screen><userinput>sed -e 's|ftp.software.ibm.com|anduin.linuxfromscratch.org|' \
149 -e 's|software/awdtools/netrexx|BLFS/apache-ant|' \
150 -i fetch.xml </userinput></screen>
151
152 <para>
153 Download the runtime dependencies using the
154 <filename>fetch.xml</filename> ant build script:
155 </para>
156
157<screen><userinput>bootstrap/bin/ant -f fetch.xml -Ddest=optional</userinput></screen>
158
159 <para>
160 Build <application>Apache Ant</application> by running the following
161 command:
162 </para>
163
164<screen><userinput>./build.sh -Ddist.dir=$PWD/ant-&apache-ant-version; dist</userinput></screen>
165
166 <para>
167 Install, as the <systemitem class="username">root</systemitem> user:
168 </para>
169
170<screen role="root"><userinput>cp -rv ant-&apache-ant-version; /opt/ &amp;&amp;
171chown -R root:root /opt/ant-&apache-ant-version; &amp;&amp;
172ln -sfv ant-&apache-ant-version; /opt/ant</userinput></screen>
173
174 </sect2>
175
176 <sect2 role="commands">
177 <title>Command Explanations</title>
178
179 <para>
180 <command>bootstrap/bin/ant -f fetch.xml -Ddest=optional</command>:
181 Downloads the missing dependencies to the user's home directory, and
182 copies them into the source tree (in the <filename>lib/optional</filename>
183 directory, where <command>ant</command> picks them up at build time).
184 </para>
185
186 <para>
187 <command>./build.sh -Ddist.dir=$PWD/ant-&apache-ant-version;
188 dist</command>: This command builds, tests, then installs the package
189 into a temporary directory.
190 </para>
191
192 </sect2>
193
194 <sect2 role="configuration">
195 <title>Configuring Apache Ant</title>
196
197 <sect3 id="apache-ant-config">
198 <title>Config Files</title>
199
200 <para>
201 <filename>/etc/ant/ant.conf</filename>,
202 <filename>~/.ant/ant.conf</filename>, and
203 <filename>~/.antrc</filename>
204 </para>
205
206 <indexterm zone="apache-ant apache-ant-config">
207 <primary sortas="e-AA.ant-ant.conf">~/.ant/ant.conf</primary>
208 </indexterm>
209
210 <indexterm zone="apache-ant apache-ant-config">
211 <primary sortas="e-AA.antrc">~/.antrc</primary>
212 </indexterm>
213
214 <indexterm zone="apache-ant apache-ant-config">
215 <primary sortas="e-etc-ant-ant.conf">/etc/ant/ant.conf</primary>
216 </indexterm>
217
218 </sect3>
219
220 <sect3>
221 <title>Configuration Information</title>
222
223 <para>
224 Some packages will require <command>ant</command> to be in the
225 search path and the <envar>ANT_HOME</envar> environment variable
226 defined. Satisfy these requirements by issuing, as the <systemitem
227 class="username">root</systemitem> user:
228 </para>
229
230<screen role="root"><userinput>cat &gt; /etc/profile.d/ant.sh &lt;&lt; EOF
231<literal># Begin /etc/profile.d/ant.sh
232
233pathappend /opt/ant/bin
234export ANT_HOME=/opt/ant
235
236# End /etc/profile.d/ant.sh</literal>
237EOF</userinput></screen>
238
239 <para>
240 The above instructions assume you have configured your system as
241 described in <xref linkend="postlfs-config-profile"/>.
242 </para>
243
244 </sect3>
245
246 </sect2>
247
248 <sect2 role="content">
249 <title>Contents</title>
250
251 <segmentedlist>
252 <segtitle>Installed Programs</segtitle>
253 <segtitle>Installed Libraries</segtitle>
254 <segtitle>Installed Directories</segtitle>
255
256 <seglistitem>
257 <seg>
258 ant, antRun, antRun.pl, complete-ant-cmd.pl, runant.pl, and runant.py </seg>
259 <seg>
260 Numerous <filename>ant*.jar</filename> and dependent libraries in
261 <envar>$ANT_HOME</envar><filename>/lib</filename>
262 </seg>
263 <seg>/opt/ant-&apache-ant-version;</seg>
264 </seglistitem>
265 </segmentedlist>
266
267 <variablelist>
268 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
269 <?dbfo list-presentation="list"?>
270 <?dbhtml list-presentation="table"?>
271
272 <varlistentry id="ant">
273 <term><command>ant</command></term>
274 <listitem>
275 <para>
276 is a <application>Java</application> based build tool used by
277 many packages instead of the conventional <command>make</command>
278 program
279 </para>
280 <indexterm zone="apache-ant ant">
281 <primary sortas="b-ant">ant</primary>
282 </indexterm>
283 </listitem>
284 </varlistentry>
285
286 <varlistentry id="antRun">
287 <term><command>antRun</command></term>
288 <listitem>
289 <para>
290 is a support script used to start <command>ant</command>
291 build scripts in a given directory
292 </para>
293 <indexterm zone="apache-ant antRun">
294 <primary sortas="b-antRun">antRun</primary>
295 </indexterm>
296 </listitem>
297 </varlistentry>
298
299 <varlistentry id="antRun.pl">
300 <term><command>antRun.pl</command></term>
301 <listitem>
302 <para>
303 is a <application>Perl</application> script that provides similar
304 functionality offered by the <command>antRun</command> script
305 </para>
306 <indexterm zone="apache-ant antRun.pl">
307 <primary sortas="b-antRun.pl">antRun.pl</primary>
308 </indexterm>
309 </listitem>
310 </varlistentry>
311
312 <varlistentry id="complete-ant-cmd.pl">
313 <term><command>complete-ant-cmd.pl</command></term>
314 <listitem>
315 <para>
316 is a <application>Perl</application> script that allows
317 <application>Bash</application> to complete an
318 <command>ant</command> command-line
319 </para>
320 <indexterm zone="apache-ant complete-ant-cmd.pl">
321 <primary sortas="b-complete-ant-cmd.pl">complete-ant-cmd.pl</primary>
322 </indexterm>
323 </listitem>
324 </varlistentry>
325
326 <varlistentry id="runant.pl">
327 <term><command>runant.pl</command></term>
328 <listitem>
329 <para>
330 is a <application>Perl</application> wrapper script used to
331 invoke <command>ant</command>
332 </para>
333 <indexterm zone="apache-ant runant.pl">
334 <primary sortas="b-runant.pl">runant.pl</primary>
335 </indexterm>
336 </listitem>
337 </varlistentry>
338
339 <varlistentry id="runant.py">
340 <term><command>runant.py</command></term>
341 <listitem>
342 <para>
343 is a <application>Python</application> wrapper script used to
344 invoke <command>ant</command>
345 </para>
346 <indexterm zone="apache-ant runant.py">
347 <primary sortas="b-runant.py">runant.py</primary>
348 </indexterm>
349 </listitem>
350 </varlistentry>
351
352 <varlistentry id="ant-star">
353 <term><filename class="libraryfile">ant*.jar</filename></term>
354 <listitem>
355 <para>
356 files are the <application>Apache Ant</application>
357 <application>Java</application> class libraries
358 </para>
359 <indexterm zone="apache-ant ant-star">
360 <primary sortas="c-ant-star">ant-*.jar</primary>
361 </indexterm>
362 </listitem>
363 </varlistentry>
364
365 </variablelist>
366
367 </sect2>
368
369</sect1>
Note: See TracBrowser for help on using the repository browser.