On 2012/08/06 13:13, David Coppa wrote:
> On Mon, Aug 6, 2012 at 1:04 PM, Stuart Henderson <s...@spacehopper.org> wrote:
> > On 2012/08/06 12:31, David Coppa wrote:
> >> On Mon, Aug 6, 2012 at 12:27 PM, Stuart Henderson <st...@openbsd.org> 
> >> wrote:
> >> > On 2012/08/06 04:07, David Coppa wrote:
> >> >>
> >> >> Hi all,
> >> >>
> >> >> This is (again) my update for security/pcsc-lite, plus the new port
> >> >> for security/ccid.
> >> >>
> >> >> Please have a look at them, I'd like to get these in...
> >> >
> >> > Are the hacks really necessary?
> >>
> >> Yes, It still checks for pcsc-lite using pkg-config during configure
> >> stage,
> >
> > That looks like a normal dependency though (well actually I would do
> > LIB_DEPENDS + WANTLIB on libpcsclite, even though it will be marked
> > Extra, to make sure any API/ABI changes trigger a package update).
> >
> > ccid builds ok if you rm patch-configure_in patch-src_Makefile_in
> > as long as pcsc-lite is installed.
> >
> >> so the circular dependency is still here portswise speaking...
> >
> > Only if you have RUN_DEPENDS=security/ccid in pcsc-lite, but isn't
> > that what they fixed?
> >
> > Certainly pcscd starts up without ccid installed. It whines about
> > missing lib/pcsc/drivers but that can just be created by pcsc-lite
> > in post-install.
> >
> 
> The "problem" is I'd like to have security/gnupg2 to use pcsc-lite
> (I've a working patch for this too).
> 
> So what you're suggesting is:
> 
> making pcsc-lite to not depend on ccid
> having ccid depending on pcsc-lite

Yes.

AIUI:

- pcsc-lite provides the common library and a daemon
- other software uses the pcsc-lite library
- pcsc-lite talks to the hardware via a dlopen()d driver,
be it ccid, openct, or some vendor-specific thing

So there's an obvious parallel in database middleware. pcsc-lite is like
DBI, ccid is like a DBD driver, let's call it DBD::Foo. You wouldn't hack
DBD::Foo to let it build without DBI installed and then make DBI RUN_DEPENDS
on DBD::Foo...

> At this point I can have security/gnupg2 depending on security/ccid
> instead of security/pcsc-lite...

It probably makes more sense to do ccid|openct doesn't it?
Where there are alternatives that's usually the way we handle such
things with the database drivers.

Or just let it depend on pcsc-lite and leave the installation
of ccid as a documentation issue.

Reply via email to