Lines 3-65
Link Here
|
3 |
|
3 |
|
4 |
EAPI=6 |
4 |
EAPI=6 |
5 |
|
5 |
|
6 |
inherit cargo bash-completion-r1 |
6 |
CARGO_SNAPSHOT_DATE="2016-09-01" |
7 |
|
|
|
8 |
CRATES=" |
7 |
CRATES=" |
9 |
advapi32-sys-0.2.0 |
8 |
advapi32-sys-0.2.0 |
10 |
aho-corasick-0.5.3 |
9 |
aho-corasick-0.5.3 |
11 |
aho-corasick-0.6.3 |
10 |
aho-corasick-0.6.3 |
|
|
11 |
atty-0.2.2 |
12 |
backtrace-0.3.2 |
12 |
backtrace-0.3.2 |
13 |
backtrace-sys-0.1.11 |
13 |
backtrace-sys-0.1.11 |
14 |
bitflags-0.9.1 |
14 |
bitflags-0.9.1 |
15 |
bufstream-0.1.3 |
15 |
bufstream-0.1.3 |
16 |
cfg-if-0.1.0 |
16 |
cargotest-0.1.0 |
|
|
17 |
cfg-if-0.1.2 |
17 |
cmake-0.1.24 |
18 |
cmake-0.1.24 |
|
|
19 |
crates-io-0.10.0 |
18 |
crossbeam-0.2.10 |
20 |
crossbeam-0.2.10 |
19 |
curl-0.4.6 |
21 |
curl-0.4.7 |
20 |
curl-sys-0.3.12 |
22 |
curl-sys-0.3.14 |
21 |
dbghelp-sys-0.2.0 |
23 |
dbghelp-sys-0.2.0 |
22 |
docopt-0.7.0 |
24 |
docopt-0.8.1 |
23 |
dtoa-0.4.1 |
25 |
dtoa-0.4.1 |
24 |
env_logger-0.4.3 |
26 |
env_logger-0.4.3 |
25 |
error-chain-0.10.0 |
27 |
error-chain-0.11.0-rc.2 |
26 |
filetime-0.1.10 |
28 |
filetime-0.1.10 |
27 |
flate2-0.2.19 |
29 |
flate2-0.2.19 |
28 |
foreign-types-0.2.0 |
30 |
foreign-types-0.2.0 |
29 |
fs2-0.4.1 |
31 |
fs2-0.4.2 |
30 |
gcc-0.3.50 |
32 |
gcc-0.3.51 |
31 |
gdi32-sys-0.2.0 |
|
|
32 |
git2-0.6.6 |
33 |
git2-0.6.6 |
33 |
git2-curl-0.7.0 |
34 |
git2-curl-0.7.0 |
34 |
glob-0.2.11 |
35 |
glob-0.2.11 |
35 |
hamcrest-0.1.1 |
36 |
hamcrest-0.1.1 |
|
|
37 |
hex-0.2.0 |
36 |
idna-0.1.2 |
38 |
idna-0.1.2 |
37 |
itoa-0.3.1 |
39 |
itoa-0.3.1 |
38 |
jobserver-0.1.6 |
40 |
jobserver-0.1.6 |
39 |
kernel32-sys-0.2.2 |
41 |
kernel32-sys-0.2.2 |
40 |
lazy_static-0.2.8 |
42 |
lazy_static-0.2.8 |
41 |
libc-0.2.23 |
43 |
libc-0.2.25 |
42 |
libgit2-sys-0.6.12 |
44 |
libgit2-sys-0.6.12 |
43 |
libssh2-sys-0.2.6 |
45 |
libssh2-sys-0.2.6 |
44 |
libz-sys-1.0.14 |
46 |
libz-sys-1.0.16 |
45 |
log-0.3.8 |
47 |
log-0.3.8 |
46 |
matches-0.1.4 |
48 |
matches-0.1.6 |
47 |
memchr-0.1.11 |
49 |
memchr-0.1.11 |
48 |
memchr-1.0.1 |
50 |
memchr-1.0.1 |
49 |
miniz-sys-0.1.9 |
51 |
miniz-sys-0.1.9 |
50 |
miow-0.2.1 |
52 |
miow-0.2.1 |
51 |
net2-0.2.29 |
53 |
net2-0.2.29 |
52 |
num-0.1.37 |
54 |
num-0.1.39 |
53 |
num-bigint-0.1.37 |
55 |
num-bigint-0.1.39 |
54 |
num-complex-0.1.37 |
56 |
num-complex-0.1.38 |
55 |
num_cpus-1.5.0 |
|
|
56 |
num-integer-0.1.34 |
57 |
num-integer-0.1.34 |
57 |
num-iter-0.1.33 |
58 |
num-iter-0.1.33 |
58 |
num-rational-0.1.36 |
59 |
num-rational-0.1.38 |
59 |
num-traits-0.1.37 |
60 |
num-traits-0.1.39 |
60 |
openssl-0.9.13 |
61 |
num_cpus-1.6.2 |
|
|
62 |
openssl-0.9.15 |
61 |
openssl-probe-0.1.1 |
63 |
openssl-probe-0.1.1 |
62 |
openssl-sys-0.9.13 |
64 |
openssl-sys-0.9.15 |
|
|
65 |
percent-encoding-1.0.0 |
63 |
pkg-config-0.3.9 |
66 |
pkg-config-0.3.9 |
64 |
psapi-sys-0.1.0 |
67 |
psapi-sys-0.1.0 |
65 |
quote-0.3.15 |
68 |
quote-0.3.15 |
Lines 73-124
Link Here
|
73 |
scoped-tls-0.1.0 |
76 |
scoped-tls-0.1.0 |
74 |
semver-0.7.0 |
77 |
semver-0.7.0 |
75 |
semver-parser-0.7.0 |
78 |
semver-parser-0.7.0 |
76 |
serde-1.0.8 |
79 |
serde-1.0.9 |
77 |
serde_derive-1.0.8 |
80 |
serde_derive-1.0.9 |
78 |
serde_derive_internals-0.15.1 |
81 |
serde_derive_internals-0.15.1 |
79 |
serde_ignored-0.0.3 |
82 |
serde_ignored-0.0.3 |
80 |
serde_json-1.0.2 |
83 |
serde_json-1.0.2 |
81 |
shell-escape-0.1.3 |
84 |
shell-escape-0.1.3 |
|
|
85 |
socket2-0.2.1 |
82 |
strsim-0.6.0 |
86 |
strsim-0.6.0 |
83 |
syn-0.11.11 |
87 |
syn-0.11.11 |
84 |
synom-0.11.3 |
88 |
synom-0.11.3 |
85 |
tar-0.4.13 |
89 |
tar-0.4.13 |
86 |
tempdir-0.3.5 |
90 |
tempdir-0.3.5 |
87 |
term-0.4.5 |
91 |
termcolor-0.3.2 |
88 |
thread-id-2.0.0 |
92 |
thread-id-2.0.0 |
89 |
thread-id-3.1.0 |
|
|
90 |
thread_local-0.2.7 |
93 |
thread_local-0.2.7 |
91 |
thread_local-0.3.3 |
94 |
thread_local-0.3.4 |
92 |
toml-0.4.1 |
95 |
toml-0.4.2 |
93 |
unicode-bidi-0.3.3 |
96 |
unicode-bidi-0.3.4 |
94 |
unicode-normalization-0.1.4 |
97 |
unicode-normalization-0.1.5 |
95 |
unicode-xid-0.0.4 |
98 |
unicode-xid-0.0.4 |
96 |
unreachable-0.1.1 |
99 |
unreachable-1.0.0 |
97 |
url-1.4.1 |
100 |
url-1.5.1 |
98 |
user32-sys-0.2.0 |
|
|
99 |
utf8-ranges-0.1.3 |
101 |
utf8-ranges-0.1.3 |
100 |
utf8-ranges-1.0.0 |
102 |
utf8-ranges-1.0.0 |
101 |
vcpkg-0.2.1 |
103 |
vcpkg-0.2.2 |
102 |
void-1.0.2 |
104 |
void-1.0.2 |
103 |
winapi-0.2.8 |
105 |
winapi-0.2.8 |
104 |
winapi-build-0.1.1 |
106 |
winapi-build-0.1.1 |
|
|
107 |
wincolor-0.1.4 |
105 |
ws2_32-sys-0.2.1 |
108 |
ws2_32-sys-0.2.1 |
106 |
" |
109 |
" |
107 |
|
110 |
|
108 |
CHOST_amd64=x86_64-unknown-linux-gnu |
111 |
inherit cargo bash-completion-r1 versionator |
109 |
CHOST_x86=i686-unknown-linux-gnu |
|
|
110 |
|
112 |
|
111 |
CARGO_STAGE0_VERSION="${PV}" |
113 |
BOOTSTRAP_VERSION="0.$(($(get_version_component_range 2) - 1)).0" |
112 |
CARGO_STAGE0_amd64="cargo-${CARGO_STAGE0_VERSION}-${CHOST_amd64}" |
|
|
113 |
CARGO_STAGE0_x86="cargo-${CARGO_STAGE0_VERSION}-${CHOST_x86}" |
114 |
|
114 |
|
115 |
DESCRIPTION="The Rust's package manager" |
115 |
DESCRIPTION="The Rust's package manager" |
116 |
HOMEPAGE="http://crates.io" |
116 |
HOMEPAGE="http://crates.io" |
117 |
SRC_URI="https://github.com/rust-lang/cargo/archive/${PV}.tar.gz -> ${P}.tar.gz |
117 |
SRC_URI="https://github.com/rust-lang/cargo/archive/${PV}.tar.gz -> ${P}.tar.gz |
118 |
$(cargo_crate_uris ${CRATES}) |
118 |
$(cargo_crate_uris ${CRATES}) |
119 |
amd64? ( https://static.rust-lang.org/dist/${CARGO_STAGE0_amd64}.tar.gz ) |
119 |
x86? ( |
120 |
x86? ( https://static.rust-lang.org/dist/${CARGO_STAGE0_x86}.tar.gz ) |
120 |
https://static.rust-lang.org/dist/cargo-${BOOTSTRAP_VERSION}-i686-unknown-linux-gnu.tar.gz |
121 |
" |
121 |
) |
|
|
122 |
amd64? ( |
123 |
https://static.rust-lang.org/dist/cargo-${BOOTSTRAP_VERSION}-x86_64-unknown-linux-gnu.tar.gz |
124 |
)" |
122 |
|
125 |
|
123 |
RESTRICT="mirror" |
126 |
RESTRICT="mirror" |
124 |
LICENSE="|| ( MIT Apache-2.0 )" |
127 |
LICENSE="|| ( MIT Apache-2.0 )" |
Lines 127-132
Link Here
|
127 |
|
130 |
|
128 |
IUSE="doc libressl" |
131 |
IUSE="doc libressl" |
129 |
|
132 |
|
|
|
133 |
if [[ ${ARCH} = "amd64" ]]; then |
134 |
TRIPLE="x86_64-unknown-linux-gnu" |
135 |
else |
136 |
TRIPLE="i686-unknown-linux-gnu" |
137 |
fi |
138 |
|
130 |
COMMON_DEPEND="sys-libs/zlib |
139 |
COMMON_DEPEND="sys-libs/zlib |
131 |
!libressl? ( dev-libs/openssl:0= ) |
140 |
!libressl? ( dev-libs/openssl:0= ) |
132 |
libressl? ( dev-libs/libressl:0= ) |
141 |
libressl? ( dev-libs/libressl:0= ) |
Lines 136-183
Link Here
|
136 |
!dev-util/cargo-bin |
145 |
!dev-util/cargo-bin |
137 |
net-misc/curl[ssl]" |
146 |
net-misc/curl[ssl]" |
138 |
DEPEND="${COMMON_DEPEND} |
147 |
DEPEND="${COMMON_DEPEND} |
139 |
>=dev-lang/rust-1.9.0:stable |
148 |
>=virtual/rust-1.19.0 |
140 |
dev-lang/python |
|
|
141 |
dev-util/cmake |
149 |
dev-util/cmake |
142 |
sys-apps/coreutils |
150 |
sys-apps/coreutils |
143 |
sys-apps/diffutils |
151 |
sys-apps/diffutils |
144 |
sys-apps/findutils |
152 |
sys-apps/findutils |
145 |
sys-apps/sed" |
153 |
sys-apps/sed" |
146 |
|
154 |
|
|
|
155 |
PATCHES=( "${FILESDIR}/0.21.0-openssl-0.9.15.patch" ) |
156 |
|
147 |
src_configure() { |
157 |
src_configure() { |
148 |
: |
158 |
# Do nothing |
|
|
159 |
echo "Configuring cargo..." |
149 |
} |
160 |
} |
150 |
|
161 |
|
151 |
src_compile() { |
162 |
src_compile() { |
152 |
local cargo_stagename="CARGO_STAGE0_${ARCH}" |
|
|
153 |
local cargo_stage0="${!cargo_stagename}" |
154 |
local cargo="${WORKDIR}/${cargo_stage0}"/cargo/bin/cargo |
155 |
|
156 |
# Cargo only supports these GNU triples: |
157 |
# - Linux: <arch>-unknown-linux-gnu |
158 |
# - MacOS: <arch>-apple-darwin |
159 |
# - Windows: <arch>-pc-windows-gnu |
160 |
# where <arch> could be 'x86_64' (amd64) or 'i686' (x86) |
161 |
use amd64 && CTARGET="x86_64-unknown-linux-gnu" |
162 |
use x86 && CTARGET="i686-unknown-linux-gnu" |
163 |
|
164 |
# Building sources |
165 |
export CARGO_HOME="${ECARGO_HOME}" |
163 |
export CARGO_HOME="${ECARGO_HOME}" |
166 |
export RUST_BACKTRACE=1 |
164 |
local cargo="${WORKDIR}/cargo-${BOOTSTRAP_VERSION}-${TRIPLE}/cargo/bin/cargo" |
167 |
${cargo} build --release --verbose --verbose |
165 |
${cargo} build --release |
168 |
|
166 |
|
169 |
# Building HTML documentation |
167 |
# Building HTML documentation |
170 |
use doc && ${cargo} doc --verbose --verbose |
168 |
use doc && ${cargo} doc |
171 |
} |
169 |
} |
172 |
|
170 |
|
173 |
src_install() { |
171 |
src_install() { |
174 |
local cargo_stagename="CARGO_STAGE0_${ARCH}" |
172 |
dobin target/release/cargo |
175 |
local cargo_stage0="${!cargo_stagename}" |
|
|
176 |
local cargo="${WORKDIR}/${cargo_stage0}"/cargo/bin/cargo |
177 |
|
178 |
export RUST_BACKTRACE=1 |
179 |
${cargo} install --root="${ED}"/usr --verbose --verbose |
180 |
rm "${ED}"/usr/.cargo.toml |
181 |
|
173 |
|
182 |
# Install HTML documentation |
174 |
# Install HTML documentation |
183 |
use doc && HTML_DOCS=("target/doc") |
175 |
use doc && HTML_DOCS=("target/doc") |
Lines 188-199
Link Here
|
188 |
doins src/etc/_cargo |
180 |
doins src/etc/_cargo |
189 |
doman src/etc/man/* |
181 |
doman src/etc/man/* |
190 |
} |
182 |
} |
191 |
|
|
|
192 |
src_test() { |
193 |
local cargo_stagename="CARGO_STAGE0_${ARCH}" |
194 |
local cargo_stage0="${!cargo_stagename}" |
195 |
local cargo="${WORKDIR}/${cargo_stage0}"/cargo/bin/cargo |
196 |
|
197 |
export RUST_BACKTRACE=1 |
198 |
${cargo} test --release --verbose --verbose |
199 |
} |