Commit graph

904 commits

Author SHA1 Message Date
rillig
11b91ee6d2 - Fixed the wording of the message when CONFIGURE_DIRS and friends are
prefixed with ${WRKSRC}. It had been plainly wrong.
2006-01-02 03:02:29 +00:00
rillig
d3a90242d3 - Removed the type guessing code for variables with unknown type, as
this code has led to duplicate diagnostics. It had been misplaced as
  well.
2006-01-02 01:20:31 +00:00
rillig
b42c46442f - Added MESSAGE_SUBST, PKG_GROUPS, PKG_USERS. 2006-01-02 01:18:24 +00:00
rillig
bc5fc19c6f - Unquoted shell variables may appear in for loops. 2006-01-01 22:08:22 +00:00
rillig
08274c2f69 - Uncommented the note that CONFIGURE_DIRS, BUILD_DIRS and INSTALL_DIRS
don't need to be prefixed with ${WRKSRC}, now that there will be no
  more pullups to 2005Q3.
2006-01-01 21:58:12 +00:00
rillig
2d6877dcb0 - Added a check for unquoted shell variables (only with -Wextra). 2006-01-01 21:55:44 +00:00
rillig
bab261e700 - Integrated checklines_patches_patch back into checkfile_patches_patch. 2006-01-01 19:58:36 +00:00
rillig
54171b1096 - Fixed typo: It's __NetBSD_Version__, not __NetBSD_Version_. 2006-01-01 19:07:20 +00:00
wiz
faf65456ad Remove stuff that was marked for removal after 2005Q4. 2006-01-01 18:53:03 +00:00
rillig
be3a661d5b - Added a parser for shell words.
- Added warnings for imperfect quoting style inside double quotes.
- All shell commands are checked for correct quoting of make(1) variables
  in shell assignments like --prefix=${PREFIX:Q} and TMPDIR=${WRKSRC:Q}.
2006-01-01 18:40:12 +00:00
rillig
ea3cb56d30 - Moved the code that checks for valid shell words into its own subroutine
because it will be extended soon.
2005-12-31 15:00:15 +00:00
rillig
068c3c65d5 Updated pkglint to 4.50.
Changes since 4.49:
- Added checks for shell commands whose exitcodes are ignored.
- Added checks for CFLAGS, CPPFLAGS and CXXFLAGS.
- Improved diagnostics.
- Various bugfixes.

Changes to lintpkgsrc:
- Avoided double occurrence of pkg_install.
2005-12-31 14:09:51 +00:00
rillig
816ce58996 Added some variables, strengthened the checks for some other variables. 2005-12-31 14:02:28 +00:00
rillig
5b0ebb51c6 - Restructured the header comment.
- Rewrote the message formatting.
- The indentation of explanations is changed to be always a tabulator
  character instead of depending on the last message.
- In verbose mode, statistics about the frequency of the individual
  messages are printed before exiting.
- The command line option -Wextra enables additional warnings that are
  not enabled by default because I have been told that Alistair would kill
  me for them. :)
- Improved the shell tokenizer by recognizing parentheses.
- Improved checking of pkgsrc-internal files (mostly in pkgsrc/mk).
- Added a (trivial) spellchecker.
- Added checks for shell code that ignores the exitcode of commands.
- Added checks for CFLAGS, CPPFLAGS and CXXFLAGS.
- Avoided false positive warnings for absolute filenames in AWK code.
- Added checks for .for variables.
- Pkglint can check single files in directories that are three levels deep.
  This is mostly useful for checking patch files.
2005-12-31 14:01:46 +00:00
rillig
7255646a18 Since pkg_install appears in the pkg_info listing, there is no need for
special treatment. Reported by Christoph Egger via private mail.
2005-12-31 09:07:22 +00:00
joerg
ff4b54c998 Index: has sometimes different precedence in patch, avoid problems. 2005-12-30 16:27:13 +00:00
rillig
1ddd52875f lintpkgsrc needs pkgtools/digest, so readd it to the DEPENDS. 2005-12-18 15:20:21 +00:00
rillig
b776d7dde2 Synchronized the way the checksum of patch files is computed with the one
that is used in the rest of pkgsrc. This avoids false positive errors.
2005-12-18 14:25:40 +00:00
wiz
525916457d NetBSD capitalization police. 2005-12-13 12:03:47 +00:00
rillig
18cff5b614 + ERROR: Other Makefiles must not be included. Use Makefile.common instead. 2005-12-12 21:36:45 +00:00
rillig
9c2bd09a33 * check quoting in CFLAGS+= -DPREFIX=\"${PREFIX:Q}\" 2005-12-11 22:07:46 +00:00
rillig
80b3d9a596 Improved diagnostic of the warning for @comment in variables. 2005-12-09 08:40:40 +00:00
rillig
5e79129a20 - Improved the wording of the explanation regarding relative directories.
- Fixed a bunch of format string bugs. (As this is not C, these were
  only bugs, not vulnerabilities. ;))
2005-12-08 21:13:49 +00:00
rillig
a1ff561a90 Updated pkglint to 4.49.
Changes since 4.48:
- Added a check for .include lines in all Makefiles and *.mk files to make
  sure that only existant files are referenced and that pkgsrc packages do
  not contain references to packages in pkgsrc-wip.
- Extended the --autofix option to all Makefile* and *.mk files. Before, only the
  package Makefile could be fixed.
- Rewrote the detection of direct use of tool names.
- Append-only lists may be initialized using the "?=" operator.
- The typical form of ShellWords for CONFIGURE_ARGS, --foo=${FOODIR}, is checked for
  quoting errors.
- All PKG_OPTIONs are checked whether they are documented in mk/defaults/\
  options.description.
- Many small fixes and improvements.
2005-12-08 10:57:59 +00:00
rillig
ab84b76ce4 Cleaned up the TODO list. 2005-12-08 10:47:38 +00:00
rillig
081ebe2d92 The option names are now checked if they are in
mk/defaults/options.description.
2005-12-08 10:43:04 +00:00
rillig
1f93724529 - Fixed a typo (SUBST_PLIST => PLIST_SUBST) noted by wiz. 2005-12-08 10:07:20 +00:00
rillig
ebba7b0a8c - Added a warning that prevents the quoting issues from the recent
"pkglint --autofix" change. Added a long and detailed explanation for it.
2005-12-08 09:01:08 +00:00
rillig
0ed1c6a38d - All PKG_OPTIONs are checked whether they are documented in mk/defaults/\
options.description.
- Added the checkline_relative_pkgdir() subroutine, as the code is useful
  in two different places.
2005-12-07 21:39:59 +00:00
rillig
45edf96e98 - Fixed a comment. The order of subroutines is no longer historical. 2005-12-07 19:46:51 +00:00
rillig
ddf867e458 I've sent joerg a patch which would fix his TODO item. 2005-12-07 18:47:34 +00:00
rillig
59f4a103be - Added a check that exists if RelativePkgDir exists. Suggested by wiz in
a private mail.
2005-12-07 18:46:28 +00:00
rillig
e55cea632a - Changed the type of PKG_OPTIONS_VAR from Varname to PkgOptionsVar. Added
a check that PKGBASE is not used in PKG_OPTIONS_VAR.
- Added some macros to the list of portable CPP macro names.
2005-12-06 22:07:35 +00:00
rillig
e12c8a5077 - Moved checkline_mk_varassign() below checkline_mk_vartype() to avoid
forward references.
2005-12-06 17:37:06 +00:00
rillig
d526260071 - Improved the heuristics for shell words by allowing pkgsrc variables with
a "$" in the modifier part, as long as they don't contain references to
  other variables.
