From 8040171d6b79227366189e9bc5cce2225cb4ec6c Mon Sep 17 00:00:00 2001 From: Ryan 'Swingflip' Hamlin Date: Fri, 12 Oct 2018 12:28:06 +0100 Subject: Added classic_armv7_a7 --- Makefile.libretro | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/Makefile.libretro b/Makefile.libretro index cb514b7..587c2de 100644 --- a/Makefile.libretro +++ b/Makefile.libretro @@ -268,6 +268,31 @@ else ifneq (,$(findstring armv,$(platform))) ARCH = arm USE_DYNAREC = 1 +# Classic Platforms #################### +# Platform affix = classic__<µARCH> + +# (armv7 a7, hard point, neon based) ### +# NESC, SNESC, C64 mini +else ifeq ($(platform), classic_armv7_a7) + TARGET := $(TARGET_NAME)_libretro.so + fpic := -fPIC + CFLAGS += -Ofast \ + -flto=4 -fwhole-program -fuse-linker-plugin \ + -fdata-sections -ffunction-sections -Wl,--gc-sections \ + -fno-stack-protector -fno-ident -fomit-frame-pointer \ + -falign-functions=1 -falign-jumps=1 -falign-loops=1 \ + -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \ + -fmerge-all-constants -fno-math-errno \ + -marm -march=armv7ve -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard + ASFLAGS += $(CFLAGS) + HAVE_NEON = 1 + ARCH = arm + BUILTIN_GPU = neon + USE_DYNAREC = 1 + + +####################################### + # Windows else TARGET := $(TARGET_NAME)_libretro.dll -- cgit v1.2.3 From d28150f7f75a53b0410fcd2d6355a4be782c4c3b Mon Sep 17 00:00:00 2001 From: Ryan 'Swingflip' Hamlin Date: Fri, 12 Oct 2018 14:15:33 +0100 Subject: Adjustments into correct position. Added some echos. --- Makefile | 2 ++ Makefile.libretro | 50 +++++++++++++++++++++++++------------------------- 2 files changed, 27 insertions(+), 25 deletions(-) diff --git a/Makefile b/Makefile index 2a6be72..89ab0aa 100644 --- a/Makefile +++ b/Makefile @@ -263,11 +263,13 @@ frontend/revision.h: FORCE target_: $(TARGET) $(TARGET): $(OBJS) + @echo "** BUILDING $(TARGET) FOR PLATFORM $(PLATFORM) **" ifeq ($(STATIC_LINKING), 1) $(AR) rcs $@ $(OBJS) else $(CC_LINK) -o $@ $^ $(LDFLAGS) $(LDLIBS) $(EXTRA_LDFLAGS) endif + @echo "** BUILD SUCCESSFUL! GG NO RE **" clean: $(PLAT_CLEAN) clean_plugins $(RM) $(TARGET) $(OBJS) $(TARGET).map frontend/revision.h diff --git a/Makefile.libretro b/Makefile.libretro index 587c2de..84e242d 100644 --- a/Makefile.libretro +++ b/Makefile.libretro @@ -235,6 +235,31 @@ else ifeq ($(platform), rpi3) BUILTIN_GPU = neon USE_DYNAREC = 1 +# Classic Platforms #################### +# Platform affix = classic__<µARCH> + +# (armv7 a7, hard point, neon based) ### +# NESC, SNESC, C64 mini +else ifeq ($(platform), classic_armv7_a7) + TARGET := $(TARGET_NAME)_libretro.so + fpic := -fPIC + CFLAGS += -Ofast \ + -flto=4 -fwhole-program -fuse-linker-plugin \ + -fdata-sections -ffunction-sections -Wl,--gc-sections \ + -fno-stack-protector -fno-ident -fomit-frame-pointer \ + -falign-functions=1 -falign-jumps=1 -falign-loops=1 \ + -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \ + -fmerge-all-constants -fno-math-errno \ + -marm -march=armv7ve -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard #armv7-a for older GCC i.e. 4.8 + ASFLAGS += $(CFLAGS) + HAVE_NEON = 1 + ARCH = arm + BUILTIN_GPU = neon + USE_DYNAREC = 1 + + +####################################### + # ARM else ifneq (,$(findstring armv,$(platform))) TARGET := $(TARGET_NAME)_libretro.so @@ -268,31 +293,6 @@ else ifneq (,$(findstring armv,$(platform))) ARCH = arm USE_DYNAREC = 1 -# Classic Platforms #################### -# Platform affix = classic__<µARCH> - -# (armv7 a7, hard point, neon based) ### -# NESC, SNESC, C64 mini -else ifeq ($(platform), classic_armv7_a7) - TARGET := $(TARGET_NAME)_libretro.so - fpic := -fPIC - CFLAGS += -Ofast \ - -flto=4 -fwhole-program -fuse-linker-plugin \ - -fdata-sections -ffunction-sections -Wl,--gc-sections \ - -fno-stack-protector -fno-ident -fomit-frame-pointer \ - -falign-functions=1 -falign-jumps=1 -falign-loops=1 \ - -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \ - -fmerge-all-constants -fno-math-errno \ - -marm -march=armv7ve -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard - ASFLAGS += $(CFLAGS) - HAVE_NEON = 1 - ARCH = arm - BUILTIN_GPU = neon - USE_DYNAREC = 1 - - -####################################### - # Windows else TARGET := $(TARGET_NAME)_libretro.dll -- cgit v1.2.3 From 10a39de1a498c1910bce8c1caffaaf01744d9bbd Mon Sep 17 00:00:00 2001 From: CompCom Date: Sun, 14 Oct 2018 19:20:19 +1100 Subject: Auto set flags for different gcc versions. --- Makefile.libretro | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Makefile.libretro b/Makefile.libretro index 84e242d..d29676d 100644 --- a/Makefile.libretro +++ b/Makefile.libretro @@ -250,12 +250,21 @@ else ifeq ($(platform), classic_armv7_a7) -falign-functions=1 -falign-jumps=1 -falign-loops=1 \ -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \ -fmerge-all-constants -fno-math-errno \ - -marm -march=armv7ve -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard #armv7-a for older GCC i.e. 4.8 + -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard ASFLAGS += $(CFLAGS) HAVE_NEON = 1 ARCH = arm BUILTIN_GPU = neon USE_DYNAREC = 1 + ifeq ($(shell echo `$(CC) -dumpversion` "< 4.9" | bc -l), 1) + CFLAGS += -march=armv7-a + else + CFLAGS += -march=armv7ve + # If gcc is 5.0 or later + ifeq ($(shell echo `$(CC) -dumpversion` ">= 5" | bc -l), 1) + MAIN_LDFLAGS += -static-libgcc -static-libstdc++ + endif + endif ####################################### -- cgit v1.2.3 From 166f75f07072f07a28ceb4b53f42129e92944961 Mon Sep 17 00:00:00 2001 From: Ryan 'Swingflip' Hamlin Date: Tue, 16 Oct 2018 14:40:43 +0100 Subject: Finished off Armv7 A7 Platform template --- Makefile.libretro | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/Makefile.libretro b/Makefile.libretro index d29676d..11093b5 100644 --- a/Makefile.libretro +++ b/Makefile.libretro @@ -237,6 +237,7 @@ else ifeq ($(platform), rpi3) # Classic Platforms #################### # Platform affix = classic__<µARCH> +# Help at https://modmyclassic.com/comp # (armv7 a7, hard point, neon based) ### # NESC, SNESC, C64 mini @@ -251,6 +252,8 @@ else ifeq ($(platform), classic_armv7_a7) -fno-unwind-tables -fno-asynchronous-unwind-tables -fno-unroll-loops \ -fmerge-all-constants -fno-math-errno \ -marm -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard + CXXFLAGS += $(CFLAGS) + CPPFLAGS += $(CFLAGS) ASFLAGS += $(CFLAGS) HAVE_NEON = 1 ARCH = arm @@ -262,11 +265,9 @@ else ifeq ($(platform), classic_armv7_a7) CFLAGS += -march=armv7ve # If gcc is 5.0 or later ifeq ($(shell echo `$(CC) -dumpversion` ">= 5" | bc -l), 1) - MAIN_LDFLAGS += -static-libgcc -static-libstdc++ + LDFLAGS += -static-libgcc -static-libstdc++ endif endif - - ####################################### # ARM -- cgit v1.2.3