- better rcsid checking
- add DIST_SUBDIR to section 1 of the Makefile
- add check for WWW: in pkg/DESCR when http:// exists
- add new -t flag, which will require a tab after a variable defination instead
of spaces
- cleanup english grammar
- add -M (make variable passing) flag
- change into portdir instead of constantly using $portdir/file
- get variables from make instead of parsing the Makefile
- update usage()
- fix some portname/version bugs
- add EXTRACT_ONLY to section 1
- fix multi comment sections on top bug
I think I'm going to start a rewrite of lots of portlint's code to
*hopefully* make it easier to add new checks in the future. If you
have any requests of things for me to put on portlint's TODO list,
send me an email letting me know what they are.
Fixes:
* fix some portname/version checking bugs
* put EXTRACT_ONLY in section 1 checking
* fix multi comment sections at top of Makefile regex
* make portlint pass perl -w (this found a few bugs)
No new features in this version
isn't 100% ready for prime time, but it works well enough that it should
be fine to use for most things. I'm not sure if I'll have time to fix
the few minor bugs that I know of and give it a good testing today.
Parts of the PORTNAME/PORTVERSION changes were submitted by knu.
Other changes in this version:
* add "-V", version flag
* use getopts instead of parsing @ARGV
- this fixes a bug where you could only specify one flag after the
dash (ie. -c -N would work and -cN wouldn't)
* change some warnings to fatals
* ignore dot directives in Makefile
- this usually reduces the number of warnings displayed when
a Makefile contains .include or .if foo
* don't blame just emacs for leaving around temporary editor files
* don't warn about installing files into /compat
* correct counting of number of chars in pkg/COMMENT
* understand multiple rcsid tags in the comments section
- this allows us to have both $FreeBSD$ and $NetBSD$, for example
without getting funky warning messages
* scope variables with my instead of local so we can use strict to
help us find bugs in portlint
portlint port passing portlint)
New portlint features:
* Allow pkg/COMMENT to start with a digit
* Warn about .la files in pkg/PLIST
* Better support for comments in the Makefile
- fixes the section off by 1 error
(DISTNAME needs to exist, and so on, when it does)
* don't report "FATAL: no MAINTAINER listed in Makefile" when it does exist
* other random minor bug fixes
- enforce pkg/COMMENT style
- better info file checking in pkg/PLIST
- don't warn about @unexec rmdir foo || true - the handbook says this is fine
- allow CATEGORIES+=
- warn about www.freebsd.org/~user needing to be people.freebsd.org
- warn about PKGNAME being set from another variable instead of being a
fatal error
- understand both $(PORTSDIR) and ${PORTSDIR}
[Has anyone figured-out what makes the number 393 so interesting to PW, now?]
I wonder what was going through Jordan's head during his infamous
$Id$-smashing commit.
Before I forget....
Thanks to naddy@mips.rhein-neckar.de (Christian Weisgerber) for prompting
this commit. See msg-id: 7geokh$tje$1@mips.rhein-neckar.de
put the source code for "portlint" into FreeBSD port tree. The
imported revision is 1.65 (in my local RCS file). (pseudo) version
number for the port is now 2.0.
Whoever make changes to bsd.port.mk is advised to update portlint.pl
too :-)
Note that portlint.pl MUST be portable enough to handle (Net|Open|Free)BSD
bsd.port.mk. There are people using portlint.pl on non-FreeBSD
platforms.
Portcheckout(1) checks out a FreeBSD port and all runtime
and buildtime depending ports into the current working
directory. The output is written to stdout as an
executable shell-script.
Compiling a FreeBSD port usually require a full tree of ports
in /usr/port. A cvs checkout or a cvs update command takes
a very long time and need much free space.
With portcheckout, you checkout only the parts of the port
tree which you really need. This is a magnitude faster!
but aren't in a tk virtual category from
awk -F\| '$9 ~ /tk-/ && $7 !~ /tk/ {print $1}' INDEX
I didn't do anything about the ports which depend on things which depend
on a tk revision. I'd be afraid that the depended-upon port might change
and thus outdate the virtual category in the depender.
been ".../pub/pib/" (I first thought the second "pib" was bogus,
until I realized that the problem was in fact a typo of "pub" and
a missing "/"!)
(2) Fix RUN_DEPENDS, you can't just put a generic name like "tk-4.1"
here. ;)
(3) Change install: target to do-install: and also move it above the
.include <bsd.port.mk>. (You shouldn't define your own "install"
or "patch" or any of the big targets unless absolutely necessary,
the "do-*" targets are where most of the real work is done.)
FreeBSD ports collection. It provides facilities for tracking distfiles,
searching for ports, building etc.
Requires bsd.port.mk revision 1.232 or later and a matching ports collection.