- Removed checkline_mk_direct_tool_use().
- Renamed checkline_mk_shellcmd() to checkline_mk_shelltext(). This sub-
  routine is also used for checking the right hand side of variable assign-
  ments.
- Renamed direct_tools_ok_vars to non_shellcode_vars, which is more
  appropriate. Added some variables to it that produced false positive
  warnings.
2005-12-06 17:32:12 +00:00
rillig
e3aeff9129 * IMAKE_MANNEWSUFFIX should be deprecated in PLISTs, says Joerg. 2005-12-06 16:42:15 +00:00
rillig
8c635c3030 - Removed the checklines_mk() subroutine and copied the code to
checklines_package_Makefile(). Then, renamed
  checklines_package_Makefile() to checklines_mk(), as it not only
  applies to the main package Makefile.
- Fixed the regular expression for detecting ambiguous variables like
  $f, which could mean either ${f} or $$f.
- When checking for deprecated variables, also mention the ones that
  don't have modifiers.
2005-12-06 16:13:28 +00:00
rillig
e9a455da93 - Integrated the code from checklines_mk_deprecated_variables() into
checkline_mk_text() and checkline_mk_varassign(). This saves 20 lines
  and makes the warnings appear ordered by line number.
2005-12-06 15:47:14 +00:00
rillig
01f34446ba - Improved the heuristics for detecting direct use of ${TOOL}s.
- Moved the whole complicated code from checklines_package_Makefile() to
  checkline_mk_shellcmd() and checkline_mk_varassign().
- Reenabled the -Wdirectcmd options by default.
2005-12-06 15:22:28 +00:00
rillig
4cff6fbbc6 Reordered the complete file. Grouped subroutines by name (checkline_*,
checklines_*, checkfile_*). No functional changes.
2005-12-06 14:15:02 +00:00
rillig
df0a56361d Collected the routines that load pkglint-specific data in one section.
No functional changes.
2005-12-06 13:23:16 +00:00
rillig
2c55734d95 - Renamed get_make_vars_typemap() to get_vartypes_map().
- Added specialized subroutines for checking a single line.
- Removed checklines_Makefile_varuse().
- Removed checklines_direct_tools(), which has been replaced by the
  specialized routines mentioned above.
2005-12-06 13:16:23 +00:00
rillig
6a6a3411e1 - Rewrote the code that checks for direct use of tool names. It is
disabled by default, as I am currently working on it, and neither the
  current nor the previous version is good enough for the end user.
- Pkglint can now distinguish the two kinds of tools: The ones that
  should be used like ${TOOL} and the ones that are provided in the
  .tools/bin directory. The list of the first kind of tools is extracted
  from the mk/tools/ directory instead of being hard-coded. This adds
  a whole lot of new warnings.
2005-12-06 11:41:14 +00:00
rillig
7276fc4b34 - Improved detection of valid shell words once more.
- Rewrote the code for loading the deprecated.map file. It is only
  loaded once now. The code that checks for use of deprecated variables
  can handle multiple variables in a single line now.
2005-12-06 01:07:20 +00:00
rillig
a86447cb07 - Improved the regular expression for shell words by recognizing make(1)
variables that are not nested.
2005-12-05 23:50:16 +00:00
rillig
404ae4e715 - The heuristics for unnecessary .undef directives after .for were
unreliable, hence they are not fixed (deleted) automatically.
2005-12-05 21:56:13 +00:00
rillig
79c16d74db - Allow the "-" character in the "variable name" part of a ShellWord
that is an assignment. This change extends the quoting checks to
  CONFIGURE_ARGS in a usable way.
2005-12-05 21:46:18 +00:00
rillig
624eed5892 Don't fix patch files automatically, since after patching them the checksum
is changed, and the distinfo file is not updated automatically.
2005-12-05 20:23:44 +00:00
rillig
9470c06fdf - In PLIST files, only suggest replacing @unexec rmdir ... with @dirrm
for directories starting with %D.
- Converted load_make_vars_typemap() to the common form of caching
  subroutine. This makes pkglint about 10 percent faster.
- Added explanations for the :Q and the :M*:Q operators in Makefiles.
2005-12-03 03:16:18 +00:00
rillig
714c2498e8 * check that all values used for the PKG_OPTIONS are documented in
mk/defaults/options.description. Requested by Antoine Reilles via
  private mail.
2005-12-02 22:48:13 +00:00
rillig
e80f0f0519 - Allow the "?" character in Dependency. It is used as a placeholder for
a single character. Seen in some package versions like "pkg-200211??".
- Allow the "," and the "@" in filenames.
- Allow the "gopher" scheme in URLs.
- Don't warn for unexpected PERL5_PACKLIST, bases on PKGNAME, if the latter
  contains references to other variables.
- When PKGNAME is equal to DISTNAME, this is not a warning, only a note.
2005-12-02 20:15:00 +00:00
rillig
255f1d085f Added CONFLICTS, CC and CXX. The latter two are marked as read-only.
(Hi hubertf.)
2005-12-02 18:47:58 +00:00
wiz
f346082599 Mark USE_SOCKS as deprecated. 2005-12-02 17:09:12 +00:00
rillig
04433f52be Removed the warning that PKG_JVM was deprecated and PKG_DEFAULT_JVM
should be used instead. The latter has disappeared somewhat surprisingly
from pkgsrc.
2005-12-02 09:44:03 +00:00
rillig
0785914323 Allow append-only lists to be initialized using the "?=" operator, in
addition to initializing them to a commented empty value and using the
"+=" operator. Reenabled the check for BUILDLINK_RECOMMENDED.
2005-12-02 09:01:32 +00:00
rillig
2d6ed0430a Disabled the type check for BUILDLINK_RECOMMENDED, as it has produced
too many false positive warnings. Too bad that make(1) does not have a
"?+=" operator.
2005-12-02 08:56:09 +00:00
rillig
01461882e8 Allow direct use of tool names if the tool name is preceded by "${...}/". 2005-12-02 08:44:23 +00:00
rillig
205684d2a5 Unnecessary .undef directives in Makefiles can be fixed automatically if
all mentioned variables have been used in .for loops before.
2005-12-02 08:26:52 +00:00
rillig
dce6142cda All *.mk and Makefile* files can now be fixed automatically. 2005-12-02 08:08:36 +00:00
wiz
9dba4230f6 Mark USE_RSAREF2 for removal after 2005Q4. 2005-12-01 20:21:55 +00:00
wiz
382d475f21 Move USE_OPENLDAP from makevars.map to deprecated.map. 2005-12-01 20:13:16 +00:00
wiz
8958652d15 Move USE_INN from makevars.map to deprecated.map. 2005-12-01 19:48:05 +00:00
wiz
1c6d543c75 Move USE_OSS from makevars.map to deprecated.map. 2005-12-01 19:20:14 +00:00
wiz
c79f85ac70 Move USE_XFACE from makevars.map to deprecated.map. 2005-12-01 19:11:20 +00:00
wiz
3bfed04ca6 Move USE_SJ3 and USE_WNN4 from makevars.map to deprecated.map. 2005-12-01 19:08:15 +00:00
wiz
7f19d70f3b Move some obsolete variables from makevars.map to deprecated.map. 2005-12-01 18:26:01 +00:00
rillig
0d56f2ccee - RCS tags that appear in the @@ lines of patches in unified diff format
can be fixed automatically.
2005-12-01 17:00:52 +00:00
rillig
b1429f5adb - In resolve_relative_path(), PKGSRCDIR is replaced with $pkgsrcdir.
- In checkline_relative_path(), an info message is generated if a filename
  could not be resolved completely.
