Add support for Haiku OS (#7435)

This commit is contained in:
David CARLIER 2020-09-29 13:52:13 +01:00 committed by GitHub
parent ce5efb444b
commit d535a5061c
3 changed files with 16 additions and 0 deletions

View File

@ -155,6 +155,12 @@ else
ifeq ($(uname_S),NetBSD) ifeq ($(uname_S),NetBSD)
# NetBSD # NetBSD
FINAL_LIBS+= -lpthread -lexecinfo FINAL_LIBS+= -lpthread -lexecinfo
else
ifeq ($(uname_S),Haiku)
# Haiku
FINAL_CFLAGS+= -DBSD_SOURCE
FINAL_LDFLAGS+= -lbsd -lnetwork
FINAL_LIBS+= -lpthread
else else
# All the other OSes (notably Linux) # All the other OSes (notably Linux)
FINAL_LDFLAGS+= -rdynamic FINAL_LDFLAGS+= -rdynamic
@ -168,6 +174,7 @@ endif
endif endif
endif endif
endif endif
endif
# Include paths to dependencies # Include paths to dependencies
FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src -I../deps/hdr_histogram FINAL_CFLAGS+= -I../deps/hiredis -I../deps/linenoise -I../deps/lua/src -I../deps/hdr_histogram

View File

@ -124,6 +124,10 @@
#define USE_SETPROCTITLE #define USE_SETPROCTITLE
#endif #endif
#if defined(__HAIKU__)
#define ESOCKTNOSUPPORT 0
#endif
#if ((defined __linux && defined(__GLIBC__)) || defined __APPLE__) #if ((defined __linux && defined(__GLIBC__)) || defined __APPLE__)
#define USE_SETPROCTITLE #define USE_SETPROCTITLE
#define INIT_SETPROCTITLE_REPLACEMENT #define INIT_SETPROCTITLE_REPLACEMENT

View File

@ -347,10 +347,15 @@ void memtest_alloc_and_test(size_t megabytes, int passes) {
} }
void memtest(size_t megabytes, int passes) { void memtest(size_t megabytes, int passes) {
#if !defined(__HAIKU__)
if (ioctl(1, TIOCGWINSZ, &ws) == -1) { if (ioctl(1, TIOCGWINSZ, &ws) == -1) {
ws.ws_col = 80; ws.ws_col = 80;
ws.ws_row = 20; ws.ws_row = 20;
} }
#else
ws.ws_col = 80;
ws.ws_row = 20;
#endif
memtest_alloc_and_test(megabytes,passes); memtest_alloc_and_test(megabytes,passes);
printf("\nYour memory passed this test.\n"); printf("\nYour memory passed this test.\n");
printf("Please if you are still in doubt use the following two tools:\n"); printf("Please if you are still in doubt use the following two tools:\n");