Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 30 Oct 2013 11:46:30 -0700
From:      Kevin Oberman <rkoberman@gmail.com>
To:        FreeBSD Ports ML <freebsd-ports@freebsd.org>
Subject:   Problems dealing with ports use of pkgconf
Message-ID:  <CAN6yY1t0za5GTchFy%2B%2BtNjMmnzF4edBYUFoBmT1kmi4m1=aKFg@mail.gmail.com>

next in thread | raw e-mail | index | archive | help
I have run into a dilemma in regards to the use of pkgconf in ports. Here
is what has bitten me:
To allow sftp to get files, multimedia/vlc uses libssh2. libssh2, in turn,
uses openssl or the GNU crypto library.
If i have installed securith/openssl, all is well, but I don't want of need
the security/openssl port.
If I have not installed openssl from ports, vlc fails! Here is why:

libssh2 creates a .pc file to allow other packages to know whether it uses
openssl or libgcrypt. this is a nice thing, but it makes the common
assumption that openssl is only there if the package has been installed. I
believe that is is the case for Linux.  Not so for FreeBSD. vlc uses
pkgconf to check on whether all required libraries are installed for
libssh2. I finds that libssh2 requires libssl:
Requires.private: libssl,libcrypto
It then checks to see if these are installed. Since libssl is not
installed, it bails on the error. (I believe that it shoudl be "Required:
rather than Requires.private:, but that has no impact on the problem.

Since FreeBSD ports have already checked the dependencies before building a
port, I think such checks should be removed from ports, but I'm not
familiar enough with the real-world implications of this to know if it is
the right way to go. If it is, I'll can submit a patch for vlc. I suspect,
after reading the developers comments, that libssh2 developers will not
want to remove their recent changes in this area.
-- 
R. Kevin Oberman, Network Engineer
E-mail: rkoberman@gmail.com



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAN6yY1t0za5GTchFy%2B%2BtNjMmnzF4edBYUFoBmT1kmi4m1=aKFg>