Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F140069849
D4562.id12389.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
8 KB
Referenced Files
None
Subscribers
None
D4562.id12389.diff
View Options
Index: head/devel/cargo/Makefile
===================================================================
--- head/devel/cargo/Makefile
+++ head/devel/cargo/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PORTNAME= cargo
-PORTVERSION= 0.4.0.20150720
+PORTVERSION= 0.7.0
CATEGORIES= devel
MAINTAINER= dumbbell@FreeBSD.org
@@ -12,8 +12,8 @@
LICENSE= APACHE20 \
MIT
LICENSE_COMB= dual
-LICENSE_FILE= ${WRKSRC}/LICENSE-APACHE \
- ${WRKSRC}/LICENSE-MIT
+# APACHE20 license is standard, see Templates/Licenses/APACHE20
+LICENSE_FILE_MIT= ${WRKSRC}/LICENSE-MIT
# The following files are required:
#
@@ -34,73 +34,69 @@
# install Cargo.
MASTER_SITES= https://static.rust-lang.org/cargo-dist/2015-04-02/:bootstrap \
- LOCAL/dumbbell:registry
-
-DISTFILES= ${CARGO_BOOT}:bootstrap
-EXTRACT_ONLY= ${DISTNAME}${_GITHUB_EXTRACT_SUFX} \
- ${DISTFILE_rust_installer}
-
-.if (${.TARGET} != gen-registry) && !defined(SKIP_CARGO_REGISTRY)
+ LOCAL/jbeich:registry
+.if !defined(SKIP_CARGO_REGISTRY)
DISTFILES+= ${CARGO_REGISTRY}:registry
-EXTRACT_ONLY+= ${CARGO_REGISTRY}
.endif
USE_GITHUB= yes
GH_ACCOUNT= rust-lang
-GH_PROJECT= ${PORTNAME} \
- rust-installer:rust_installer
-GH_TAGNAME= 9c5ffcb871 \
- c37d374:rust_installer
+GH_PROJECT= rust-installer:rust_installer
+GH_TAGNAME= 4915c75:rust_installer
-CARGO_BOOT_SIG= x86_64-unknown-freebsd
+CARGO_BOOT_SIG= ${ARCH:S/amd64/x86_64/}-unknown-${OPSYS:tl}
CARGO_BOOT= ${PORTNAME}-nightly-${CARGO_BOOT_SIG}${EXTRACT_SUFX}
-CARGO_REGISTRY= ${DISTNAME:S/${GH_ACCOUNT}-${PORTNAME}/${PORTNAME}-registry/}${EXTRACT_SUFX}
-
-USES= gmake python:2,build pkgconfig
-
-# The bootstrapped cargo is built with OpenSSL from ports (libssl.so.8).
-USE_OPENSSL= yes
-WITH_OPENSSL_PORT=yes
+CARGO_REGISTRY= ${PORTNAME}-registry-${DISTVERSIONFULL}.tar.xz
+CARGO_REGISTRY_BOOT_HASH= 1ecc6299db9ec823
+# Like above but with: pnacl-build-helper, libressl-pnacl-sys
+CARGO_REGISTRY_CUR_HASH= 88ac128001ac3a9a
# We don't USES=cmake here, because cmake is not Cargo's build system.
# It's used by a bundled dependency (libgit2).
-BUILD_DEPENDS= ${LOCALBASE}/bin/cmake:${PORTSDIR}/devel/cmake \
- rustc:${PORTSDIR}/lang/rust-nightly
+BUILD_DEPENDS= cmake:${PORTSDIR}/devel/cmake \
+ ${RUST_PORT:T}>=1.5.0:${PORTSDIR}/${RUST_PORT}
LIB_DEPENDS= libssh2.so:${PORTSDIR}/security/libssh2 \
libcurl.so:${PORTSDIR}/ftp/curl
+RUN_DEPENDS= rustc:${PORTSDIR}/${RUST_PORT}
+RUST_PORT?= lang/rust
-# FIXME: Don't add rust as a runtime dependency. As we need rust-nightly
-# to build Cargo, the same version would be pulled by installing Cargo,
-# preventing its use with the stable version of Rust.
-# RUN_DEPENDS= rustc:${PORTSDIR}/lang/rust
-
+USES= gmake python:-2.7,build pkgconfig
+USE_OPENSSL= yes
HAS_CONFIGURE= yes
-CONFIGURE_ARGS= --mandir=${MANPREFIX}/man
-MAKE_ENV+= LD_LIBRARY_PATH="${WRKSRC}/target/snapshot/cargo/lib"
-
-# git log -1 --date=short --pretty=format:'%cd'
-CFG_VER_DATE= ${PORTVERSION:C/.*\.([0-9]{4})([0-9]{2})([0-9]{2})/\1-\2-\3/}
-# git rev-parse --short HEAD
-CFG_VER_HASH= ${GH_TAGNAME}
+CONFIGURE_ARGS= --prefix="${PREFIX}" --mandir="${MANPREFIX}/man"
+MAKE_ENV= ARGS="${CARGO_ARGS}"
+CARGO_ARGS= --jobs ${MAKE_JOBS_NUMBER}
.if defined(BATCH) || defined(PACKAGE_BUILDING)
MAKE_ARGS+= VERBOSE=1
.endif
-MAKE_JOBS_UNSAFE= yes
+OPTIONS_DEFINE= BOOTSTRAP
+OPTIONS_DEFAULT=BOOTSTRAP
-.include <bsd.port.pre.mk>
+BOOTSTRAP_DESC= Bootstrap using pre-built vendor snapshot
+BOOTSTRAP_CONFIGURE_OFF=--local-cargo="$$(command -v cargo)" # respect PATH
+BOOTSTRAP_VARS_OFF= EXTRACT_AFTER_ARGS="-s/${CARGO_REGISTRY_BOOT_HASH}/${CARGO_REGISTRY_CUR_HASH}/"
+BOOTSTRAP_DISTFILES= ${CARGO_BOOT}:bootstrap
+BOOTSTRAP_EXTRACT_ONLY= ${DISTFILES:N*\:bootstrap:C/:.*//}
+BOOTSTRAP_MAKE_ENV= LD_LIBRARY_PATH="${WRKSRC}/target/snapshot/cargo/lib"
+BOOTSTRAP_VARS= EXTRACT_AFTER_ARGS="-s/${CARGO_REGISTRY_CUR_HASH}/${CARGO_REGISTRY_BOOT_HASH}/"
+.if !exists(/usr/lib/libssl.so.8) # OPENSSL_SHLIBVER
+BOOTSTRAP_VARS+= WITH_OPENSSL_PORT=yes
+.endif
post-extract:
- @(${RMDIR} ${WRKSRC}/src/rust-installer && \
- ${MV} ${WRKSRC_rust_installer} ${WRKSRC}/src/rust-installer)
+ @${RMDIR} ${WRKSRC}/src/rust-installer
+ @${MV} ${WRKSRC_rust_installer} ${WRKSRC}/src/rust-installer
+
+post-extract-BOOTSTRAP-on:
@${MKDIR} ${WRKSRC}/target/dl
${LN} -sf ${DISTDIR}/${CARGO_BOOT} ${WRKSRC}/target/dl/
post-patch:
- ${REINPLACE_CMD} \
- -e 's|^CFG_VER_DATE =.*|CFG_VER_DATE = ${CFG_VER_DATE}|' \
- -e 's|^CFG_VER_HASH =.*|CFG_VER_HASH = ${CFG_VER_HASH}|' \
+# Fix mandir and don't install licenses outside of ${_LICENSE_DIR}
+ @${REINPLACE_CMD} -e 's,share/man,man,' \
+ -e 's, LICENSE-[^[:space:]]*,,g' \
${WRKSRC}/Makefile.in
# In case the previous "make stage" failed, this ensures rust's
@@ -121,14 +117,8 @@
post-install:
@${RM} ${STAGEDIR}${PREFIX}/lib/rustlib/install.log
- @${MV} ${STAGEDIR}${PREFIX}/share/man/man1/cargo.1 \
- ${STAGEDIR}${PREFIX}/man/man1/cargo.1
- @${RMDIR} ${STAGEDIR}${PREFIX}/share/man/man1 \
- ${STAGEDIR}${PREFIX}/share/man
- @${REINPLACE_CMD} -e 's|${STAGEDIR}||' \
- -e 's|share/man/man1/cargo\.1|man/man1/cargo.1.gz|' \
+ @${REINPLACE_CMD} -i '' -e 's|${STAGEDIR}||' \
${STAGEDIR}${PREFIX}/lib/rustlib/manifest-cargo
- @${RM} ${STAGEDIR}${PREFIX}/lib/rustlib/manifest-cargo.bak
@${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/cargo
@${RM} \
${STAGEDIR}${PREFIX}/lib/rustlib/components \
@@ -138,19 +128,19 @@
# "make gen-registry" is a special target to ease this port update.
#
# After changing the version number and the Git revision, you can run
-# "make registry" to update the distinfo and create a new snapshot of
+# "make gen-registry" to update the distinfo and create a new snapshot of
# the registry. The new registry is written to ${DISTDIR} and can be
# uploaded.
gen-registry:
- ${MAKE} -DSKIP_CARGO_REGISTRY makesum
- ${MAKE} -DSKIP_CARGO_REGISTRY
- cd ${WRKDIR} && \
- ${TAR} cvf - \
+ ${MAKE} -C${.CURDIR} -DSKIP_CARGO_REGISTRY makesum
+ ${MAKE} -C${.CURDIR} -DSKIP_CARGO_REGISTRY
+ ${TAR} cJvf ${_DISTDIR}/${CARGO_REGISTRY} -C${WRKDIR} \
+ --uid 0 --gid 0 \
--exclude libgit2/tests/ \
--exclude curl/tests/ \
--exclude 'index/github.com-*/.git/' \
- .cargo | ${GZIP_CMD} > ${DISTDIR}/${CARGO_REGISTRY}
- ${MAKE} makesum
+ .cargo
+ ${MAKE} -C${.CURDIR} makesum
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
Index: head/devel/cargo/distinfo
===================================================================
--- head/devel/cargo/distinfo
+++ head/devel/cargo/distinfo
@@ -1,8 +1,10 @@
+SHA256 (cargo-registry-0.7.0.tar.xz) = 72542abb20b8871d3f030c5c3855cf49902300fa3dfc58cef74fdb8984a579c9
+SIZE (cargo-registry-0.7.0.tar.xz) = 17769584
+SHA256 (cargo-nightly-x86_64-unknown-dragonfly.tar.gz) = 49d70c798362fba7d691144a4c97ce1be29a921c3a38d2fe8ffa76f9daf628ab
+SIZE (cargo-nightly-x86_64-unknown-dragonfly.tar.gz) = 2621548
SHA256 (cargo-nightly-x86_64-unknown-freebsd.tar.gz) = de678e858de5d2923cc206b7aa1cc84ddc67be00748160f66fc9b7325409e7c7
SIZE (cargo-nightly-x86_64-unknown-freebsd.tar.gz) = 7663548
-SHA256 (cargo-registry-0.4.0.20150720-9c5ffcb871_GH0.tar.gz) = 7d8b5d53e0d3f28e0f8d0078586a8d94c834d9f6c35e00b56abe00bd54ee9944
-SIZE (cargo-registry-0.4.0.20150720-9c5ffcb871_GH0.tar.gz) = 16391914
-SHA256 (rust-lang-cargo-0.4.0.20150720-9c5ffcb871_GH0.tar.gz) = af6a6b609b3d6bf52f55fdcc2f8e299016e9b805748e824ec6b92d4f8ed92c07
-SIZE (rust-lang-cargo-0.4.0.20150720-9c5ffcb871_GH0.tar.gz) = 351554
-SHA256 (rust-lang-rust-installer-c37d374_GH0.tar.gz) = 7cc41029b14de023dd4f250b332470c98cf9d1a77d174a20e93d78d07e4255f1
-SIZE (rust-lang-rust-installer-c37d374_GH0.tar.gz) = 19267
+SHA256 (rust-lang-cargo-0.7.0_GH0.tar.gz) = b1067d710e64b66a197294df2fa3dd4fb1d645171eaa517b93d42678bb687338
+SIZE (rust-lang-cargo-0.7.0_GH0.tar.gz) = 512415
+SHA256 (rust-lang-rust-installer-4915c75_GH0.tar.gz) = 022116173684c97d61e014940aada20f3830d2d3e1670887bf1861997133c234
+SIZE (rust-lang-rust-installer-4915c75_GH0.tar.gz) = 19234
Index: head/devel/cargo/pkg-descr
===================================================================
--- head/devel/cargo/pkg-descr
+++ head/devel/cargo/pkg-descr
@@ -1,4 +1,4 @@
Cargo is Cargo, Rust's Package Manager. Cargo downloads your Rust
-project’s dependencies and compiles your project.
+project's dependencies and compiles your project.
WWW: http://doc.crates.io/
Index: head/devel/cargo/pkg-plist
===================================================================
--- head/devel/cargo/pkg-plist
+++ head/devel/cargo/pkg-plist
@@ -2,8 +2,5 @@
etc/bash_completion.d/cargo
lib/rustlib/manifest-cargo
man/man1/cargo.1.gz
-%%PORTDOCS%%%%DOCSDIR%%/LICENSE-APACHE
-%%PORTDOCS%%%%DOCSDIR%%/LICENSE-MIT
-%%PORTDOCS%%%%DOCSDIR%%/LICENSE-THIRD-PARTY
%%PORTDOCS%%%%DOCSDIR%%/README.md
share/zsh/site-functions/_cargo
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sat, Dec 20, 8:12 PM (7 h, 2 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
27097784
Default Alt Text
D4562.id12389.diff (8 KB)
Attached To
Mode
D4562: devel/cargo: update to 0.7.0
Attached
Detach File
Event Timeline
Log In to Comment