mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-08 21:00:05 +02:00
1047 lines
37 KiB
Plaintext
1047 lines
37 KiB
Plaintext
From acd9b2f42c982dbd58d7a043aedcc792b8cbc447 Mon Sep 17 00:00:00 2001
|
|
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
|
Date: Wed, 10 Jun 2020 22:35:16 +1000
|
|
Subject: Haiku patches
|
|
|
|
|
|
diff --git a/3rdparty/bgfx/3rdparty/dear-imgui/widgets/file_list.inl b/3rdparty/bgfx/3rdparty/dear-imgui/widgets/file_list.inl
|
|
index fda99b6..a83e72c 100644
|
|
--- a/3rdparty/bgfx/3rdparty/dear-imgui/widgets/file_list.inl
|
|
+++ b/3rdparty/bgfx/3rdparty/dear-imgui/widgets/file_list.inl
|
|
@@ -32,6 +32,7 @@ namespace ImGui
|
|
}
|
|
else if (0 != ImStricmp(item->d_name, ".") )
|
|
{
|
|
+#ifndef __HAIKU__
|
|
if (item->d_type & DT_DIR)
|
|
{
|
|
FileList.push_back(ImFileInfo(item->d_name, -1) );
|
|
@@ -42,6 +43,7 @@ namespace ImGui
|
|
stat(item->d_name, &statbuf);
|
|
FileList.push_back(ImFileInfo(item->d_name, statbuf.st_size) );
|
|
}
|
|
+#endif
|
|
}
|
|
}
|
|
|
|
diff --git a/3rdparty/genie/build/gmake.haiku/Makefile b/3rdparty/genie/build/gmake.haiku/Makefile
|
|
new file mode 100644
|
|
index 0000000..be9880c
|
|
--- /dev/null
|
|
+++ b/3rdparty/genie/build/gmake.haiku/Makefile
|
|
@@ -0,0 +1,34 @@
|
|
+# GNU Make solution makefile autogenerated by GENie
|
|
+# Type "make help" for usage help
|
|
+
|
|
+ifndef config
|
|
+ config=release
|
|
+endif
|
|
+export config
|
|
+
|
|
+PROJECTS := genie
|
|
+
|
|
+.PHONY: all clean help $(PROJECTS)
|
|
+
|
|
+all: $(PROJECTS)
|
|
+
|
|
+genie:
|
|
+ @echo "==== Building genie ($(config)) ===="
|
|
+ @${MAKE} --no-print-directory -C . -f genie.make
|
|
+
|
|
+clean:
|
|
+ @${MAKE} --no-print-directory -C . -f genie.make clean
|
|
+
|
|
+help:
|
|
+ @echo "Usage: make [config=name] [target]"
|
|
+ @echo ""
|
|
+ @echo "CONFIGURATIONS:"
|
|
+ @echo " release"
|
|
+ @echo " debug"
|
|
+ @echo ""
|
|
+ @echo "TARGETS:"
|
|
+ @echo " all (default)"
|
|
+ @echo " clean"
|
|
+ @echo " genie"
|
|
+ @echo ""
|
|
+ @echo "For more information, see https://github.com/bkaradzic/genie"
|
|
diff --git a/3rdparty/genie/build/gmake.haiku/genie.make b/3rdparty/genie/build/gmake.haiku/genie.make
|
|
new file mode 100644
|
|
index 0000000..73f650c
|
|
--- /dev/null
|
|
+++ b/3rdparty/genie/build/gmake.haiku/genie.make
|
|
@@ -0,0 +1,488 @@
|
|
+# GNU Make project makefile autogenerated by GENie
|
|
+ifndef config
|
|
+ config=release
|
|
+endif
|
|
+
|
|
+ifndef verbose
|
|
+ SILENT = @
|
|
+endif
|
|
+
|
|
+SHELLTYPE := msdos
|
|
+ifeq (,$(ComSpec)$(COMSPEC))
|
|
+ SHELLTYPE := posix
|
|
+endif
|
|
+ifeq (/bin,$(findstring /bin,$(SHELL)))
|
|
+ SHELLTYPE := posix
|
|
+endif
|
|
+ifeq (/bin,$(findstring /bin,$(MAKESHELL)))
|
|
+ SHELLTYPE := posix
|
|
+endif
|
|
+
|
|
+ifeq (posix,$(SHELLTYPE))
|
|
+ MKDIR = $(SILENT) mkdir -p "$(1)"
|
|
+ COPY = $(SILENT) cp -fR "$(1)" "$(2)"
|
|
+ RM = $(SILENT) rm -f "$(1)"
|
|
+else
|
|
+ MKDIR = $(SILENT) mkdir "$(subst /,\\,$(1))" 2> nul || exit 0
|
|
+ COPY = $(SILENT) copy /Y "$(subst /,\\,$(1))" "$(subst /,\\,$(2))"
|
|
+ RM = $(SILENT) del /F "$(subst /,\\,$(1))" 2> nul || exit 0
|
|
+endif
|
|
+
|
|
+CC = gcc
|
|
+CXX = g++
|
|
+AR = ar
|
|
+
|
|
+ifndef RESCOMP
|
|
+ ifdef WINDRES
|
|
+ RESCOMP = $(WINDRES)
|
|
+ else
|
|
+ RESCOMP = windres
|
|
+ endif
|
|
+endif
|
|
+
|
|
+MAKEFILE = genie.make
|
|
+
|
|
+ifeq ($(config),release)
|
|
+ OBJDIR = obj/Release
|
|
+ TARGETDIR = ../../bin/haiku
|
|
+ override TARGET = $(TARGETDIR)/genie
|
|
+ DEFINES += -DNDEBUG -DLUA_COMPAT_MODULE -DLUA_USE_POSIX -DLUA_USE_DLOPEN
|
|
+ INCLUDES += -I"../../src/host/lua-5.3.0/src"
|
|
+ INCLUDES +=
|
|
+ ALL_CPPFLAGS += $(CPPFLAGS) -MMD -MP -MP $(DEFINES) $(INCLUDES)
|
|
+ ALL_ASMFLAGS += $(ASMFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -Os
|
|
+ ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -Os
|
|
+ ALL_CXXFLAGS += $(CXXFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -Os
|
|
+ ALL_OBJCFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -Os
|
|
+ ALL_OBJCPPFLAGS += $(CXXFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -Os
|
|
+ ALL_RESFLAGS += $(RESFLAGS) $(DEFINES) $(INCLUDES)
|
|
+ ALL_LDFLAGS += $(LDFLAGS) -L. -s
|
|
+ LDDEPS +=
|
|
+ LIBS += $(LDDEPS) -lm -lbsd
|
|
+ EXTERNAL_LIBS +=
|
|
+ LINKCMD = $(CC) -o $(TARGET) $(OBJECTS) $(RESOURCES) $(ARCH) $(ALL_LDFLAGS) $(LIBS)
|
|
+ OBJECTS := \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lapi.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lauxlib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lbaselib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lbitlib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lcode.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lcorolib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lctype.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ldblib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ldebug.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ldo.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ldump.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lfunc.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lgc.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/linit.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/liolib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/llex.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lmathlib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lmem.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/loadlib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lobject.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lopcodes.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/loslib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lparser.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lstate.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lstring.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lstrlib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ltable.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ltablib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ltm.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lundump.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lutf8lib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lvm.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lzio.o \
|
|
+ $(OBJDIR)/src/host/os_chdir.o \
|
|
+ $(OBJDIR)/src/host/os_copyfile.o \
|
|
+ $(OBJDIR)/src/host/os_getcwd.o \
|
|
+ $(OBJDIR)/src/host/os_is64bit.o \
|
|
+ $(OBJDIR)/src/host/os_isdir.o \
|
|
+ $(OBJDIR)/src/host/os_isfile.o \
|
|
+ $(OBJDIR)/src/host/os_match.o \
|
|
+ $(OBJDIR)/src/host/os_mkdir.o \
|
|
+ $(OBJDIR)/src/host/os_pathsearch.o \
|
|
+ $(OBJDIR)/src/host/os_rmdir.o \
|
|
+ $(OBJDIR)/src/host/os_stat.o \
|
|
+ $(OBJDIR)/src/host/os_ticks.o \
|
|
+ $(OBJDIR)/src/host/os_uuid.o \
|
|
+ $(OBJDIR)/src/host/path_getabsolute.o \
|
|
+ $(OBJDIR)/src/host/path_getrelative.o \
|
|
+ $(OBJDIR)/src/host/path_helpers.o \
|
|
+ $(OBJDIR)/src/host/path_isabsolute.o \
|
|
+ $(OBJDIR)/src/host/premake.o \
|
|
+ $(OBJDIR)/src/host/premake_main.o \
|
|
+ $(OBJDIR)/src/host/scripts.o \
|
|
+ $(OBJDIR)/src/host/string_endswith.o \
|
|
+ $(OBJDIR)/src/host/string_hash.o \
|
|
+
|
|
+ define PREBUILDCMDS
|
|
+ endef
|
|
+ define PRELINKCMDS
|
|
+ endef
|
|
+ define POSTBUILDCMDS
|
|
+ endef
|
|
+endif
|
|
+
|
|
+ifeq ($(config),debug)
|
|
+ OBJDIR = obj/Debug
|
|
+ TARGETDIR = ../../bin/linux
|
|
+ override TARGET = $(TARGETDIR)/genie
|
|
+ DEFINES += -D_DEBUG -DLUA_COMPAT_MODULE -DLUA_USE_POSIX -DLUA_USE_DLOPEN
|
|
+ INCLUDES += -I"../../src/host/lua-5.3.0/src"
|
|
+ INCLUDES +=
|
|
+ ALL_CPPFLAGS += $(CPPFLAGS) -MMD -MP -MP $(DEFINES) $(INCLUDES)
|
|
+ ALL_ASMFLAGS += $(ASMFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -g
|
|
+ ALL_CFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -g
|
|
+ ALL_CXXFLAGS += $(CXXFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -g
|
|
+ ALL_OBJCFLAGS += $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -g
|
|
+ ALL_OBJCPPFLAGS += $(CXXFLAGS) $(CFLAGS) $(ALL_CPPFLAGS) $(ARCH) -Wall -Wextra -g
|
|
+ ALL_RESFLAGS += $(RESFLAGS) $(DEFINES) $(INCLUDES)
|
|
+ ALL_LDFLAGS += $(LDFLAGS) -L.
|
|
+ LDDEPS +=
|
|
+ LIBS += $(LDDEPS) -lm -lbsd
|
|
+ EXTERNAL_LIBS +=
|
|
+ LINKCMD = $(CC) -o $(TARGET) $(OBJECTS) $(RESOURCES) $(ARCH) $(ALL_LDFLAGS) $(LIBS)
|
|
+ OBJECTS := \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lapi.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lauxlib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lbaselib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lbitlib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lcode.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lcorolib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lctype.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ldblib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ldebug.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ldo.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ldump.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lfunc.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lgc.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/linit.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/liolib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/llex.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lmathlib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lmem.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/loadlib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lobject.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lopcodes.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/loslib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lparser.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lstate.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lstring.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lstrlib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ltable.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ltablib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/ltm.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lundump.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lutf8lib.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lvm.o \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src/lzio.o \
|
|
+ $(OBJDIR)/src/host/os_chdir.o \
|
|
+ $(OBJDIR)/src/host/os_copyfile.o \
|
|
+ $(OBJDIR)/src/host/os_getcwd.o \
|
|
+ $(OBJDIR)/src/host/os_is64bit.o \
|
|
+ $(OBJDIR)/src/host/os_isdir.o \
|
|
+ $(OBJDIR)/src/host/os_isfile.o \
|
|
+ $(OBJDIR)/src/host/os_match.o \
|
|
+ $(OBJDIR)/src/host/os_mkdir.o \
|
|
+ $(OBJDIR)/src/host/os_pathsearch.o \
|
|
+ $(OBJDIR)/src/host/os_rmdir.o \
|
|
+ $(OBJDIR)/src/host/os_stat.o \
|
|
+ $(OBJDIR)/src/host/os_ticks.o \
|
|
+ $(OBJDIR)/src/host/os_uuid.o \
|
|
+ $(OBJDIR)/src/host/path_getabsolute.o \
|
|
+ $(OBJDIR)/src/host/path_getrelative.o \
|
|
+ $(OBJDIR)/src/host/path_helpers.o \
|
|
+ $(OBJDIR)/src/host/path_isabsolute.o \
|
|
+ $(OBJDIR)/src/host/premake.o \
|
|
+ $(OBJDIR)/src/host/premake_main.o \
|
|
+ $(OBJDIR)/src/host/scripts.o \
|
|
+ $(OBJDIR)/src/host/string_endswith.o \
|
|
+ $(OBJDIR)/src/host/string_hash.o \
|
|
+
|
|
+ define PREBUILDCMDS
|
|
+ endef
|
|
+ define PRELINKCMDS
|
|
+ endef
|
|
+ define POSTBUILDCMDS
|
|
+ endef
|
|
+endif
|
|
+
|
|
+OBJDIRS := \
|
|
+ $(OBJDIR) \
|
|
+ $(OBJDIR)/src/host \
|
|
+ $(OBJDIR)/src/host/lua-5.3.0/src \
|
|
+
|
|
+RESOURCES := \
|
|
+
|
|
+.PHONY: clean prebuild prelink
|
|
+
|
|
+all: $(OBJDIRS) $(TARGETDIR) prebuild prelink $(TARGET)
|
|
+ @:
|
|
+
|
|
+$(TARGET): $(GCH) $(OBJECTS) $(LDDEPS) $(EXTERNAL_LIBS) $(RESOURCES) | $(TARGETDIR) $(OBJDIRS)
|
|
+ @echo Linking genie
|
|
+ $(SILENT) $(LINKCMD)
|
|
+ $(POSTBUILDCMDS)
|
|
+
|
|
+$(TARGETDIR):
|
|
+ @echo Creating $(TARGETDIR)
|
|
+ -$(call MKDIR,$(TARGETDIR))
|
|
+
|
|
+$(OBJDIRS):
|
|
+ @echo Creating $(@)
|
|
+ -$(call MKDIR,$@)
|
|
+
|
|
+clean:
|
|
+ @echo Cleaning genie
|
|
+ifeq (posix,$(SHELLTYPE))
|
|
+ $(SILENT) rm -f $(TARGET)
|
|
+ $(SILENT) rm -rf $(OBJDIR)
|
|
+else
|
|
+ $(SILENT) if exist $(subst /,\\,$(TARGET)) del $(subst /,\\,$(TARGET))
|
|
+ $(SILENT) if exist $(subst /,\\,$(OBJDIR)) rmdir /s /q $(subst /,\\,$(OBJDIR))
|
|
+endif
|
|
+
|
|
+prebuild:
|
|
+ $(PREBUILDCMDS)
|
|
+
|
|
+prelink:
|
|
+ $(PRELINKCMDS)
|
|
+
|
|
+ifneq (,$(PCH))
|
|
+$(GCH): $(PCH) $(MAKEFILE) | $(OBJDIR)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) -x c-header $(DEFINES) $(INCLUDES) -o "$@" -c "$<"
|
|
+
|
|
+$(GCH_OBJC): $(PCH) $(MAKEFILE) | $(OBJDIR)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_OBJCFLAGS) -x objective-c-header $(DEFINES) $(INCLUDES) -o "$@" -c "$<"
|
|
+endif
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lapi.o: ../../src/host/lua-5.3.0/src/lapi.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lauxlib.o: ../../src/host/lua-5.3.0/src/lauxlib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lbaselib.o: ../../src/host/lua-5.3.0/src/lbaselib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lbitlib.o: ../../src/host/lua-5.3.0/src/lbitlib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lcode.o: ../../src/host/lua-5.3.0/src/lcode.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lcorolib.o: ../../src/host/lua-5.3.0/src/lcorolib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lctype.o: ../../src/host/lua-5.3.0/src/lctype.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/ldblib.o: ../../src/host/lua-5.3.0/src/ldblib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/ldebug.o: ../../src/host/lua-5.3.0/src/ldebug.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/ldo.o: ../../src/host/lua-5.3.0/src/ldo.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/ldump.o: ../../src/host/lua-5.3.0/src/ldump.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lfunc.o: ../../src/host/lua-5.3.0/src/lfunc.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lgc.o: ../../src/host/lua-5.3.0/src/lgc.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/linit.o: ../../src/host/lua-5.3.0/src/linit.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/liolib.o: ../../src/host/lua-5.3.0/src/liolib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/llex.o: ../../src/host/lua-5.3.0/src/llex.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lmathlib.o: ../../src/host/lua-5.3.0/src/lmathlib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lmem.o: ../../src/host/lua-5.3.0/src/lmem.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/loadlib.o: ../../src/host/lua-5.3.0/src/loadlib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lobject.o: ../../src/host/lua-5.3.0/src/lobject.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lopcodes.o: ../../src/host/lua-5.3.0/src/lopcodes.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/loslib.o: ../../src/host/lua-5.3.0/src/loslib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lparser.o: ../../src/host/lua-5.3.0/src/lparser.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lstate.o: ../../src/host/lua-5.3.0/src/lstate.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lstring.o: ../../src/host/lua-5.3.0/src/lstring.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lstrlib.o: ../../src/host/lua-5.3.0/src/lstrlib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/ltable.o: ../../src/host/lua-5.3.0/src/ltable.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/ltablib.o: ../../src/host/lua-5.3.0/src/ltablib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/ltm.o: ../../src/host/lua-5.3.0/src/ltm.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lundump.o: ../../src/host/lua-5.3.0/src/lundump.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lutf8lib.o: ../../src/host/lua-5.3.0/src/lutf8lib.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lvm.o: ../../src/host/lua-5.3.0/src/lvm.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/lua-5.3.0/src/lzio.o: ../../src/host/lua-5.3.0/src/lzio.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_chdir.o: ../../src/host/os_chdir.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_copyfile.o: ../../src/host/os_copyfile.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_getcwd.o: ../../src/host/os_getcwd.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_is64bit.o: ../../src/host/os_is64bit.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_isdir.o: ../../src/host/os_isdir.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_isfile.o: ../../src/host/os_isfile.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_match.o: ../../src/host/os_match.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_mkdir.o: ../../src/host/os_mkdir.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_pathsearch.o: ../../src/host/os_pathsearch.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_rmdir.o: ../../src/host/os_rmdir.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_stat.o: ../../src/host/os_stat.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_ticks.o: ../../src/host/os_ticks.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/os_uuid.o: ../../src/host/os_uuid.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/path_getabsolute.o: ../../src/host/path_getabsolute.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/path_getrelative.o: ../../src/host/path_getrelative.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/path_helpers.o: ../../src/host/path_helpers.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/path_isabsolute.o: ../../src/host/path_isabsolute.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/premake.o: ../../src/host/premake.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/premake_main.o: ../../src/host/premake_main.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/scripts.o: ../../src/host/scripts.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/string_endswith.o: ../../src/host/string_endswith.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+$(OBJDIR)/src/host/string_hash.o: ../../src/host/string_hash.c $(GCH) $(MAKEFILE)
|
|
+ @echo $(notdir $<)
|
|
+ $(SILENT) $(CC) $(ALL_CFLAGS) $(FORCE_INCLUDE) -o "$@" -c "$<"
|
|
+
|
|
+-include $(OBJECTS:%.o=%.d)
|
|
+ifneq (,$(PCH))
|
|
+ -include $(OBJDIR)/$(notdir $(PCH)).d
|
|
+ -include $(OBJDIR)/$(notdir $(PCH))_objc.d
|
|
+endif
|
|
diff --git a/3rdparty/genie/makefile b/3rdparty/genie/makefile
|
|
index 9df2558..0d7c04e 100644
|
|
--- a/3rdparty/genie/makefile
|
|
+++ b/3rdparty/genie/makefile
|
|
@@ -4,7 +4,7 @@
|
|
#
|
|
|
|
UNAME := $(shell uname)
|
|
-ifeq ($(UNAME),$(filter $(UNAME),Linux Darwin SunOS FreeBSD GNU/kFreeBSD NetBSD OpenBSD GNU))
|
|
+ifeq ($(UNAME),$(filter $(UNAME),Linux Darwin SunOS FreeBSD GNU/kFreeBSD NetBSD OpenBSD GNU Haiku))
|
|
ifeq ($(UNAME),$(filter $(UNAME),Darwin))
|
|
OS=darwin
|
|
else
|
|
@@ -14,10 +14,14 @@ else
|
|
ifeq ($(UNAME),$(filter $(UNAME),FreeBSD GNU/kFreeBSD NetBSD OpenBSD))
|
|
OS=bsd
|
|
else
|
|
+ifeq ($(UNAME),$(filter $(UNAME),Haiku))
|
|
+OS=haiku
|
|
+else
|
|
OS=linux
|
|
endif
|
|
endif
|
|
endif
|
|
+endif
|
|
else
|
|
OS=windows
|
|
endif
|
|
@@ -43,6 +47,7 @@ projgen:
|
|
$(SILENT) $(GENIE) --to=../build/$(PROJECT_TYPE).linux --os=linux $(PROJECT_TYPE)
|
|
$(SILENT) $(GENIE) --to=../build/$(PROJECT_TYPE).darwin --os=macosx --platform=universal32 $(PROJECT_TYPE)
|
|
$(SILENT) $(GENIE) --to=../build/$(PROJECT_TYPE).freebsd --os=bsd $(PROJECT_TYPE)
|
|
+ $(SILENT) $(GENIE) --to=../build/$(PROJECT_TYPE).haiku --os=haiku $(PROJECT_TYPE)
|
|
|
|
rebuild:
|
|
$(SILENT) $(MAKE) -C build/$(PROJECT_TYPE).$(OS) clean all
|
|
@@ -56,6 +61,7 @@ release-linux: $(GENIE)
|
|
$(SILENT) $(GENIE) release
|
|
$(SILENT) $(MAKE) -C build/$(PROJECT_TYPE).darwin clean all CC=x86_64-apple-darwin20.2-clang
|
|
$(SILENT) $(MAKE) -C build/$(PROJECT_TYPE).linux clean all
|
|
+ $(SILENT) $(MAKE) -C build/$(PROJECT_TYPE).haiku clean all
|
|
$(SILENT) $(MAKE) -C build/$(PROJECT_TYPE).windows clean all CC=x86_64-w64-mingw32-gcc
|
|
$(SILENT) git checkout src/host/version.h
|
|
|
|
@@ -65,3 +71,4 @@ dist: release
|
|
cp bin/linux/genie ../bx/tools/bin/linux/
|
|
cp bin/windows/genie.exe ../bx/tools/bin/windows/
|
|
cp bin/darwin/genie ../bx/tools/bin/darwin/
|
|
+ cp bin/haiku/genie ../bx/tools/bin/haiku/
|
|
diff --git a/3rdparty/genie/scripts/genie.lua b/3rdparty/genie/scripts/genie.lua
|
|
index 291dd52..ecf886e 100644
|
|
--- a/3rdparty/genie/scripts/genie.lua
|
|
+++ b/3rdparty/genie/scripts/genie.lua
|
|
@@ -91,6 +91,11 @@
|
|
|
|
configuration {}
|
|
|
|
+ configuration "haiku"
|
|
+ targetdir "../bin/haiku"
|
|
+ defines { "LUA_USE_POSIX", "LUA_USE_DLOPEN" }
|
|
+ links { "root bsd" }
|
|
+
|
|
|
|
--
|
|
-- A more thorough cleanup.
|
|
diff --git a/3rdparty/genie/scripts/release.lua b/3rdparty/genie/scripts/release.lua
|
|
index d1173d5..39bcaa5 100644
|
|
--- a/3rdparty/genie/scripts/release.lua
|
|
+++ b/3rdparty/genie/scripts/release.lua
|
|
@@ -40,6 +40,7 @@ function dorelease()
|
|
exec(_PREMAKE_COMMAND .. " /to=../build/gmake.windows /os=windows gmake")
|
|
exec(_PREMAKE_COMMAND .. " /to=../build/gmake.linux /os=linux gmake")
|
|
exec(_PREMAKE_COMMAND .. " /to=../build/gmake.darwin /os=macosx /platform=universal32 gmake")
|
|
+ exec(_PREMAKE_COMMAND .. " /to=../build/gmake.haiku /os=haiku gmake")
|
|
|
|
print("")
|
|
print( "Finished.")
|
|
diff --git a/3rdparty/genie/src/base/cmdline.lua b/3rdparty/genie/src/base/cmdline.lua
|
|
index 0127cef..06aa6c1 100644
|
|
--- a/3rdparty/genie/src/base/cmdline.lua
|
|
+++ b/3rdparty/genie/src/base/cmdline.lua
|
|
@@ -57,6 +57,7 @@
|
|
{ "macosx", "Apple Mac OS X" },
|
|
{ "solaris", "Solaris" },
|
|
{ "windows", "Microsoft Windows" },
|
|
+ { "haiku", "Haiku" },
|
|
}
|
|
}
|
|
|
|
diff --git a/3rdparty/genie/src/base/os.lua b/3rdparty/genie/src/base/os.lua
|
|
index 3cddcbb..b533bf1 100644
|
|
--- a/3rdparty/genie/src/base/os.lua
|
|
+++ b/3rdparty/genie/src/base/os.lua
|
|
@@ -66,6 +66,9 @@
|
|
if os.is("macosx") then
|
|
formats = { "lib%s.dylib", "%s.dylib" }
|
|
path = os.getenv("DYLD_LIBRARY_PATH")
|
|
+ elseif os.is("haiku") then
|
|
+ formats = { "lib%s.so", "%s.so" }
|
|
+ path = os.getenv("LIBRARY_PATH")
|
|
else
|
|
formats = { "lib%s.so", "%s.so" }
|
|
path = os.getenv("LD_LIBRARY_PATH") or ""
|
|
diff --git a/3rdparty/genie/src/host/premake.h b/3rdparty/genie/src/host/premake.h
|
|
index f0782db..5a3a636 100644
|
|
--- a/3rdparty/genie/src/host/premake.h
|
|
+++ b/3rdparty/genie/src/host/premake.h
|
|
@@ -27,6 +27,9 @@
|
|
#elif defined(__OS2__)
|
|
#define PLATFORM_OS2 (1)
|
|
#define PLATFORM_STRING "os2"
|
|
+#elif defined(__HAIKU__)
|
|
+#define PLATFORM_HAIKU (1)
|
|
+#define PLATFORM_STRING "haiku"
|
|
#else
|
|
#define PLATFORM_WINDOWS (1)
|
|
#define PLATFORM_STRING "windows"
|
|
diff --git a/makefile b/makefile
|
|
index a39a8ca..7f08673 100644
|
|
--- a/makefile
|
|
+++ b/makefile
|
|
@@ -232,6 +232,7 @@ OS := macosx
|
|
GENIEOS := darwin
|
|
else ifeq ($(firstword $(filter Haiku,$(UNAME))),Haiku)
|
|
OS := haiku
|
|
+GENIEOS := haiku
|
|
endif
|
|
|
|
ifndef OS
|
|
@@ -538,6 +539,10 @@ PARAMS += --CC='$(OVERRIDE_CC)'
|
|
ifndef CROSS_BUILD
|
|
CC := $(OVERRIDE_CC)
|
|
endif
|
|
+
|
|
+ifeq ($(TARGETOS),haiku)
|
|
+OSD := sdl
|
|
+endif
|
|
endif
|
|
ifdef OVERRIDE_CXX
|
|
PARAMS += --CXX='$(OVERRIDE_CXX)'
|
|
@@ -1471,6 +1476,28 @@ openbsd_x86_clang: generate $(PROJECTDIR)/$(MAKETYPE)-openbsd-clang/Makefile
|
|
$(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-openbsd-clang config=$(CONFIG)32 precompile
|
|
$(SILENT) $(MAKE) -C $(PROJECTDIR)/$(MAKETYPE)-openbsd-clang config=$(CONFIG)32
|
|
|
|
+#-------------------------------------------------
|
|
+# gmake-haiku
|
|
+#-------------------------------------------------
|
|
+
|
|
+$(PROJECTDIR)/$(MAKETYPE)-haiku/Makefile: makefile $(SCRIPTS) $(GENIE)
|
|
+ $(SILENT) $(GENIE) $(PARAMS) $(TARGET_PARAMS) --gcc=haiku --gcc_version=$(GCC_VERSION) $(MAKETYPE)
|
|
+
|
|
+.PHONY: haiku_x64
|
|
+haiku_x64: generate $(PROJECTDIR)/$(MAKETYPE)-haiku/Makefile
|
|
+ $(SILENT) $(MAKE) $(MAKEPARAMS) -C $(PROJECTDIR)/$(MAKETYPE)-haiku config=$(CONFIG)64 precompile
|
|
+ $(SILENT) $(MAKE) $(MAKEPARAMS) -C $(PROJECTDIR)/$(MAKETYPE)-haiku config=$(CONFIG)64
|
|
+
|
|
+.PHONY: haiku_x86
|
|
+haiku_x86: generate $(PROJECTDIR)/$(MAKETYPE)-haiku/Makefile
|
|
+ $(SILENT) $(MAKE) $(MAKEPARAMS) -C $(PROJECTDIR)/$(MAKETYPE)-haiku config=$(CONFIG)32 precompile
|
|
+ $(SILENT) $(MAKE) $(MAKEPARAMS) -C $(PROJECTDIR)/$(MAKETYPE)-haiku config=$(CONFIG)32
|
|
+
|
|
+.PHONY: haiku
|
|
+haiku: generate $(PROJECTDIR)/$(MAKETYPE)-haiku/Makefile
|
|
+ $(SILENT) $(MAKE) $(MAKEPARAMS) -C $(PROJECTDIR)/$(MAKETYPE)-haiku config=$(CONFIG) precompile
|
|
+ $(SILENT) $(MAKE) $(MAKEPARAMS) -C $(PROJECTDIR)/$(MAKETYPE)-haiku config=$(CONFIG)
|
|
+
|
|
#-------------------------------------------------
|
|
# Clean/bootstrap
|
|
#-------------------------------------------------
|
|
diff --git a/scripts/toolchain.lua b/scripts/toolchain.lua
|
|
index 6e8c966..18d4755 100644
|
|
--- a/scripts/toolchain.lua
|
|
+++ b/scripts/toolchain.lua
|
|
@@ -34,6 +34,7 @@ newoption {
|
|
{ "osx", "OSX (GCC compiler)" },
|
|
{ "osx-clang", "OSX (Clang compiler)" },
|
|
{ "solaris", "Solaris" },
|
|
+ { "haiku", "Haiku" },
|
|
},
|
|
}
|
|
|
|
@@ -157,6 +158,10 @@ function toolchain(_buildDir, _subDir)
|
|
location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-linux-clang")
|
|
end
|
|
|
|
+ if "haiku" == _OPTIONS["gcc"] then
|
|
+ location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-haiku")
|
|
+ end
|
|
+
|
|
if "mingw32-gcc" == _OPTIONS["gcc"] then
|
|
if toolchainPrefix == nil or toolchainPrefix == "" then
|
|
if not os.getenv("MINGW32") then
|
|
@@ -206,6 +211,10 @@ function toolchain(_buildDir, _subDir)
|
|
premake.gcc.ar = toolchainPrefix .. "ar"
|
|
location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-osx-clang")
|
|
end
|
|
+
|
|
+ if "haiku" == _OPTIONS["gcc"] then
|
|
+ location (_buildDir .. "projects/" .. _subDir .. "/".. _ACTION .. "-haiku")
|
|
+ end
|
|
elseif _ACTION == "vs2022" then
|
|
|
|
if "clangcl" == _OPTIONS["vs"] then
|
|
diff --git a/src/osd/modules/file/posixfile.cpp b/src/osd/modules/file/posixfile.cpp
|
|
index f5dc2e9..3098b25 100644
|
|
--- a/src/osd/modules/file/posixfile.cpp
|
|
+++ b/src/osd/modules/file/posixfile.cpp
|
|
@@ -100,7 +100,7 @@ public:
|
|
{
|
|
ssize_t result;
|
|
|
|
-#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__bsdi__) || defined(__DragonFly__) || defined(__EMSCRIPTEN__) || defined(__ANDROID__)
|
|
+#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__bsdi__) || defined(__DragonFly__) || defined(__EMSCRIPTEN__) || defined(__ANDROID__) || defined(__HAIKU__)
|
|
result = ::pread(m_fd, buffer, size_t(count), off_t(std::make_unsigned_t<off_t>(offset)));
|
|
#elif defined(_WIN32) || defined(SDLMAME_NO64BITIO)
|
|
if (lseek(m_fd, off_t(std::make_unsigned_t<off_t>(offset)), SEEK_SET) < 0)
|
|
@@ -121,7 +121,7 @@ public:
|
|
{
|
|
ssize_t result;
|
|
|
|
-#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__bsdi__) || defined(__DragonFly__) || defined(__EMSCRIPTEN__) || defined(__ANDROID__)
|
|
+#if defined(__APPLE__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) || defined(__bsdi__) || defined(__DragonFly__) || defined(__EMSCRIPTEN__) || defined(__ANDROID__) || defined(__HAIKU__)
|
|
result = ::pwrite(m_fd, buffer, size_t(count), off_t(std::make_unsigned_t<off_t>(offset)));
|
|
#elif defined(_WIN32) || defined(SDLMAME_NO64BITIO)
|
|
if (lseek(m_fd, off_t(std::make_unsigned_t<off_t>(offset)), SEEK_SET) < 0)
|
|
diff --git a/src/osd/modules/file/posixptty.cpp b/src/osd/modules/file/posixptty.cpp
|
|
index fa12045..5f8418d 100644
|
|
--- a/src/osd/modules/file/posixptty.cpp
|
|
+++ b/src/osd/modules/file/posixptty.cpp
|
|
@@ -19,6 +19,10 @@
|
|
#include <unistd.h>
|
|
#include <cstdlib>
|
|
|
|
+#ifdef __HAIKU__
|
|
+#define _BSD_SOURCE
|
|
+#endif
|
|
+
|
|
#if defined(__FreeBSD__) || defined(__DragonFly__)
|
|
#include <termios.h>
|
|
#include <libutil.h>
|
|
--
|
|
2.52.0
|
|
|
|
|
|
From 812b87682598fd842e8383fa4aa1a5d366edace3 Mon Sep 17 00:00:00 2001
|
|
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
|
Date: Thu, 11 Jun 2020 08:59:34 +1000
|
|
Subject: Use stat Haiku
|
|
|
|
|
|
diff --git a/3rdparty/bx/src/file.cpp b/3rdparty/bx/src/file.cpp
|
|
index dab8620..ceb2263 100644
|
|
--- a/3rdparty/bx/src/file.cpp
|
|
+++ b/3rdparty/bx/src/file.cpp
|
|
@@ -648,7 +648,14 @@ namespace bx
|
|
break;
|
|
}
|
|
|
|
+#ifdef __HAIKU__
|
|
+ struct stat sp;
|
|
+ stat(item->d_name, &sp);
|
|
+
|
|
+ if (S_ISDIR(sp.st_mode))
|
|
+#else
|
|
if (0 != (item->d_type & DT_DIR) )
|
|
+#endif
|
|
{
|
|
_out.type = FileType::Dir;
|
|
_out.size = UINT64_MAX;
|
|
@@ -656,7 +663,11 @@ namespace bx
|
|
return true;
|
|
}
|
|
|
|
+#ifdef __HAIKU__
|
|
+ if (S_ISREG(sp.st_mode))
|
|
+#else
|
|
if (0 != (item->d_type & DT_REG) )
|
|
+#endif
|
|
{
|
|
_out.type = FileType::File;
|
|
_out.size = UINT64_MAX;
|
|
--
|
|
2.52.0
|
|
|
|
|
|
From 1fe2e8f3b9eb6c818cbde112fedd929cb4ed86d9 Mon Sep 17 00:00:00 2001
|
|
From: Gerasim Troeglazov <3dEyes@gmail.com>
|
|
Date: Thu, 11 Jun 2020 09:00:11 +1000
|
|
Subject: Disable ptty
|
|
|
|
|
|
diff --git a/src/osd/modules/file/posixptty.cpp b/src/osd/modules/file/posixptty.cpp
|
|
index 5f8418d..8838b2a 100644
|
|
--- a/src/osd/modules/file/posixptty.cpp
|
|
+++ b/src/osd/modules/file/posixptty.cpp
|
|
@@ -114,7 +114,7 @@ bool posix_check_ptty_path(std::string const &path) noexcept
|
|
|
|
std::error_condition posix_open_ptty(std::uint32_t openflags, osd_file::ptr &file, std::uint64_t &filesize, std::string &name) noexcept
|
|
{
|
|
-#if defined(__ANDROID__)
|
|
+#if defined(__ANDROID__) || defined(__HAIKU__)
|
|
return std::errc::not_supported; // TODO: revisit this error code
|
|
#else // defined(__ANDROID__)
|
|
// TODO: handling of the slave path is insecure - should use ptsname_r/ttyname_r in a loop
|
|
--
|
|
2.52.0
|
|
|
|
|
|
From 9540ee2d5c5919785208ccbc4eec6fa59bb2ab4e Mon Sep 17 00:00:00 2001
|
|
From: PulkoMandy <pulkomandy@pulkomandy.tk>
|
|
Date: Fri, 5 Aug 2022 19:24:12 +0200
|
|
Subject: Allow use of Qt Debugger on Haiku
|
|
|
|
|
|
diff --git a/scripts/src/osd/sdl.lua b/scripts/src/osd/sdl.lua
|
|
index 814bb32..5c05e33 100644
|
|
--- a/scripts/src/osd/sdl.lua
|
|
+++ b/scripts/src/osd/sdl.lua
|
|
@@ -254,14 +254,16 @@ if BASE_TARGETOS=="unix" then
|
|
addoptionsfromstring(str)
|
|
end
|
|
else
|
|
- if _OPTIONS["NO_X11"]=="1" then
|
|
- _OPTIONS["USE_QTDEBUG"] = "0"
|
|
- else
|
|
- libdirs {
|
|
- "/usr/X11/lib",
|
|
- "/usr/X11R6/lib",
|
|
- "/usr/openwin/lib",
|
|
- }
|
|
+ if _OPTIONS["targetos"]~="haiku" then
|
|
+ if _OPTIONS["NO_X11"]=="1" then
|
|
+ _OPTIONS["USE_QTDEBUG"] = "0"
|
|
+ else
|
|
+ libdirs {
|
|
+ "/usr/X11/lib",
|
|
+ "/usr/X11R6/lib",
|
|
+ "/usr/openwin/lib",
|
|
+ }
|
|
+ end
|
|
end
|
|
local str = backtick(sdlconfigcmd() .. " --libs")
|
|
addlibfromstring(str)
|
|
--
|
|
2.52.0
|
|
|
|
|
|
From 849a4bc671dd8794582088c71732b63a353ee388 Mon Sep 17 00:00:00 2001
|
|
From: Alex Brown <mail@alexbrown.info>
|
|
Date: Sat, 14 Oct 2023 11:26:57 +0100
|
|
Subject: toolchain.lua: set targetdir for Haiku
|
|
|
|
|
|
diff --git a/scripts/toolchain.lua b/scripts/toolchain.lua
|
|
index 18d4755..4853c15 100644
|
|
--- a/scripts/toolchain.lua
|
|
+++ b/scripts/toolchain.lua
|
|
@@ -61,7 +61,8 @@ function androidToolchainRoot()
|
|
local hostTags = {
|
|
windows = "windows-x86_64",
|
|
linux = "linux-x86_64",
|
|
- macosx = "darwin-x86_64"
|
|
+ macosx = "darwin-x86_64",
|
|
+ haiku = "haiku-x86_64"
|
|
}
|
|
android.toolchainRoot = (os.getenv("ANDROID_NDK_HOME") or "") .. "/toolchains/llvm/prebuilt/" .. hostTags[os.get()]
|
|
end
|
|
@@ -604,6 +605,30 @@ function toolchain(_buildDir, _subDir)
|
|
configuration { "osx*", "arm64", "Release" }
|
|
targetdir (_buildDir .. "osx_clang" .. "/bin/x64/Release")
|
|
|
|
+ configuration { "haiku", "x32" }
|
|
+ objdir (_buildDir .. "haiku" .. "/obj")
|
|
+ buildoptions {
|
|
+ "-m32",
|
|
+ }
|
|
+
|
|
+ configuration { "haiku", "x32", "Release" }
|
|
+ targetdir (_buildDir .. "haiku" .. "/bin/x32/Release")
|
|
+
|
|
+ configuration { "haiku", "x32", "Debug" }
|
|
+ targetdir (_buildDir .. "haiku" .. "/bin/x32/Debug")
|
|
+
|
|
+ configuration { "haiku", "x64" }
|
|
+ objdir (_buildDir .. "haiku" .. "/obj")
|
|
+ buildoptions {
|
|
+ "-m64",
|
|
+ }
|
|
+
|
|
+ configuration { "haiku", "x64", "Release" }
|
|
+ targetdir (_buildDir .. "haiku" .. "/bin/x64/Release")
|
|
+
|
|
+ configuration { "haiku", "x64", "Debug" }
|
|
+ targetdir (_buildDir .. "haiku" .. "/bin/x64/Debug")
|
|
+
|
|
configuration { "osx*", "arm64", "Debug" }
|
|
targetdir (_buildDir .. "osx_clang" .. "/bin/x64/Debug")
|
|
|
|
--
|
|
2.52.0
|
|
|
|
|
|
From 05f465bb50d2ad1b31273f32cb33dcf9db5cdd8a Mon Sep 17 00:00:00 2001
|
|
From: Alex Brown <mail@alexbrown.info>
|
|
Date: Sat, 14 Oct 2023 09:14:19 +0100
|
|
Subject: Set LinkSupportCircularDependencies for Haiku
|
|
|
|
|
|
diff --git a/scripts/genie.lua b/scripts/genie.lua
|
|
index 291327c..471ad51 100644
|
|
--- a/scripts/genie.lua
|
|
+++ b/scripts/genie.lua
|
|
@@ -1197,6 +1197,11 @@ configuration { "freebsd or netbsd" }
|
|
"LinkSupportCircularDependencies",
|
|
}
|
|
|
|
+configuration { "haiku" }
|
|
+ flags {
|
|
+ "LinkSupportCircularDependencies",
|
|
+ }
|
|
+
|
|
configuration { "osx*" }
|
|
links {
|
|
"pthread",
|
|
--
|
|
2.52.0
|
|
|
|
|
|
From bc21ba482960541fae8159f0209d90c3c1e66008 Mon Sep 17 00:00:00 2001
|
|
From: PulkoMandy <pulkomandy@pulkomandy.tk>
|
|
Date: Thu, 1 May 2025 09:47:57 +0200
|
|
Subject: Fix search for Qt6
|
|
|
|
Our Qt6 qmake is located in an unusual place, for some reason not in the bin
|
|
directory.
|
|
|
|
diff --git a/scripts/src/osd/modules.lua b/scripts/src/osd/modules.lua
|
|
index fddf73b..d465ed7 100644
|
|
--- a/scripts/src/osd/modules.lua
|
|
+++ b/scripts/src/osd/modules.lua
|
|
@@ -412,7 +412,7 @@ function qtdebuggerbuild()
|
|
if _OPTIONS["QT_HOME"]~=nil then
|
|
local MOCTST = backtick(_OPTIONS["QT_HOME"] .. "/bin/moc --version 2>/dev/null")
|
|
if MOCTST=='' then
|
|
- local qt_host_libexecs = backtick(_OPTIONS["QT_HOME"] .. "/bin/qmake -query QT_HOST_LIBEXECS")
|
|
+ local qt_host_libexecs = backtick(_OPTIONS["QT_HOME"] .. "/qmake -query QT_HOST_LIBEXECS")
|
|
if not string.starts(qt_host_libexecs,"/") then
|
|
qt_host_libexecs = _OPTIONS["QT_HOME"] .. "/libexec"
|
|
end
|
|
@@ -466,7 +466,7 @@ function qtdebuggerbuild()
|
|
else
|
|
if _OPTIONS["QT_HOME"]~=nil then
|
|
buildoptions {
|
|
- "-I" .. backtick(_OPTIONS["QT_HOME"] .. "/bin/qmake -query QT_INSTALL_HEADERS"),
|
|
+ "-I" .. backtick(_OPTIONS["QT_HOME"] .. "/qmake -query QT_INSTALL_HEADERS"),
|
|
}
|
|
else
|
|
buildoptions {
|
|
@@ -545,9 +545,9 @@ function osdmodulestargetconf()
|
|
end
|
|
else
|
|
if _OPTIONS["QT_HOME"]~=nil then
|
|
- local qt_version = str_to_version(backtick(_OPTIONS["QT_HOME"] .. "/bin/qmake -query QT_VERSION"))
|
|
+ local qt_version = str_to_version(backtick(_OPTIONS["QT_HOME"] .. "/qmake -query QT_VERSION"))
|
|
linkoptions {
|
|
- "-L" .. backtick(_OPTIONS["QT_HOME"] .. "/bin/qmake -query QT_INSTALL_LIBS"),
|
|
+ "-L" .. backtick(_OPTIONS["QT_HOME"] .. "/qmake -query QT_INSTALL_LIBS"),
|
|
}
|
|
if qt_version < 60000 then
|
|
links {
|
|
diff --git a/scripts/src/osd/sdl_cfg.lua b/scripts/src/osd/sdl_cfg.lua
|
|
index 400a559..5ae71be 100644
|
|
--- a/scripts/src/osd/sdl_cfg.lua
|
|
+++ b/scripts/src/osd/sdl_cfg.lua
|
|
@@ -138,7 +138,7 @@ if _OPTIONS["targetos"]=="windows" then
|
|
elseif _OPTIONS["targetos"]=="linux" then
|
|
if _OPTIONS["QT_HOME"]~=nil then
|
|
buildoptions {
|
|
- "-I" .. backtick(_OPTIONS["QT_HOME"] .. "/bin/qmake -query QT_INSTALL_HEADERS"),
|
|
+ "-I" .. backtick(_OPTIONS["QT_HOME"] .. "/qmake -query QT_INSTALL_HEADERS"),
|
|
}
|
|
else
|
|
buildoptions {
|
|
--
|
|
2.52.0
|
|
|