1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
PKGLINT(1) NetBSD Reference Manual PKGLINT(1)
NNAAMMEE
ppkkgglliinntt - a verifier for pkgsrc directories
SSYYNNOOPPSSIISS
ppkkgglliinntt [--ooppttiioonnss] [_d_i_r _._._.]
DDEESSCCRRIIPPTTIIOONN
ppkkgglliinntt attempts to detect features of the named pkgsrc packages that are
likely to be bugs, or that are simply deprecated. The pkgsrc system is
changing rapidly towards even more portability. The job of ppkkgglliinntt is to
define the rules that make up ``good'' packages and to allow automatic
conformance tests. Packages following these rules are assumed to make
future changes to the pkgsrc infrastructure easier.
OOppttiioonnss
--CC{{[[nnoo--]]cchheecckk,,......}} Enable or disable specific checks. For a list
of checks, see below.
--hh|----hheellpp Show the summary of command line options, then
exit.
--II Show the Makefile that is constructed by in-
cluding all the files that are slurped in via
.include directives. This flag is mainly for
debugging.
--RR|----rrccssiiddssttrriinngg Allow other RCS Id strings than NetBSD. Multi-
ple strings may be concatenated with `|'.
--qq|----qquuiieett Don't print the errors and warnings summary be-
fore terminating.
--vv|----vveerrbboossee Be verbose. Show the progress report for items
that are being checked.
--WW{{[[nnoo--]]wwaarrnn,,......}} Enable or disable specific warnings. For a
list of warnings, see below.
CChheecckkss
aallll Enable all checks.
nnoonnee Disable all checks.
[[nnoo--]]MMaakkeeffiillee Check the package Makefile, including all in-
cluded files.
[[nnoo--]]MMEESSSSAAGGEE Check MESSAGE files.
[[nnoo--]]PPLLIISSTT Check PLIST files.
[[nnoo--]]ddiissttiinnffoo Check the distinfo file.
[[nnoo--]]eexxttrraa Check remaining files in the package directory.
[[nnoo--]]ppaattcchheess Check the pkgsrc specific patch files.
WWaarrnniinnggss
aallll Enable all warnings.
nnoonnee Disable all warnings.
[[nnoo--]]aabbssnnaammee Warn if a file contains an absolute pathname.
[[nnoo--]]ddiirreeccttccmmdd Warn if a system command name is used instead
of a variable (e.g. sed instead of ${SED}).
[[nnoo--]]eexxeecc Warn if a file in the package directory is exe-
cutable. Most files should not be executable
until they are installed.
[[nnoo--]]oorrddeerr Warn if Makefile variables are not in the pre-
ferred order.
[[nnoo--]]ppaarreenn Warn if variables are used like $(VAR) in Make-
files. They should always be used like ${VAR}.
[[nnoo--]]pplliisstt--ssoorrtt Warn if items of a PLIST file are not sorted
alphabetically. This warning is disabled by
default.
[[nnoo--]]ttyyppeess Warn for some Makefile variables if their as-
signed values do not match their type.
[[nnoo--]]wwoorrkkddiirr Warn about existing _w_o_r_k_* directories. They
might be committed to CVS accidentally.
OOtthheerr aarrgguummeennttss
_d_i_r _._._. The pkgsrc directories to be checked. If omit-
ted, the current directory is checked.
FFIILLEESS
@PKGSRCDIR@/mk/bsd.pkg.mk The pkgsrc master Makefile.
@PKGSRCDIR@/* Other pkgsrc files.
EEXXAAMMPPLLEESS
ppkkgglliinntt --CCnnoonnee,,ppaattcchheess ..
Checks the patches of the package in the current directory.
ppkkgglliinntt --WWaallll //uussrr//ppkkggssrrcc//ddeevveell
Checks the category Makefile and reports any warnings it can
find.
ppkkgglliinntt --rr --RR ''NNeettBBSSDD||IIdd'' //uussrr//ppkkggssrrcc
Check the whole pkgsrc tree while allowing `NetBSD' or `Id'
as the RCS Id.
DDIIAAGGNNOOSSTTIICCSS
Diagnostics are written to the standard output.
ERROR: ... Errors should be fixed before a package is committed to
pkgsrc.
WARN: ... Warnings generally should be fixed, but they are not as
critical as errors.
OK: ... Informational messages are only written in verbose mode
(--vv). Their main use is to aid debugging.
AAUUTTHHOORRSS
Jun-ichiro Itoh <itojun@itojun.org>
Yoshishige Arai <ryo2@on.rim.or.jp>
Roland Illig <rillig@NetBSD.org>
Many people have contributed patches and comments/suggestions.
BBUUGGSS
Many more checks could be added.
If you don't understand the messages, feel free to ask on the <tech-
pkg@NetBSD.org> mailing list.
September 28, 2005 3
|