lack of framework and pkg documentation (was: svn commit: r369281 - in head/dns: dnsmasq dnsmasq-devel)
Matthias Andree
mandree at FreeBSD.org
Fri Sep 26 06:31:46 UTC 2014
Am 25.09.2014 um 20:33 schrieb Bryan Drewery:
> On 9/25/2014 1:27 PM, Matthias Andree wrote:
>> Author: mandree
>> Date: Thu Sep 25 18:27:56 2014
>> New Revision: 369281
>> URL: http://svnweb.freebsd.org/changeset/ports/369281
>> QAT: https://qat.redports.org/buildarchive/r369281/
>>
>> Log:
>> Update to new upstream version 2.72, disabling dnsmasq-devel again.
>>
>> Remove @dir* stuff from pkg-plist. @sample isn't documented properly
>> and isn't up to handling files with non-.sample suffix, so stay
>> away from that part of pkg-plist.
>
> https://www.freebsd.org/doc/en/books/porters-handbook/plist-config.html
> https://www.freebsd.org/doc/en/books/porters-handbook/plist-keywords.html#plist-keywords-sample
yeah, quite explicitly states that if the file isn't named *.sample,
@sample does not work.
plist-keywords.html does not appear to suggest a way to have two
arguments for a keyword, or to use @sample(.example) to provide a
different extension...
The other issue I'm having with that is that the technical side of
Keywords/* - it's not documented or visible how these are actually used,
grep -ri keywords Mk comes up mostly empty, there's only the definition
- and it's a leftover from the times when we still had awk scripts to
wire this into pkg_create/pkg_install.
TODO(portmgr): please remove the leftover KEYWORDS?= from Mk/bsd.port.mk
near line 1370.
So it remains unclear if the Keywords stuff is rigged in by the
framework, is hardwired into pkg, or thereabouts.
grepping pkg sources reveals this:
> $ grep -r Keywords /var/tmp/usr/ports.svn/ports-mgmt/pkg/work/
> work/pkg-1.3.8/libpkg/pkg_ports.c: "%s/Keywords/%s.yaml", keyword_dir, keyword);
> work/pkg-1.3.8/libpkg/pkg_ports.c: "%s/Keywords/%s.ucl", keyword_dir, keyword);
But then pkg info -l pkg | zgrep -ri keywords on the installed files
comes up empty.
So again, missing documentation. :-(
TODO(pkg maintainers, portmgr): We really need to have documentation and
specification in place and reviewed
*before someone starts implementing*
code in a publicly released package.
And I mean documentation (for the user) *and* specification.
More information about the freebsd-ports
mailing list