summaryrefslogtreecommitdiff
path: root/development/cargo/cargo.SlackBuild
diff options
context:
space:
mode:
Diffstat (limited to 'development/cargo/cargo.SlackBuild')
-rw-r--r--development/cargo/cargo.SlackBuild141
1 files changed, 65 insertions, 76 deletions
diff --git a/development/cargo/cargo.SlackBuild b/development/cargo/cargo.SlackBuild
index 09e96ea581..94f6a72ec7 100644
--- a/development/cargo/cargo.SlackBuild
+++ b/development/cargo/cargo.SlackBuild
@@ -23,9 +23,8 @@
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
PRGNAM=cargo
-VERSION=${VERSION:-0.19.0}
-VERSION_BOOTSTRAP=${VERSION_BOOTSTRAP:-0.18.0}
-VERSION_RUST_INSTALLER=${VERSION_RUST_INSTALLER:-4f994850808a572e2cc8d43f968893c8e942e9bf}
+VERSION=${VERSION:-0.20.0}
+VERSION_BOOTSTRAP=${VERSION_BOOTSTRAP:-0.19.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@@ -65,31 +64,22 @@ rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
-(
- # versioned git submodule from cargo tag
- cd src
- rm -rf rust-installer
- tar xvf $CWD/rust-installer-$VERSION_RUST_INSTALLER.tar.gz
- mv rust-installer-$VERSION_RUST_INSTALLER rust-installer
-)
-
# if you already have rust and cargo installed, you can bootstrap from the
# previous version.
if [ "$LOCAL_BOOTSTRAP" = "" ] && [ -x /usr/bin/cargo ] && [ -x /usr/bin/rustc ] ; then
LOCAL_BOOTSTRAP=yes
fi
-if [ "$LOCAL_BOOTSTRAP" = "yes" ] ; then
- local_cargo="/usr/bin/cargo"
-else
+if [ "$LOCAL_BOOTSTRAP" != "yes" ] ; then
tar xvf $CWD/cargo-$VERSION_BOOTSTRAP-$ARCH-unknown-linux-gnu.tar.gz
- local_cargo="$(pwd)/cargo-$VERSION_BOOTSTRAP-$ARCH-unknown-linux-gnu/cargo/bin/cargo"
+ PATH="$(pwd)/cargo-$VERSION_BOOTSTRAP-$ARCH-unknown-linux-gnu/cargo/bin:$PATH"
+ export PATH
fi
# build offline
# configuration tells cargo to use the configured directory
-# for dependencies intead of downloading from crates.io.
+# for dependencies instead of downloading from crates.io.
mkdir .cargo
cat << EOF >> .cargo/config
[source.crates-io]
@@ -111,95 +101,100 @@ else
for dependency in advapi32-sys=0.2.0 \
aho-corasick=0.5.3 \
aho-corasick=0.6.3 \
- bitflags=0.7.0 \
- bufstream=0.1.2 \
+ backtrace=0.3.2 \
+ backtrace-sys=0.1.11 \
+ bitflags=0.9.1 \
+ bufstream=0.1.3 \
cfg-if=0.1.0 \
- chrono=0.2.25 \
- cmake=0.1.22 \
+ cmake=0.1.24 \
crossbeam=0.2.10 \
curl=0.4.6 \
- curl-sys=0.3.10 \
+ curl-sys=0.3.12 \
+ dbghelp-sys=0.2.0 \
docopt=0.7.0 \
dtoa=0.4.1 \
- env_logger=0.4.2 \
+ env_logger=0.4.3 \
+ error-chain=0.10.0 \
filetime=0.1.10 \
- flate2=0.2.17 \
+ flate2=0.2.19 \
foreign-types=0.2.0 \
fs2=0.4.1 \
- gcc=0.3.45 \
+ gcc=0.3.50 \
gdi32-sys=0.2.0 \
- git2=0.6.4 \
+ git2=0.6.6 \
git2-curl=0.7.0 \
glob=0.2.11 \
hamcrest=0.1.1 \
- idna=0.1.0 \
+ idna=0.1.2 \
itoa=0.3.1 \
+ jobserver=0.1.6 \
kernel32-sys=0.2.2 \
- lazy_static=0.2.5 \
- libc=0.2.21 \
- libgit2-sys=0.6.7 \
- libssh2-sys=0.2.5 \
- libz-sys=1.0.13 \
- log=0.3.7 \
+ lazy_static=0.2.8 \
+ libc=0.2.23 \
+ libgit2-sys=0.6.12 \
+ libssh2-sys=0.2.6 \
+ libz-sys=1.0.14 \
+ log=0.3.8 \
matches=0.1.4 \
memchr=0.1.11 \
memchr=1.0.1 \
miniz-sys=0.1.9 \
miow=0.2.1 \
- net2=0.2.27 \
+ net2=0.2.29 \
num=0.1.37 \
num-bigint=0.1.37 \
- num-complex=0.1.36 \
- num-integer=0.1.33 \
+ num-complex=0.1.37 \
+ num-integer=0.1.34 \
num-iter=0.1.33 \
num-rational=0.1.36 \
num-traits=0.1.37 \
- num_cpus=1.3.0 \
- openssl=0.9.10 \
+ num_cpus=1.5.0 \
+ openssl=0.9.13 \
openssl-probe=0.1.1 \
- openssl-sys=0.9.10 \
+ openssl-sys=0.9.13 \
pkg-config=0.3.9 \
psapi-sys=0.1.0 \
quote=0.3.15 \
rand=0.3.15 \
- redox_syscall=0.1.17 \
regex=0.1.80 \
- regex=0.2.1 \
+ regex=0.2.2 \
regex-syntax=0.3.9 \
- regex-syntax=0.4.0 \
- rustc-serialize=0.3.23 \
- semver=0.6.0 \
+ regex-syntax=0.4.1 \
+ rustc-demangle=0.1.4 \
+ rustc-serialize=0.3.24 \
+ scoped-tls=0.1.0 \
+ semver=0.7.0 \
semver-parser=0.7.0 \
- serde=0.9.12 \
- serde_codegen_internals=0.14.2 \
- serde_derive=0.9.12 \
- serde_ignored=0.0.2 \
- serde_json=0.9.9 \
+ serde=1.0.8 \
+ serde_derive=1.0.8 \
+ serde_derive_internals=0.15.1 \
+ serde_ignored=0.0.3 \
+ serde_json=1.0.2 \
shell-escape=0.1.3 \
strsim=0.6.0 \
- syn=0.11.9 \
+ syn=0.11.11 \
synom=0.11.3 \
- tar=0.4.10 \
+ tar=0.4.13 \
tempdir=0.3.5 \
term=0.4.5 \
thread-id=2.0.0 \
- thread-id=3.0.0 \
+ thread-id=3.1.0 \
thread_local=0.2.7 \
thread_local=0.3.3 \
- time=0.1.36 \
- toml=0.3.2 \
- unicode-bidi=0.2.5 \
+ toml=0.4.1 \
+ unicode-bidi=0.3.3 \
unicode-normalization=0.1.4 \
unicode-xid=0.0.4 \
unreachable=0.1.1 \
- url=1.4.0 \
+ url=1.4.1 \
user32-sys=0.2.0 \
utf8-ranges=0.1.3 \
utf8-ranges=1.0.0 \
+ vcpkg=0.2.1 \
void=1.0.2 \
winapi=0.2.8 \
winapi-build=0.1.1 \
- ws2_32-sys=0.2.1; do
+ ws2_32-sys=0.2.1 ; do
dep="$(echo "$dependency" | cut -d= -f1)"
ver="$(echo "$dependency" | cut -d= -f2)"
@@ -235,35 +230,29 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-./configure \
- --prefix=/usr \
- --libdir=/usr/lib${LIBDIRSUFFIX} \
- --sysconfdir=/etc \
- --localstatedir=/var \
- --mandir=/usr/man \
- --docdir=/usr/doc/$PRGNAM-$VERSION \
- --rustc=/usr/bin/rustc \
- --rustdoc=/usr/bin/rustdoc \
- --local-rust-root=/usr \
- --cargo="$local_cargo"
-
-make
-make install DESTDIR=$PKG
-
-if [ "$ARCH" = "x86_64" ]; then
- mv $PKG/usr/lib $PKG/usr/lib$LIBDIRSUFFIX
-fi
+cargo doc
+cargo install --root $PKG/usr
+
+rm $PKG/usr/.crates.toml
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+mkdir -p $PKG/usr/man/man1
+cp -a src/etc/man/* $PKG/usr/man/man1
+
find $PKG/usr/man -type f -exec gzip -9 {} \;
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
+mkdir -p $PKG/usr/share/bash-completion/completions
+mkdir -p $PKG/usr/share/zsh/site-functions
+
+install -m 0755 src/etc/cargo.bashcomp.sh $PKG/usr/share/bash-completion/completions/cargo
+install -m 0755 src/etc/_cargo $PKG/usr/share/zsh/site-functions/_cargo
+
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cp -a LICENSE-APACHE LICENSE-MIT LICENSE-THIRD-PARTY README.md $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a target/doc/cargo $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
mkdir -p $PKG/install