pkgsrc-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: Version requirements for dependancies
Chris Ross wrote:
> How does the decision get made about what version of a dependancy is
> required? I guess this is more of a policy question.
> In my example case, periodically something small gets updated on a
> production machine of mine that causes pkgsrc to want to rebuild and
> install mail/spamprobe. Now, this would be fine, except that
> mail/spamprobe is configured (when it's set to use BerkeleyDB) to read
> in the mk/bdb.buildlink3.mk, which then reads in
> databases/db4/buildlink4.mk.
>
> However, spamprobe doesn't always need the newest bdb. *Any* db4
> might well work for it. I haven't investigated, but I'm sure at least
> 4.5 or better would work. But, since it seems to always require the
> best pkgsrc has to offer, it then uninstalled the db 4.6.xx I had on the
> machine, and by uninstalling that uninstalls many other things that will
> now need to be relinked to the 4.7.25.1 version of db4.
>
> I'm not sure where the fault lies, here, but I think something
> somewhere should tell mail/spamprobe that it doesn't always *require*
> the most recent version available. Is there anything that I can do to
> request this, or investigate it more?
>
> - Chris
>
>
I think this is handled different depending on what your dealing with.
e.g apache uses ${PKG_APACHE_DEFAULT} to determine what version of
apache will be depended on by default and python uses
${PYTHON_VERSION_DEFAULT}. You could set any of these in your mk.conf
to change the default to a version of your choice. It looks like db
versions will be controlled by ${BDB_DEFAULT} which again you just set
in your mk.conf.
In terms of what version is required it's usually set by the package
maintainers based on what the software supports. e.g. if a package only
supported bdb3 and bdb4 then ${BDB_ACCEPTED} would be set accordingly.
The only slightly annoying thing here is that sometime you have to dig a
little to find out what's going on. As you can see from the examples
above there's no real standard naming convention. I keep on meaning to
do something about that. It would be really nice just to have something
like "PKG_DEFAULTS= bdb4 apache2" and have all relevant packages
reference it.
adrian.
Home |
Main Index |
Thread Index |
Old Index