qt: playlist: use item title if available
[vlc.git] / contrib / cargo-vendor-archive.sh
1 #!/bin/sh
2
3 set -e
4
5 usage()
6 {
7 cat << EOF
8 usage: $0 <archive>
9
10 Fetch and archive all dependencies from a Rust archive using 'cargo vendor'.
11 EOF
12 }
13
14 if [ "x$1" = "x" ]; then
15     usage
16     exit 1
17 fi
18
19 # Setup cargo path
20 CARGO=
21 if [ -d "$(dirname $0)/bin/.cargo" ];then
22     CARGO_HOME=$(cd $(dirname $0)/bin/.cargo && pwd)
23     CARGO="CARGO_HOME=\"${CARGO_HOME}\" \"${CARGO_HOME}/bin/cargo\""
24 else
25     CARGO=cargo
26 fi
27
28 # Extract archive into a tmp dir
29 TMP_DIR=.tmp-$(basename $1)
30 rm -rf ${TMP_DIR}
31 mkdir ${TMP_DIR}
32
33 tar xf "$1" -C ${TMP_DIR}
34 cd ${TMP_DIR}/*
35
36 # Fetch all dependencies
37 eval ${CARGO} vendor --locked
38
39 # Archive all dependencies
40 name=$(basename `pwd`)-vendor
41 tar -jcf "../../${name}.tar.bz2" vendor --transform "s,vendor,${name},"
42 cd ../..
43 rm -rf ${TMP_DIR}
44
45 echo ""
46 echo "Please upload this package '${name}.tar.bz2' to our VideoLAN FTP,"
47 echo ""
48 echo "and write the following checksum into the contrib/src/<project>/cargo-vendor-SHA512SUMS:"
49 echo ""
50 sha512sum ${name}.tar.bz2