commit: 89f261de268b9b381b8e7593e270287ff281728c
Author: Doug Goldstein <cardoe <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 26 15:22:13 2016 +0000
Commit: Doug Goldstein <cardoe <AT> gentoo <DOT> org>
CommitDate: Wed Nov 30 17:17:51 2016 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=89f261de
dev-util/cargo: preserve older build method
Cargo bootstraps itself with a 0.10.0 version of Cargo that does not
support the newer features we're rolling into the eclass. As a result
this lifts out bits from the eclass and moves it into the Cargo ebuilds
so that the eclass can be updated.
Signed-off-by: Doug Goldstein <cardoe <AT> gentoo.org>
dev-util/cargo/cargo-0.12.0.ebuild | 46 +++++++++++++++++++++++++++++++++++
dev-util/cargo/cargo-0.13.0-r1.ebuild | 46 +++++++++++++++++++++++++++++++++++
dev-util/cargo/cargo-0.13.0.ebuild | 46 +++++++++++++++++++++++++++++++++++
dev-util/cargo/cargo-0.14.0.ebuild | 46 +++++++++++++++++++++++++++++++++++
4 files changed, 184 insertions(+)
diff --git a/dev-util/cargo/cargo-0.12.0.ebuild
b/dev-util/cargo/cargo-0.12.0.ebuild
index 68140cd..3ab9f11 100644
--- a/dev-util/cargo/cargo-0.12.0.ebuild
+++ b/dev-util/cargo/cargo-0.12.0.ebuild
@@ -103,6 +103,52 @@ DEPEND="${COMMON_DEPEND}
sys-apps/findutils
sys-apps/sed"
+# Until cargo bootstraps itself with a version based on 0.13.0, this needs
+# to stay (these variables and src_unpack)
+ECARGO_HOME="${WORKDIR}/cargo_home"
+ECARGO_REPO="github.com-88ac128001ac3a9a"
+ECARGO_INDEX="${ECARGO_HOME}/registry/index/${ECARGO_REPO}"
+ECARGO_SRC="${ECARGO_HOME}/registry/src/${ECARGO_REPO}"
+ECARGO_CACHE="${ECARGO_HOME}/registry/cache/${ECARGO_REPO}"
+
+src_unpack() {
+ mkdir -p "${ECARGO_INDEX}" || die
+ mkdir -p "${ECARGO_CACHE}" || die
+ mkdir -p "${ECARGO_SRC}" || die
+ mkdir -p "${S}" || die
+
+ local archive
+ for archive in ${A}; do
+ case "${archive}" in
+ *.crate)
+ ebegin "Unpacking ${archive}"
+ cp "${DISTDIR}"/${archive} "${ECARGO_CACHE}/"
|| die
+ tar -xf "${DISTDIR}"/${archive} -C
"${ECARGO_SRC}/" || die
+ eend $?
+ ;;
+ cargo-snapshot*)
+ ebegin "Unpacking ${archive}"
+ mkdir -p "${S}"/target/snapshot
+ tar -xzf "${DISTDIR}"/${archive} -C
"${S}"/target/snapshot --strip-components 2 || die
+ # cargo's makefile needs this otherwise it will
try to
+ # download it
+ touch "${S}"/target/snapshot/bin/cargo || die
+ eend $?
+ ;;
+ cargo-registry*)
+ ebegin "Unpacking ${archive}"
+ tar -xzf "${DISTDIR}"/${archive} -C
"${ECARGO_INDEX}" --strip-components 1 || die
+ # prevent cargo from attempting to download
this again
+ touch "${ECARGO_INDEX}"/.cargo-index-lock || die
+ eend $?
+ ;;
+ *)
+ unpack ${archive}
+ ;;
+ esac
+ done
+}
+
src_configure() {
# Cargo only supports these GNU triples:
# - Linux: <arch>-unknown-linux-gnu
diff --git a/dev-util/cargo/cargo-0.13.0-r1.ebuild
b/dev-util/cargo/cargo-0.13.0-r1.ebuild
index c6a5f05..12d1dd2 100644
--- a/dev-util/cargo/cargo-0.13.0-r1.ebuild
+++ b/dev-util/cargo/cargo-0.13.0-r1.ebuild
@@ -115,6 +115,52 @@ DEPEND="${COMMON_DEPEND}
sys-apps/findutils
sys-apps/sed"
+# Until cargo bootstraps itself with a version based on 0.13.0, this needs
+# to stay (these variables and src_unpack)
+ECARGO_HOME="${WORKDIR}/cargo_home"
+ECARGO_REPO="github.com-88ac128001ac3a9a"
+ECARGO_INDEX="${ECARGO_HOME}/registry/index/${ECARGO_REPO}"
+ECARGO_SRC="${ECARGO_HOME}/registry/src/${ECARGO_REPO}"
+ECARGO_CACHE="${ECARGO_HOME}/registry/cache/${ECARGO_REPO}"
+
+src_unpack() {
+ mkdir -p "${ECARGO_INDEX}" || die
+ mkdir -p "${ECARGO_CACHE}" || die
+ mkdir -p "${ECARGO_SRC}" || die
+ mkdir -p "${S}" || die
+
+ local archive
+ for archive in ${A}; do
+ case "${archive}" in
+ *.crate)
+ ebegin "Unpacking ${archive}"
+ cp "${DISTDIR}"/${archive} "${ECARGO_CACHE}/"
|| die
+ tar -xf "${DISTDIR}"/${archive} -C
"${ECARGO_SRC}/" || die
+ eend $?
+ ;;
+ cargo-snapshot*)
+ ebegin "Unpacking ${archive}"
+ mkdir -p "${S}"/target/snapshot
+ tar -xzf "${DISTDIR}"/${archive} -C
"${S}"/target/snapshot --strip-components 2 || die
+ # cargo's makefile needs this otherwise it will
try to
+ # download it
+ touch "${S}"/target/snapshot/bin/cargo || die
+ eend $?
+ ;;
+ cargo-registry*)
+ ebegin "Unpacking ${archive}"
+ tar -xzf "${DISTDIR}"/${archive} -C
"${ECARGO_INDEX}" --strip-components 1 || die
+ # prevent cargo from attempting to download
this again
+ touch "${ECARGO_INDEX}"/.cargo-index-lock || die
+ eend $?
+ ;;
+ *)
+ unpack ${archive}
+ ;;
+ esac
+ done
+}
+
src_configure() {
# Cargo only supports these GNU triples:
# - Linux: <arch>-unknown-linux-gnu
diff --git a/dev-util/cargo/cargo-0.13.0.ebuild
b/dev-util/cargo/cargo-0.13.0.ebuild
index 3f74ad6..56c7772 100644
--- a/dev-util/cargo/cargo-0.13.0.ebuild
+++ b/dev-util/cargo/cargo-0.13.0.ebuild
@@ -114,6 +114,52 @@ DEPEND="${COMMON_DEPEND}
sys-apps/findutils
sys-apps/sed"
+# Until cargo bootstraps itself with a version based on 0.13.0, this needs
+# to stay (these variables and src_unpack)
+ECARGO_HOME="${WORKDIR}/cargo_home"
+ECARGO_REPO="github.com-88ac128001ac3a9a"
+ECARGO_INDEX="${ECARGO_HOME}/registry/index/${ECARGO_REPO}"
+ECARGO_SRC="${ECARGO_HOME}/registry/src/${ECARGO_REPO}"
+ECARGO_CACHE="${ECARGO_HOME}/registry/cache/${ECARGO_REPO}"
+
+src_unpack() {
+ mkdir -p "${ECARGO_INDEX}" || die
+ mkdir -p "${ECARGO_CACHE}" || die
+ mkdir -p "${ECARGO_SRC}" || die
+ mkdir -p "${S}" || die
+
+ local archive
+ for archive in ${A}; do
+ case "${archive}" in
+ *.crate)
+ ebegin "Unpacking ${archive}"
+ cp "${DISTDIR}"/${archive} "${ECARGO_CACHE}/"
|| die
+ tar -xf "${DISTDIR}"/${archive} -C
"${ECARGO_SRC}/" || die
+ eend $?
+ ;;
+ cargo-snapshot*)
+ ebegin "Unpacking ${archive}"
+ mkdir -p "${S}"/target/snapshot
+ tar -xzf "${DISTDIR}"/${archive} -C
"${S}"/target/snapshot --strip-components 2 || die
+ # cargo's makefile needs this otherwise it will
try to
+ # download it
+ touch "${S}"/target/snapshot/bin/cargo || die
+ eend $?
+ ;;
+ cargo-registry*)
+ ebegin "Unpacking ${archive}"
+ tar -xzf "${DISTDIR}"/${archive} -C
"${ECARGO_INDEX}" --strip-components 1 || die
+ # prevent cargo from attempting to download
this again
+ touch "${ECARGO_INDEX}"/.cargo-index-lock || die
+ eend $?
+ ;;
+ *)
+ unpack ${archive}
+ ;;
+ esac
+ done
+}
+
src_configure() {
# Cargo only supports these GNU triples:
# - Linux: <arch>-unknown-linux-gnu
diff --git a/dev-util/cargo/cargo-0.14.0.ebuild
b/dev-util/cargo/cargo-0.14.0.ebuild
index b78e205..1b8d661 100644
--- a/dev-util/cargo/cargo-0.14.0.ebuild
+++ b/dev-util/cargo/cargo-0.14.0.ebuild
@@ -116,6 +116,52 @@ DEPEND="${COMMON_DEPEND}
sys-apps/findutils
sys-apps/sed"
+# Until cargo bootstraps itself with a version based on 0.13.0, this needs
+# to stay (these variables and src_unpack)
+ECARGO_HOME="${WORKDIR}/cargo_home"
+ECARGO_REPO="github.com-88ac128001ac3a9a"
+ECARGO_INDEX="${ECARGO_HOME}/registry/index/${ECARGO_REPO}"
+ECARGO_SRC="${ECARGO_HOME}/registry/src/${ECARGO_REPO}"
+ECARGO_CACHE="${ECARGO_HOME}/registry/cache/${ECARGO_REPO}"
+
+src_unpack() {
+ mkdir -p "${ECARGO_INDEX}" || die
+ mkdir -p "${ECARGO_CACHE}" || die
+ mkdir -p "${ECARGO_SRC}" || die
+ mkdir -p "${S}" || die
+
+ local archive
+ for archive in ${A}; do
+ case "${archive}" in
+ *.crate)
+ ebegin "Unpacking ${archive}"
+ cp "${DISTDIR}"/${archive} "${ECARGO_CACHE}/"
|| die
+ tar -xf "${DISTDIR}"/${archive} -C
"${ECARGO_SRC}/" || die
+ eend $?
+ ;;
+ cargo-snapshot*)
+ ebegin "Unpacking ${archive}"
+ mkdir -p "${S}"/target/snapshot
+ tar -xzf "${DISTDIR}"/${archive} -C
"${S}"/target/snapshot --strip-components 2 || die
+ # cargo's makefile needs this otherwise it will
try to
+ # download it
+ touch "${S}"/target/snapshot/bin/cargo || die
+ eend $?
+ ;;
+ cargo-registry*)
+ ebegin "Unpacking ${archive}"
+ tar -xzf "${DISTDIR}"/${archive} -C
"${ECARGO_INDEX}" --strip-components 1 || die
+ # prevent cargo from attempting to download
this again
+ touch "${ECARGO_INDEX}"/.cargo-index-lock || die
+ eend $?
+ ;;
+ *)
+ unpack ${archive}
+ ;;
+ esac
+ done
+}
+
src_configure() {
# Cargo only supports these GNU triples:
# - Linux: <arch>-unknown-linux-gnu