summaryrefslogtreecommitdiff
path: root/pkgtools/pkglint/TODO
blob: 7bc42adde3c5c7e6939db3ce46beac8db91606f5 (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
$NetBSD: TODO,v 1.62 2008/02/08 22:43:27 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
* 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
* 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.
* ${MACHINE_ARCH}-${LOWER_OPSYS}elf in PLISTs etc. is a NetBSD config.guess
  problem ==> use of ${APPEND_ELF}
* Packages including lang/python/extension.mk must follow the Python version
  scheme. Enforcing PYPKGPREFIX for those is most likely a good idea.
* Check for parallel files/dirs whose names differ only in case.
* Check for license files that are completely unused.
* If a dependency depends on an option (in options.mk), it should also
  depend on the same option in the buildlink3.mk file.
* Complain about ${PKGSRC_COMPILER} == "sunpro", which should be
  !empty(PKGSRC_COMPILER:Msunpro).