Mercurial > vanilla
annotate Scripts/lint-pkg.sh @ 1028:e46348eb3fbd
vanilla: create a generic lint.sh script
author | David Demelier <markand@malikania.fr> |
---|---|
date | Fri, 30 Aug 2019 21:05:00 +0200 |
parents | |
children | 52b36e54f1b7 |
rev | line source |
---|---|
1028
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 #!/bin/busybox sh |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 # |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 # lint-pkg.sh -- check various things in the package |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 # |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 # Copyright (c) 2019 David Demelier <markand@malikania.fr> |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 # |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 # Permission to use, copy, modify, and/or distribute this software for any |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 # purpose with or without fee is hereby granted, provided that the above |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 # copyright notice and this permission notice appear in all copies. |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 # |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 # THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 # ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 # WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 # ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 # |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 . $(dirname $0)/scripts.subr |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 check_fhs() |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 { |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 echo "==> checking directory hierarchy" |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 if tar tf $1 | grep -Ev '^(bin|etc|include|lib|libexec|local|share|tmp|var)' 1>&2; then |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 echo "warning: the above files are not part of Vanilla Linux FHS" 1>&2 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 fi |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 } |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 check_libtool() |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 { |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 echo "==> checking presence of libtool files:" |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 if tar tf $1 | grep -E '\.la$' 1>&2; then |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 echo "warning: the following libtool files must be removed" 1>&2 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 fi |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 } |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 check_manpages() |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 { |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 echo "==> checking manual pages in uncompressed form:" |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 if tar tf $1 | grep -E 'share/man/man./.*\.(gz|bz2)$'; then |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 echo "warning: the above files must not be compressed" 1>&2 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 fi |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 } |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 usage() |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 { |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 echo "usage: lint-pkg.sh binary-package" 1>&2 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
52 exit 1 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 } |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
55 if [ "$#" -lt 1 ]; then |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 usage |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
57 # NOTREACHED |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 fi |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
60 echo "=> checking binary package content for $1" |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
61 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 check_fhs $1 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 check_libtool $1 |
e46348eb3fbd
vanilla: create a generic lint.sh script
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 check_manpages $1 |