From 08c955f6120caacc8ef5d31365b98a1912255db9 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Sat, 7 Feb 2015 18:19:53 +0100 Subject: [PATCH 1/3] Don't link against zlib --- Makefile.libretro | 12 ++++++------ libretro/Makefile.common | 4 +--- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/Makefile.libretro b/Makefile.libretro index 583fc92..f43642f 100644 --- a/Makefile.libretro +++ b/Makefile.libretro @@ -45,7 +45,7 @@ TARGET_NAME := genesis_plus_gx ifeq ($(platform), unix) TARGET := $(TARGET_NAME)_libretro.so fpic := -fPIC - SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined -lz + SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN PLATFORM_DEFINES := -DHAVE_ZLIB @@ -53,7 +53,7 @@ ifeq ($(platform), unix) else ifeq ($(platform), osx) TARGET := $(TARGET_NAME)_libretro.dylib fpic := -fPIC - SHARED := -dynamiclib -lz + SHARED := -dynamiclib ifeq ($(arch),ppc) ENDIANNESS_DEFINES := -DBYTE_ORDER=BIG_ENDIAN else @@ -75,7 +75,7 @@ else ifeq ($(platform), osx) else ifeq ($(platform), ios) TARGET := $(TARGET_NAME)_libretro_ios.dylib fpic := -fPIC - SHARED := -dynamiclib -lz + SHARED := -dynamiclib ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN PLATFORM_DEFINES := -DHAVE_ZLIB @@ -109,7 +109,7 @@ else ifeq ($(platform), theos_ios) else ifeq ($(platform), qnx) TARGET := $(TARGET_NAME)_libretro_qnx.so fpic := -fPIC - SHARED := -lm -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined -lz + SHARED := -lm -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN PLATFORM_DEFINES := -DHAVE_ZLIB CC = qcc -Vgcc_ntoarmv7le @@ -181,7 +181,7 @@ else ifeq ($(platform), wii) else ifneq (,$(findstring armv,$(platform))) TARGET := $(TARGET_NAME)_libretro.so fpic := -fPIC - SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined -lz + SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN PLATFORM_DEFINES := -DHAVE_ZLIB ifneq (,$(findstring cortexa5,$(platform))) @@ -211,7 +211,7 @@ else ifeq ($(platform), emscripten) else TARGET := $(TARGET_NAME)_libretro.dll CC = gcc - SHARED := -shared -static-libgcc -static-libstdc++ -Wl,--version-script=libretro/link.T -Wl,--no-undefined -lz + SHARED := -shared -static-libgcc -static-libstdc++ -Wl,--version-script=libretro/link.T -Wl,--no-undefined ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN PLATFORM_DEFINES := -DHAVE_ZLIB diff --git a/libretro/Makefile.common b/libretro/Makefile.common index 5d77f44..728487a 100644 --- a/libretro/Makefile.common +++ b/libretro/Makefile.common @@ -12,8 +12,6 @@ SOURCES_C = $(foreach dir,$(GENPLUS_SRC_DIR),$(wildcard $(dir)/*.c)) \ $(foreach dir,$(TREMOR_SRC_DIR),$(wildcard $(dir)/*.c)) \ $(LIBRETRO_DIR)/libretro.c -ifeq ($(WANT_CRC32), 1) - SOURCES_C += $(LIBRETRO_DIR)/scrc32.c -endif +SOURCES_C += $(LIBRETRO_DIR)/scrc32.c INCFLAGS += $(foreach dir,$(GENPLUS_SRC_DIR),-I$(dir)) -I$(LIBRETRO_DIR) From 4b829b638c90f46622105d6f7f24f1bf1661e2b1 Mon Sep 17 00:00:00 2001 From: twinaphex Date: Mon, 2 Mar 2015 17:37:39 +0100 Subject: [PATCH 2/3] Add linux-portable target --- Makefile.libretro | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/Makefile.libretro b/Makefile.libretro index f43642f..a9b75e2 100644 --- a/Makefile.libretro +++ b/Makefile.libretro @@ -40,6 +40,7 @@ else ifneq ($(findstring MINGW,$(shell uname -a)),) endif TARGET_NAME := genesis_plus_gx +LIBM := -lm # Unix ifeq ($(platform), unix) @@ -49,6 +50,16 @@ ifeq ($(platform), unix) ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN PLATFORM_DEFINES := -DHAVE_ZLIB +# Portable Linux +else ifeq ($(platform), linux-portable) + TARGET := $(TARGET_NAME)_libretro.so + fpic := -fPIC -nostdlib + SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined + ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN + PLATFORM_DEFINES := -DHAVE_ZLIB + LIBM := + LDFLAGS += -L. -lmusl + # OS X else ifeq ($(platform), osx) TARGET := $(TARGET_NAME)_libretro.dylib @@ -109,7 +120,7 @@ else ifeq ($(platform), theos_ios) else ifeq ($(platform), qnx) TARGET := $(TARGET_NAME)_libretro_qnx.so fpic := -fPIC - SHARED := -lm -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined + SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN PLATFORM_DEFINES := -DHAVE_ZLIB CC = qcc -Vgcc_ntoarmv7le @@ -218,6 +229,8 @@ else endif +LDFLAGS += $(LIBM) + ifeq ($(DEBUG), 1) CFLAGS += -O0 -g else ifeq ($(platform),qnx) @@ -264,8 +277,6 @@ else LIBRETRO_CFLAGS += -DINLINE="static inline" endif -LIBRETRO_LIBS := -lm - ifeq ($(platform), theos_ios) COMMON_FLAGS := $(COMMON_DEFINES) $(INCFLAGS) -I$(THEOS_INCLUDE_PATH) -Wno-error $(LIBRARY_NAME)_CFLAGS += $(CFLAGS) $(LIBRETRO_CFLAGS) $(COMMON_FLAGS) @@ -282,7 +293,7 @@ $(TARGET): $(OBJECTS) ifeq ($(STATIC_LINKING), 1) $(AR) rcs $@ $(OBJECTS) else - $(CC) -o $(TARGET) $(fpic) $(OBJECTS) $(LDFLAGS) $(LIBRETRO_LIBS) $(SHARED) + $(CC) -o $(TARGET) $(fpic) $(OBJECTS) $(LDFLAGS) $(SHARED) endif clean-objs: From 804fd58dbffe12eaece621ee77eb2598c7fbe16e Mon Sep 17 00:00:00 2001 From: twinaphex Date: Thu, 5 Mar 2015 23:55:29 +0100 Subject: [PATCH 3/3] (linux-portable) Update --- Makefile.libretro | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/Makefile.libretro b/Makefile.libretro index a9b75e2..8daa284 100644 --- a/Makefile.libretro +++ b/Makefile.libretro @@ -54,12 +54,10 @@ ifeq ($(platform), unix) else ifeq ($(platform), linux-portable) TARGET := $(TARGET_NAME)_libretro.so fpic := -fPIC -nostdlib - SHARED := -shared -Wl,--version-script=libretro/link.T -Wl,--no-undefined + SHARED := -shared -Wl,--version-script=libretro/link.T ENDIANNESS_DEFINES := -DLSB_FIRST -DBYTE_ORDER=LITTLE_ENDIAN PLATFORM_DEFINES := -DHAVE_ZLIB LIBM := - LDFLAGS += -L. -lmusl - # OS X else ifeq ($(platform), osx) TARGET := $(TARGET_NAME)_libretro.dylib