mirror of
https://github.com/libretro/RetroArch
synced 2025-04-10 15:45:19 +00:00
Merge pull request #6140 from kwyxz/master
Update Haiku port to allow it to build again
This commit is contained in:
commit
5c7778519b
16
Makefile
16
Makefile
@ -194,23 +194,23 @@ install: $(TARGET)
|
|||||||
rm -f $(OBJDIR)/git_version.o
|
rm -f $(OBJDIR)/git_version.o
|
||||||
mkdir -p $(DESTDIR)$(BIN_DIR) 2>/dev/null || /bin/true
|
mkdir -p $(DESTDIR)$(BIN_DIR) 2>/dev/null || /bin/true
|
||||||
mkdir -p $(DESTDIR)$(GLOBAL_CONFIG_DIR) 2>/dev/null || /bin/true
|
mkdir -p $(DESTDIR)$(GLOBAL_CONFIG_DIR) 2>/dev/null || /bin/true
|
||||||
mkdir -p $(DESTDIR)$(PREFIX)/share/applications 2>/dev/null || /bin/true
|
mkdir -p $(DESTDIR)$(ASSETS_DIR)/applications 2>/dev/null || /bin/true
|
||||||
mkdir -p $(DESTDIR)$(MAN_DIR)/man6 2>/dev/null || /bin/true
|
mkdir -p $(DESTDIR)$(MAN_DIR)/man6 2>/dev/null || /bin/true
|
||||||
mkdir -p $(DESTDIR)$(PREFIX)/share/pixmaps 2>/dev/null || /bin/true
|
mkdir -p $(DESTDIR)$(ASSETS_DIR)/pixmaps 2>/dev/null || /bin/true
|
||||||
cp $(TARGET) $(DESTDIR)$(BIN_DIR)
|
cp $(TARGET) $(DESTDIR)$(BIN_DIR)
|
||||||
cp tools/cg2glsl.py $(DESTDIR)$(BIN_DIR)/retroarch-cg2glsl
|
cp tools/cg2glsl.py $(DESTDIR)$(BIN_DIR)/retroarch-cg2glsl
|
||||||
cp retroarch.cfg $(DESTDIR)$(GLOBAL_CONFIG_DIR)
|
cp retroarch.cfg $(DESTDIR)$(GLOBAL_CONFIG_DIR)
|
||||||
cp retroarch.desktop $(DESTDIR)$(PREFIX)/share/applications
|
cp retroarch.desktop $(DESTDIR)$(ASSETS_DIR)/applications
|
||||||
cp docs/retroarch.6 $(DESTDIR)$(MAN_DIR)/man6
|
cp docs/retroarch.6 $(DESTDIR)$(MAN_DIR)/man6
|
||||||
cp docs/retroarch-cg2glsl.6 $(DESTDIR)$(MAN_DIR)/man6
|
cp docs/retroarch-cg2glsl.6 $(DESTDIR)$(MAN_DIR)/man6
|
||||||
cp media/retroarch.svg $(DESTDIR)$(PREFIX)/share/pixmaps
|
cp media/retroarch.svg $(DESTDIR)$(ASSETS_DIR)/pixmaps
|
||||||
chmod 755 $(DESTDIR)$(BIN_DIR)/$(TARGET)
|
chmod 755 $(DESTDIR)$(BIN_DIR)/$(TARGET)
|
||||||
chmod 755 $(DESTDIR)$(BIN_DIR)/retroarch-cg2glsl
|
chmod 755 $(DESTDIR)$(BIN_DIR)/retroarch-cg2glsl
|
||||||
chmod 644 $(DESTDIR)$(GLOBAL_CONFIG_DIR)/retroarch.cfg
|
chmod 644 $(DESTDIR)$(GLOBAL_CONFIG_DIR)/retroarch.cfg
|
||||||
chmod 644 $(DESTDIR)$(PREFIX)/share/applications/retroarch.desktop
|
chmod 644 $(DESTDIR)$(ASSETS_DIR)/applications/retroarch.desktop
|
||||||
chmod 644 $(DESTDIR)$(MAN_DIR)/man6/retroarch.6
|
chmod 644 $(DESTDIR)$(MAN_DIR)/man6/retroarch.6
|
||||||
chmod 644 $(DESTDIR)$(MAN_DIR)/man6/retroarch-cg2glsl.6
|
chmod 644 $(DESTDIR)$(MAN_DIR)/man6/retroarch-cg2glsl.6
|
||||||
chmod 644 $(DESTDIR)$(PREFIX)/share/pixmaps/retroarch.svg
|
chmod 644 $(DESTDIR)$(ASSETS_DIR)/pixmaps/retroarch.svg
|
||||||
@if test -d media/assets; then \
|
@if test -d media/assets; then \
|
||||||
echo "Installing media assets..."; \
|
echo "Installing media assets..."; \
|
||||||
mkdir -p $(DESTDIR)$(ASSETS_DIR)/retroarch/assets/xmb; \
|
mkdir -p $(DESTDIR)$(ASSETS_DIR)/retroarch/assets/xmb; \
|
||||||
@ -224,10 +224,10 @@ uninstall:
|
|||||||
rm -f $(DESTDIR)$(BIN_DIR)/retroarch
|
rm -f $(DESTDIR)$(BIN_DIR)/retroarch
|
||||||
rm -f $(DESTDIR)$(BIN_DIR)/retroarch-cg2glsl
|
rm -f $(DESTDIR)$(BIN_DIR)/retroarch-cg2glsl
|
||||||
rm -f $(DESTDIR)$(GLOBAL_CONFIG_DIR)/retroarch.cfg
|
rm -f $(DESTDIR)$(GLOBAL_CONFIG_DIR)/retroarch.cfg
|
||||||
rm -f $(DESTDIR)$(PREFIX)/share/applications/retroarch.desktop
|
rm -f $(DESTDIR)$(ASSETS_DIR)/applications/retroarch.desktop
|
||||||
rm -f $(DESTDIR)$(MAN_DIR)/man6/retroarch.6
|
rm -f $(DESTDIR)$(MAN_DIR)/man6/retroarch.6
|
||||||
rm -f $(DESTDIR)$(MAN_DIR)/man6/retroarch-cg2glsl.6
|
rm -f $(DESTDIR)$(MAN_DIR)/man6/retroarch-cg2glsl.6
|
||||||
rm -f $(DESTDIR)$(PREFIX)/share/pixmaps/retroarch.svg
|
rm -f $(DESTDIR)$(ASSETS_DIR)/pixmaps/retroarch.svg
|
||||||
rm -rf $(DESTDIR)$(ASSETS_DIR)/retroarch
|
rm -rf $(DESTDIR)$(ASSETS_DIR)/retroarch
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
|
@ -115,6 +115,13 @@ else
|
|||||||
OSX := 0
|
OSX := 0
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifneq ($(findstring Haiku,$(OS)),)
|
||||||
|
LIBS += -lroot -lnetwork
|
||||||
|
HAVE_UNIX = 1
|
||||||
|
else
|
||||||
|
LIBS += -lm
|
||||||
|
endif
|
||||||
|
|
||||||
ifneq ($(findstring Linux,$(OS)),)
|
ifneq ($(findstring Linux,$(OS)),)
|
||||||
LIBS += -lrt
|
LIBS += -lrt
|
||||||
OBJ += input/drivers/linuxraw_input.o \
|
OBJ += input/drivers/linuxraw_input.o \
|
||||||
@ -131,12 +138,6 @@ ifeq ($(TARGET), retroarch_3ds)
|
|||||||
OBJ += frontend/drivers/platform_ctr.o
|
OBJ += frontend/drivers/platform_ctr.o
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(findstring Haiku,$(OS)),)
|
|
||||||
LIBS += -lm
|
|
||||||
else
|
|
||||||
LIBS += -lroot -lnetwork
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Git
|
# Git
|
||||||
|
|
||||||
GIT_VERSION := $(shell git rev-parse --short HEAD 2>/dev/null)
|
GIT_VERSION := $(shell git rev-parse --short HEAD 2>/dev/null)
|
||||||
@ -1108,7 +1109,8 @@ endif
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(HAVE_EGL), 1)
|
ifeq ($(HAVE_EGL), 1)
|
||||||
DEFINES += -DHAVE_EGL
|
DEFINES += -DHAVE_EGL $(EGL_CFLAGS)
|
||||||
|
LIBS += $(EGL_LIBS)
|
||||||
OBJ += gfx/common/egl_common.o
|
OBJ += gfx/common/egl_common.o
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
@ -101,16 +101,18 @@ bool fill_pathname_application_data(char *s, size_t len)
|
|||||||
const char *xdg = getenv("XDG_CONFIG_HOME");
|
const char *xdg = getenv("XDG_CONFIG_HOME");
|
||||||
const char *appdata = getenv("HOME");
|
const char *appdata = getenv("HOME");
|
||||||
|
|
||||||
/* XDG_CONFIG_HOME falls back to $HOME/.config. */
|
/* XDG_CONFIG_HOME falls back to $HOME/.config with most Unix systems */
|
||||||
|
/* On Haiku, it is set by default to /home/user/config/settings */
|
||||||
if (xdg)
|
if (xdg)
|
||||||
{
|
{
|
||||||
fill_pathname_join(s, xdg, "retroarch", len);
|
fill_pathname_join(s, xdg, "retroarch/", len);
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (appdata)
|
if (appdata)
|
||||||
{
|
{
|
||||||
#ifdef __HAIKU__
|
#ifdef __HAIKU__
|
||||||
|
/* in theory never used as Haiku has XDG_CONFIG_HOME set by default */
|
||||||
fill_pathname_join(s, appdata,
|
fill_pathname_join(s, appdata,
|
||||||
"config/settings/retroarch/", len);
|
"config/settings/retroarch/", len);
|
||||||
#else
|
#else
|
||||||
|
@ -1226,6 +1226,8 @@ static void frontend_unix_get_os(char *s,
|
|||||||
strlcpy(s, "DragonFly BSD", len);
|
strlcpy(s, "DragonFly BSD", len);
|
||||||
#elif defined(BSD)
|
#elif defined(BSD)
|
||||||
strlcpy(s, "BSD", len);
|
strlcpy(s, "BSD", len);
|
||||||
|
#elif defined(__HAIKU__)
|
||||||
|
strlcpy(s, "Haiku", len);
|
||||||
#else
|
#else
|
||||||
strlcpy(s, "Linux", len);
|
strlcpy(s, "Linux", len);
|
||||||
#endif
|
#endif
|
||||||
|
@ -36,6 +36,9 @@
|
|||||||
#ifdef __APPLE__
|
#ifdef __APPLE__
|
||||||
#include <CoreFoundation/CoreFoundation.h>
|
#include <CoreFoundation/CoreFoundation.h>
|
||||||
#endif
|
#endif
|
||||||
|
#ifdef __HAIKU__
|
||||||
|
#include <kernel/image.h>
|
||||||
|
#endif
|
||||||
#ifndef __MACH__
|
#ifndef __MACH__
|
||||||
#include <compat/strl.h>
|
#include <compat/strl.h>
|
||||||
#include <compat/posix_string.h>
|
#include <compat/posix_string.h>
|
||||||
|
@ -10,10 +10,15 @@ add_define MAKEFILE NOUNUSED_VARIABLE "$HAVE_NOUNUSED_VARIABLE"
|
|||||||
[ -z "$CROSS_COMPILE" ] && [ -d /opt/local/lib ] && add_dirs LIBRARY /opt/local/lib
|
[ -z "$CROSS_COMPILE" ] && [ -d /opt/local/lib ] && add_dirs LIBRARY /opt/local/lib
|
||||||
|
|
||||||
[ "$GLOBAL_CONFIG_DIR" ] || \
|
[ "$GLOBAL_CONFIG_DIR" ] || \
|
||||||
{ case "$PREFIX" in
|
{
|
||||||
/usr*) GLOBAL_CONFIG_DIR=/etc ;;
|
if [ "$OS" = 'Haiku' ]; then
|
||||||
*) GLOBAL_CONFIG_DIR="$PREFIX"/etc ;;
|
GLOBAL_CONFIG_DIR="$PREFIX"/settings
|
||||||
esac
|
else
|
||||||
|
case "$PREFIX" in
|
||||||
|
/usr*) GLOBAL_CONFIG_DIR=/etc ;;
|
||||||
|
*) GLOBAL_CONFIG_DIR="$PREFIX"/etc ;;
|
||||||
|
esac
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
DYLIB=-ldl;
|
DYLIB=-ldl;
|
||||||
@ -157,9 +162,16 @@ fi
|
|||||||
add_define MAKEFILE libretro "$LIBRETRO"
|
add_define MAKEFILE libretro "$LIBRETRO"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if [ "$OS" = 'Haiku' ]; then
|
||||||
|
add_define MAKEFILE ASSETS_DIR "${ASSETS_DIR:-${PREFIX}/data}"
|
||||||
|
add_define MAKEFILE MAN_DIR "${MAN_DIR:-${PREFIX}/documentation/man}"
|
||||||
|
else
|
||||||
add_define MAKEFILE ASSETS_DIR "${ASSETS_DIR:-${PREFIX}/share}"
|
add_define MAKEFILE ASSETS_DIR "${ASSETS_DIR:-${PREFIX}/share}"
|
||||||
add_define MAKEFILE BIN_DIR "${BIN_DIR:-${PREFIX}/bin}"
|
|
||||||
add_define MAKEFILE MAN_DIR "${MAN_DIR:-${PREFIX}/share/man}"
|
add_define MAKEFILE MAN_DIR "${MAN_DIR:-${PREFIX}/share/man}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
add_define MAKEFILE BIN_DIR "${BIN_DIR:-${PREFIX}/bin}"
|
||||||
|
|
||||||
if [ "$OS" = 'DOS' ]; then
|
if [ "$OS" = 'DOS' ]; then
|
||||||
HAVE_SHADERPIPELINE=no
|
HAVE_SHADERPIPELINE=no
|
||||||
|
@ -1,7 +1,11 @@
|
|||||||
MAKEFILE_DEFINES=''
|
MAKEFILE_DEFINES=''
|
||||||
CONFIG_DEFINES=''
|
CONFIG_DEFINES=''
|
||||||
|
|
||||||
[ "$PREFIX" ] || PREFIX="/usr/local"
|
if [ "$OS" = 'Haiku' ]; then
|
||||||
|
[ "$PREFIX" ] || PREFIX="/boot/home/config/non-packaged"
|
||||||
|
else
|
||||||
|
[ "$PREFIX" ] || PREFIX="/usr/local"
|
||||||
|
fi
|
||||||
|
|
||||||
add_define() # $1 = MAKEFILE or CONFIG $2 = define $3 = value
|
add_define() # $1 = MAKEFILE or CONFIG $2 = define $3 = value
|
||||||
{ eval "${1}_DEFINES=\"\${${1}_DEFINES} $2=$3\""; }
|
{ eval "${1}_DEFINES=\"\${${1}_DEFINES} $2=$3\""; }
|
||||||
|
Loading…
x
Reference in New Issue
Block a user