Age | Commit message (Collapse) | Author | Files | Lines |
|
Changes since 5.3.4:
* Added parser for Makefile conditionals
* Variables that are matched using the :M modifier are checked whether
the matched value is sensible
* Reworded and explained warning for variable ordering in packages
* Fixed bug in Tree.String
* Fixed a few variable types
|
|
Notable changes include:
* The whole code has been rewritten in Go
* It is much faster, especially in recursive mode
* The code has unit tests, providing examples of use
* Some new explanations for existing warnings
* Some adjustments to previous warnings
|
|
|
|
|
|
|
|
|
|
- Improved allowed filenames for patches
- Added license for pkglint itself
- Cleaned up Makefile and TODO
|
|
|
|
|
|
|
|
set by default by the infrastructure.
Remove highly obsolete TODO entry about destdir.
Bump version.
|
|
Changes since 4.92:
- Changes for the changing pkgsrc infrastructure
- Added basic support for LICENSE expressions
|
|
|
|
|
|
|
|
|
|
|
|
it.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
* Check for parallel files/dirs whose names differ only in case
(suggested by heinz)
* Check for German text in pkgtools/pkglint/TODO.
|
|
magic.
|
|
|
|
|
|
Packages using lang/python/extension.mk must follow the naming scheme
or otherwise they can't be depended on.
|
|
|
|
* Check all the shell commands to see if they are mentioned in USE_TOOLS.
|
|
variables for use in other files.
|
|
This change includes all the things I thought of during the freeze of
2006Q2.
Some variables have disappeared from pkgsrc without notice. Marked them
deprecated to help the package authors at least a bit.
Renamed some ACL abbreviations in makevars.map and adjusted the variable
definitions.
Added the command line options -Dtrace, -Dunchecked and -Dunused.
Some variables may contain unexpected white-space and therefore should
not be used in .for loops.
The -Dmisc option replaces the --verbose option (and the log_info
subroutine), which does not exist any longer. This eliminates all
instances of "OK:" from the output, which I didn't like from the
beginning. The -Dmisc option also takes over many warnings that have
been issued by --debug before.
Improved the check for absolute pathnames. Especially, everything that
follows ${DESTDIR} or $(DESTDIR) in a Makefile is considered an absolute
pathname. This reveals many wrong uses of DESTDIR (as defined by the GNU
coding standards), for example $(DESTDIR)/$(prefix), which should be
$(DESTDIR)$(prefix) instead.
Almost every use of a make(1) variable is checked for spelling mistakes.
Before, only the definitions of variables have been checked.
Restricted the use of variables to specific files, which are defined in
makevars.map. This catches especially buildlink3.mk files with
unexpected side effects.
In shell commands, neither "echo" nor "echo -n" or "${ECHO} -n" should
be used. Since the INSTALL_*_DIR commands can only handle one directory
at a time, suggest to use INSTALLATION_DIRS instead.
Greatly improved the checks for dependency specifications, especially to
find foo-*, which should rather be foo-[0-9]*.
Fixed the incorrect handling of LICENSE_FILE (now using $line->text
instead of $line).
Improved the wording of the "plural names" warnings, so that for known
variables it is "The += operator should only be used with lists." now.
In buildlink3.mk files the uppercase and lowercase names of the package
should correspond with the package name. This catches many
copy-and-paste mistakes. Fixed many null pointer exceptions as well. In
addition, every buildlink3.mk file needs a definition of
BUILDLINK_API_DEPENDS.
In patch files, absolute pathnames and unportable macro names are
checked not only in added lines, but also in the context lines.
In the pkgsrc root directory and the category directories, the Makefiles
are checked like every other Makefile, too.
Fixed the place where the global variables for the package context are
defined and later undefined.
Variables that are mentioned in EVAL_PREFIX may be used in the current
file and are not flagged as "used but not defined".
When parsing shell words in Makefiles, recognize $<, $@, $^ and $/.
(The latter is used extensively by openoffice to represent a directory
separator.)
Fixed some minor bugs:
* $makevar had been defined unintentionally by using the -> operator.
|
|
|
|
|
|
|
|
Changes since 4.61:
- Bug fixes.
|
|
|
|
Changes since 4.59:
- For many variables the :Q operator is not needed (by definition), for
example some pathnames, user names, group names.
- Improved the diagnostics for planned package updates.
- Various catch-ups to recent changes in the infrastructure, among them
BUILDLINK_ABI_DEPENDS and gettext.mk.
- When the PLIST contains a libtool archive, the *.a and *.so files don't
have to be mentioned explicitly.
|
|
package doesn't say it uses libtool. Warn for redundant libraries,
when the libtool archive is also included in the PLIST.
|
|
Maybe we can use some of them.
|
|
warnings. For example, checkline_foo() may need to know what has
happened in the file before that line.
|
|
devel/gettext-lib/buildlink3.mk being included. This is often,
but not always incorrect.
|
|
|
|
config.guess and config.sub as well.
|
|
|
|
even more precise diagnostics
|
|
|