From 583e8a983ada7b84d51824bf527f5bda22e8ba0c Mon Sep 17 00:00:00 2001 From: Denis Date: Sun, 10 Dec 2023 01:08:57 +0100 Subject: [PATCH] Fixed linking errors --- CMakeLists.txt | 2 ++ Makefile | 2 +- dev_iio.c | 8 ++++++++ dev_iio.h | 8 ++------ rogue_enemy.c | 7 +++++++ rogue_enemy.h | 6 +----- 6 files changed, 21 insertions(+), 12 deletions(-) create mode 100644 rogue_enemy.c diff --git a/CMakeLists.txt b/CMakeLists.txt index 4a866b7..d2288df 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -29,7 +29,9 @@ add_executable(${EXECUTABLE_NAME} virt_evdev.c devices_status.c rog_ally.c + legion_go.c xbox360.c + rogue_enemy.c ) set_property(TARGET ${EXECUTABLE_NAME} PROPERTY C_STANDARD 17) diff --git a/Makefile b/Makefile index 7e6426a..f5dddb9 100644 --- a/Makefile +++ b/Makefile @@ -2,7 +2,7 @@ CFLAGS= -std=c17 -O3 -march=znver4 -D _DEFAULT_SOURCE -D_POSIX_C_SOURCE=200112L -std=c11 -fPIE -pedantic -Wall -flto=full # -Werror LDFLAGS=-lpthread -levdev -ludev -lconfig -lrt -lm -flto=full CC=clang -OBJECTS=main.o dev_in.o dev_out.o dev_iio.o dev_evdev.o dev_hidraw.o settings.o virt_ds4.o virt_ds5.o virt_mouse_kbd.o virt_evdev.o devices_status.o xbox360.o rog_ally.o legion_go.o +OBJECTS=main.o dev_in.o dev_out.o dev_iio.o dev_evdev.o dev_hidraw.o settings.o virt_ds4.o virt_ds5.o virt_mouse_kbd.o virt_evdev.o devices_status.o xbox360.o rog_ally.o legion_go.o rogue_enemy.o TARGET=rogue-enemy all: $(TARGET) diff --git a/dev_iio.c b/dev_iio.c index fb21ced..960e9a8 100644 --- a/dev_iio.c +++ b/dev_iio.c @@ -784,3 +784,11 @@ int dev_iio_read_imu(const dev_iio_t *const iio, imu_in_message_t *const out) { return 0; } + +int dev_iio_has_anglvel(const dev_iio_t* iio) { + return (iio->flags & DEV_IIO_HAS_ANGLVEL) != 0; +} + +int dev_iio_has_accel(const dev_iio_t* iio) { + return (iio->flags & DEV_IIO_HAS_ACCEL) != 0; +} diff --git a/dev_iio.h b/dev_iio.h index c856591..cce8eb5 100644 --- a/dev_iio.h +++ b/dev_iio.h @@ -63,13 +63,9 @@ const char* dev_iio_get_name(const dev_iio_t* iio); const char* dev_iio_get_path(const dev_iio_t* iio); -inline int dev_iio_has_anglvel(const dev_iio_t* iio) { - return (iio->flags & DEV_IIO_HAS_ANGLVEL) != 0; -} +int dev_iio_has_anglvel(const dev_iio_t* iio); -inline int dev_iio_has_accel(const dev_iio_t* iio) { - return (iio->flags & DEV_IIO_HAS_ACCEL) != 0; -} +int dev_iio_has_accel(const dev_iio_t* iio); int dev_iio_read( const dev_iio_t *const iio, diff --git a/rogue_enemy.c b/rogue_enemy.c new file mode 100644 index 0000000..a9627ef --- /dev/null +++ b/rogue_enemy.c @@ -0,0 +1,7 @@ +#include "rogue_enemy.h" + +int32_t div_round_closest(int32_t x, int32_t divisor) { + const int32_t __x = x; + const int32_t __d = divisor; + return ((__x) > 0) == ((__d) > 0) ? (((__x) + ((__d) / 2)) / (__d)) : (((__x) - ((__d) / 2)) / (__d)); +} \ No newline at end of file diff --git a/rogue_enemy.h b/rogue_enemy.h index 8202fda..e293267 100644 --- a/rogue_enemy.h +++ b/rogue_enemy.h @@ -47,8 +47,4 @@ #endif // also courtesy of linux kernel -inline int32_t div_round_closest(int32_t x, int32_t divisor) { - const int32_t __x = x; - const int32_t __d = divisor; - return ((__x) > 0) == ((__d) > 0) ? (((__x) + ((__d) / 2)) / (__d)) : (((__x) - ((__d) / 2)) / (__d)); -} +int32_t div_round_closest(int32_t x, int32_t divisor);