package/matchbox-panel: use ACPI for the battery applet
authorYann E. MORIN <yann.morin.1998@free.fr>
Wed, 3 Jun 2015 20:41:47 +0000 (22:41 +0200)
committerThomas Petazzoni <thomas.petazzoni@free-electrons.com>
Tue, 9 Jun 2015 21:10:08 +0000 (23:10 +0200)
It is possible to use ACPI to monitor the battery with the battery
mini-applet. If ACPI is not explicitly enabled, then APM is used if
available; if ACPI is not explcitly enabled and APM is not available,
then the battery applet is not built.

However, APM is not really current nowadays, and possibly missing for a
bunch of architecture...

What is a pity is that there is no way to explicitly enable or disable
the applet; it only relies on auto-detection... :-(

So, forcibly use ACPI on platforms that have it, that is x86 (32- and
64-bit) and AArch64.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Arnout Vandecappelle <arnout@mind.be>
Reviewed-by: Arnout Vandecappelle <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
package/matchbox-panel/0003-mb-applet-battery.patch [new file with mode: 0644]
package/matchbox-panel/matchbox-panel.mk

diff --git a/package/matchbox-panel/0003-mb-applet-battery.patch b/package/matchbox-panel/0003-mb-applet-battery.patch
new file mode 100644 (file)
index 0000000..585eb39
--- /dev/null
@@ -0,0 +1,21 @@
+mb-applet-battery: don't declare line_parse as static
+
+Fix this build failure:
+    mb-applet-battery.c: In function 'read_apm':
+    mb-applet-battery.c:181:2: error: invalid storage class for function 'line_parse'
+
+Reported-by: Arnout Vandecappelle <arnout@mind.be>
+Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
+
+diff -durN matchbox-panel-0.9.3.orig/applets/mb-applet-battery.c matchbox-panel-0.9.3/applets/mb-applet-battery.c
+--- matchbox-panel-0.9.3.orig/applets/mb-applet-battery.c      2006-02-07 23:27:24.000000000 +0100
++++ matchbox-panel-0.9.3/applets/mb-applet-battery.c   2015-05-02 17:13:00.843578796 +0200
+@@ -177,7 +177,7 @@
+               unsigned long   present_rate;
+       };
+-      static int
++      int
+       line_parse(char *line, struct entry *e)
+       {
+               char *ptr;
index f7d699bdac6904aad4481c13266f4d36d60127ac..a5da7806b10b56650b80e4baec6cbaa49cb14fbf 100644 (file)
@@ -20,6 +20,13 @@ else
 MATCHBOX_PANEL_CONF_OPTS += --disable-startup-notification
 endif
 
+# Using ACPI is only possible on x86 (32- or 64-bit) or AArch64
+ifeq ($(BR2_aarch64)$(BR2_i386)$(BR2_x86_64),y)
+MATCHBOX_PANEL_CONF_OPTS += --enable-acpi-linux
+else
+MATCHBOX_PANEL_CONF_OPTS += --disable-acpi-linux
+endif
+
 ifeq ($(BR2_PACKAGE_WIRELESS_TOOLS),y)
 MATCHBOX_PANEL_DEPENDENCIES += wireless_tools
 endif