linux-portable target works now
[picodrive.git] / Makefile.libretro
index 271d604..8fe3060 100644 (file)
@@ -24,6 +24,7 @@ CC_AS ?= $(CC)
 CFLAGS ?=
 
 TARGET_NAME := picodrive
+LIBM := -lm
 
 asm_memory = 0
 asm_render = 0
@@ -37,6 +38,13 @@ 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
+       LIBM :=
+   DONT_COMPILE_IN_ZLIB = 1
+       CFLAGS += -DFAMEC_NO_GOTOS
 else ifeq ($(platform), osx)
    TARGET := $(TARGET_NAME)_libretro.dylib
    SHARED := -dynamiclib
@@ -50,8 +58,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 +68,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
@@ -238,7 +252,7 @@ endif
 
 CFLAGS += -fPIC
 ifeq ($(findstring Haiku,$(shell uname -a)),)
-   LDLIBS += -lm
+   LDLIBS += $(LIBM)
 endif
 SHARED ?= -shared
 LDFLAGS += $(SHARED)