commit:     c2e54a000278968825cc226c4a32ce6cd6a654a3
Author:     brahmajit das <listout <AT> protonmail <DOT> com>
AuthorDate: Tue Sep 13 14:18:43 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Sep 13 14:34:50 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c2e54a00

app-misc/logiops: Fix build on musl

- timeval needed <sys/time.h>, and
- uint is not available on musl (maybe on other libc's) so using
  unsigned int

Closes: https://bugs.gentoo.org/828859
Signed-off-by: brahmajit das <listout <AT> protonmail.com>
Closes: https://github.com/gentoo/gentoo/pull/27237
Signed-off-by: Sam James <sam <AT> gentoo.org>

 .../logiops/files/logiops-0.2.3-musl-fixes.patch   | 44 ++++++++++++++++++++++
 app-misc/logiops/logiops-0.2.3-r1.ebuild           |  4 ++
 2 files changed, 48 insertions(+)

diff --git a/app-misc/logiops/files/logiops-0.2.3-musl-fixes.patch 
b/app-misc/logiops/files/logiops-0.2.3-musl-fixes.patch
new file mode 100644
index 000000000000..de549591852e
--- /dev/null
+++ b/app-misc/logiops/files/logiops-0.2.3-musl-fixes.patch
@@ -0,0 +1,44 @@
+# timeval needs sys/time.h and uint in not a part of non glibc systems, and
+# uint in not available on musl.
+#
+# A pull request has been opened upstream. So, once that is merged we can
+# remove this patch. Please refer: https://github.com/PixlOne/logiops/pull/330
+#
+# Closes: https://bugs.gentoo.org/828859
+--- a/src/logid/actions/KeypressAction.cpp
++++ b/src/logid/actions/KeypressAction.cpp
+@@ -85,7 +85,7 @@ KeypressAction::Config::Config(Device* device, 
libconfig::Setting& config) :
+     }
+ }
+
+-std::vector<uint>& KeypressAction::Config::keys()
++std::vector<unsigned int>& KeypressAction::Config::keys()
+ {
+     return _keys;
+-}
+\ No newline at end of file
++}
+--- a/src/logid/actions/KeypressAction.h
++++ b/src/logid/actions/KeypressAction.h
+@@ -38,9 +38,9 @@ namespace actions {
+         {
+         public:
+             explicit Config(Device* device, libconfig::Setting& root);
+-            std::vector<uint>& keys();
++            std::vector<unsigned int>& keys();
+         protected:
+-            std::vector<uint> _keys;
++            std::vector<unsigned int> _keys;
+         };
+     protected:
+         Config _config;
+--- a/src/logid/backend/raw/RawDevice.cpp
++++ b/src/logid/backend/raw/RawDevice.cpp
+@@ -40,6 +40,7 @@ extern "C"
+ #include <fcntl.h>
+ #include <sys/ioctl.h>
+ #include <linux/hidraw.h>
++#include <sys/time.h>
+ }
+
+ using namespace logid::backend::raw;

diff --git a/app-misc/logiops/logiops-0.2.3-r1.ebuild 
b/app-misc/logiops/logiops-0.2.3-r1.ebuild
index 55057eb6fb40..9af5ed327f84 100644
--- a/app-misc/logiops/logiops-0.2.3-r1.ebuild
+++ b/app-misc/logiops/logiops-0.2.3-r1.ebuild
@@ -27,6 +27,10 @@ BDEPEND="virtual/pkgconfig"
 
 DOCS=( "README.md" "TESTED.md" )
 
+PATCHES=(
+       "${FILESDIR}"/${PN}-0.2.3-musl-fixes.patch
+)
+
 pkg_pretend() {
        local CHECK_CONFIG="~HID_LOGITECH ~HID_LOGITECH_HIDPP"
 

Reply via email to