termux-packages/packages/fex/Source-Tests-LinuxSyscalls-...

28 lines
904 B
Diff

--- a/Source/Tests/LinuxSyscalls/Syscalls/Msg.cpp
+++ b/Source/Tests/LinuxSyscalls/Syscalls/Msg.cpp
@@ -8,7 +8,7 @@
#include "Tests/LinuxSyscalls/x64/Syscalls.h"
#include "Tests/LinuxSyscalls/x32/Syscalls.h"
-#include <mqueue.h>
+#include <linux/mqueue.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/msg.h>
@@ -17,6 +17,7 @@
namespace FEX::HLE {
void RegisterMsg() {
+#if !defined(__ANDROID__) || __ANDROID_API__ >= 26
REGISTER_SYSCALL_IMPL_PASS(msgget, [](FEXCore::Core::CpuStateFrame *Frame, key_t key, int msgflg) -> uint64_t {
uint64_t Result = ::msgget(key, msgflg);
SYSCALL_ERRNO();
@@ -40,6 +41,7 @@
uint64_t Result = ::msgctl(msqid, cmd, buf);
SYSCALL_ERRNO();
});
+#endif
// last two parameters are optional
REGISTER_SYSCALL_IMPL_PASS(mq_unlink, [](FEXCore::Core::CpuStateFrame *Frame, const char *name) -> uint64_t {