-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 30/10/14 19:28, Gert Doering wrote:
> Hi,
> 
> On Thu, Oct 30, 2014 at 11:39:22AM +0100, [email protected]
> wrote:
>> My first assumption was that on this particular build-node,
>> system was not found, But that makes no sense, as 2.3.4 builds
>> OK, with or without system on OS12.2, OS12.3, OS13.1, OS13.2,
>> OSFactory, SLES11SP3 and SLES12
>> 
>> Have to dive a bit deeper, I guess.
>> 
> 
> 2.3.4 doesn't link to systemd, just call the binary - 2.3.5
> contains the additional check "is systemd running?" via libsystemd.
> So, on a system that does not actually have systemd installed,
> 2.3.4 would compile just fine, and possibly just not use the
> systemd ask-password at run-time, while 2.3.5 will not build.
> 
> If there *is* systemd on that node, it should compile, though...
> 
> David, this is yours to diagnose further and patch :-)

Yes, 2.3.4 and earlier did not carry any libsystemd or
libsystemd-daemon if compiled with --enable-systemd.  However, the
check if the system was booted with systemd or not was not optimal
earlier on either.  That has improved now.

The dependency of libsystemd or libsystemd-daemon (depends on which
version of systemd is installed) is caused by us now calling
sd_booted() now instead of checking if the cgroups file tree with
systemd traces is present or not.  By calling sd_booted(), systemd
provides us a sane way to do this check, even if they decide to change
the check mechanism under the hood.

When OpenVPN is built for a system using systemd, it doesn't matter if
it has this dependency or not, systemd will always be available.  And
if not, the OpenVPN package should pull in the needed systemd package
when being installed.  For RPM based distributions, the complete
distro is built either with or without systemd, there is no "maybe
systemd is here" scenario.

The problem in this particular case is solely that the RPM .spec file
openSuSE uses is not updated with the dependency on the systemd-devel
package (that's what it's called in Fedora at least).  That package
carries the needed pkg-config files telling how to include the needed
systemd library when linking the openvpn binary.  This [1] is what the
Fedora packager did when building 2.3.5 for Fedora.

[1]
<http://pkgs.fedoraproject.org/cgit/openvpn.git/commit/?id=ef86d1da9850e23a69f76b68d2a0ec39b319fe0d>

So, Hans, please ensure that the package providing the proper
libsystemd.pc or libsystemd-daemon.pc files are installed.  OpenVPN
now needs a BuildRequirement for that particular package, as well as
Requires on the systemd-libs package (which should carry libsystemd.so
and/or libsystemd-daemon.so).  If the systemd packages have similar
names as Fedora, then you can look what's done in the Fedora .spec file.


- -- 
kind regards,

David Sommerseth
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iEYEARECAAYFAlRT9kgACgkQDC186MBRfrr0+ACdGdnuyOKRMbwzbnsrq5gkN11F
PYUAoIDAyzqdhQfRRoefB9xFN08KDCIM
=fWZQ
-----END PGP SIGNATURE-----

------------------------------------------------------------------------------
_______________________________________________
Openvpn-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openvpn-users

Reply via email to