diff --git a/cmake/LibraryNaming.cmake b/cmake/LibraryNaming.cmake
index 26866447..db50422e 100644
--- a/cmake/LibraryNaming.cmake
+++ b/cmake/LibraryNaming.cmake
@@ -29,6 +29,7 @@ check_symbol_exists(XASH_MOBILE_PLATFORM "build.h" XASH_MOBILE_PLATFORM)
check_symbol_exists(XASH_MSVC "build.h" XASH_MSVC)
check_symbol_exists(XASH_NETBSD "build.h" XASH_NETBSD)
check_symbol_exists(XASH_OPENBSD "build.h" XASH_OPENBSD)
+check_symbol_exists(XASH_HAIKU "build.h" XASH_HAIKU)
check_symbol_exists(XASH_WIN32 "build.h" XASH_WIN32)
check_symbol_exists(XASH_WIN64 "build.h" XASH_WIN64)
check_symbol_exists(XASH_X86 "build.h" XASH_X86)
@@ -45,6 +46,8 @@ elseif(XASH_NETBSD)
set(BUILDOS "netbsd")
elseif(XASH_OPENBSD)
set(BUILDOS "openbsd")
+elseif(XASH_HAIKU)
+ set(BUILDOS "haiku")
elseif(XASH_EMSCRIPTEN)
set(BUILDOS "emscripten")
else()
diff --git a/public/build.h b/public/build.h
index 043a11cd..e23265ce 100644
--- a/public/build.h
+++ b/public/build.h
@@ -67,6 +67,7 @@ For more information, please refer to
#undef XASH_MSVC
#undef XASH_NETBSD
#undef XASH_OPENBSD
+#undef XASH_HAIKU
#undef XASH_WIN32
#undef XASH_WIN64
#undef XASH_X86
@@ -115,6 +116,9 @@ For more information, please refer to
#elif defined __WATCOMC__ && defined __DOS__
#define XASH_DOS4GW 1
#define XASH_LITTLE_ENDIAN
+#elif defined __HAIKU__
+ #define XASH_HAIKU 1
+ #define XASH_POSIX 1
#else
#error "Place your operating system name here! If this is a mistake, try to fix conditions above and report a bug"
#endif
diff --git a/scripts/waifulib/library_naming.py b/scripts/waifulib/library_naming.py
index 6ee9a725..baf2ee71 100644
--- a/scripts/waifulib/library_naming.py
+++ b/scripts/waifulib/library_naming.py
@@ -47,6 +47,7 @@ DEFINES = [
'XASH_MSVC',
'XASH_NETBSD',
'XASH_OPENBSD',
+'XASH_HAIKU',
'XASH_WIN32',
'XASH_WIN64',
'XASH_X86',
@@ -79,6 +80,8 @@ def configure(conf):
buildos = "emscripten"
elif conf.env.XASH_DOS4GW:
buildos = "dos4gw" # unused, just in case
+ elif conf.env.XASH_HAIKU:
+ buildos = "haiku"
else:
conf.fatal("Place your operating system name in build.h and library_naming.py!\n"
"If this is a mistake, try to fix conditions above and report a bug")