commit 720569bd56cb048ba7abae62be3c2e6839fd5916
Author:     Quentin Rameau <[email protected]>
AuthorDate: Mon Apr 30 15:14:32 2018 +0200
Commit:     Aaron Marcher <[email protected]>
CommitDate: Mon Apr 30 15:40:59 2018 +0200

    battery: OS split

diff --git a/Makefile b/Makefile
index 871f09d..85eeaba 100644
--- a/Makefile
+++ b/Makefile
@@ -7,7 +7,7 @@ include config.mk
 
 REQ = util
 COM =\
-       components/battery\
+       components/$(OS)/battery \
        components/cpu\
        components/datetime\
        components/disk\
diff --git a/components/battery.c b/components/Linux/battery.c
similarity index 63%
rename from components/battery.c
rename to components/Linux/battery.c
index 955d8ab..654ddab 100644
--- a/components/battery.c
+++ b/components/Linux/battery.c
@@ -2,19 +2,11 @@
 #include <errno.h>
 #include <stdio.h>
 #include <string.h>
-#if defined(__linux__)
 #include <limits.h>
 #include <string.h>
-#elif defined(__OpenBSD__)
-#include <sys/ioctl.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <machine/apmvar.h>
-#endif
 
-#include "../util.h"
+#include "../../util.h"
 
-#if defined(__linux__)
 const char *
 battery_perc(const char *bat)
 {
@@ -25,31 +17,7 @@ battery_perc(const char *bat)
        return (pscanf(path, "%i", &perc) == 1) ?
               bprintf("%d", perc) : NULL;
 }
-#elif defined(__OpenBSD__)
-const char *
-battery_perc(const char *null)
-{
-       struct apm_power_info apm_info;
-       int fd;
-
-       fd = open("/dev/apm", O_RDONLY);
-       if (fd < 0) {
-               fprintf(stderr, "open '/dev/apm': %s\n", strerror(errno));
-               return NULL;
-       }
-
-       if (ioctl(fd, APM_IOC_GETPOWER, &apm_info) < 0) {
-               fprintf(stderr, "ioctl 'APM_IOC_GETPOWER': %s\n", 
strerror(errno));
-               close(fd);
-               return NULL;
-       }
-       close(fd);
-
-       return bprintf("%d", apm_info.battery_life);
-}
-#endif
 
-#if defined(__linux__)
 const char *
 battery_power(const char *bat)
 {
@@ -88,4 +56,3 @@ battery_state(const char *bat)
        }
        return (i == LEN(map)) ? "?" : map[i].symbol;
 }
-#endif
diff --git a/components/OpenBSD/battery.c b/components/OpenBSD/battery.c
new file mode 100644
index 0000000..daefd77
--- /dev/null
+++ b/components/OpenBSD/battery.c
@@ -0,0 +1,32 @@
+/* See LICENSE file for copyright and license details. */
+#include <errno.h>
+#include <stdio.h>
+#include <string.h>
+#include <sys/ioctl.h>
+#include <fcntl.h>
+#include <unistd.h>
+#include <machine/apmvar.h>
+
+#include "../../util.h"
+
+const char *
+battery_perc(const char *null)
+{
+       struct apm_power_info apm_info;
+       int fd;
+
+       fd = open("/dev/apm", O_RDONLY);
+       if (fd < 0) {
+               fprintf(stderr, "open '/dev/apm': %s\n", strerror(errno));
+               return NULL;
+       }
+
+       if (ioctl(fd, APM_IOC_GETPOWER, &apm_info) < 0) {
+               fprintf(stderr, "ioctl 'APM_IOC_GETPOWER': %s\n", 
strerror(errno));
+               close(fd);
+               return NULL;
+       }
+       close(fd);
+
+       return bprintf("%d", apm_info.battery_life);
+}

Reply via email to