From: Matthieu Herrb Subject: Re: [UPDATE] wayland/livevdev-20231111p1 To: SASANO Takayoshi Cc: ports@cvs.openbsd.org Date: Sun, 23 Nov 2025 15:32:40 +0100 On Sun, Nov 23, 2025 at 11:15:27PM +0900, SASANO Takayoshi wrote: > Hello, > > I am trying to build aquamarine library > (https://github.com/hyprwm/aquamarine) for Hyprland window manager. > > And I found libinput-openbsd calls following funcions of libevdev > but they are not implemented. > > libevdev_event_type_from_name > libevdev_property_from_name > > Here is the patch to add them, ok? Hi, Since you add functions, you should bump the SHARED_LIB minor number. Also, since this is code that I manage on code.tetaneutral.net, it would be easier/cleaner if you submitted a merge request there (https://code.tetaneutral.net/mherrb/libevdev-openbsd) and then update the port to the new release. > > Index: Makefile > =================================================================== > RCS file: /cvs/ports/wayland/libevdev-openbsd/Makefile,v > diff -u -p -r1.6 Makefile > --- Makefile 2 Jun 2025 19:03:24 -0000 1.6 > +++ Makefile 23 Nov 2025 14:07:41 -0000 > @@ -8,7 +8,7 @@ > COMMENT = minimal set of libevedev functions for Wayland on OpenBSD > > V = 20231111 > -REVISION = 0 > +REVISION = 1 > DISTNAME = libevdev-openbsd-$V > CATEGORIES = wayland > > Index: patches/patch-libevdev_c > =================================================================== > RCS file: patches/patch-libevdev_c > diff -N patches/patch-libevdev_c > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-libevdev_c 23 Nov 2025 14:07:41 -0000 > @@ -0,0 +1,36 @@ > +--- libevdev.c.orig Sat Nov 11 23:32:38 2023 > ++++ libevdev.c Sun Nov 23 21:38:14 2025 > +@@ -140,3 +140,33 @@ libevdev_event_code_from_name(unsigned int type, const > + > + return entry ? (int)entry->value : -1; > + } > ++ > ++int > ++libevdev_event_type_from_name(const char *name) > ++{ > ++ struct name_lookup lookup; > ++ const struct name_entry *entry; > ++ size_t len = strlen(name); > ++ > ++ lookup.name = name; > ++ lookup.len = len; > ++ > ++ entry = lookup_name(ev_names, ARRAY_LENGTH(ev_names), &lookup); > ++ > ++ return entry ? (int)entry->value : -1; > ++} > ++ > ++int > ++libevdev_property_from_name(const char *name) > ++{ > ++ struct name_lookup lookup; > ++ const struct name_entry *entry; > ++ size_t len = strlen(name); > ++ > ++ lookup.name = name; > ++ lookup.len = len; > ++ > ++ entry = lookup_name(prop_names, ARRAY_LENGTH(prop_names), &lookup); > ++ > ++ return entry ? (int)entry->value : -1; > ++} > Index: patches/patch-libevdev_libevdev_h > =================================================================== > RCS file: patches/patch-libevdev_libevdev_h > diff -N patches/patch-libevdev_libevdev_h > --- /dev/null 1 Jan 1970 00:00:00 -0000 > +++ patches/patch-libevdev_libevdev_h 23 Nov 2025 14:07:41 -0000 > @@ -0,0 +1,11 @@ > +--- libevdev/libevdev.h.orig Sat Nov 11 23:32:38 2023 > ++++ libevdev/libevdev.h Sun Nov 23 21:38:14 2025 > +@@ -31,6 +31,8 @@ extern "C" { > + #endif > + extern int libevdev_event_code_from_name(unsigned int type, const char *name); > + extern const char * libevdev_event_code_get_name(unsigned int type, unsigned int code); > ++extern int libevdev_event_type_from_name(const char *name); > ++extern int libevdev_property_from_name(const char *name); > + #ifdef __cplusplus > + } > + #endif > > > -- > SASANO Takayoshi (JG1UAA) > -- Matthieu Herrb