Skip to contentSkip to conversation

systemd: add compatibility libs option

PATCH New Eric Le Bihan 3 participants 6 messages Apr 14, 2014 – Apr 16, 2014

lore
Share & tools
lore
#0 lore raw

cover systemd: add compatibility libs option

Hi!

This small series is an alternative to the solution provided by Vicente Olivert Riera for fixing the build of liblogging with systemd
(http://lists.busybox.net/pipermail/buildroot/2014-April/094039.html).

Since systemd 209, some libraries have been merged into libsystemd.so, but liblogging (and maybe others) still look for them. As systemd provides an option to install some compatibility pkg-config files, this patch adds a new configuration option to enable it. liblogging selects this option if systemd is chosen as init system. When liblogging will be updated to support libsystemd.so, this could be removed.

Best regards,
ELB

Eric Le Bihan (2):
systemd: add option to enable compatibility libs
liblogging: enable systemd compatibility libs

 package/liblogging/Config.in |  1 +
 package/systemd/Config.in    | 13 +++++++++++++
 package/systemd/systemd.mk   |  4 ++++
 3 files changed, 18 insertions(+)

--
1.9.1

#1 lore raw

PATCH 1/2 systemd: add option to enable compatibility libs

Since systemd 209, some libraries have been merged into libsystemd.so:

- libsystemd-daemon.so
- libsystemd-id128.so
- libsystemd-journal.so
- libsystemd-login.so

A new configuration menu entry has been added to enable the installation of compatibility pkg-config files, so that programs that depend on them can still be built.

---
 package/systemd/Config.in  | 13 +++++++++++++
 package/systemd/systemd.mk |  4 ++++
 2 files changed, 17 insertions(+)
package/systemd/Config.in +13 -0
index 095fee0..f10637a 100644
@@ -92,4 +92,17 @@ config BR2_PACKAGE_SYSTEMD_NETWORKD
 
 	  http://www.freedesktop.org/software/systemd/man/systemd-networkd.html
 
+config BR2_PACKAGE_SYSTEMD_COMPAT
+	bool "enable compatibility libraries"
+	help
+	  Since systemd 209, the following libraries have been merged into
+	  libsystemd.so:
+
+	  - libsystemd-daemon
+	  - libsystemd-id128
+	  - libsystemd-journal
+	  - libsystemd-login
+
+	  This option enables the installation of compatibility *.pc files.
+
 endif
package/systemd/systemd.mk +4 -0
index ecedfce..4fa0e89 100644
@@ -46,6 +46,10 @@ SYSTEMD_CONF_OPT += \
 	--disable-dbus \
 	--without-python
 
+ifeq ($(BR2_PACKAGE_SYSTEMD_COMPAT),y)
+SYSTEMD_CONF_OPT += --enable-compat-libs
+endif
+
 ifeq ($(BR2_PACKAGE_ACL),y)
 SYSTEMD_CONF_OPT += --enable-acl
 SYSTEMD_DEPENDENCIES += acl
Signature · 1 line
1.9.1
#2 lore raw

PATCH 1/2 systemd: add option to enable compatibility libs

Eric, All,

On 2014-04-14 11:25 +0200, Eric Le Bihan spake thusly:

Quoted 7 lines

Since systemd 209, some libraries have been merged into libsystemd.so:

- libsystemd-daemon.so
- libsystemd-id128.so
- libsystemd-journal.so
- libsystemd-login.so

Quoted 5 lines

A new configuration menu entry has been added to enable the installation of compatibility pkg-config files, so that programs that depend on them can still be built.

But see small comment below...

[--SNIP--]

package/systemd/systemd.mk SYSTEMD_CONF_OPT += \ · line 51

Quoted 11 lines
package/systemd/systemd.mk +3 -0
index ecedfce..4fa0e89 100644
@@ -46,6 +46,10 @@ SYSTEMD_CONF_OPT += \
 	--disable-dbus \
 	--without-python
 
+ifeq ($(BR2_PACKAGE_SYSTEMD_COMPAT),y)
+SYSTEMD_CONF_OPT += --enable-compat-libs
+endif

I guess the default in systemd's ./configure is --disable-compat-libs. But I'd prefer we enforce that with an else-block:

    ifeq ($(BR2_PACKAGE_SYSTEMD_COMPAT),y)
    SYSTEMD_CONF_OPT += --enable-compat-libs
    else
    SYSTEMD_CONF_OPT += --disable-compat-libs
    endif

I know Peter does not really mind in that case, so I won't complain much if this goes in as is. ;-)

Regards,
Yann E. MORIN.

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#3 lore raw

PATCH 2/2 liblogging: enable systemd compatibility libs

In reply to Eric Le Bihan

If systemd is chosen as init system, liblogging will enable the installation of compatibility libraries in systemd.

When liblogging will be updated to depend on libsystemd.so, this selection will have to be removed.

---
 package/liblogging/Config.in | 1 +
 1 file changed, 1 insertion(+)
package/liblogging/Config.in +1 -0
index 23c3c1a..12ee950 100644
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LIBLOGGING
 	bool "liblogging"
+	select BR2_PACKAGE_SYSTEMD_COMPAT if BR2_INIT_SYSTEMD
 	help
 	  Liblogging is an easy to use library for
 	  logging. It offers an enhanced replacement
Signature · 1 line
1.9.1
#4 lore raw

PATCH 2/2 liblogging: enable systemd compatibility libs

Eric, All,

On 2014-04-14 11:25 +0200, Eric Le Bihan spake thusly:

Quoted 7 lines

If systemd is chosen as init system, liblogging will enable the installation of compatibility libraries in systemd.

When liblogging will be updated to depend on libsystemd.so, this selection will have to be removed.

Regards,
Yann E. MORIN.

Quoted 22 lines
---
 package/liblogging/Config.in | 1 +
 1 file changed, 1 insertion(+)
package/liblogging/Config.in +1 -0
index 23c3c1a..12ee950 100644
@@ -1,5 +1,6 @@
 config BR2_PACKAGE_LIBLOGGING
 	bool "liblogging"
+	select BR2_PACKAGE_SYSTEMD_COMPAT if BR2_INIT_SYSTEMD
 	help
 	  Liblogging is an easy to use library for
 	  logging. It offers an enhanced replacement
Signature · 6 lines
1.9.1

_______________________________________________
buildroot mailing list
buildroot at busybox.net
http://lists.busybox.net/mailman/listinfo/buildroot
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#5 lore raw

cover systemd: add compatibility libs option

In reply to Eric Le Bihan

Dear Eric Le Bihan,

Quoted 3 lines · Eric Le Bihan

Eric Le Bihan (2):
systemd: add option to enable compatibility libs
liblogging: enable systemd compatibility libs

Both patches applied, with the small change suggested by Yann on the first one.

Thanks,

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com