New package: libratbag-0.9.902.
This commit is contained in:
parent
4119248849
commit
a9312d8b6a
|
@ -0,0 +1 @@
|
||||||
|
libratbag
|
|
@ -0,0 +1,3 @@
|
||||||
|
#!/bin/sh
|
||||||
|
sv check dbus >/dev/null || exit 1
|
||||||
|
exec ratbagd
|
|
@ -0,0 +1,116 @@
|
||||||
|
From ac384137bd56b0a4fa6c51f77015ef60eb964a97 Mon Sep 17 00:00:00 2001
|
||||||
|
From: maxice8 <30738253+maxice8@users.noreply.github.com>
|
||||||
|
Date: Thu, 16 Aug 2018 19:33:42 -0300
|
||||||
|
Subject: [PATCH] meson.build meson_options.txt: Add systemd switch (#510)
|
||||||
|
|
||||||
|
Allows systems that provide libelogind (which provides a portion of
|
||||||
|
libsystemd that libratbag uses) to also compile without having to patch
|
||||||
|
out the rest of the build to remove the full systemd dependency.
|
||||||
|
|
||||||
|
This commit:
|
||||||
|
|
||||||
|
- Adds a systemd swith on meson_options.txt, a boolean set to true as
|
||||||
|
default to keep expected behaivour
|
||||||
|
- Adds a check on meson.build for the systemd switch and adds
|
||||||
|
dep_systemd
|
||||||
|
- Guards sections meant to generate systemd service units under the
|
||||||
|
systemd switch
|
||||||
|
---
|
||||||
|
meson.build | 56 +++++++++++++++++++++++++++--------------------
|
||||||
|
meson_options.txt | 6 +++++
|
||||||
|
2 files changed, 38 insertions(+), 24 deletions(-)
|
||||||
|
|
||||||
|
--- meson.build
|
||||||
|
+++ meson.build
|
||||||
|
@@ -50,10 +50,14 @@ pkgconfig = import('pkgconfig')
|
||||||
|
dep_udev = dependency('libudev')
|
||||||
|
dep_libevdev = dependency('libevdev')
|
||||||
|
dep_libsystemd = dependency('libsystemd', version : '>=227')
|
||||||
|
-dep_systemd = dependency('systemd')
|
||||||
|
dep_glib = dependency('glib-2.0')
|
||||||
|
dep_lm = cc.find_library('m')
|
||||||
|
|
||||||
|
+enable_systemd = get_option('systemd')
|
||||||
|
+if enable_systemd
|
||||||
|
+ dep_systemd = dependency('systemd')
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
#### libutil.a ####
|
||||||
|
src_libutil = [
|
||||||
|
'src/libratbag-util.c',
|
||||||
|
@@ -437,35 +441,39 @@ configure_file(input : 'dbus/org.freedesktop.ratbag_devel1.conf.in',
|
||||||
|
configuration : config_ratbagd_devel)
|
||||||
|
|
||||||
|
#### unit file ####
|
||||||
|
-unitdir = get_option('systemd-unit-dir')
|
||||||
|
-if unitdir == ''
|
||||||
|
- libdir = get_option('libdir')
|
||||||
|
- default_unitdir = dep_systemd.get_pkgconfig_variable('systemdsystemunitdir')
|
||||||
|
- # Fedora uses lib64 but systemd is in lib. Hack around this so it
|
||||||
|
- # works out of the box.
|
||||||
|
- intended_unitdir = join_paths(get_option('prefix'), get_option('libdir'), 'systemd')
|
||||||
|
- if get_option('prefix') == '/usr' and intended_unitdir != default_unitdir
|
||||||
|
- message('''
|
||||||
|
- systemd unitdir libdir mismatch detected, changing unitdir to
|
||||||
|
- @0@
|
||||||
|
- or specify with
|
||||||
|
- mesonconf -Dsystemd-unit-dir=<path>
|
||||||
|
-
|
||||||
|
- See https://github.com/libratbag/libratbag/issues/188
|
||||||
|
- '''.format(default_unitdir))
|
||||||
|
- unitdir = default_unitdir
|
||||||
|
- else
|
||||||
|
- unitdir = intended_unitdir
|
||||||
|
+if enable_systemd
|
||||||
|
+ unitdir = get_option('systemd-unit-dir')
|
||||||
|
+ if unitdir == ''
|
||||||
|
+ libdir = get_option('libdir')
|
||||||
|
+ default_unitdir = dep_systemd.get_pkgconfig_variable('systemdsystemunitdir')
|
||||||
|
+ # Fedora uses lib64 but systemd is in lib. Hack around this so it
|
||||||
|
+ # works out of the box.
|
||||||
|
+ intended_unitdir = join_paths(get_option('prefix'), get_option('libdir'), 'systemd')
|
||||||
|
+ if get_option('prefix') == '/usr' and intended_unitdir != default_unitdir
|
||||||
|
+ message('''
|
||||||
|
+ systemd unitdir libdir mismatch detected, changing unitdir to
|
||||||
|
+ @0@
|
||||||
|
+ or specify with
|
||||||
|
+ mesonconf -Dsystemd-unit-dir=<path>
|
||||||
|
+
|
||||||
|
+ See https://github.com/libratbag/libratbag/issues/188
|
||||||
|
+ '''.format(default_unitdir))
|
||||||
|
+ unitdir = default_unitdir
|
||||||
|
+ else
|
||||||
|
+ unitdir = intended_unitdir
|
||||||
|
+ endif
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
config_bindir = configuration_data()
|
||||||
|
config_bindir.set('bindir', join_paths(get_option('prefix'), get_option('bindir')))
|
||||||
|
|
||||||
|
-configure_file(input : 'ratbagd/ratbagd.service.in',
|
||||||
|
- output : 'ratbagd.service',
|
||||||
|
- configuration : config_bindir,
|
||||||
|
- install_dir : unitdir)
|
||||||
|
+if enable_systemd
|
||||||
|
+ configure_file(input : 'ratbagd/ratbagd.service.in',
|
||||||
|
+ output : 'ratbagd.service',
|
||||||
|
+ configuration : config_bindir,
|
||||||
|
+ install_dir : unitdir)
|
||||||
|
+endif
|
||||||
|
|
||||||
|
dbusdir = get_option('dbus-root-dir')
|
||||||
|
if dbusdir == ''
|
||||||
|
--- meson_options.txt
|
||||||
|
+++ meson_options.txt
|
||||||
|
@@ -27,3 +27,9 @@ option('dbus-group',
|
||||||
|
type: 'string',
|
||||||
|
value : '',
|
||||||
|
description : 'The UNIX group that is granted access to the ratbagd D-Bus service. By default all users may access it.')
|
||||||
|
+
|
||||||
|
+option('systemd',
|
||||||
|
+ type : 'boolean',
|
||||||
|
+ value : true,
|
||||||
|
+ description : 'Build systemd unit files'
|
||||||
|
+)
|
||||||
|
|
|
@ -0,0 +1,24 @@
|
||||||
|
Source: maxice8
|
||||||
|
Upstream: https://github.com/libratbag/libratbag/pull/507
|
||||||
|
Reason: fixes errors of PATH_MAX being undeclared due to limits.h not being included
|
||||||
|
|
||||||
|
--- src/libratbag-data.c
|
||||||
|
+++ src/libratbag-data.c
|
||||||
|
@@ -28,6 +28,7 @@
|
||||||
|
#include <assert.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <glib.h>
|
||||||
|
+#include <limits.h>
|
||||||
|
|
||||||
|
#include "libratbag.h"
|
||||||
|
#include "libratbag-private.h"
|
||||||
|
--- tools/lur-command.c
|
||||||
|
+++ tools/lur-command.c
|
||||||
|
@@ -31,6 +31,7 @@
|
||||||
|
#include <stdbool.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
+#include <limits.h>
|
||||||
|
|
||||||
|
#include <liblur.h>
|
||||||
|
#include <libratbag-util.h>
|
|
@ -0,0 +1,76 @@
|
||||||
|
Source: maxice8
|
||||||
|
Upstream: No, but feel free
|
||||||
|
Reason: removes usage of non-portable of error.h
|
||||||
|
|
||||||
|
--- tools/hidpp10-dump-page.c
|
||||||
|
+++ tools/hidpp10-dump-page.c
|
||||||
|
@@ -23,7 +23,7 @@
|
||||||
|
|
||||||
|
#include <config.h>
|
||||||
|
#include <errno.h>
|
||||||
|
-#include <error.h>
|
||||||
|
+#include <err.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
|
||||||
|
#include <hidpp10.h>
|
||||||
|
@@ -95,7 +95,7 @@ main(int argc, char **argv)
|
||||||
|
path = argv[argc - 1];
|
||||||
|
fd = open(path, O_RDWR);
|
||||||
|
if (fd < 0)
|
||||||
|
- error(1, errno, "Failed to open path %s", path);
|
||||||
|
+ err(errno, "Failed to open path %s", path);
|
||||||
|
|
||||||
|
hidpp_device_init(&base, fd);
|
||||||
|
dev = hidpp10_device_new(&base, HIDPP_WIRED_DEVICE_IDX, HIDPP10_PROFILE_UNKNOWN, 5);
|
||||||
|
--- tools/hidpp20-dump-page.c
|
||||||
|
+++ tools/hidpp20-dump-page.c
|
||||||
|
@@ -23,7 +23,7 @@
|
||||||
|
|
||||||
|
#include <config.h>
|
||||||
|
#include <errno.h>
|
||||||
|
-#include <error.h>
|
||||||
|
+#include <err.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
|
||||||
|
#include <hidpp20.h>
|
||||||
|
@@ -112,12 +112,12 @@ main(int argc, char **argv)
|
||||||
|
path = argv[argc - 1];
|
||||||
|
fd = open(path, O_RDWR);
|
||||||
|
if (fd < 0)
|
||||||
|
- error(1, errno, "Failed to open path %s", path);
|
||||||
|
+ err(errno, "Failed to open path %s", path);
|
||||||
|
|
||||||
|
hidpp_device_init(&base, fd);
|
||||||
|
dev = hidpp20_device_new(&base, 0xff);
|
||||||
|
if (!dev)
|
||||||
|
- error(1, 0, "Failed to open %s as a HID++ 2.0 device", path);
|
||||||
|
+ err(0, "Failed to open %s as a HID++ 2.0 device", path);
|
||||||
|
|
||||||
|
hidpp20_onboard_profiles_get_profiles_desc(dev, &info);
|
||||||
|
|
||||||
|
--- tools/hidpp20-reset.c
|
||||||
|
+++ tools/hidpp20-reset.c
|
||||||
|
@@ -23,7 +23,7 @@
|
||||||
|
|
||||||
|
#include <config.h>
|
||||||
|
#include <errno.h>
|
||||||
|
-#include <error.h>
|
||||||
|
+#include <err.h>
|
||||||
|
#include <fcntl.h>
|
||||||
|
|
||||||
|
#include <hidpp20.h>
|
||||||
|
@@ -88,12 +88,12 @@ main(int argc, char **argv)
|
||||||
|
path = argv[argc - 1];
|
||||||
|
fd = open(path, O_RDWR);
|
||||||
|
if (fd < 0)
|
||||||
|
- error(1, errno, "Failed to open path %s", path);
|
||||||
|
+ err(errno, "Failed to open path %s", path);
|
||||||
|
|
||||||
|
hidpp_device_init(&base, fd);
|
||||||
|
dev = hidpp20_device_new(&base, 0xff);
|
||||||
|
if (!dev)
|
||||||
|
- error(1, 0, "Failed to open %s as a HID++ 2.0 device", path);
|
||||||
|
+ err(0, "Failed to open %s as a HID++ 2.0 device", path);
|
||||||
|
|
||||||
|
hidpp20_onboard_profiles_get_profiles_desc(dev, &info);
|
||||||
|
|
|
@ -0,0 +1,39 @@
|
||||||
|
# Template file for 'libratbag'
|
||||||
|
pkgname=libratbag
|
||||||
|
version=0.9.902
|
||||||
|
revision=1
|
||||||
|
build_style=meson
|
||||||
|
configure_args="-Denable-tests=false -Dsystemd-unit-dir=''
|
||||||
|
-Dsystemd=false"
|
||||||
|
hostmakedepends="pkg-config git swig"
|
||||||
|
makedepends="elogind-devel eudev-libudev-devel libglib-devel libevdev-devel
|
||||||
|
python3-devel"
|
||||||
|
depends="dbus python3-evdev python3-gobject"
|
||||||
|
short_desc="DBus daemon to configure gaming mice"
|
||||||
|
maintainer="maxice8 <thinkabit.ukim@gmail.com>"
|
||||||
|
license="MIT"
|
||||||
|
homepage="https://github.com/libratbag/libratbag"
|
||||||
|
distfiles="https://github.com/libratbag/libratbag/archive/v${version}.tar.gz"
|
||||||
|
checksum=01c0dac6b8cd997c3bec84a51c0a86fc8727e3a20635bf7e2c5e0f0b8c5df34c
|
||||||
|
|
||||||
|
if [ "$CROSS_BUILD" ]; then
|
||||||
|
case "$XBPS_TARGET_MACHINE" in
|
||||||
|
x86_64*|i686*) ;;
|
||||||
|
*) broken="Requires gobject introspection"
|
||||||
|
esac
|
||||||
|
fi
|
||||||
|
|
||||||
|
post_install() {
|
||||||
|
vsv ratbagd
|
||||||
|
vlicense COPYING
|
||||||
|
}
|
||||||
|
|
||||||
|
libratbag-devel_package() {
|
||||||
|
depends="libratbag-${version}_${revision}"
|
||||||
|
short_desc+=" - development files"
|
||||||
|
pkg_install() {
|
||||||
|
vmove usr/include
|
||||||
|
vmove usr/lib/pkgconfig
|
||||||
|
vmove "usr/lib/*.so"
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue