summaryrefslogtreecommitdiff
path: root/pkgtools/pkglint/TODO
blob: f0ced067b51b2f8331cb50906491c1ce49005d4b (plain)
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
$NetBSD: TODO,v 1.51 2006/07/04 10:01:06 rillig Exp $

Please add your own entries at the bottom of this file. If possible,
include the name of an example package where a warning should occur.

* fix false positive warnings
* ONLY_FOR_PLATFORM => NOT_FOR_PLATFORM
* -Wl,-rpath
* include "../../mk/bsd.prefs.mk" before using "+=".
* include "../../mk/bsd.prefs.mk" before any .if
* warn about the use of ${SED} in {pre,do,post}-install
* check for direct use of user names and group names
* Find a reliable, secure way to delete all CVS directories inside
  ${WRKSRC}. When that is finished, add a warning that using ${XARGS}
  is insecure.
* warn about the use of ${WRKDIR:=...}, as this construct should only
  be used with lists.
* record with each substring its source location to be able to make
  even more precise diagnostics
* check wether CONFIG* override match, e.g. CONFIGURE_DIRS most likely
  needs matching CNOFIG_GUESS_OVERRIDE and CONFIG_SUB_OVERRIDE as well
* warn about BUILD_USES_MSGFMT and related defines being used when
  devel/gettext-lib/buildlink3.mk is not explicitly included?
* Many of the checking routines need some context to provide better
  warnings. For example, checkline_foo() may need to know what has
  happened in the file before that line.
* Add checks for binary packages. See Debian/lintian for ideas.
* Of the user-defined variables, some may be used at load-time and some
  don't. Find out how pkglint can distinguish them.
* Make sure that no variable is modified at load-time after it has been
  used once. This should at least flag BUILD_DEFS in bsd.pkg.mk.
* Implement unescape_shellword, which is required for the type check for
  SedCommand.
* Invent an annotation scheme for files that intentionally define
  variables for use in other files.