3ds: Various fixes, optimizations.

This commit does the following changes:

- Fix mkdir implementation not reporting EEXIST error.
- Fix database build feature.
- Small speed-up when parsing directories and files.
- Fix buffering thread hogging cpu and preventing other threads to run.
- Fix sdl plugins not compiling by re-adding ctru specific cflags in sdl.make.

Change-Id: I507c0dcc85cdbcc607ab9c9c6d0b42e6a80caa5a
This commit is contained in:
Mauricio Garrido 2026-01-09 17:20:29 -06:00 committed by Solomon Peachy
parent 0777add596
commit 752467dee4
6 changed files with 240 additions and 78 deletions

View file

@ -39,6 +39,12 @@ SDLFLAGS = -I$(SDL_SRCDIR)/include $(filter-out -O%,$(PLUGINFLAGS)) \
#-ffast-math -funroll-loops -fomit-frame-pointer -fexpensive-optimizations \
#-D_GNU_SOURCE=1 -D_REENTRANT -DSDL -DELF
# CTRU does need these to avoid compiler errors
ifeq ($(APP_TYPE),ctru-app)
SDLFLAGS += -Wno-int-conversion -Wno-incompatible-pointer-types \
-Wno-implicit-function-declaration -Wno-implicit-int
endif
ifndef APP_TYPE
### no target has a big enough plugin buffer
ROCKS += $(SDL_OBJDIR)/duke3d.ovl