tech-pkg archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
enforcing pkgsrc/category/$PKGBASE
Wouldn't it be nice if each package was always in a directory
which matched the $PKGBASE. It would make it much easier and
quicker for tools (and people) to map back and forth between
them, and also allow us to (potentially) cleanup the DEPENDS
format:
DEPENDS+= www/p5-Catalyst-Plugin-ConfigLoader>=0.19
rather than the current rather ugly:
DEPENDS+= p5-Catalyst-Plugin-ConfigLoader>=0.19:../../www/p5-Catalys
t-Plugin-ConfigLoader
The flies in this proposed ointment are:
a) *-devel packages which provider newer compatible versions
of a base package
b) ap2?-* packages which can generate apache 1.x 2.0 or 2.2
packages
c) py-* packages, which generate different output packages
based on the version of python installed
Taking these in order:
a) We could push implicit support for these into pkgsrc. So
a package foo-devel[0-9]*-* would automatically conflict
with foo-*, and be treated as identical when matching
depends
b) We have a somewhat confusing mix of ap{,2,22}-*
packages in pkgsrc. an ap22-* package will only work
with apache22, and ap-2 package will work with
apache2 and *may* work with apache22, and an ap-*
package will work with apache apache and may work
with none, one, or both of apache2 and apache22. We
currently have ap{,2,22}-* packages. Splitting them
up into explicit ap{13,20,22} directories which each
only generate a package for a single version of
apache would add 22 and make it obvious from looking
at the pkgsrc tree what versions are supported
c) py-* packages. This fly has teeth. There are 216
py-* packages and unlike the apache packages which
tend to need different Makefiles between apache
versions, we have a nice setup which can build
multiple versions from a single directory based on
python version. We *could*:
- Let python directories be an exception
- Add explicit package directories, a number of
options on this, none of them nice:
<Can_skip>
- add 400+ packages and rename the current, using
clever includes pointing to the default version (but
we'd need to churn every package when we changed
the default). Ick.
- add 400+ packages and rename the current,
duplicating versions & DESCR etc everwhere. Ick.
- Add 600+ packages, using clever includes to the
current packages, but that leaves us with these
oddball package directories which never build
anything. Ick
- add 400+ packages and rename the current, all
with clever includes pointing to data under
lang/pythin. Ick
</Can_skip>
Anyone have any thoughts? Have I missed something
which is not 'ick'?
~
Home |
Main Index |
Thread Index |
Old Index