2005-12-01 16:11:27 +00:00
rillig
d9fbb06633 Unified the handling of relative pathnames and suppressed an error message
that files containing ${FOO} could not be found.
2005-12-01 15:21:56 +00:00
rillig
6354c2df6d ... and another fix for the same problem ... 2005-12-01 14:31:24 +00:00
rillig
b6c7e3f3b1 Bugfix for revision 1.402, in which the check for relative pathnames has
been rewritten.
2005-12-01 14:14:49 +00:00
rillig
dc15fda19c Adjusted the version number to the one that has been announced. (4.49 =>
4.48.)
2005-12-01 14:07:23 +00:00
rillig
924a4f8968 - Added the subroutine checkline_relative_path().
- Added a check for .include lines in all Makefiles and *.mk files to make
  sure that only existant files are referenced and that pkgsrc packages do
  not contain references to packages in pkgsrc-wip.
2005-12-01 14:01:59 +00:00
rillig
9d462108c7 Updated pkglint to 4.48.
Changes since 4.47:
- Output warnings for partial RCS tags in patch files.
- Added many warnings concerning Makefile directives and make targets.
2005-12-01 13:44:11 +00:00
rillig
d0c51b549c - Improved coverage of Makefile checks. Now every line of a Makefile or a
*.mk file is checked.
- Added warnings for unusual make targets. Everything except the usual
  {pre,do,post}-* targets is considered unusual. Exceptions may be declared
  in the Makefile using ".PHONY".
- The directives are checked to contain arguments if and only if needed.
- The .ifndef and .ifdef directives are marked as deprecated because
  the parsing algorithm of NetBSD's make is so bad that it cannot
  distinguish ".if" from ".ifdef".
- Added notes whenever ".undef" is used with a variable that had been used
  in a ".for" loop before. Undefining the variable is simply unnecessary.
2005-12-01 13:40:39 +00:00
rillig
18b653a43b - Made the check for spurious RCS tags in patches less strict. Now it finds
partial tags like $NetBSD:... that don't have a trailing "$".
2005-12-01 09:03:00 +00:00
rillig
8db730a262 - Clarified the documentation of the --import command line option. 2005-12-01 08:45:37 +00:00
rillig
8f38ceeec1 Updated pkglint to 4.47.
Changes since 4.46:
- Made the --explain command line option work.
- Added many explanations for existing diagnostics.
- Improved the diagnostics.
- In --autofix mode, no backup files are created anymore.
- Temporarily disabled the check for direct use of tool names.
- Fixed some false positive warnings.
- Added a check for the use of absolute pathnames in shell commands.
2005-12-01 04:11:56 +00:00
rillig
b8dbe27051 Replaced the DESCR from the year 2001 with a current one, since pkglint has
changed since that time.
2005-12-01 04:05:36 +00:00
rillig
5336c8a86d Fixed two typos. 2005-12-01 03:12:09 +00:00
rillig
34fc9c76f2 - Reintroduced the check for absolute pathnames in shell commands. This
check had been removed some time ago due to the huge number of false
  positives. Now that pkglint can parse shell commands quite well, it
  has been reintroduced, as absolute pathnames often indicate unportable
  features of a package. To implement this check (and a few others)
  accurately, the whole code for checking shell commands has been
  rewritten as a finite state machine.
