#include <err.h>
#include <errno.h>
#include <fcntl.h>
+#ifdef WITH_LIBGPIOD
#include <gpiod.h>
+#endif /* WITH_LIBGPIOD */
#include <signal.h>
#include <stdbool.h>
#include <stdio.h>
}
}
+#ifdef WITH_LIBGPIOD
static struct gpiod_line *libgpiod_line;
static void
if (gpiod_line_set_value(libgpiod_line, state) == -1)
err(1, "gpiod_line_set_value");
}
+#endif /* WITH_LIBGPIOD */
static void (*outfn)(bool) = &dummy_out;
}
}
+#ifdef WITH_LIBGPIOD
static void
init_libgpiod(char const *gpio_name)
{
err(1, "requesting '%s'", gpio_name);
outfn = &libgpiod_out;
}
+#endif /* WITH_LIBGPIOD */
static void
init(int argc, char **argv)
if (timer_create(CLOCK_REALTIME, &sev, &main_timer) != 0)
err(1, "timer_create");
- while ((opt = getopt(argc, argv, "f:g:s:")) != -1) {
+ while ((opt = getopt(argc, argv, "f:s:"
+#ifdef WITH_LIBGPIOD
+ "g:"
+#endif /* WITH_LIBGPIOD */
+ )) != -1) {
switch (opt) {
case 'f':
statefile = optarg;
case 's':
statestr = optarg;
break;
+#ifdef WITH_LIBGPIOD
case 'g':
init_libgpiod(optarg);
break;
+#endif /* WITH_LIBGPIOD */
}
}
if (statefile != NULL)