Skip to content

Commit c27952c

Browse files
author
Ninoh-FOX
committed
added v4 support
1 parent 411df01 commit c27952c

File tree

17 files changed

+2726
-38
lines changed

17 files changed

+2726
-38
lines changed

Makefile.mini

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -31,24 +31,25 @@ endif
3131
DEBUG ?= 0
3232

3333
MIYOOMINI = 1
34+
MMIYOOV4 = 0
3435
DINGUX = 1
3536
HAVE_SCREENSHOTS = 1
36-
HAVE_REWIND = 1
37+
HAVE_REWIND = 0
3738
HAVE_7ZIP = 1
3839
HAVE_AL = 0
3940
HAVE_ALSA = 0
4041
HAVE_DSP_FILTER = 1
4142
HAVE_VIDEO_FILTER = 1
4243
HAVE_STATIC_VIDEO_FILTERS = 1
4344
HAVE_STATIC_AUDIO_FILTERS = 1
44-
HAVE_FILTERS_BUILTIN = 1
45+
HAVE_FILTERS_BUILTIN = 1
4546
HAVE_BUILTINMBEDTLS = 0
4647
HAVE_BUILTINZLIB = 1
4748
HAVE_C99 = 1
4849
HAVE_CC = 1
49-
#HAVE_CC_RESAMPLER = 1
50+
HAVE_CC_RESAMPLER = 1
5051
HAVE_CHD = 1
51-
HAVE_COMMAND = 0
52+
HAVE_COMMAND = 1
5253
HAVE_CXX = 1
5354
HAVE_DR_MP3 = 1
5455
HAVE_DYNAMIC = 1
@@ -67,7 +68,6 @@ HAVE_MENU = 1
6768
HAVE_MENU_COMMON = 1
6869
HAVE_GFX_WIDGETS = 1
6970
HAVE_MMAP = 1
70-
HAVE_GETOPT_LONG = 1
7171
HAVE_OPENDINGUX_FBDEV = 0
7272
HAVE_OPENGL = 0
7373
HAVE_OPENGL1 = 0
@@ -80,7 +80,7 @@ HAVE_RBMP = 1
8080
HAVE_RJPEG = 1
8181
HAVE_RPILED = 0
8282
HAVE_RPNG = 1
83-
HAVE_RUNAHEAD = 1
83+
HAVE_RUNAHEAD = 0
8484
HAVE_SDL_DINGUX = 1
8585
HAVE_SHADERPIPELINE = 0
8686
HAVE_STB_FONT = 0
@@ -100,21 +100,29 @@ HAVE_PATCH = 1
100100
HAVE_CHEATS = 1
101101
HAVE_LIBSHAKE = 0
102102
HAVE_CORE_INFO_CACHE = 1
103-
#HAVE_TINYALSA = 1
104103
HAVE_NEAREST_RESAMPLER = 1
105104
HAVE_NEON = 1
106105
HAVE_OSS = 1
107106
HAVE_AUDIOIO = 1
108-
ADD_NETWORKING = 0
107+
HAVE_TRANSLATE = 0
109108
HAVE_VIDEO_LAYOUT = 1
110109

110+
ADD_NETWORKING = 0
111+
111112
ifeq ($(ADD_NETWORKING),1)
112113
#Required for network features
113114
HAVE_NETWORKING = 1
114115
HAVE_GETADDRINFO = 1
115116
HAVE_IFINFO = 1
116117
HAVE_NETPLAYDISCOVERY = 1
117118
HAVE_CHEEVOS = 1
119+
HAVE_ONLINE_UPDATER = 1
120+
HAVE_UPDATE_ASSETS = 1
121+
HAVE_UPDATE_CORES = 1
122+
HAVE_UPDATE_CORE_INFO = 1
123+
HAVE_SSL = 1
124+
HAVE_SYSTEMMBEDTLS = 1
125+
SYSTEMMBEDTLS_LIBS = -lmbedtls -lmbedx509 -lmbedcrypto
118126
endif
119127