2005-12-01 03:10:16 +00:00
rillig
36c0219841 - Disabled the check for direct use of tool names completely, as there are
two different kinds of tools in pkgsrc, which need different checks.
2005-12-01 01:45:54 +00:00
rillig
b8deaf4629 - Fixed a bug that had been introduced in revision 1.391, preventing
warnings that LIST+=FOO=${FOO} should rather be LIST+=FOO=${FOO:Q}.
  The cause was that I had added a capturing group in a regular
  expression that also contained a back reference (\2). Adjusted the
  back reference to \3. (This is the only place in pkglint where such
  back references are used, so I don't have much experience with them.)
2005-12-01 01:19:30 +00:00
rillig
6f1ef6bc47 - Added __STDC__, __GLIBC__ and __INTERIX to the list of known macros.
- The macro __sparc__ should be replaced with __sparc, so that the code
  works with SunPro, too.
2005-11-30 20:16:15 +00:00
rillig
659e0368d9 - Removed the unnecessary constant conf_rcsidstring. 2005-11-30 19:53:37 +00:00
rillig
4f356b467c - Added CFLAGS and CPPFLAGS to the list of variables that may contain the
names of tools instead of the tool variables.
2005-11-30 19:23:43 +00:00
rillig
6009d7d95c - Added an explanation for the warning about MKDIR => INSTALL_*_DIR. 2005-11-30 19:19:25 +00:00
rillig
10d9025714 - Restrict the autofix changes to apply only if the whole ShellWord
matches.
2005-11-28 00:33:55 +00:00
rillig
b25d847872 Updated pkglint to 4.46.3.
- Added the $line->replace() method for a convenient way to achieve simple
  autofix tasks.
- When autofixing, no backup file is created (it had been created before).
  1. Usually "cvs diff" is available.
  2. All current autofixed changes are trivial.
  3. The fixed file is first written to disk in a new file and then renamed
     to the original file, greatly reducing the risk of data loss.
- Fixed a bug in checkdir_package(): In the call to load_package_Makefile(),
  the last parameter had not been passed by reference, but by value.
  Luckily this had not influenced any other part of pkglint.
- While there, I noticed that it is not necessary to pass some subroutines
  the lines of all included Makefiles, so I removed that parameter.
2005-11-27 23:48:01 +00:00
rillig
75e8487cc6 - Renamed the type PlatformTuple into PlatformTriple.
- Added an explanation for invalid PlatformTriples.
2005-11-27 21:18:43 +00:00
rillig
cff72c8550 - Imported the explain() subroutine into ::main.
- Made pkglint's wording more polite ("Use" => "Please use").
2005-11-27 21:10:20 +00:00
rillig
4c81669b0b Updated pkglint to 4.36.2.
- Improved diagnostics for URLs that are not strictly pkgsrc-compliant, as
  requested on tech-pkg.
2005-11-27 20:25:49 +00:00
rillig
d001e9dfc8 Removed trailing white-space. 2005-11-27 20:12:44 +00:00
rillig
3980bc7be6 Updated pkglint to 4.46.1.
- Marked ALLFILES as deprecated.
- Degraded white-space warnings to notes.
- Added many explanations for the diagnostics.
2005-11-24 21:51:10 +00:00
rillig
ddc303f3f9 Bugfix.
- Removed the unused variable $opt_explain. It should really have been
  PkgLint::Logging::set_explain().
- In accordance to my personal idea of beauty, the --explain messages are
  indented as deep as the last diagnostics, and not by a single "\t".
2005-11-24 10:47:51 +00:00
rillig
f468c4d5c8 Implemented the --explain option and the checks for CPP macros in patch
files. New TODO items:

* extract the DISTFILES if they exist and check all files in them for:
  - security holes,
  - coding style violations,
  - possible unportable constructs
2005-11-24 10:18:50 +00:00
rillig
556eb8885a Updated pkglint to 4.46.
Changes since 4.45:
- Added the type ShellWord.
- Added quoting checks for variables that are appended to a
  List of ShellWord.
- Multiple -v increase the verbosity.
- The --autofix option is no longer undocumented, but still experimental,
  as this is the only part of pkglint that can modify external files.
- Added an --explain option that provides additional help for the
  diagnostics.
- Added checks for unportable CPP macro names in patches.
- Updated the documentation.
2005-11-24 10:16:54 +00:00
rillig
428d5674d5 - Not all possible plural variables have to be quoted with
:M*:Q instead of a simple :Q. Currently only the GNU configure
  scripts need the white-space stripped, so it's enough to quote
  those (see regex_gnu_configure_volatile_vars in the source).
2005-11-24 08:46:34 +00:00
rillig
681277d002 Updated pkglint to 4.45.3.
- Added detection of redirection operators and comments to the
  regex_shellword constant.
- Changed the naming conventions for list data types. Now List simply
  means a list. List+ means a list that should only be modified using
  "+=", not "=". List! means an internal list. And List!+ is the
  combination of both.

  The distinction is necessary because of the introduction of
  redirection operators in the regex_shellword. When checking the data
  type of list elements, the lists are split up into shell words instead
  of simply using split(). This leads to much better results.
- When splitting a variable value or shell command into words, anchor the
  regular expression at the beginning of the string.
2005-11-24 08:05:01 +00:00
rillig
a44445fa8e Improved, reindented and commented the regular expression for shell words. 2005-11-24 01:22:35 +00:00
rillig
b4a4cd753e Updated pkglint to 4.45.2.
- Removed log_subinfo().
- Added log_debug().
- Multiple -v command line options increase the verbosity.
- Added the regex_shellword constant that will allow better parsing of
  shell commands. Currently it is only producing debugging information.
- Long [info] messages have been changed to [debug] messages.
2005-11-23 22:12:03 +00:00
rillig
fe34e666fb When a list is appended to another list, like MAKE_ENV+=
CFLAGS=${CFLAGS}, check for the correct modifiers. The above is
obviously not correct, as CFLAGS may contain white-space.
CFLAGS=${CFLAGS:Q} is also a little wrong in that it may contain leading
and/or trailing white-space, which must be discarded, too, because the
broken GNU configure scripts cannot handle them correctly. This can be
done using ${CFLAGS:M*:Q}, which first splits CFLAGS into a list of
shell words, then selects all of them and finally combines the words
forming a nicely formatted string without leading and trailing
white-space where all entries are separated from each other by a single
space.
2005-11-23 06:05:52 +00:00
rillig
09ccc37a3a Updated pkglint to 4.45.1.
- Added a new type ShellWord that is used for MAKE_ENV and the like to
  check for invalid FOO="${VALUE}" additions. They really should be
  FOO=${VALUE:Q}, as they may already contain embedded quotes. This is
  especially important for CPPFLAGS and CFLAGS.
2005-11-23 05:18:46 +00:00
rillig
3ffb27719a Updated pkglint to 4.45.
- Fixed perl -T warnings:
  - Replaced $#{@{$lines}} with $#{$lines}.
  - Avoided calls to external programs (sed and digest).
- Removed redundant warning if DISTNAME is set to an invalid package name
  and PKGNAME is not defined.
- Changed dependency from pkgtools/digest to security/p5-Digest-SHA1.
2005-11-21 22:06:30 +00:00
rillig
9cb1e0009d * warn about unportable CPP macros in patches. 2005-11-21 16:56:02 +00:00
rillig
10c9716bc9 Fixed a syntax error. I had forgotten to begin a comment with a "#". 2005-11-21 07:24:51 +00:00
rillig
6efa75eb39 Updated pkglint to 4.44.
Changes since 4.43:
- Removed the remaining code that had been imported from FreeBSD's
  portlint.
- Removed the (undocumented) -Wvague option.
- Removed the -Wexec and -Wparen options. The latter had no effect at all,
  and the former cannot lead to false positives, so it is always enabled.
- Variable names starting with an underscore are reserved for internal
  pkgsrc use.
- Added some more type checks.
2005-11-20 20:09:35 +00:00
rillig
910a64aaed Reworked the in-file documentation on pkglint. Added section headings.
Renamed some subroutines to fit into the general scheme.
2005-11-20 19:58:46 +00:00
rillig
637bf9e082 Removed the (undocumented) -Wvague option. All diagnostics that had been
depending on this option have been converted to modern code, although it
can still be improved.
2005-11-20 19:04:20 +00:00
rillig
c4795a075c Don't print warnings for unknown "empty" directories like pkg/ and scripts/
that occur during "cvs update"s.
2005-11-20 13:59:37 +00:00
rillig
9ba2c80228 Updated pkglint to 4.43.2.
- Renamed the type Dependency to DependencyWithPath.
- Added new types Dependency, PlatformTuple and RelativePkgDir.
- Added some of the common variables to the list of typed variables.
2005-11-20 13:14:17 +00:00
rillig
b06833b0b6 Use $conf_pkgsrcdir instead of hard-coded "/usr/pkgsrc". 2005-11-20 12:32:17 +00:00
rillig
03c36b46c4 Added the $conf_make variable to solve compile-time errors. 2005-11-20 12:27:18 +00:00
rillig
99e0d66756 Updated lintpkgsrc to 4.43.1.
- In BATCH mode, that is for the bulk builds, hardcode PKGSRCDIR as
  /usr/pkgsrc. Otherwise take ${PKGSRCDIR}.
2005-11-20 10:55:43 +00:00
rillig
5cf5e4b62f Don't report *_MK variables as unchecked. 2005-11-20 10:07:45 +00:00
rillig
c790505a33 Variable names starting with an underscore are reserved for internal
pkgsrc use.
2005-11-19 19:28:06 +00:00
rillig
e6069e52f8 Code cleanup.
- Removed some of the old checks.
- Replaced some of the old checks with modern code.
- Replaced some of the old checks with TODO markers.
2005-11-19 19:18:56 +00:00
rillig
b92397af64 Replaced the special purpose variable $seen_USE_PKGLOCALEDIR with the
$makevar table. This allows for easy checks that involve more than only
one variable.
2005-11-19 18:26:32 +00:00
rillig
3fa3f9f6a3 Removed the old EXTRACT_SUFX check. 2005-11-19 17:58:12 +00:00
rillig
5a42297464 Don't complain if no MAINTAINER is given. 2005-11-19 17:54:37 +00:00
rillig
316a73bcbe Oops, covered the tracks from last-minute tests. 2005-11-19 17:23:49 +00:00
rillig
562cdf5268 Updated pkglint to 4.43.
Changes since 4.42:
- Reduced the number of duplicate diagnostics when checking multiple files.
  Only diagnostics concerning the current package are printed.
- Added checks for EXTRACT_SUFX and PKG_INSTALLATION_TYPES.
- Added a work-around for the PHP patches warnings.
- PERL5_PACKLIST should not contain references to other variables.
- Added the -s|--source command line option to show the code along with the
  diagnostics.
- Fixed a bug in get_logical_line(); logical lines have not had their
  physical lines attached.
- Deprecated variables are not only checked when they are defined but also
  when they are used.
2005-11-19 17:22:21 +00:00
rillig
9e07829918 Updated pkglint to 4.42.2.
- Added a check that PERL5_PACKLIST does not contain references to other
  variables. Some packages have ${PERL5_SITEARCH} in it, which results in
  a double slash, and the CHECK_FILES framework cannot handle this.
2005-11-19 13:34:41 +00:00
rillig
a1247dd801 Values in SUBST_CLASSES may be tool names. 2005-11-15 13:48:42 +00:00
rillig
3f52be8402 USE_JAVA2 may be "YES", too. 2005-11-15 13:42:50 +00:00
rillig
e0161be7eb Removed the (vague) check for "nb\d+" in DISTNAME. 2005-11-15 13:37:55 +00:00
rillig
77d1409d5f * mention the SUBST framework whenever ${SED} is used. 2005-11-15 10:30:54 +00:00
rillig
e60dd8de73 Updated pkglint to 4.42.1.
Added a work-around for the warnings from PHP modules when including
lang/php/ext.mk.
2005-11-15 03:10:20 +00:00
rillig
fcc9603807 Don't hide errors in the post-install stage. 2005-11-15 01:55:53 +00:00
rillig
57807fc95b MANINSTALL is a user-settable variable and thus must not be defined by
the package Makefile.
2005-11-15 01:55:00 +00:00
rillig
b8c93f2e88 The last change was a bad idea. Reverted it partly. Now pkglint -I shows
the whole file with included files again, but the checks are only done
against the main Makefile.
2005-11-14 16:49:20 +00:00
rillig
ca37329f8e * warn about the use of ${WRKDIR:=...}, as this construct should only
be used with lists.
2005-11-14 13:07:05 +00:00
rillig
84daccf125 WRKSRC is of type WrkdirSubdirectory, but no new checks are added. 2005-11-14 13:03:32 +00:00
rillig
b833d407cc - EXTRACT_SUFX is of type DistSuffix. 2005-11-14 12:51:57 +00:00
rillig
5b6ded4f08 The readmakefile() subroutine only returns the lines of the main Makefile
in the $all_lines parameter, but the whole text of the included files in
the $whole parameter.

This change avoids duplicate diagnostics for *.mk and Makefile* in the
package directory. A side effect is that package authors only get the
diagnostics they can probably fix, as diagnostics from included files are
not given.
2005-11-14 12:32:58 +00:00
rillig
6f16fd47e3 * avoid duplicate warnings. 2005-11-14 11:47:07 +00:00
rillig
b4f8c1132f Updated pkglint to 4.42.
Changes since 4.41:
- In .mk files, line continuations are properly handled.
- An open bracket is allowed in variable and tool names.
- Added checks for ALTERNATIVES and INSTALL/DEINSTALL files.
- By default, don't check files in ${FILESDIR}.
- Warn about unknown file and directory names.
2005-11-14 11:45:52 +00:00
rillig
79c6c6d064 * detect spelling errors in variable names 2005-11-14 06:35:36 +00:00
rillig
250b0281ae - File::stat is used instead of the -d and -f operators to get the file
mode in checkitem().
2005-11-14 05:57:54 +00:00
rillig
72af8b9eac When checking for the existence of a dependency, use
${pkgsrcdir}/${PKGPATH} instead of ${current_dir}/../../${PKGPATH}.
2005-11-14 04:47:44 +00:00
rillig
bd4c20a0a1 - Allow an opening bracket in variable names and tool names. 2005-11-14 04:38:27 +00:00
rillig
08701c7d25 When loading .mk files, lines are properly converted into logical lines. 2005-11-14 04:30:31 +00:00
rillig
bf194ac42e Made sure that global variables are only accessed if they are defined.
Checking individual files is no longer experimental.
2005-11-14 04:24:14 +00:00
rillig
bc0aa35a22 Updated pkglint to 4.41.
- Documented the --recursive option.
- Added an option -Cmk for checking .mk files besides buildlink3.mk.
- pkglint can handle individual files on the command line, not only
  packages. (experimental)
- Replaced checkfile_buildlink3_mk() with checkfile_mk().
- Factored out the checkfile() subroutine from checkdir_package().
2005-11-14 04:05:22 +00:00
rillig
273de48d5a The exitcode from running pkglint in the post-install target is ignored,
since the pkglint Makefile sets MANINSTALL but shouldn't, as this
variable is intended to be user-defined. This is only a work-around,
which needs to be addressed properly for the other packages setting
MANINSTALL, too.
2005-11-13 17:39:05 +00:00
rillig
50e33be5f5 - Improved the way the tool names are detected once more. 2005-11-10 19:47:41 +00:00
rillig
72aa168b19 Updated pkglint to 4.40.
- Removed all references to the build-time pkgsrc directory, ${PKGSRCDIR}.
  This makes the binary package independent of the build location.
  Fixes PR 32006.
2005-11-10 14:30:56 +00:00
rillig
c812c03911 * Find a reliable, secure way to delete all CVS directories inside
${WRKSRC}. When that is finished, add a warning that using ${XARGS}
  is insecure.
2005-11-10 12:19:58 +00:00
rillig
e19e0913cd Moved the checks for the COMMENT from checklines_package_Makefile() to
checktext_basic_vartype() to shorten the former subroutine.
No user-visible changes.
2005-11-10 12:04:11 +00:00
rillig
bfe651305d - Improved the detection of tool names once more. 2005-11-10 11:14:03 +00:00
rillig
f619b2875c Updated pkglint to 4.39.
Changes since 4.38:
- Disabled the check on Makefile variable order, as the discussion on
  tech-pkg has not finished yet.
- Improved detection of valid tool names.
- Improved detection of direct use of tool names. (Less false positives.)
- Improved the diagnostics for direct use of tool names.
2005-11-10 11:03:57 +00:00
rillig
b0884ccf36 Updated pkglint to 4.38.4.
- Improved detection of valid tool names.
- In the post-install target, output does to stderr instead of stdout.
2005-11-10 10:26:46 +00:00
rillig
b0d7992a4c Added (currently disabled) code to scan for variable names in
pkgsrc/mk/defaults/mk.conf. All those variable names are then checked as
being of type Userdefined. As that file is currently too unstructured
and contains too much garbage, this check cannot yet be enabled.
2005-11-10 07:46:24 +00:00
rillig
20e8563c6a Removed the -l command line option from lintpkgsrc(1). Use "pkglint -r"
instead.
2005-11-08 23:05:22 +00:00
rillig
b0ee766802 Updated pkglint to 4.38.2.
- pkglint(1) does not use the hard-coded PKGSRCDIR anymore.

This fix is related to PR 32006, but doesn't fix it, since the PR is
about lintpkgsrc(1), not pkglint(1).
2005-11-08 22:55:22 +00:00
rillig
aad6e5d4eb - Disable checking for variable names starting with an underscore. Due
to the lang/perl5 package there have been more than 19000 new error
  lines in the diagnostics of the complete pkgsrc tree.
2005-11-08 22:27:12 +00:00
rillig
f028caef78 Fixed a typo ($line->error -> $line->log_error). 2005-11-08 21:13:43 +00:00
rillig
b9cc275c78 Updated pkglint to 4.38.1.
- It is an error if packages define a variable whose name starts with an
  underscore.
- Removed the (vague) "wip" check, as it has been replaced by special checks for
  DEPENDS and .include directives.
- Disabled the check for variable ordering until the discussion on tech-pkg
  has led to any results.
2005-11-08 21:09:48 +00:00
rillig
b892acdfdc diff:
- check for magic numbers like 0755, 755, 644
+ check for direct use of user names and group names
2005-11-08 21:00:33 +00:00
rillig
7428daea90 Updated pkglint to 4.38.
- PKGNAME is checked for being a valid package name.
- PLIST files should not contain filenames that match */CVS/*.
- Completely rewrote the check for variable ordering. The new code
  operates on a data structure that's easily understandable and
  extendable (see the source for an example). It also generates greatly
  improved diagnostics. As the old code had been enabled only when
  checking with -Wvague or -Wall, it has been seldom used anyway.
2005-11-07 00:45:01 +00:00
rillig
b59bd19d70 + check for magic numbers like 0755, 755, 644 2005-11-06 22:38:36 +00:00
rillig
0ce39795b4 * check Makefile directives
* check _every_ line of the Makefiles
* warn about the use of ${SED} in {pre,do,post}-install
2005-11-06 15:59:48 +00:00
rillig
7fb5f1c563 + include "../../mk/bsd.prefs.mk" before any .if. 2005-11-06 15:55:24 +00:00
rillig
f6f03b2d1e Added a note that SUBST_SED might be changed to a List instead of a
List* later.
2005-11-06 15:54:06 +00:00
rillig
5bcd0d42ba Updated pkglint to 4.37.2.
- Removed the hard-coded values for valid tool names.
  The detection is good enough.
- Make sure that the domain part NetBSD.org is written like this
  in mail addresses.
2005-11-05 11:02:53 +00:00
rillig
1665492f83 Updated pkglint to 4.37.1.
- Improved detection of valid tool names.
2005-11-04 22:54:59 +00:00
rillig
468109656e Fixed regular expression for finding valid tool names. Added debugging
output for tool names. Sorted and aligned the list of known tools.
2005-11-04 21:59:37 +00:00
rillig
cbf5e9ec5c Manually added some commonly used tool names. 2005-11-04 21:43:12 +00:00
rillig
7f80741221 Allow "-" in Tool names. 2005-11-04 21:30:35 +00:00
rillig
26fbd1036b Updated pkglint to 4.37.
- Added checks for TOOL_* variables.
- Added {pre,do,post}-extract to the list of valid stages.
- Fixed the regular expression for detecting tool names.
- Added a check for invalid syntax in tool names.
- Improved the diagnostic for enumerations.
2005-11-04 20:39:49 +00:00
rillig
9df8a0ff82 - PLIST_SRC may be set with both "=" and "+=".
- Allow variables as Option.
- Improved the diagnostic for "invalid subdirectory of ${WRKSRC}".
2005-11-04 17:29:02 +00:00
rillig
aee7d5cd02 Added trailing dot to the diagnostics where it was missing. 2005-11-04 17:04:49 +00:00
rillig
0e8bf529d9 Updated pkglint to 4.36.1.
- Added many of the variables found in pkgsrc/mk/* to makevars.map.
- Added the function log_fatal, whose output goes to stderr instead of
  stdout.
- All files in pkgsrc/mk/ are excluded from checking, as they may use
  private variables and do other questionable things.
- Removed the Language type, as it is a simple enumeration.
- Added the Userdefined type to distinguish user-definable and read-only
  variables.
2005-11-04 17:00:58 +00:00
rillig
84dc0f88aa Updated pkglint to 4.36.
Implemented checking for enumeration types. Added new types Filemask,
Filename, Language, Option, Pathmask, Pathname, Stage, Varname and
WrksrcSubdirectory. Made the check for URLs stricter. Added some
variables to the makevars.map file.
2005-11-04 13:57:35 +00:00
rillig
916d79ef91 I knew there had been a program that uses the (now removed) -Wno-workdir
option. I just didn't think it was pkglint itself. :)
Thanks to Martti for notifying me about that.
2005-11-04 10:09:13 +00:00
rillig
4478d43858 Updated pkglint to 4.35.
Removed the -Wworkdir option. Added an --import option that replaces
-Wworkdir. Changed the warning about uncleaned work* directories into an
error. Updated the man page.
2005-11-04 09:32:03 +00:00
rillig
b50c1b58d7 Updated pkglint to 4.34.
Fixed the --autofix handling of category Makefiles. Added an --import
option that helps importing packages from pkgsrc-wip. When checked with
--import, the package is checked as if it weren't part of pkgsrc-wip.
2005-11-04 08:40:59 +00:00
rillig
94c299cd71 include ../../mk/bsd.prefs.mk before using "+=". 2005-11-03 23:28:09 +00:00
rillig
3dd3e17928 The "../.." and PERL5_PACKLIST checks are implemented. 2005-11-03 23:27:10 +00:00
rillig
fb6d872ea2 Updated pkglint to 4.33.1.
Fixed undefined behavior when reading a file that ends in a continuation
line. Any use of ${WRKSRC}/.. is considered an error, as ${WRKSRC} is
meant to point to the top of the build directories. A proper combination
of WRKSRC, CONFIGURE_DIRS and BUILD_DIRS should be used instead. Sorted
the makevars.map file and added SUBST_CLASSES.
2005-11-03 18:49:32 +00:00
rillig
6030a9b69a Updated pkglint to 4.33.
Changes since 4.32.2:
  - Added checks for CATEGORIES.
  - Modernized checks for DEPENDS and BUILD_DEPENDS.
  - Simplified PLIST directive checks.
2005-11-03 12:35:05 +00:00
rillig
4e20502765 Added "linux" to the list of allowed categories. 2005-11-03 12:32:07 +00:00
rillig
80c7827080 Added comments for global variables. Renamed $loglines to $lines, as the
checking routines don't use physical lines anymore, so there's no need
to distinguish them. Removed deprecated "@" line checks from the PLIST
checker. These lines are all reported as "Unknown PLIST directive" now.
2005-11-03 10:34:26 +00:00
rillig
7fb03012a3 Added DEPENDS_TARGET, FETCH_DEPENDS, LIB_DEPENDS and RUN_DEPENDS to the
list of deprecated variables.
2005-11-02 23:18:38 +00:00
rillig
fdde06dd95 Modernized the check for dependency items. Stricter URL checking.
Removed the warning for a single element in DISTFILES, as I don't see
any reason for keeping it.
2005-11-02 23:11:54 +00:00
rillig
d17bab85f0 Added two global variables, $current_dir and $is_wip. This reduces the
number of parameters to many subroutines.
2005-11-02 21:33:37 +00:00
rillig
f7d9a0a2cb Added a check for valid CATEGORIES. The new type List* is the same as
List, except that no warning is reported for not using the "+="
operator.
2005-11-02 20:16:02 +00:00
rillig
57a5599717 Replaced the global $conf_* variables with constants of the same name. 2005-11-02 19:00:16 +00:00
rillig
9123ffe699 Converted the global regular expression variables into constants. 2005-11-02 18:55:15 +00:00
rillig
9165945bb1 Added the --long-options to the --help output. Replaced some constants
inline, as they had only been used once.
2005-11-02 18:50:52 +00:00
rillig
61d017f3a0 Updated pkglint to 4.32.2.
Added a check for invalid uses of MASTER_SITE_* variables.
2005-11-01 23:08:42 +00:00
rillig
7024427060 Updated pkglint to 4.32.1.
Added type check for USE_TOOLS. Fixed false warning about direct use of
tools in comments.
2005-11-01 21:39:31 +00:00
rillig
438ad41261 Updated pkglint to 4.32.
The --autofix support has been rewritten to be more easily usable.
Automatic fixes are currently restricted to the sort order of SUBDIR
entries in category Makefiles. It had been the complete category
Makefile before. Added a new diagnostic, prefixed with "NOTE:", that is
used for important informational diagnostics, for example autofixed
files.
2005-11-01 01:08:38 +00:00
rillig
433d544b58 As I don't know how many backslashes are needed inside backticks to make
one backslash reach the argument to sed(1), the backticks are replaced
with a call to open("... |"). Now the first argument to sed(1) contains
\$ instead of a simple $.
2005-11-01 00:26:35 +00:00
rillig
6b5a2446b0 Updated pkglint to 4.31.2.
Added the expected and actual checksums to the diagnostics if they
differ for patches.
2005-10-30 23:09:40 +00:00
rillig
6e9dde0fd4 Added three methods insert_before(), insert_after() and delete() to a
Pkglint::FileUtil::Line, which will be used for the --autofix option.
No user-visible changes.
2005-10-30 23:03:41 +00:00
rillig
41fe22047c When checking Makefiles, get rid of the "physical" lines as soon as
possible and base all other checks on the logical lines. The physical
source lines are saved literally to make implementing the --autofix
option easier.
2005-10-30 22:11:38 +00:00
rillig
6b1c7caead Removed two unused variables. 2005-10-30 19:54:36 +00:00
rillig
ec7b393671 Updated pkglint to 4.31.
Changed the names of the datatypes (Yes_Or_Undefined => Yes, Boolean =>
YesNo, Integer => PkgRevision) in makevars.map. It is now an error if
PKGREVISION appears outside a package Makefile. Improved detection of
Makefile.common. Improved wording of the warning for relative
directories in the form ../package.
2005-10-26 23:17:49 +00:00
rillig
5219926c41 Updated pkglint to 4.30.
Rewrote the typechecking code for Makefile variables. The variable
definitions are extracted from logical lines instead of physical lines,
comments are separated from actual values, for Lists of something, each
something is checked. All URLs are subject to MASTER_SITES expansion.
MASTER_SITES is checked to be a List of URLs.
2005-10-24 23:54:37 +00:00
rillig
cbf57a228a Completely rewrote plist-clash.pl. It has been unmodified for 7 years,
while pkgsrc has changed dramatically. Now it is usable again, although
far from perfect.
2005-10-24 20:56:53 +00:00
rillig
166c6a1177 Report an error if an unknown line occurs in a PLIST. (Most of these
lines are actually empty.)
2005-10-24 20:37:57 +00:00
rillig
a047b04902 Allow all variables ending in _SED or _AWK to be constructed using the
"+=" operator.
2005-10-24 19:56:05 +00:00
rillig
eaf1102c55 Removed those deprecated variables that are unused in current pkgsrc and
pkgsrc-wip.
2005-10-24 19:52:26 +00:00
rillig
71d6878bea Generally allow $Id$ instead of $NetBSD$ in files from pkgsrc-wip. 2005-10-24 18:20:40 +00:00
rillig
2646e626ec Updated pkglint to 4.29.1.
Added CONFLICT to the list of deprecated variables (actually it's a
typo). Added PLIST_SUBST to makevars.map as a List. Allow comments after
a YES/yes/NO/no value of variables.
2005-10-23 23:14:57 +00:00
rillig
c751f422d3 Updated pkglint to 4.29.
Fixed the detection of list variables that are modified with operators
other than "+=". Added *_SKIP to the list of plural variable names.
Removed some unused variables from main(). (This change include
white-space changes.)
2005-10-23 19:20:33 +00:00
rillig
1f0db6c2cc Updated pkglint to 4.28.2.
Added a data type Readonly for variables that must not be given any
value at all by the package Makefile. Marked PKGBASE and PKGVERSION
read-only, because leaving them read-write would make the way PKGNAME is
calculated too complex. Made the check for the "+=" operator independent
of the data type. Added more patterns for accepted variable names for
lists.
2005-10-21 07:20:24 +00:00
rillig
e95f2f49e0 Updated pkglint to 4.28.1.
Declared some more variables as List types. Added a check that
PERL5_PACKLIST matches the PKGNAME.
2005-10-14 09:23:46 +00:00
rillig
14948b389c Updated pkglint to 4.28.
Added support to typecheck "List of Something" in Makefile variables.
DEPENDS and BUILD_DEPENDS are of type List of Dependency, CFLAGS are
simply a List.
2005-10-14 00:05:23 +00:00
rillig
e79b082b35 "-Wl,-rpath" should not be used directly. ${COMPILER_RPATH_FLAG} is better. 2005-10-13 20:17:45 +00:00
rillig
23a0f74cf2 Updated pkglint to 4.27.
Added a warning that ${PKGNAME} and ${PKGVERSION} should not be used in
some other variables, as they may contain the PKGREVISION.
2005-10-13 00:23:53 +00:00
rillig
22b947030e Updated pkglint to 4.26.
Improved the wording of two diagnostics. Added a check for SUBST_STAGE.
2005-10-09 18:24:11 +00:00
rillig
593971ad6f Updated pkglint to 4.25.
Improved heuristics for packages that use some common Makefiles,
reducing the number of false diagnostics in -Wvague mode. Moved checks
for SVR4_PKGNAME out of -Wvague mode. Added check for misspelled
NO_{SRC,BIN}_ON_{FTP,CDROM}.
2005-10-07 17:34:11 +00:00
rillig
2614ff83d0 Updated pkglint to 4.24.
Warn if option names contain underscore characters (suggested by dillo).
NO_TOOLS and NO_WRAPPER are deprecated, as they are not used anymore.
2005-10-07 10:24:42 +00:00
rillig
74c36f7f68 Removed unused NO_TOOLS. 2005-09-29 13:38:37 +00:00
rillig
f89bcc71b5 Allow "# defined" as value for multiple inclusion guards in Makefile.common. 2005-09-28 21:39:05 +00:00
rillig
2c69e8a894 Updated pkglint to 4.23.2.
The use of "# defined" as variable value in Makefiles is deprecated. It
has too weak semantics, compared to "# none", "# empty" or "yes".
2005-09-28 20:47:39 +00:00
rillig
3184319c95 Cleaned up the TODO list. 2005-09-28 16:34:47 +00:00
rillig
ef92691af7 Updated pkglint to 4.23.1.
BUILD_USES_MSGFMT should always be set to YES/yes or left undefined. When
checking for direct use of tools, respect shell commands.
2005-09-28 14:12:38 +00:00
rillig
254a069785 Fixed the indentation for "Other arguments". 2005-09-28 10:39:35 +00:00
wiz
509439f0fd Regen. 2005-09-28 10:06:58 +00:00
wiz
be89638ba1 Sort option descriptions. 2005-09-28 10:06:29 +00:00
rillig
7024fb38d4 Updated to pkglint-4.23.
Added the -R command line option to allow more RCS Id tags than $NetBSD$
to appear in line 1 of almost every file. Suggested by dillo.
2005-09-28 09:44:42 +00:00
rillig
234e62b9d0 Updated pkglint to 4.22.
A distfile that only has an SHA1 checksum, but not an RMD160 one, is
considered an error. While at it, made the distinfo file check a little
stricter.
2005-09-27 21:13:20 +00:00
rillig
d8c6d398a6 Updated pkglint to 4.21.5.
Insist that PKGREVISION should be an integer or be undefined at all.
2005-09-27 18:58:56 +00:00
rillig
718b487651 Updated pkglint to 4.21.4.
The last change introduced some false positive diagnostics. If a
distinfo file contains the checksum for a patch that does not exist,
this is not considered to be an error, but only a warning, as the
additional checksums do not influence the package.
2005-09-23 13:08:23 +00:00
rillig
24412e2a4e Updated pkglint to 4.21.3.
Fixed false positive errors for PHP packages.
2005-09-22 15:54:23 +00:00
rillig
5ed3de4dcc Updated pkglint to 4.21.2.
Changed the file name pattern for patch files to avoid false positives
for DISTFILES that start with "patch-" (requested by salo). Added a
warning for invalid patch file names.
2005-09-22 11:56:37 +00:00
rillig
5ea208ffc4 The diagnostics for the COMMENT variable checks include the location and
are therefore enabled by default. Requested by wiz.

Set the version to 4.21.1.
2005-09-22 01:46:46 +00:00
wiz
9c8b05d7af regen 2005-09-10 22:33:14 +00:00
wiz
2624c4e38a Date string needs no leading zeroes. 2005-09-10 22:32:54 +00:00
wiz
81184e6850 Use \*[Am] instead of & for HTML output. 2005-09-10 22:32:43 +00:00
rillig
eadbcbe2f0 This is pkglint-4.21.
Changes since 4.20 include:
 - In the diagnostics, FATAL is replaced with ERROR.
 - The command line option -g changes the format of the diagnostics to be
   similar to the one of gcc.
 - Removed false warnings when checking if PLISTS are ordered.
 - Removed the check for contiguous blank lines.
 - Added a check to PLISTs that man pages are not installed in share/man.
 - pkglint -r allows to recursively check directories.
 - The pkgsrc root directory can be checked.
 - Removed false warnings for patches that contain "---" lines.
 - Switched to checking logical lines instead of physical lines.
   Diagnostics for logical lines contain the range of physical lines
   instead of a single line number.
 - Some ../.. path components are stripped from the diagnostics.
 - When checking for the direct use of tool names, only the context of the
   use, not the whole shell command is output.
 - Patches that contain RCS Ids should not have the -ko CVS mode anymore.
 - Variables that are modified using the "+=" operator are considered to be
   lists, so they should have a name indicating a plural.
2005-09-09 12:16:29 +00:00
rillig
fe420411f3 Changed the regular expression for detecting valid .include lines in
Makefiles. I had intended not to read files whose name contains $
characters, but had not written exactly that in the code.
Fixes PR 31213.
2005-09-09 11:05:00 +00:00
rillig
15b9d4d943 Bugfix: The subdirectories of the pkgsrc root directory are listed
correctly. With the -r option, the order of directories is now
depth-first.
2005-09-06 10:30:00 +00:00
rillig
c3115e6a7c Added a check for variables that are modified using "+=". As they are
mostly lists of something, their name should be a plural form. There are
many exceptions to this rule, mostly because of backwards compatibility.
2005-09-05 15:45:29 +00:00
rillig
ffc5bb8970 Replaced two instances of ad-hoc regular expressions with regex_varassign. 2005-09-05 13:27:36 +00:00
rillig
771539924d The continuation line indicator in regex_varassign is not needed
anymore, since assignments are checked on logical lines instead of
physical lines.
2005-09-05 13:06:20 +00:00
rillig
29776bf19e Use logical lines for the validation of Makefiles rather than physical
lines. Print line ranges instead of the starting line in diagnostics.
2005-09-04 21:06:05 +00:00
wiz
072a396460 regen (under 2.0) 2005-09-04 18:45:46 +00:00
wiz
1d897c6696 New sentence, new line. 2005-09-04 18:45:36 +00:00
rillig
71c7552b19 Changed the wording of the diagnostics message when a patch contains an
RCS tag. Suggested by hubertf.
2005-09-04 00:33:18 +00:00
rillig
4184bfe32f Made the code in get_logical_line easier. 2005-09-04 00:26:13 +00:00
rillig
188a8676f4 Updated the man pages. 2005-09-04 00:04:15 +00:00
rillig
c99410f597 When RCS Ids are detected in patches, don't suggest the -ko mode, but
ask the user to remove the offending line from the patch.
2005-09-03 22:23:46 +00:00
rillig
ab783f6d5a As the shell commands in Makefiles can be quite long, only the close
neighborhood of the tool name is printed when checking for direct use of
tools.
2005-09-03 11:53:15 +00:00
rillig
d646a03983 Added section comments and renamed some subroutines and variables. 2005-09-03 10:41:23 +00:00
rillig
b27cb882b9 Made the import clauses uniform. 2005-09-03 10:19:05 +00:00
rillig
b57ad50501 Removed the -Winternal flag and the checks for the ":=" operator. There had
been too many spurious warnings to be worth the effort.
2005-09-02 22:45:31 +00:00