Add linux-portable target
[picodrive.git] / Makefile.libretro
index 640fecf..61deaad 100644 (file)
@@ -37,6 +37,12 @@ ifeq ($(platform), unix)
    TARGET := $(TARGET_NAME)_libretro.so
    SHARED := -shared
    DONT_COMPILE_IN_ZLIB = 1
+       CFLAGS += -DFAMEC_NO_GOTOS
+else ifeq ($(platform), linux-portable)
+   TARGET := $(TARGET_NAME)_libretro.so
+   SHARED := -shared -nostdlib -L. -lmusl
+   DONT_COMPILE_IN_ZLIB = 1
+       CFLAGS += -DFAMEC_NO_GOTOS
 else ifeq ($(platform), osx)
    TARGET := $(TARGET_NAME)_libretro.dylib
    SHARED := -dynamiclib
@@ -50,8 +56,9 @@ endif
 ifeq ($(arch),ppc)
    CFLAGS += -DBLARGG_BIG_ENDIAN=1 -D__ppc__ -DFAMEC_NO_GOTOS
 endif
-OSXVER = `sw_vers -productVersion | cut -c 4`
-ifneq ($(OSXVER),9)
+   OSXVER = `sw_vers -productVersion | cut -d. -f 2`
+   OSX_LT_MAVERICKS = `(( $(OSXVER) <= 9)) && echo "YES"`
+ifeq ($(OSX_LT_MAVERICKS),"YES")
    SHARED += -mmacosx-version-min=10.5
 endif
 else ifeq ($(platform), ios)
@@ -59,14 +66,19 @@ else ifeq ($(platform), ios)
    SHARED := -dynamiclib
    APPLE := 1
 
+ifeq ($(IOSSDK),)
+   IOSSDK := $(shell xcrun -sdk iphoneos -show-sdk-path)
+endif
+
    CC = clang -arch armv7 -isysroot $(IOSSDK)
    CXX = clang++ -arch armv7 -isysroot $(IOSSDK)
    CC_AS = perl ./tools/gas-preprocessor.pl $(CC)
    CFLAGS += -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon -marm 
    ASFLAGS += -mcpu=cortex-a8 -mtune=cortex-a8 -mfpu=neon
    CFLAGS += -DIOS
-OSXVER = `sw_vers -productVersion | cut -c 4`
-ifneq ($(OSXVER),9)
+   OSXVER = `sw_vers -productVersion | cut -d. -f 2`
+   OSX_LT_MAVERICKS = `(( $(OSXVER) <= 9)) && echo "YES"`
+ifeq ($(OSX_LT_MAVERICKS),"YES")
    CC += -miphoneos-version-min=5.0
    CXX += -miphoneos-version-min=5.0
    CC_AS += -miphoneos-version-min=5.0
@@ -237,7 +249,9 @@ asm_mix = 1
 endif
 
 CFLAGS += -fPIC
-LDLIBS += -lm
+ifeq ($(findstring Haiku,$(shell uname -a)),)
+   LDLIBS += -lm
+endif
 SHARED ?= -shared
 LDFLAGS += $(SHARED)