--- /var/cache/portage/local/dev-util/cargo/cargo-0.20.0.ebuild 2017-07-29 17:59:37.891805892 +0200 +++ /var/cache/portage/gentoo/dev-util/cargo/cargo-0.21.0.ebuild 2017-09-09 15:29:07.000000000 +0200 @@ -3,63 +3,66 @@ EAPI=6 -inherit cargo bash-completion-r1 - +CARGO_SNAPSHOT_DATE="2016-09-01" CRATES=" advapi32-sys-0.2.0 aho-corasick-0.5.3 aho-corasick-0.6.3 +atty-0.2.2 backtrace-0.3.2 backtrace-sys-0.1.11 bitflags-0.9.1 bufstream-0.1.3 -cfg-if-0.1.0 +cargotest-0.1.0 +cfg-if-0.1.2 cmake-0.1.24 +crates-io-0.10.0 crossbeam-0.2.10 -curl-0.4.6 -curl-sys-0.3.12 +curl-0.4.7 +curl-sys-0.3.14 dbghelp-sys-0.2.0 -docopt-0.7.0 +docopt-0.8.1 dtoa-0.4.1 env_logger-0.4.3 -error-chain-0.10.0 +error-chain-0.11.0-rc.2 filetime-0.1.10 flate2-0.2.19 foreign-types-0.2.0 -fs2-0.4.1 -gcc-0.3.50 -gdi32-sys-0.2.0 +fs2-0.4.2 +gcc-0.3.51 git2-0.6.6 git2-curl-0.7.0 glob-0.2.11 hamcrest-0.1.1 +hex-0.2.0 idna-0.1.2 itoa-0.3.1 jobserver-0.1.6 kernel32-sys-0.2.2 lazy_static-0.2.8 -libc-0.2.23 +libc-0.2.25 libgit2-sys-0.6.12 libssh2-sys-0.2.6 -libz-sys-1.0.14 +libz-sys-1.0.16 log-0.3.8 -matches-0.1.4 +matches-0.1.6 memchr-0.1.11 memchr-1.0.1 miniz-sys-0.1.9 miow-0.2.1 net2-0.2.29 -num-0.1.37 -num-bigint-0.1.37 -num-complex-0.1.37 -num_cpus-1.5.0 +num-0.1.39 +num-bigint-0.1.39 +num-complex-0.1.38 num-integer-0.1.34 num-iter-0.1.33 -num-rational-0.1.36 -num-traits-0.1.37 -openssl-0.9.13 +num-rational-0.1.38 +num-traits-0.1.39 +num_cpus-1.6.2 +openssl-0.9.15 openssl-probe-0.1.1 -openssl-sys-0.9.13 +openssl-sys-0.9.15 +percent-encoding-1.0.0 pkg-config-0.3.9 psapi-sys-0.1.0 quote-0.3.15 @@ -73,52 +76,52 @@ scoped-tls-0.1.0 semver-0.7.0 semver-parser-0.7.0 -serde-1.0.8 -serde_derive-1.0.8 +serde-1.0.9 +serde_derive-1.0.9 serde_derive_internals-0.15.1 serde_ignored-0.0.3 serde_json-1.0.2 shell-escape-0.1.3 +socket2-0.2.1 strsim-0.6.0 syn-0.11.11 synom-0.11.3 tar-0.4.13 tempdir-0.3.5 -term-0.4.5 +termcolor-0.3.2 thread-id-2.0.0 -thread-id-3.1.0 thread_local-0.2.7 -thread_local-0.3.3 -toml-0.4.1 -unicode-bidi-0.3.3 -unicode-normalization-0.1.4 +thread_local-0.3.4 +toml-0.4.2 +unicode-bidi-0.3.4 +unicode-normalization-0.1.5 unicode-xid-0.0.4 -unreachable-0.1.1 -url-1.4.1 -user32-sys-0.2.0 +unreachable-1.0.0 +url-1.5.1 utf8-ranges-0.1.3 utf8-ranges-1.0.0 -vcpkg-0.2.1 +vcpkg-0.2.2 void-1.0.2 winapi-0.2.8 winapi-build-0.1.1 +wincolor-0.1.4 ws2_32-sys-0.2.1 " -CHOST_amd64=x86_64-unknown-linux-gnu -CHOST_x86=i686-unknown-linux-gnu +inherit cargo bash-completion-r1 versionator -CARGO_STAGE0_VERSION="${PV}" -CARGO_STAGE0_amd64="cargo-${CARGO_STAGE0_VERSION}-${CHOST_amd64}" -CARGO_STAGE0_x86="cargo-${CARGO_STAGE0_VERSION}-${CHOST_x86}" +BOOTSTRAP_VERSION="0.$(($(get_version_component_range 2) - 1)).0" DESCRIPTION="The Rust's package manager" HOMEPAGE="http://crates.io" SRC_URI="https://github.com/rust-lang/cargo/archive/${PV}.tar.gz -> ${P}.tar.gz $(cargo_crate_uris ${CRATES}) - amd64? ( https://static.rust-lang.org/dist/${CARGO_STAGE0_amd64}.tar.gz ) - x86? ( https://static.rust-lang.org/dist/${CARGO_STAGE0_x86}.tar.gz ) -" + x86? ( + https://static.rust-lang.org/dist/cargo-${BOOTSTRAP_VERSION}-i686-unknown-linux-gnu.tar.gz + ) + amd64? ( + https://static.rust-lang.org/dist/cargo-${BOOTSTRAP_VERSION}-x86_64-unknown-linux-gnu.tar.gz + )" RESTRICT="mirror" LICENSE="|| ( MIT Apache-2.0 )" @@ -127,6 +130,12 @@ IUSE="doc libressl" +if [[ ${ARCH} = "amd64" ]]; then + TRIPLE="x86_64-unknown-linux-gnu" +else + TRIPLE="i686-unknown-linux-gnu" +fi + COMMON_DEPEND="sys-libs/zlib !libressl? ( dev-libs/openssl:0= ) libressl? ( dev-libs/libressl:0= ) @@ -136,48 +145,31 @@ !dev-util/cargo-bin net-misc/curl[ssl]" DEPEND="${COMMON_DEPEND} - >=dev-lang/rust-1.9.0:stable - dev-lang/python + >=virtual/rust-1.19.0 dev-util/cmake sys-apps/coreutils sys-apps/diffutils sys-apps/findutils sys-apps/sed" +PATCHES=( "${FILESDIR}/0.21.0-openssl-0.9.15.patch" ) + src_configure() { - : + # Do nothing + echo "Configuring cargo..." } src_compile() { - local cargo_stagename="CARGO_STAGE0_${ARCH}" - local cargo_stage0="${!cargo_stagename}" - local cargo="${WORKDIR}/${cargo_stage0}"/cargo/bin/cargo - - # Cargo only supports these GNU triples: - # - Linux: -unknown-linux-gnu - # - MacOS: -apple-darwin - # - Windows: -pc-windows-gnu - # where could be 'x86_64' (amd64) or 'i686' (x86) - use amd64 && CTARGET="x86_64-unknown-linux-gnu" - use x86 && CTARGET="i686-unknown-linux-gnu" - - # Building sources export CARGO_HOME="${ECARGO_HOME}" - export RUST_BACKTRACE=1 - ${cargo} build --release --verbose --verbose + local cargo="${WORKDIR}/cargo-${BOOTSTRAP_VERSION}-${TRIPLE}/cargo/bin/cargo" + ${cargo} build --release # Building HTML documentation - use doc && ${cargo} doc --verbose --verbose + use doc && ${cargo} doc } src_install() { - local cargo_stagename="CARGO_STAGE0_${ARCH}" - local cargo_stage0="${!cargo_stagename}" - local cargo="${WORKDIR}/${cargo_stage0}"/cargo/bin/cargo - - export RUST_BACKTRACE=1 - ${cargo} install --root="${ED}"/usr --verbose --verbose - rm "${ED}"/usr/.cargo.toml + dobin target/release/cargo # Install HTML documentation use doc && HTML_DOCS=("target/doc") @@ -188,12 +180,3 @@ doins src/etc/_cargo doman src/etc/man/* } - -src_test() { - local cargo_stagename="CARGO_STAGE0_${ARCH}" - local cargo_stage0="${!cargo_stagename}" - local cargo="${WORKDIR}/${cargo_stage0}"/cargo/bin/cargo - - export RUST_BACKTRACE=1 - ${cargo} test --release --verbose --verbose -}