annotate Scripts/lint-deps.sh @ 1163:d3090b82aea1

kde/kgamma5: initial import, closes #1861
author David Demelier <markand@malikania.fr>
date Mon, 07 Oct 2019 20:10:00 +0200
parents 297b5eef115e
children 9867e578b1a9
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1115
297b5eef115e vanilla: change shebangs to /bin/sh
David Demelier <markand@malikania.fr>
parents: 1061
diff changeset
1 #!/bin/sh
659
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
2 #
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
3 # lint-deps.sh -- ensure that dependencies listed in PKGDEPENDS exist
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
4 #
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
5 # Copyright (c) 2019 David Demelier <markand@malikania.fr>
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
6 #
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
7 # Permission to use, copy, modify, and/or distribute this software for any
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
8 # purpose with or without fee is hereby granted, provided that the above
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
9 # copyright notice and this permission notice appear in all copies.
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
10 #
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
11 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
12 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
13 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
14 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
15 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
16 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
17 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
18 #
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
19
1028
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
20 . $(dirname $0)/scripts.subr
659
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
21
1028
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
22 tmpdir=/tmp/vanilla/lint-deps
1023
60d881a89c6a vanilla: fix many dependencies
David Demelier <markand@malikania.fr>
parents: 1019
diff changeset
23
60d881a89c6a vanilla: fix many dependencies
David Demelier <markand@malikania.fr>
parents: 1019
diff changeset
24 clean()
60d881a89c6a vanilla: fix many dependencies
David Demelier <markand@malikania.fr>
parents: 1019
diff changeset
25 {
1028
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
26 rm -rf $tmpdir
1023
60d881a89c6a vanilla: fix many dependencies
David Demelier <markand@malikania.fr>
parents: 1019
diff changeset
27 }
659
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
28
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
29 usage()
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
30 {
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
31 echo "usage: $PROGNAME [category/package]" 1>&2
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
32 exit 1
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
33 }
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
34
742
aa3c1de1780a vanilla: improve list and list-deps scripts
David Demelier <markand@malikania.fr>
parents: 659
diff changeset
35 check()
1028
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
36 {
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
37 vnl_open_build $1
659
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
38
1028
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
39 if [ -z "$PKGNAME" ]; then
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
40 exit 1
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
41 fi
659
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
42
1061
52b36e54f1b7 vanilla: add some colors in scripts
David Demelier <markand@malikania.fr>
parents: 1028
diff changeset
43 printf "${BOLD}=> checking dependencies for $PKGNAME${RESET}\n"
659
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
44
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
45 for d in $PKGDEPENDS; do
1023
60d881a89c6a vanilla: fix many dependencies
David Demelier <markand@malikania.fr>
parents: 1019
diff changeset
46 local dep=${d%:*}
659
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
47
1028
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
48 if ! grep -q $dep $tmpdir/list; then
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
49 echo "warning: missing $dep" 1>&2
659
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
50 fi
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
51 done
1028
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
52 }
659
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
53
1028
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
54 trap "clean; exit 1" INT QUIT TERM EXIT
659
9e199f8590e3 scripts: add lint-deps.sh
David Demelier <markand@malikania.fr>
parents:
diff changeset
55
1028
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
56 rm -rf $tmpdir
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
57 mkdir -p $tmpdir
1023
60d881a89c6a vanilla: fix many dependencies
David Demelier <markand@malikania.fr>
parents: 1019
diff changeset
58
60d881a89c6a vanilla: fix many dependencies
David Demelier <markand@malikania.fr>
parents: 1019
diff changeset
59 # First, retrieve all packages.
1028
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
60 $TOP/Scripts/list.sh | sed -re "s|[^/]*/||" > $tmpdir/list
1023
60d881a89c6a vanilla: fix many dependencies
David Demelier <markand@malikania.fr>
parents: 1019
diff changeset
61
1028
e46348eb3fbd vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents: 1023
diff changeset
62 check $1
1023
60d881a89c6a vanilla: fix many dependencies
David Demelier <markand@malikania.fr>
parents: 1019
diff changeset
63 clean