summaryrefslogtreecommitdiff
path: root/pkgtools/pkglint
AgeCommit message (Collapse)AuthorFilesLines
2006-12-06Fixed the Assertion error on .include lines that end in trailingrillig1-3/+6
white-space. Instead of including intltool/buildlink3.mk directly, a simple USE_TOOLS+=intltool suffices.
2006-12-06texmf-dirs is up to 1.4.wiz1-1/+2
2006-12-01Added the CHECK_* variables.rillig1-3/+12
2006-11-25Fixed some typos in the pkglint documentation. Reported by OKANOrillig2-5/+5
Takayoshi in a private mail.
2006-11-22+ BSD_MAKE_ENVrillig1-1/+2
2006-11-18PKG_SKIP_REASON is marked as deprecated, since it is usually used torillig1-1/+2
mark a package as not being able to build, due to some fatal error. I don't see any reason _not_ to use PKG_FAIL_REASON in those cases.
2006-11-09Variable names don't need to be quoted.rillig1-3/+3
2006-11-09Some minor tweaks; added DESTDIR.rillig1-4/+5
2006-11-09+ SKIP_PORTABILITY_CHECKrillig1-1/+4
2006-11-01Add PKG_DESTDIR_SUPPORT to variable list. Bump to 4.73.joerg2-3/+4
2006-10-30Added a warning that ${VARIABLES} in the DESCR file are not expanded.rillig1-2/+8
(Requested in PR 34920.) The warning about uncommitted patch files only appears when the distinfo file is already committed.
2006-10-24Fixed a typo in the absolute pathname checks.rillig1-4/+8
${PREFIX}/${PKGMANDIR} is preferred over ${PREFIX}/man. {ONLY,NOT}_FOR_PLATFORM may appear multiple times in the package Makefile.
2006-10-23Update to 4.72: check for .tbz as well as .tgzabs2-4/+4
2006-10-22Fixed a heading.rillig2-4/+3
2006-10-22Absolute pathnames may appear in the form basedirvar + '/man1' in sourcerillig1-1/+4
code.
2006-10-18Added CHECK_FILES_SUPPORTED and some Postgres variables.rillig1-1/+5
2006-10-17The absolute pathname /bin/sh is allowed, despite the Solaris /bin/sh.rillig1-1/+6
The WRKSRC variable (among others) is checked to consist of ony one word. The url2pkg tool had created lines like WRKSRC= ${WRKDIR}/Makefile PLIST distinfo in the past, which happened to work in most cases up to now, but really shouldn't.
2006-10-12${MARCH_ARCH}-${LOWER_OPSYS}elf and related constructs should be fixed.joerg1-1/+3
2006-10-07When patch files are registered in the distinfo file, but not added orrillig1-8/+22
committed to CVS, a warning is printed.
2006-10-06Added a check that suggests using meta-pkgs/kde3/kde3.mk instead ofrillig1-1/+9
hand-tuning the directories where KDE files are installed.
2006-10-05Improved the heuristics for absolute pathnames.rillig1-5/+8
2006-10-05In package Makefiles, SITES.* should be defined right below DISTFILES.rillig1-24/+43
Added an explanation for why ${DESTDIR}/foo is considered an absolute pathname.
2006-10-02Update pkgtools/pkglint to 4.71 - lintpkgsrc changes:abs2-1380/+1538
- Handle 'badly named' patch files - In the event of a distint checksum mismatch, report the affected file as well as package - If we need to call out to make to parse a makefile and it returns any errors, ensure we prefix the error output with the Makefile path - run through perltidy. Ugly, but consistent
2006-10-01SITES.* may be used in package Makefiles.rillig1-2/+3
2006-09-27De-recognise XFree86. Update to 4.70.joerg2-5/+4
2006-09-20MAKEFILE has been deprecated in September, not November.rillig1-2/+2
2006-09-19Added a check for tools that are used but not mentioned in USE_TOOLS.rillig1-20/+37
Since many package fail to build in exotic environments because of that, it is worth having this check even though we are currently in a freeze. Improved the detection of absolute pathnames once more.
2006-09-18Fixed a huge memory leak in pkglint. Checking the complete pkgsrc treerillig1-6/+21
took about 300 MB of memory. Now it takes 27 MB, which is still much, but quite better. The cause for the memory leak was that I wrote my ($result) = @_; instead of my ($result) = ($1); after successfully matching a regular expression. That way, pkglint created some cyclic data structures, and since Perl does not have garbage collection, these didn't get cleaned up. Added some checks so that this cannot easily happen again. Also fixed some other instances where @_ appeared in the source code.
2006-09-16Updated pkglint to 4.69.rillig1-2/+2
Changes since 4.68: - Improved the checks for BUILD_DEFS. - Improved the shell word parser. - Improved the heuristics for detecting absolute pathnames. - The :M* operator is only required with GNU configure scripts. Committed during the freeze to have a unique version number that includes the features from the last days.
2006-09-15The :M* operator is only needed when the package has a GNU-stylerillig1-3/+17
configure script.
2006-09-09MAKEFILE has been renamed to MAKE_FILE.obache2-3/+6
2006-09-08TODO:rillig1-1/+2
* Check all the shell commands to see if they are mentioned in USE_TOOLS.
2006-09-08Improved the heuristics for detecting absolute pathnames.rillig2-6/+9
Not only CFLAGS, but also {FOO}_CFLAGS should be passed through the :M* operator before being passed to the shell.
2006-08-31Made the shell word parser accept \$$ as a token. This avoids anrillig1-3/+4
internal error showing up in benchmarks/netio.
2006-08-30The *.mk files need two passes to make the BUILD_DEFS check workrillig1-9/+19
reasonably well. In the first pass, all variables that are added to BUILD_DEFS are collected, and in the second pass it is checked whether any remaining user-defined variables are used but have not been added to BUILD_DEFS. This way, it does not matter in which order the variables appear in the files.
2006-08-28Variable names may contain simply nested variables. This allows therillig1-2/+6
shell parser to correctly handle ${WRKSRC.${d}}, which appears for example in geography/epsg. Avoided an internal fatal error for files that contain RCS conflicts.
2006-08-04Updated pkglint to 4.68.rillig1-2/+2
Changes since 4.67: - Adjusted to the ongoing changes in the pkgsrc infrastructure. - Many small improvements in the makevars.map file. - Stricter checking of dependency patterns, to catch foo-*. - Small improvement on the use of stack space due to complicated regular expressions. - Many more absolute pathnames are found in patch files, no matter which type of file is patched. - All user-defined variables that are used should be added to BUILD_DEFS. - All packages that set GNU_CONFIGURE are assumed to need a C compiler. - Instead of ${TOOL}, tool may be used directly, since the tool wrappers are installed very early in the build process. - Removed the --debug option. ... and many more.
2006-08-04Added more code to the shell word parser so that it can parse variables,rillig1-3/+9
in double quotes or not, inside backticks.
2006-08-01Pkglint can now resolve a plain occurrence of ${DISTNAME} in PKGNAME,rillig1-1/+7
which helps for some Perl modules to get the correct package name, which in turn influences whether the update requests from doc/TODO can be shown or not. Suggested by wiz.
2006-07-30Remove leading zero in date.wiz2-3/+3
2006-07-29Since dots are common in pathnames, include them when looking forrillig1-2/+2
absolute pathnames.
2006-07-29Pkglint now recognizes .include <foo> directives, which is necessary forrillig1-10/+29
some of the infrastructure files. This also allows checking the Makefiles in htdocs. Added GAMEOWN, GAMEGRP and GAMEDIRMODE to the list of user-defined variables that don't need to be mentioned in BUILD_DEFS. When looking for absolute pathnames in "other" files, don't require them to have a second component. This produces warnings for /var and /tmp, which had been hidden before. When strings that are likely to be absolute pathnames appear in the form $(VARIABLE)/bin or "+ '/bin'", don't print a warning. The latter is used when "+" is a string concatenation operator. The direct use of tools is only suggested in targets named {pre,do,post}-*, since other ones may be invoked without the tool directory being in the PATH.
2006-07-28The shell command lines in Makefiles are split into words, which are thenrillig1-1/+10
saved in the line as extra fields. When checking for absolute pathnames in "other" files, allow the form ${variable}/bin, as seen in www/apache2/patches/patch-ad. Noticed by Matthias Scheler.
2006-07-27Renamed *_SITE_* to *_SITES_*.rillig1-3/+3
2006-07-27DYNAMIC_MASTER_SITES is gone.rillig3-15/+6
2006-07-27Some minor tweaks.rillig1-7/+9
2006-07-27Updated the man page.rillig2-25/+10
2006-07-27Removed the --debug option, which has been superseded by the variousrillig1-85/+211
-D... options. Removed the check for the :Q operator in C preprocessor macro definitions, since we generally don't expect directory names with embedded special characters in pkgsrc. In buildlink3.mk files, the only BUILDLINK_* variables that may be set are those of the current package. The shell variables $@ and $? are now recognized. Since the shell parser is able to parse the complete code in all pkgsrc packages, make parse errors show in the normal pkglint output. These errors had been hidden before. Fixed the regular expressions in the shell parser to only match at the beginning of the string. That way, when the shell command contains $$@, the $@ is not removed, leaving a single $ behind. Added some code to deal with the different parsing styles of bmake in variable assignments and shell commands. For that, the PkgLint::Line class has been extended to contain arbitrary additional data. This will also allow to reduce the number of duplicate warnings later. The assert() procedure has got a second parameter, the message to be printed. Variable assignment lines start start with a space character (\u0020) are now recognized, but no warning is printed. In pathnames and pathmasks, the '#' character is allowed, since some packages need to remove the .#* files from CVS before installing.
2006-07-27Fixed a duplicate ID.rillig1-2/+2
2006-07-24In addition to ${SED} and ${TR}, sed and tr should not be used in therillig1-8/+35
install phase. Stricter checks for manual pages in PLIST files.