source: archive/cargo.xml@ fa91d2e

11.0 ken/refactor-virt lazarus qt5new trunk
Last change on this file since fa91d2e was 45ab6c7, checked in by Xi Ruoyao <xry111@…>, 5 months ago

more SVN prop clean up

Remove "$LastChanged$" everywhere, and also some unused $Date$

  • Property mode set to 100644
File size: 8.4 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 cargo-download-http "https://github.com/rust-lang/cargo/archive/&cargo-version;/cargo-&cargo-version;.tar.gz">
8 <!ENTITY cargo-download-ftp " ">
9 <!ENTITY cargo-md5sum "c0bdbfdeead6a7cdfd7fbfe2183bfc61">
10 <!ENTITY cargo-size "624 KB">
11 <!ENTITY cargo-buildsize "129 MB plus extra 115 MB in ~/.cargo and 2.2GB for the testsuite">
12 <!ENTITY cargo-time "1.8 SBU plus 2.4 SBU for the testsuite on a machine with 4 cores">
13
14 <!-- RUSTIDATE is deined in packages.ent -->
15 <!-- temporarily at higgs so people can download it -->
16 <!ENTITY rusti-download-http "&sources-anduin-http;/rust/rust-installer-&RUSTIDATE;.tar.xz">
17 <!ENTITY rusti-md5sum "8fb6c87f12d735b0a8bc1304d7640c69">
18 <!ENTITY rusti-size "18 KB">
19
20 <!-- similarly, CARGOPREV is defined in packages.ent -->
21 <!ENTITY cargoprev64-download-http "https://static.rust-lang.org/dist/cargo-&CARGOPREV;-x86_64-unknown-linux-gnu.tar.gz">
22 <!ENTITY cargoprev64-md5sum "ad2b513d591f35271f1041e2e04f484c">
23 <!ENTITY cargoprev64-size "4.4 MB">
24 <!ENTITY cargoprev32-download-http "https://static.rust-lang.org/dist/cargo-&CARGOPREV;-i686-unknown-linux-gnu.tar.gz">
25 <!ENTITY cargoprev32-md5sum "24d4eda62991bfbaecb3a6d1e09df143">
26 <!ENTITY cargoprev32-size "4.3 MB">
27]>
28
29<sect1 id="cargo" xreflabel="cargo-&cargo-version;">
30 <?dbhtml filename="cargo.html"?>
31
32 <sect1info>
33 <date>$Date$</date>
34 </sect1info>
35
36 <title>Cargo-&cargo-version;</title>
37
38 <indexterm zone="cargo">
39 <primary sortas="a-cargo">Cargo</primary>
40 </indexterm>
41
42 <sect2 role="package">
43 <title>Introduction to cargo</title>
44
45 <para>
46 <application>Cargo</application> is the Package Manager for
47 <application>Rust</application>. Like that, during the build it uses
48 <command>curl</command> to download <filename>cargo</filename> files
49 which are actually <filename>.tar.gz</filename> source archives.
50 </para>
51
52 <para>
53 This package requires internet access to build and at runtime (when
54 <command>rust</command> is compiling another package). It will use all
55 available cores. It also needs the current or previous version to compile
56 itself, so here a binary of the previous version is used to bootstrap.
57 </para>
58
59 &lfs80_checked;
60
61 <bridgehead renderas="sect3">Package Information</bridgehead>
62 <itemizedlist spacing="compact">
63 <listitem>
64 <para>
65 Download (HTTP): <ulink url="&cargo-download-http;"/>
66 </para>
67 </listitem>
68 <listitem>
69 <para>
70 Download (FTP): <ulink url="&cargo-download-ftp;"/>
71 </para>
72 </listitem>
73 <listitem>
74 <para>
75 Download MD5 sum: &cargo-md5sum;
76 </para>
77 </listitem>
78 <listitem>
79 <para>
80 Download size: &cargo-size;
81 </para>
82 </listitem>
83 <listitem>
84 <para>
85 Estimated disk space required: &cargo-buildsize;
86 </para>
87 </listitem>
88 <listitem>
89 <para>
90 Estimated build time: &cargo-time;
91 </para>
92 </listitem>
93 </itemizedlist>
94
95 <bridgehead renderas="sect3">Additional Downloads</bridgehead>
96 <itemizedlist spacing="compact">
97 <listitem>
98 <para>Rust Installer:
99 <ulink url="&rusti-download-http;"/></para>
100 </listitem>
101 <listitem>
102 <para>Installer MD5 sum: &rusti-md5sum;</para>
103 </listitem>
104 <listitem>
105 <para>Installer size: &rusti-size;</para>
106 </listitem>
107 </itemizedlist>
108 <itemizedlist spacing="compact">
109 <listitem>
110 <para>Binary download (x86_64):
111 <ulink url="&cargoprev64-download-http;"/></para>
112 </listitem>
113 <listitem>
114 <para>Binary x86_64 MD5 sum: &cargoprev64-md5sum;</para>
115 </listitem>
116 <listitem>
117 <para>Binary x86_64 download size: &cargoprev64-size;</para>
118 </listitem>
119 </itemizedlist>
120 <itemizedlist spacing="compact">
121 <listitem>
122 <para>Binary download (i686):
123 <ulink url="&cargoprev32-download-http;"/></para>
124 </listitem>
125 <listitem>
126 <para>Binary i686 MD5 sum: &cargoprev32-md5sum;</para>
127 </listitem>
128 <listitem>
129 <para>Binary i686 download size: &cargoprev32-size;</para>
130 </listitem>
131 </itemizedlist>
132
133 <bridgehead renderas="sect3">Cargo Dependencies</bridgehead>
134
135 <bridgehead renderas="sect4">Required</bridgehead>
136 <para role="required">
137 <xref linkend="cmake"/>,
138 <xref linkend="rust"/>
139 </para>
140
141 <bridgehead renderas="sect4">Optional</bridgehead>
142 <para role="optional">
143 <xref linkend="git"/>,
144 <xref linkend="openssl"/>
145 </para>
146
147 <para condition="html" role="usernotes">
148 User Notes: <ulink url="&blfs-wiki;/cargo"/>
149 </para>
150 </sect2>
151
152 <sect2 role="installation">
153 <title>Installation of cargo</title>
154
155 <para>
156 Install <application>cargo</application> by running the following
157 commands:
158 </para>
159
160<screen><userinput>tar -xf ../rust-installer-&RUSTIDATE;.tar.xz \
161 --strip-components=1 --directory src/rust-installer &amp;&amp;
162
163case $(uname -m) in
164 x86_64) tar -xf ../cargo-&CARGOPREV;-x86_64-unknown-linux-gnu.tar.gz
165 ;;
166 i686) tar -xf ../cargo-&CARGOPREV;-i686-unknown-linux-gnu.tar.gz
167 ;;
168esac &amp;&amp;
169
170./configure --prefix=/usr \
171 --sysconfdir=/etc \
172 --docdir=/usr/share/doc/cargo-&cargo-version; \
173 --cargo=./cargo-nightly*/cargo/bin/cargo &amp;&amp;
174make</userinput></screen>
175
176 <para>
177 To test the results, issue: <command>CFG_DISABLE_CROSS_TESTS=1
178 ./target/*-unknown-linux-gnu/release/cargo test</command>.
179 </para>
180
181 <para>
182 Now, as the <systemitem class="username">root</systemitem> user:
183 </para>
184
185<screen role="root"><userinput>make install &amp;&amp;
186mv -v /usr/etc/bash_completion.d/cargo /etc/bash_completion.d</userinput></screen>
187 </sect2>
188
189 <sect2 role="commands">
190 <title>Command Explanations</title>
191
192 <para>
193 <command>tar -xf ../rust-installer-&RUSTIDATE;.tar.xz ...</command>:
194 The rust-installer is needed, but not shipped with
195 <application>cargo</application>, so BLFS provides a repackaged git
196 snapshot.
197 </para>
198
199 <para>
200 <parameter>--cargo=</parameter>: This points to the binary of the previous
201 version, so that the package can be bootstrapped. When upgrading, or if
202 rebuilding, it is possible to use the current installed version without
203 this switch, but that takes longer and uses more space.
204 </para>
205
206 <para>
207 <command>CFG_DISABLE_CROSS_TESTS=1 ...</command>: By default the tests
208 will try to cover cross-builds for other architectures, but BLFS only
209 installs <command>rust</command> for the host architecture. This switch
210 also points to where cargo has been created, using a wildcard to match the
211 one target-triple directory which has been created.
212 </para>
213
214 <para>
215 <command>mv -v /usr/etc/bash_completion.d/cargo ...</command>: Cargo
216 accepts the sysconfdir switch but does not respect it. This fixes up the
217 misplaced file.
218 </para>
219 </sect2>
220
221 <sect2 role="content">
222 <title>Contents</title>
223
224 <segmentedlist>
225 <segtitle>Installed Program(s)</segtitle>
226 <segtitle>Installed Librar(y,ies)</segtitle>
227 <segtitle>Installed Director(y,ies)</segtitle>
228
229 <seglistitem>
230 <seg>
231 cargo
232 </seg>
233 <seg>
234 None
235 </seg>
236 <seg>
237 /usr/share/doc/cargo-&cargo-version; and
238 /usr/share/zsh/site-functions.
239 </seg>
240 </seglistitem>
241 </segmentedlist>
242
243 <variablelist>
244 <bridgehead renderas="sect3">Short Descriptions</bridgehead>
245 <?dbfo list-presentation="list"?>
246 <?dbhtml list-presentation="table"?>
247
248 <varlistentry id="cargo-prog">
249 <term><command>cargo</command></term>
250 <listitem>
251 <para>
252 is the Package Manager for Rust.
253 </para>
254 <indexterm zone="cargo cargo-prog">
255 <primary sortas="b-cargo">cargo</primary>
256 </indexterm>
257 </listitem>
258 </varlistentry>
259
260 </variablelist>
261 </sect2>
262</sect1>
Note: See TracBrowser for help on using the repository browser.