120128
OS = Linux
@@ -205,6 +213,7 @@ $(OBJDIR)/%.o: %.S $(HEADERS)
205213
clean:
206214
rm -rf $(OBJDIR_BASE)
207215
rm -f $(TARGET)
216+
rm -f retroarch.mini
208217
rm -f *.d
209218

210219
.PHONY: all clean

Makefile.miniv4

Lines changed: 223 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,223 @@
1+
#########################
2+
## Toolchain variables ##
3+
#########################
4+
5+
# Default toolchain directory
6+
TOOLCHAIN_DIR=/opt/miyoomini-toolchain
7+
8+
# All toolchain-related variables may be
9+
# overridden via the command line
10+
11+
CC = $(TOOLCHAIN_DIR)/bin/arm-linux-gnueabihf-gcc
12+
CXX = $(TOOLCHAIN_DIR)/bin/arm-linux-gnueabihf-g++
13+
STRIP = $(TOOLCHAIN_DIR)/bin/arm-linux-gnueabihf-strip
14+
15+
SDL_CONFIG ?= $(TOOLCHAIN_DIR)/arm-linux-gnueabihf/libc/usr/bin/sdl-config
16+
FREETYPE_CONFIG ?= $(TOOLCHAIN_DIR)/arm-linux-gnueabihf/libc/usr/bin/freetype-config
17+
18+
INC_DIR ?= $(TOOLCHAIN_DIR)/arm-linux-gnueabihf/libc/usr/include
19+
LIB_DIR ?= $(TOOLCHAIN_DIR)/arm-linux-gnueabihf/libc/usr/lib
20+
21+
LTO = -flto
22+
STRIP_BIN = 1
23+
24+
#########################
25+
#########################
26+
27+
ifeq ($(PACKAGE_NAME),)
28+
PACKAGE_NAME = retroarch.miniv4
29+
endif
30+
31+
DEBUG ?= 0
32+
33+
MIYOOMINI = 1
34+
MMIYOOV4 = 1
35+
DINGUX = 1
36+
HAVE_SCREENSHOTS = 1
37+
HAVE_REWIND = 0
38+
HAVE_7ZIP = 1
39+
HAVE_AL = 0
40+
HAVE_ALSA = 0
41+
HAVE_DSP_FILTER = 1
42+
HAVE_VIDEO_FILTER = 1
43+
HAVE_STATIC_VIDEO_FILTERS = 1
44+
HAVE_STATIC_AUDIO_FILTERS = 1
45+
HAVE_FILTERS_BUILTIN = 1
46+
HAVE_BUILTINMBEDTLS = 0
47+
HAVE_BUILTINZLIB = 1
48+
HAVE_C99 = 1
49+
HAVE_CC = 1
50+
HAVE_CC_RESAMPLER = 1
51+
HAVE_CHD = 1
52+
HAVE_COMMAND = 1
53+
HAVE_CXX = 1
54+
HAVE_DR_MP3 = 1
55+
HAVE_DYNAMIC = 1
56+
HAVE_DYLIB = 1
57+
HAVE_EGL = 0
58+
HAVE_FREETYPE = 0
59+
HAVE_GDI = 1
60+
HAVE_GETOPT_LONG = 1
61+
HAVE_GLSL = 0
62+
HAVE_HID = 0
63+
HAVE_IBXM = 1
64+
HAVE_IMAGEVIEWER = 0
65+
HAVE_LANGEXTRA = 1
66+
HAVE_LIBRETRODB = 1
67+
HAVE_MENU = 1
68+
HAVE_MENU_COMMON = 1
69+
HAVE_GFX_WIDGETS = 1
70+
HAVE_MMAP = 1
71+
HAVE_OPENDINGUX_FBDEV = 0
72+
HAVE_OPENGL = 0
73+
HAVE_OPENGL1 = 0
74+
HAVE_OPENGLES = 0
75+
HAVE_OPENGLES3 = 0
76+
HAVE_OPENGL_CORE = 0
77+
HAVE_OPENSSL = 1
78+
HAVE_OVERLAY = 1
79+
HAVE_RBMP = 1
80+
HAVE_RJPEG = 1
81+
HAVE_RPILED = 0
82+
HAVE_RPNG = 1
83+
HAVE_RUNAHEAD = 0
84+
HAVE_SDL_DINGUX = 1
85+
HAVE_SHADERPIPELINE = 0
86+
HAVE_STB_FONT = 0
87+
HAVE_STB_IMAGE = 0
88+
HAVE_STB_VORBIS = 0
89+
HAVE_STDIN_CMD = 0
90+
HAVE_STRCASESTR = 1
91+
HAVE_THREADS = 1
92+
HAVE_UDEV = 0
93+
HAVE_RGUI = 1
94+
HAVE_MATERIALUI = 0
95+
HAVE_XMB = 0
96+
HAVE_OZONE = 0
97+
HAVE_ZLIB = 1
98+
HAVE_CONFIGFILE = 1
99+
HAVE_PATCH = 1
100+
HAVE_CHEATS = 1
101+
HAVE_LIBSHAKE = 0
102+
HAVE_CORE_INFO_CACHE = 1
103+
HAVE_NEAREST_RESAMPLER = 1
104+
HAVE_NEON = 1
105+
HAVE_OSS = 1
106+
HAVE_AUDIOIO = 1
107+
HAVE_TRANSLATE = 0
108+
HAVE_VIDEO_LAYOUT = 1
109+
110+
ADD_NETWORKING = 0
111+
112+
ifeq ($(ADD_NETWORKING),1)
113+
#Required for network features
114+
HAVE_NETWORKING = 1
115+
HAVE_GETADDRINFO = 1
116+
HAVE_IFINFO = 1
117+
HAVE_NETPLAYDISCOVERY = 1
118+
HAVE_CHEEVOS = 1
119+
HAVE_ONLINE_UPDATER = 1
120+
HAVE_UPDATE_ASSETS = 1
121+
HAVE_UPDATE_CORES = 1
122+
HAVE_UPDATE_CORE_INFO = 1
123+
HAVE_SSL = 1
124+
HAVE_SYSTEMMBEDTLS = 1
125+
SYSTEMMBEDTLS_LIBS = -lmbedtls -lmbedx509 -lmbedcrypto
126+
endif
127+
128+
129+
OS = Linux
130+
TARGET = $(PACKAGE_NAME)
131+
132+
OBJ := miyoo.o
133+
LINK := $(CXX)
134+
DEF_FLAGS := -marm -mtune=cortex-a7 -march=armv7ve+simd -mfpu=neon-vfpv4 -mfloat-abi=hard -ffast-math -fomit-frame-pointer
135+
DEF_FLAGS += -ffunction-sections -fdata-sections
136+
DEF_FLAGS += -I. -Ideps -Ideps/stb -DMIYOOMINI -DMMIYOOV4 -DDINGUX -MMD
137+
DEF_FLAGS += -Wall -Wno-unused-function -Wno-unused-variable $(LTO)
138+
DEF_FLAGS += -std=gnu99 -D_GNU_SOURCE
139+
LIBS := -ldl -lz -lrt -pthread -lmi_sys -lmi_ao -lmi_gfx -lcam_os_wrapper -lmsettings -lmi_common
140+
CFLAGS :=
141+
CXXFLAGS := -fno-exceptions -fno-rtti -std=c++11 -D__STDC_CONSTANT_MACROS
142+
ASFLAGS :=
143+
LDFLAGS := -Wl,--gc-sections -s
144+
INCLUDE_DIRS = -I$(INC_DIR)
145+
LIBRARY_DIRS = -L$(LIB_DIR)
146+
DEFINES := -DRARCH_INTERNAL -D_FILE_OFFSET_BITS=64 -UHAVE_STATIC_DUMMY
147+
DEFINES += -DHAVE_C99=1 -DHAVE_CXX=1
148+
DEFINES += -DHAVE_GETOPT_LONG=1 -DHAVE_STRCASESTR=1 -DHAVE_DYNAMIC=1 -DHAVE_OSS -DHAVE_AUDIOIO
149+
DEFINES += -DHAVE_FILTERS_BUILTIN -DHAVE_ARM_NEON_ASM_OPTIMIZATIONS
150+
151+
SDL_DINGUX_CFLAGS := $(shell $(SDL_CONFIG) --cflags)
152+
SDL_DINGUX_LIBS := $(shell $(SDL_CONFIG) --libs)
153+
FREETYPE_CFLAGS := $(shell $(FREETYPE_CONFIG) --cflags)
154+
FREETYPE_LIBS := $(shell $(FREETYPE_CONFIG) --libs)
155+
MMAP_LIBS = -lc
156+
157+
OBJDIR_BASE := obj-unix
158+
159+
ifeq ($(DEBUG), 1)
160+
OBJDIR := $(OBJDIR_BASE)/debug
161+
DEF_FLAGS += -O0 -g -DDEBUG -D_DEBUG
162+
else
163+
OBJDIR := $(OBJDIR_BASE)/release
164+
DEF_FLAGS += -Ofast -DNDEBUG
165+
endif
166+
167+
include Makefile.common
168+
169+
DEF_FLAGS += $(INCLUDE_DIRS)
170+
LDFLAGS += $(CFLAGS) $(CXXFLAGS) $(DEF_FLAGS)
171+
CFLAGS += $(DEF_FLAGS)
172+
CXXFLAGS += $(DEF_FLAGS)
173+
174+
HEADERS = $(wildcard */*/*.h) $(wildcard */*.h) $(wildcard *.h)
175+
176+
Q := @
177+
178+
RARCH_OBJ := $(addprefix $(OBJDIR)/,$(OBJ))
179+
180+
all: $(TARGET)
181+
182+
-include $(RARCH_OBJ:.o=.d)
183+
184+
SYMBOL_MAP := -Wl,-Map=output.map
185+
186+
$(TARGET): $(RARCH_OBJ)
187+
@$(if $(Q), $(shell echo echo LD $@),)
188+
$(Q)$(LINK) -o $@ $(RARCH_OBJ) $(LIBS) $(LDFLAGS) $(LIBRARY_DIRS)
189+
190+
ifeq ($(STRIP_BIN),1)
191+
$(STRIP) --strip-unneeded $(TARGET)
192+
endif
193+
194+
$(OBJDIR)/%.o: %.c
195+
@mkdir -p $(dir $@)
196+
@$(if $(Q), $(shell echo echo CC $<),)
197+
$(Q)$(CC) $(CPPFLAGS) $(CFLAGS) $(DEFINES) -c -o $@ $<
198+
199+
$(OBJDIR)/%.o: %.cpp
200+
@mkdir -p $(dir $@)
201+
@$(if $(Q), $(shell echo echo CXX $<),)
202+
$(Q)$(CXX) $(CPPFLAGS) $(CXXFLAGS) $(DEFINES) -MMD -c -o $@ $<
203+
204+
$(OBJDIR)/%.o: %.m
205+
@mkdir -p $(dir $@)
206+
@$(if $(Q), $(shell echo echo OBJC $<),)
207+
$(Q)$(CXX) $(OBJCFLAGS) $(DEFINES) -MMD -c -o $@ $<
208+
209+
$(OBJDIR)/%.o: %.S $(HEADERS)
210+
@mkdir -p $(dir $@)
211+
@$(if $(Q), $(shell echo echo AS $<),)
212+
$(Q)$(CC) $(CFLAGS) $(ASFLAGS) $(DEFINES) -c -o $@ $<
213+
214+
clean:
215+
rm -rf $(OBJDIR_BASE)
216+
rm -f $(TARGET)
217+
rm -f retroarch.miniv4
218+
rm -f *.d
219+
220+
.PHONY: all clean
221+
222+
print-%:
223+
@echo '$*=$($*)'

0 commit comments

Comments
 (0)