Merge pull request #345 from libretro/dev

v0.29.2
This commit is contained in:
Rob Loach 2018-11-06 04:42:31 -05:00 committed by GitHub
commit 3ca62ba562
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 42 additions and 2 deletions

View File

@ -4,6 +4,11 @@ All notable changes to [ChaiLove](https://github.com/RobLoach/ChaiLove) will be
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
## 0.29.2 - Unreleased
### Features
- Added support for classic_armv7_a7
- By [@classicmods](https://github.com/classicmods) and [@swingflip](https://github.com/swingflip)
## 0.29.1 - 2018-11-05
### Chores
- Moved String Methods to [ChaiScript_Extras](https://github.com/ChaiScript/ChaiScript_Extras)

View File

@ -27,6 +27,9 @@ $(TARGET): $(OBJECTS) | vendor/libretro-common/include/libretro.h
%.o: %.m | vendor/libretro-common/include/libretro.h
$(CC) -c -o $@ $< $(CFLAGS)
%.o: %.S | vendor/libretro-common/include/libretro.h
$(CC) -c -o $@ $< $(CFLAGS)
clean:
rm -f $(TARGET) $(OBJECTS)
git clean -xdf

View File

@ -45,7 +45,7 @@ ifneq ($(STATIC_LINKING), 1)
$(CORE_DIR)/vendor/libretro-common/vfs/*.c \
)
# Ensure the sinc_resampler_neon is available for ARM NEON devices.
OBJECTS += $(CORE_DIR)/vendor/libretro-common/audio/resampler/drivers/sinc_resampler_neon.o
SOURCES_S += $(CORE_DIR)/vendor/libretro-common/audio/resampler/drivers/sinc_resampler_neon.o
# MD5
FLAGS += -I$(CORE_DIR)/vendor/libretro-common/include
@ -199,7 +199,7 @@ endif
FLAGS += -DSDL_THREADS_DISABLED -DSDL_CDROM_DISABLED
FLAGS += -I$(CORE_DIR)/vendor/sdl-libretro/include
OBJECTS += $(SOURCES_CXX:.cpp=.o) $(SOURCES_C:.c=.o) $(SOURCES_M:.m=.o)
OBJECTS += $(SOURCES_CXX:.cpp=.o) $(SOURCES_C:.c=.o) $(SOURCES_S:.S=.o) $(SOURCES_M:.m=.o)
LDFLAGS += $(fpic) $(SHARED) $(EXTRA_LDF)

View File

@ -295,6 +295,37 @@ else ifeq ($(platform), libnx)
#PLATFORM_DEFINES += -D_INCL_PHYSFS_PLATFORMS -DPHYSFS_PLATFORM_UNIX=1 -DPHYSFS_PLATFORM_POSIX=1
#PLATFORM_DEFINES += -Dpthread_t=Thread -Dpthread_mutex_t=Mutex -Dpthread_mutexattr_t='void*' -Dpthread_attr_t=int -Dpthread_cond_t=CondVar -Dpthread_condattr_t='int' -D_SYS__PTHREADTYPES_H_
# Classic Platforms ####################
# Platform affix = classic_<ISA>_<µARCH>
# Help at https://modmyclassic.com/comp
# (armv7 a7, hard point, neon based) ###
# NESC, SNESC, C64 mini
else ifeq ($(platform), classic_armv7_a7)
TARGET := $(TARGET_NAME)_libretro.so
fpic := -fPIC
SHARED := -shared -Wl,--version-script=link.T -Wl,-no-undefined
PLATFORM_DEFINES += -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 -mtune=cortex-a7 -mfpu=neon-vfpv4 -mfloat-abi=hard
PLATFORM_DEFINES += -DARM
LDFLAGS += -marm -mtune=cortex-a7 -mfpu=neon-vfpv4
ifeq ($(shell echo `$(CC) -dumpversion` "< 4.9" | bc -l), 1)
PLATFORM_DEFINES += -march=armv7-a
else
PLATFORM_DEFINES += -march=armv7ve
# If gcc is 5.0 or later
ifeq ($(shell echo `$(CC) -dumpversion` ">= 5" | bc -l), 1)
LDFLAGS += -static-libgcc -static-libstdc++
endif
endif
#######################################
# ARM
else ifneq (,$(findstring armv,$(platform)))
TARGET := $(TARGET_NAME)_libretro.so

View File

@ -3,6 +3,7 @@
#include <ctime>
#include <cstring>
#include <string>
#include <stdexcept>
#include <sstream>
#include <iostream>
#include <vector>