mirror of
https://github.com/Zeckmathederg/glfs.git
synced 2025-01-27 09:42:12 +08:00
8fdbeef95c
apache-ant tries to download NetRexx.zip from an IBM site that no longer accepts annonymous ftp. We now host that file on anduin.
370 lines
12 KiB
XML
370 lines
12 KiB
XML
<?xml version="1.0" encoding="ISO-8859-1"?>
|
|
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
|
|
<!ENTITY % general-entities SYSTEM "../../general.ent">
|
|
%general-entities;
|
|
|
|
<!ENTITY apache-ant-download-http "https://archive.apache.org/dist/ant/source/apache-ant-&apache-ant-version;-src.tar.xz">
|
|
<!ENTITY apache-ant-download-ftp " ">
|
|
<!ENTITY apache-ant-md5sum "4cf5c6728612f4787eda265b0a2d266b">
|
|
<!ENTITY apache-ant-size "3.7 MB">
|
|
<!ENTITY apache-ant-buildsize "242 MB">
|
|
<!ENTITY apache-ant-time "0.3 SBU (excluding download time)">
|
|
]>
|
|
|
|
<sect1 id="apache-ant" xreflabel="apache-ant-&apache-ant-version;">
|
|
<?dbhtml filename="apache-ant.html"?>
|
|
|
|
|
|
<title>apache-ant-&apache-ant-version;</title>
|
|
|
|
<indexterm zone="apache-ant">
|
|
<primary sortas="a-Apache-Ant">Apache Ant</primary>
|
|
</indexterm>
|
|
|
|
<sect2 role="package">
|
|
<title>Introduction to Apache Ant</title>
|
|
|
|
<para>
|
|
The <application>Apache Ant</application> package is a
|
|
<application>Java</application>-based build tool. In theory, it is
|
|
like the <command>make</command> command, but without
|
|
<command>make</command>'s wrinkles. <application>Ant</application> is
|
|
different. Instead of a model that is extended with shell-based commands,
|
|
<application>Ant</application> is extended using
|
|
<application>Java</application> classes. Instead of writing shell
|
|
commands, the configuration files are XML-based, calling out a target
|
|
tree that executes various tasks. Each task is run by an object that
|
|
implements a particular task interface.
|
|
</para>
|
|
|
|
&lfs113_checked;
|
|
|
|
<bridgehead renderas="sect3">Package Information</bridgehead>
|
|
<itemizedlist spacing="compact">
|
|
<listitem>
|
|
<para>
|
|
Download (HTTP): <ulink url="&apache-ant-download-http;"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download (FTP): <ulink url="&apache-ant-download-ftp;"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download MD5 sum: &apache-ant-md5sum;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Download size: &apache-ant-size;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Estimated disk space required: &apache-ant-buildsize;
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Estimated build time: &apache-ant-time;
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
<!--
|
|
<bridgehead renderas="sect3">Additional Downloads</bridgehead>
|
|
<itemizedlist spacing="compact">
|
|
<listitem>
|
|
<para>
|
|
Required file: <ulink
|
|
url="https://repository.jboss.org/nexus/content/repositories/thirdparty-releases/javax/media/jai-core/1.1.3/jai-core-1.1.3.jar"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Required file: <ulink
|
|
url="https://repository.jboss.org/nexus/content/repositories/thirdparty-releases/com/sun/media/jai-codec/1.1.3/jai-codec-1.1.3.jar"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Required file: <ulink
|
|
url="http://central.maven.org/maven2/org/tukaani/xz/1.0/xz-1.0.jar"/>
|
|
</para>
|
|
</listitem>
|
|
<listitem>
|
|
<para>
|
|
Required file: <ulink
|
|
url="http://www.netrexx.org/files/NetRexx-3.06-GA.zip"/>
|
|
</para>
|
|
</listitem>
|
|
</itemizedlist>
|
|
-->
|
|
<bridgehead renderas="sect3">Apache Ant Dependencies</bridgehead>
|
|
|
|
<bridgehead renderas="sect4">Required</bridgehead>
|
|
<para role="required">
|
|
A JDK (<xref linkend="java-bin"/> or <xref linkend="openjdk"/>) and
|
|
<xref linkend="glib2"/>
|
|
</para>
|
|
|
|
<!-- <bridgehead renderas="sect4">Recommended</bridgehead>
|
|
<para role="recommended">
|
|
<xref linkend="junit"/>
|
|
</para>
|
|
-->
|
|
<para condition="html" role="usernotes">User Notes:
|
|
<ulink url="&blfs-wiki;/apache-ant"/></para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="installation">
|
|
<title>Installation of Apache Ant</title>
|
|
|
|
<!-- Not needed with 1.10.10
|
|
<para>
|
|
First fix an incompatibility issue between the documentation standard
|
|
used in the build tree, and the one expected by <xref
|
|
linkend="openjdk"/>:
|
|
</para>
|
|
|
|
<screen><userinput>sed -i 's/- -add-modules java.activation/-html4/' build.xml</userinput></screen>
|
|
-->
|
|
|
|
<para>
|
|
Build a limited bootstrap version of <application>Apache
|
|
Ant</application> using the following command:
|
|
</para>
|
|
|
|
<screen><userinput>./bootstrap.sh</userinput></screen>
|
|
|
|
<para>
|
|
Now fix a problem when the next command tries to download a file from
|
|
a problem site:
|
|
</para>
|
|
|
|
<screen><userinput>sed -e 's|ftp.software.ibm.com|anduin.linuxfromscratch.org|' \
|
|
-e 's|software/awdtools/netrexx|BLFS/apache-ant|' \
|
|
-i fetch.xml </userinput></screen>
|
|
|
|
<para>
|
|
Download the runtime dependencies using the
|
|
<filename>fetch.xml</filename> ant build script:
|
|
</para>
|
|
|
|
<screen><userinput>bootstrap/bin/ant -f fetch.xml -Ddest=optional</userinput></screen>
|
|
|
|
<para>
|
|
Build <application>Apache Ant</application> by running the following
|
|
command:
|
|
</para>
|
|
|
|
<screen><userinput>./build.sh -Ddist.dir=$PWD/ant-&apache-ant-version; dist</userinput></screen>
|
|
|
|
<para>
|
|
Install, as the <systemitem class="username">root</systemitem> user:
|
|
</para>
|
|
|
|
<screen role="root"><userinput>cp -rv ant-&apache-ant-version; /opt/ &&
|
|
chown -R root:root /opt/ant-&apache-ant-version; &&
|
|
ln -sfv ant-&apache-ant-version; /opt/ant</userinput></screen>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="commands">
|
|
<title>Command Explanations</title>
|
|
|
|
<para>
|
|
<command>bootstrap/bin/ant -f fetch.xml -Ddest=optional</command>:
|
|
Downloads the missing dependencies to the user's home directory, and
|
|
copies them into the source tree (in the <filename>lib/optional</filename>
|
|
directory, where <command>ant</command> picks them up at build time).
|
|
</para>
|
|
|
|
<para>
|
|
<command>./build.sh -Ddist.dir=$PWD/ant-&apache-ant-version;
|
|
dist</command>: This command builds, tests, then installs the package
|
|
into a temporary directory.
|
|
</para>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="configuration">
|
|
<title>Configuring Apache Ant</title>
|
|
|
|
<sect3 id="apache-ant-config">
|
|
<title>Config Files</title>
|
|
|
|
<para>
|
|
<filename>/etc/ant/ant.conf</filename>,
|
|
<filename>~/.ant/ant.conf</filename>, and
|
|
<filename>~/.antrc</filename>
|
|
</para>
|
|
|
|
<indexterm zone="apache-ant apache-ant-config">
|
|
<primary sortas="e-AA.ant-ant.conf">~/.ant/ant.conf</primary>
|
|
</indexterm>
|
|
|
|
<indexterm zone="apache-ant apache-ant-config">
|
|
<primary sortas="e-AA.antrc">~/.antrc</primary>
|
|
</indexterm>
|
|
|
|
<indexterm zone="apache-ant apache-ant-config">
|
|
<primary sortas="e-etc-ant-ant.conf">/etc/ant/ant.conf</primary>
|
|
</indexterm>
|
|
|
|
</sect3>
|
|
|
|
<sect3>
|
|
<title>Configuration Information</title>
|
|
|
|
<para>
|
|
Some packages will require <command>ant</command> to be in the
|
|
search path and the <envar>ANT_HOME</envar> environment variable
|
|
defined. Satisfy these requirements by issuing, as the <systemitem
|
|
class="username">root</systemitem> user:
|
|
</para>
|
|
|
|
<screen role="root"><userinput>cat > /etc/profile.d/ant.sh << EOF
|
|
<literal># Begin /etc/profile.d/ant.sh
|
|
|
|
pathappend /opt/ant/bin
|
|
export ANT_HOME=/opt/ant
|
|
|
|
# End /etc/profile.d/ant.sh</literal>
|
|
EOF</userinput></screen>
|
|
|
|
<para>
|
|
The above instructions assume you have configured your system as
|
|
described in <xref linkend="postlfs-config-profile"/>.
|
|
</para>
|
|
|
|
</sect3>
|
|
|
|
</sect2>
|
|
|
|
<sect2 role="content">
|
|
<title>Contents</title>
|
|
|
|
<segmentedlist>
|
|
<segtitle>Installed Programs</segtitle>
|
|
<segtitle>Installed Libraries</segtitle>
|
|
<segtitle>Installed Directories</segtitle>
|
|
|
|
<seglistitem>
|
|
<seg>
|
|
ant, antRun, antRun.pl, complete-ant-cmd.pl, runant.pl, and runant.py </seg>
|
|
<seg>
|
|
Numerous <filename>ant*.jar</filename> and dependent libraries in
|
|
<envar>$ANT_HOME</envar><filename>/lib</filename>
|
|
</seg>
|
|
<seg>/opt/ant-&apache-ant-version;</seg>
|
|
</seglistitem>
|
|
</segmentedlist>
|
|
|
|
<variablelist>
|
|
<bridgehead renderas="sect3">Short Descriptions</bridgehead>
|
|
<?dbfo list-presentation="list"?>
|
|
<?dbhtml list-presentation="table"?>
|
|
|
|
<varlistentry id="ant">
|
|
<term><command>ant</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a <application>Java</application> based build tool used by
|
|
many packages instead of the conventional <command>make</command>
|
|
program
|
|
</para>
|
|
<indexterm zone="apache-ant ant">
|
|
<primary sortas="b-ant">ant</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="antRun">
|
|
<term><command>antRun</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a support script used to start <command>ant</command>
|
|
build scripts in a given directory
|
|
</para>
|
|
<indexterm zone="apache-ant antRun">
|
|
<primary sortas="b-antRun">antRun</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="antRun.pl">
|
|
<term><command>antRun.pl</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a <application>Perl</application> script that provides similar
|
|
functionality offered by the <command>antRun</command> script
|
|
</para>
|
|
<indexterm zone="apache-ant antRun.pl">
|
|
<primary sortas="b-antRun.pl">antRun.pl</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="complete-ant-cmd.pl">
|
|
<term><command>complete-ant-cmd.pl</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a <application>Perl</application> script that allows
|
|
<application>Bash</application> to complete an
|
|
<command>ant</command> command-line
|
|
</para>
|
|
<indexterm zone="apache-ant complete-ant-cmd.pl">
|
|
<primary sortas="b-complete-ant-cmd.pl">complete-ant-cmd.pl</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="runant.pl">
|
|
<term><command>runant.pl</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a <application>Perl</application> wrapper script used to
|
|
invoke <command>ant</command>
|
|
</para>
|
|
<indexterm zone="apache-ant runant.pl">
|
|
<primary sortas="b-runant.pl">runant.pl</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="runant.py">
|
|
<term><command>runant.py</command></term>
|
|
<listitem>
|
|
<para>
|
|
is a <application>Python</application> wrapper script used to
|
|
invoke <command>ant</command>
|
|
</para>
|
|
<indexterm zone="apache-ant runant.py">
|
|
<primary sortas="b-runant.py">runant.py</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry id="ant-star">
|
|
<term><filename class="libraryfile">ant*.jar</filename></term>
|
|
<listitem>
|
|
<para>
|
|
files are the <application>Apache Ant</application>
|
|
<application>Java</application> class libraries
|
|
</para>
|
|
<indexterm zone="apache-ant ant-star">
|
|
<primary sortas="c-ant-star">ant-*.jar</primary>
|
|
</indexterm>
|
|
</listitem>
|
|
</varlistentry>
|
|
|
|
</variablelist>
|
|
|
|
</sect2>
|
|
|
|
</sect1>
|