Commit graph

2498 commits

Author SHA1 Message Date
abs
d4dac6f718 update pkg_chk to 1.75
- match bsd.own.mk logic for determining MAKECONF, as requested by Joerg
2006-06-09 16:43:33 +00:00
rillig
37c752009e - Added "read" to the list of allowed shell commands.
- Added an explanation for the ${WRKSRC}/.. warning, since it is not
  documented anywhere else.
- Improved two diagnostics for buildlink3.mk files.
- Added a check to discover package name mismatches in
  BUILDLINK_{ABI,API}_DEPENDS, as well as the version numbers.
2006-06-09 16:21:26 +00:00
jlam
2cc3f64abb Add a new variable CHECK_FILES_SUPPORTED which is a package-settable
variable to show whether the package supports running the check-files
target.

Set CHECK_FILES_SUPPORTED to "no" in pkgtools/pkg_install in the case
where the PREFIX does not match ${LOCALBASE} it's likely the tools are
being installed in some place that's completely outside pkgsrc control,
and check-files fails horribly in that case.
2006-06-09 16:12:08 +00:00
joerg
cd7e14d312 Uses libintl, so depend on it. Bump revision. 2006-06-09 10:45:54 +00:00
rillig
ec002f76a4 I prefer #none over #empty in USE_LANGUAGES. 2006-06-09 10:27:09 +00:00
rillig
0de71f46c0 In the SCST_COND state, a shell command is expected, so check here for
known and unknown commands, too.
2006-06-09 08:53:28 +00:00
rillig
57bc43dae5 Minor improvements. 2006-06-09 07:29:15 +00:00
rillig
250173f09c The old syntax for List+ and InternalList+ does not exist anymore. 2006-06-08 22:31:25 +00:00
rillig
80caf0f15b - Fixed a typo in a diagnostic message from the buildlink3.mk check.
- Added a warning for "Preformatted manual page without unformatted one".
2006-06-08 18:22:46 +00:00
rillig
d4ada473b5 Contrary to my (and maybe to others') expectations, INFO_FILES does
_not_ have the data type "List of Pathname", but "Yes".
2006-06-08 18:21:14 +00:00
rillig
e3fac959be Renamed $plist, $descr and $message to $lines, as it already is in the
other checkfile_* subroutines.
2006-06-08 17:59:23 +00:00
rillig
ac0b15a263 Packages that install info files should set INFO_FILES. 2006-06-08 17:38:56 +00:00
rillig
ef2af6d8a6 Added explanations for two issues Tron stumbled upon when fixing the
warnings in devel/glib. Also, made the diagnostics for buildlink3.mk
files clearer.
2006-06-08 17:21:28 +00:00
rillig
5a8c02e2ea The ">&" shell operator is recognized correctly. A warning is printed
for every shell command that is not known in the tools framework.
2006-06-08 15:56:00 +00:00
rillig
ce495ca3b0 Minor improvements. 2006-06-08 15:50:54 +00:00
rillig
9f330148b3 Some things from the TODO list have been done. 2006-06-08 15:14:22 +00:00
rillig
c75f288cbd Only adjust the directory depth if there are exactly two leading ".."
path components. The old behavior has led to error messages while
checking the files in mk/flavor/pkg.
2006-06-08 07:15:27 +00:00
rillig
61eb32c234 PKGREVISION does not need the :Q operator. The various *_MSG shell
commands may be hidden with "@".
2006-06-08 07:11:26 +00:00
rillig
9863ec1f94 Replaced the explicit permission [*:a] with [$list], which prevents
buildlink3.mk and builtin.mk files from  modifying these variables.
2006-06-08 07:10:19 +00:00
abs
867a7377dc Update pkg_chk to 1.74
1.73 was completely broken.. but only after checking in.
	ahh... Unwanted expansion of RCS tags, I know ye well...
2006-06-07 16:27:14 +00:00
abs
b1ee560908 update pkg_chk to 1.73:
- Handle new way of building BUILD_VERSION, by doing less ourselves
  and (ab)using the pkgsrc infrastrafructure. Jump through some
  hoops to ensure a package is not reported as different due to
  BUILD_VERSION format versions (assuming the package is identical
  otherwise). Only -B affected.
2006-06-07 13:52:39 +00:00
rillig
119924e6f3 The .include lines in mk/tools/bsd.tools.mk changed, hence pkglint
didn't know the tools from the TOOLS framework anymore. Fixed that and
added some code that will detect such a change in the future.
2006-06-06 16:00:49 +00:00
rillig
3ee159f988 Completed the recent change by Stoned, who overlooked a second instance
of bsd.sites.mk in a comment.
2006-06-06 11:41:40 +00:00
rillig
1e457582de A variable that appears as a whole shell word may either be used as a
list of shell words, or sometimes as a single shell word. Compare: ${LD}
${LDFLAGS} and ./configure -libs ${LDFLAGS:Q}. So in this case, the :Q
operator cannot be checked reliably.
2006-06-06 11:39:25 +00:00
rillig
281a32dde2 Some small refinements. 2006-06-06 11:37:31 +00:00
seb
56cafd791c The new avatar of pkgsrc/mk/bsd.sites.mk is named pkgsrc/mk/fetch/sites.mk 2006-06-06 09:56:22 +00:00
rillig
1064108d2a Added the proper types for many of the variables that have been
unchecked before (mainly because of limitations in earlier pkglint
versions). Added ACL constants for user-defined, system-defined and
command-line variables.
2006-06-06 08:22:41 +00:00
rillig
52f5108b7c Enumerations don't need the :Q operator. 2006-06-06 07:04:56 +00:00
rillig
cf96b37f18 Improved variable_needs_quoting. 2006-06-06 06:48:16 +00:00
rillig
fcf3444e98 Updated pkglint to 4.64.
Changes since 4.63:

- Many diagnostics for the :Q operator have been wrong. They are currently
  left out, but will be re-added later. In the mean time, no diagnostics
  are better than wrong ones.
- Made defining the permissions for variables easier by providing a way to
  define "permission constants".
2006-06-06 05:36:40 +00:00
rillig
7e1a20676b When it is not clear whether the :Q operator should be used or not,
return dont_know instead of true.
2006-06-06 05:18:56 +00:00
rillig
870c059e4b Added the command line argument -D{foo,bar,...} that enables or disables
certain categories of debugging output.
2006-06-05 22:34:40 +00:00
rillig
2e5ea781f2 Minor corrections. 2006-06-05 22:24:12 +00:00
rillig
36aeee7541 Added an explanation for the warning that "Each sed command should
appear in an assignment of its own", since it had been misunderstood at
least once. Also, since the explanation is usually several lines long,
it does not hurt to add two extra empty lines to separate the
explanation from the actual warning.
2006-06-03 07:27:25 +00:00
rillig
6ee13c522e In Makefile.common, the standard list variables may be set using "="
instead of only appending with "+=".
2006-06-03 07:10:25 +00:00
rillig
b0b523a601 Added the possibility of defining custom ACLs in the file makevars.map. 2006-06-03 07:06:23 +00:00
rillig
8ed8d63862 Updated pkglint to 4.63.
Changes since 4.62:
- Improved checking of variable permissions.
- Improved detection of unused variables, for spell checking.
- Added warnings for variables that are used at load time but should not.
- Much code cleanup.
2006-06-03 06:09:40 +00:00
rillig
9c30cd8476 Improved the variable specification in makevars.map. Code cleanup. 2006-06-03 06:04:37 +00:00
joerg
4726a63c51 Add a wish for PYTHON_VERSIONS_INCOMPATIBLE. 2006-06-03 00:25:34 +00:00
rillig
5138f12646 Updated the TODO list. 2006-06-03 00:12:38 +00:00
rillig
a8d637a060 Run-time variables should not be used in load-time variables. 2006-06-02 21:54:00 +00:00
rillig
4d8957470c MASTER_SITE* may be used at run-time. Various other small changes. 2006-06-02 21:33:22 +00:00
rillig
b9a61e6bc7 Removed the subroutine type_should_be_quoted. In extract_used_variables,
a "." is allowed in the variable name. Changed two instances of log_note
to log_debug. Unmatched directives like .endif or .endfor are an error.
2006-06-02 21:32:33 +00:00
seb
daef8f3622 placate pkglint 2006-05-31 22:10:30 +00:00
seb
0271060d55 If I should be steward of one be it this one! 2006-05-31 22:04:55 +00:00
rillig
f1e866ee17 Using the := operator has subtle effects on the number of '$' characters
in strings. So don't use them.
2006-05-31 08:59:13 +00:00
rillig
c821274d36 Added a check for variables that are evaluated at load time. Especially
for lists of something, this can lead to unexpected behavior. Currently,
only the variables BUILDLINK_DEPENDS, BUILDLINK_PACKAGES and PKG_OPTIONS
may be looked at during load time.

This warning reveals the bad practice to "patch" CONFIGURE_ARGS at load
time, for example:

> CONFIGURE_ARGS:=      ${CONFIGURE_ARGS:S/--disable-esd/--enable-esd/}
WARN: audio/bmp-esound/Makefile:14: CONFIGURE_ARGS should not be
      evaluated at load time.
2006-05-31 08:46:00 +00:00
rillig
ef3ee853a6 Fixed indentation level in checkline_mk_vartype. 2006-05-31 08:10:45 +00:00
rillig
556a2de50b The checks for variable use and correct quoting have been concentrated
into a single subroutine, checkline_mk_varuse, which replaces the
various ad-hoc checks. Added the class PkgLint::VarUseContext that tries
to model the context in which a make(1) variable can appear. The checks
are much better now than before, but there's still work to do. Added a
new type FileMode for file permissions.

Currently no warnings are printed for untyped variables (that is,
user-defined and not following the common naming schemes). This includes
the iteration variables of .for loops. Since many of the warnings have
been overly strict, this is not a big loss.
2006-05-31 06:35:52 +00:00
rillig
f29df8e46f Some minor fixes and additions. 2006-05-31 02:15:50 +00:00