Skip to content

Commit 4678800

Browse files
authored
Merge pull request #209 from carstene1ns/update/autumn25
Autumn '25 Update
2 parents 9f484eb + ae416e9 commit 4678800

29 files changed

+187
-181
lines changed

.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,3 +3,5 @@
33

44
# do not convert line ending of windows batch files
55
*.cmd -text
6+
7+
/shared/packages.sh -diff -linguist-generated

3ds/2_build_toolchain.sh

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ else
2525
msg "The following tools need to be installed to allow building .cia"
2626
msg "bundles or creating custom banners:"
2727
msg " https://github.com/dnasdw/3dstool"
28-
#msg " https://github.com/Steveice10/bannertool"
2928
msg " https://github.com/carstene1ns/3ds-bannertool"
3029
msg " https://github.com/profi200/Project_CTR"
3130
fi
@@ -37,31 +36,29 @@ if [ ! -f .patches-applied ]; then
3736

3837
patches_common
3938

40-
# Fix pixman
39+
verbosemsg "pixman"
4140
(cd $PIXMAN_DIR
4241
patch -Np1 < $SCRIPT_DIR/../shared/extra/pixman-no-tls.patch
4342
patch -Np1 < $SCRIPT_DIR/pixman-fix-types.patch
4443
)
4544

46-
# Fix mpg123
45+
verbosemsg "mpg123"
4746
(cd $MPG123_DIR
4847
patch -Np1 < $SCRIPT_DIR/../shared/extra/mpg123.patch
4948
autoreconf -fi
5049
)
5150

52-
# Fix tremor
51+
verbosemsg "tremor"
5352
patch -d $TREMOR_DIR -Np1 < $SCRIPT_DIR/tremor-fix-types.patch
5453

55-
# Fix opusfile
54+
verbosemsg "opusfile"
5655
patch -d $OPUSFILE_DIR -Np1 < $SCRIPT_DIR/../shared/extra/opusfile-devkit.patch
5756

58-
# Fix lhasa
57+
verbosemsg "lhasa"
5958
patch -d $LHASA_DIR -Np1 < $SCRIPT_DIR/../shared/extra/lhasa.patch
6059

61-
# Fix icu build
62-
# Remove mutexes (crashes)
60+
verbosemsg "ICU"
6361
patch -Np0 < $SCRIPT_DIR/../shared/extra/icu-no-mutex.patch
64-
# Fix char16 detection
6562
patch -Np0 < $SCRIPT_DIR/icu-data-char16.patch
6663

6764
touch .patches-applied
@@ -101,16 +98,18 @@ install_lib_cmake $LIBPNG_DIR $LIBPNG_ARGS
10198
install_lib_cmake $FREETYPE_DIR $FREETYPE_ARGS -DFT_DISABLE_HARFBUZZ=ON
10299
#install_lib_meson $HARFBUZZ_DIR $HARFBUZZ_ARGS
103100
#install_lib_cmake $FREETYPE_DIR $FREETYPE_ARGS -DFT_DISABLE_HARFBUZZ=OFF
104-
install_lib_meson $PIXMAN_DIR $PIXMAN_ARGS
101+
install_lib_meson $PIXMAN_DIR $PIXMAN_ARGS -Dneon=disabled
105102
install_lib_cmake $EXPAT_DIR $EXPAT_ARGS
106103
install_lib $LIBOGG_DIR $LIBOGG_ARGS
107104
install_lib $TREMOR_DIR $TREMOR_ARGS
108105
install_lib $MPG123_DIR $MPG123_ARGS
109106
install_lib_cmake $LIBXMP_LITE_DIR $LIBXMP_LITE_ARGS
110107
install_lib $SPEEXDSP_DIR $SPEEXDSP_ARGS
111108
install_lib_cmake $WILDMIDI_DIR $WILDMIDI_ARGS
112-
install_lib $OPUS_DIR $OPUS_ARGS --disable-asm
113-
install_lib $OPUSFILE_DIR $OPUSFILE_ARGS
109+
# asm support is missing in opus cmake, but might be added one day,
110+
# likely -DOPUS_ASM=OFF then, beware if switching to meson
111+
install_lib_cmake $OPUS_DIR $OPUS_ARGS -DOPUS_FIXED_POINT=ON
112+
install_lib $OPUSFILE_DIR $OPUSFILE_ARGS --enable-fixed-point
114113
install_lib_cmake $FLUIDLITE_DIR $FLUIDLITE_ARGS
115114
install_lib_meson $INIH_DIR $INIH_ARGS
116115
install_lib $LHASA_DIR $LHASA_ARGS

3ds/README.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,13 @@
1010
### Local build process:
1111

1212
- Run `0_build_everything.sh` in a terminal
13+
14+
## Developer's notes
15+
16+
The 3DS supports:
17+
- ✘ ARM NEON intrinsiscs
18+
- ✘ TLS (thread local storage)
19+
- ✔ floating point hardware (albeit slow)
20+
- ✔ mediocre CPU performance and memory size
21+
22+
These often need to be patched in or out of the libraries.

android/2_build_toolchain.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ function build() {
113113
install_lib_cmake $LIBXMP_LITE_DIR $LIBXMP_LITE_ARGS
114114
install_lib $SPEEXDSP_DIR $SPEEXDSP_ARGS
115115
install_lib_cmake $WILDMIDI_DIR $WILDMIDI_ARGS
116-
install_lib $OPUS_DIR $OPUS_ARGS
116+
install_lib_cmake $OPUS_DIR $OPUS_ARGS
117117
install_lib $OPUSFILE_DIR $OPUSFILE_ARGS
118118
install_lib_cmake $FLUIDSYNTH_DIR $FLUIDSYNTH_ARGS
119119
install_lib_cmake $NLOHMANNJSON_DIR $NLOHMANNJSON_ARGS

emscripten/2_build_toolchain.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -109,7 +109,7 @@ install_lib $LIBSNDFILE_DIR $LIBSNDFILE_ARGS
109109
install_lib_cmake $LIBXMP_LITE_DIR $LIBXMP_LITE_ARGS
110110
install_lib $SPEEXDSP_DIR $SPEEXDSP_ARGS
111111
#install_lib_cmake $WILDMIDI_DIR $WILDMIDI_ARGS
112-
install_lib $OPUS_DIR $OPUS_ARGS --disable-stack-protector
112+
install_lib_cmake $OPUS_DIR $OPUS_ARGS -DOPUS_STACK_PROTECTOR=OFF
113113
install_lib $OPUSFILE_DIR $OPUSFILE_ARGS
114114
install_lib_cmake $FLUIDSYNTH_DIR $FLUIDSYNTH_ARGS
115115
install_lib_cmake $NLOHMANNJSON_DIR $NLOHMANNJSON_ARGS

ios/2_build_toolchain.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ function build() {
7474
install_lib_cmake $LIBXMP_LITE_DIR $LIBXMP_LITE_ARGS
7575
install_lib $SPEEXDSP_DIR $SPEEXDSP_ARGS
7676
install_lib_cmake $WILDMIDI_DIR $WILDMIDI_ARGS
77-
install_lib $OPUS_DIR $OPUS_ARGS
77+
install_lib_cmake $OPUS_DIR $OPUS_ARGS
7878
install_lib $OPUSFILE_DIR $OPUSFILE_ARGS
7979
install_lib_cmake $FLUIDSYNTH_DIR $FLUIDSYNTH_ARGS -DCMAKE_MACOSX_BUNDLE=OFF
8080
install_lib_cmake $NLOHMANNJSON_DIR $NLOHMANNJSON_ARGS

linux-static/2_build_toolchain.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ install_lib $LIBSNDFILE_DIR $LIBSNDFILE_ARGS
5757
install_lib_cmake $LIBXMP_LITE_DIR $LIBXMP_LITE_ARGS
5858
install_lib $SPEEXDSP_DIR $SPEEXDSP_ARGS
5959
install_lib_cmake $WILDMIDI_DIR $WILDMIDI_ARGS
60-
install_lib $OPUS_DIR $OPUS_ARGS
60+
install_lib_cmake $OPUS_DIR $OPUS_ARGS
6161
install_lib $OPUSFILE_DIR $OPUSFILE_ARGS
6262
install_lib_cmake $FLUIDSYNTH_DIR $FLUIDSYNTH_ARGS
6363
install_lib_cmake $NLOHMANNJSON_DIR $NLOHMANNJSON_ARGS

macos/2_build_toolchain.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ function build() {
7474
install_lib_cmake $LIBXMP_LITE_DIR $LIBXMP_LITE_ARGS
7575
install_lib $SPEEXDSP_DIR $SPEEXDSP_ARGS
7676
install_lib_cmake $WILDMIDI_DIR $WILDMIDI_ARGS
77-
install_lib $OPUS_DIR $OPUS_ARGS
77+
install_lib_cmake $OPUS_DIR $OPUS_ARGS
7878
install_lib $OPUSFILE_DIR $OPUSFILE_ARGS
7979
install_lib_cmake $FLUIDSYNTH_DIR $FLUIDSYNTH_ARGS
8080
install_lib_cmake $NLOHMANNJSON_DIR $NLOHMANNJSON_ARGS

shared/common.sh

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -366,17 +366,7 @@ function patches_common {
366366
verbosemsg "tremor"
367367

368368
(cd $TREMOR_DIR
369-
perl -pi -e 's/XIPH_PATH_OGG.*//' configure.in
370-
autoreconf -fi
371-
)
372-
fi
373-
374-
# libsamplerate: disable examples
375-
if [ -d "$LIBSAMPLERATE_DIR" ]; then
376-
verbosemsg "libsamplerate"
377-
378-
(cd $LIBSAMPLERATE_DIR
379-
patch -Np1 < $_SCRIPT_DIR/libsamplerate-no-examples.patch
369+
perl -pi -e 's/XIPH_PATH_OGG.*//' configure.ac
380370
autoreconf -fi
381371
)
382372
fi

shared/extra/mpg123.patch

Lines changed: 30 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
1-
diff '--color=auto' -Naur mpg123-1.28.1-orig/configure.ac mpg123-1.28.1/configure.ac
2-
--- mpg123-1.28.1-orig/configure.ac 2021-07-12 00:49:40.906632272 +0200
3-
+++ mpg123-1.28.1/configure.ac 2021-07-12 00:52:50.956634812 +0200
4-
@@ -1318,6 +1318,20 @@
1+
diff --color -Naur mpg123-1.33.3.orig/configure.ac mpg123-1.33.3/configure.ac
2+
--- mpg123-1.33.3.orig/configure.ac 2025-10-05 22:59:02.000000000 +0200
3+
+++ mpg123-1.33.3/configure.ac 2025-10-21 14:49:00.629579286 +0200
4+
@@ -1582,6 +1582,20 @@
55
# Optionally use platform macros for byte swapping.
66
AC_CHECK_HEADERS([byteswap.h])
77

@@ -22,10 +22,22 @@ diff '--color=auto' -Naur mpg123-1.28.1-orig/configure.ac mpg123-1.28.1/configur
2222
dnl ############## Choose compiler flags and CPU
2323

2424
# do not assume gcc here, so no flags by default
25-
diff '--color=auto' -Naur mpg123-1.28.1-orig/src/compat/compat.h mpg123-1.28.1/src/compat/compat.h
26-
--- mpg123-1.28.1-orig/src/compat/compat.h 2021-07-12 00:49:40.876632271 +0200
27-
+++ mpg123-1.28.1/src/compat/compat.h 2021-07-12 00:52:50.956634812 +0200
28-
@@ -86,7 +86,8 @@
25+
diff --color -Naur mpg123-1.33.3.orig/src/compat/compat.c mpg123-1.33.3/src/compat/compat.c
26+
--- mpg123-1.33.3.orig/src/compat/compat.c 2025-10-05 22:59:02.000000000 +0200
27+
+++ mpg123-1.33.3/src/compat/compat.c 2025-10-21 15:10:38.369364458 +0200
28+
@@ -520,7 +520,7 @@
29+
30+
#ifdef DONT_CATCH_SIGNALS
31+
fprintf (stderr, "Not catching any signals.\n");
32+
- return ((void (*)()) -1);
33+
+ return ((void (*)(int)) -1);
34+
#endif
35+
36+
new_sa.sa_handler = handler;
37+
diff --color -Naur mpg123-1.33.3.orig/src/compat/compat.h mpg123-1.33.3/src/compat/compat.h
38+
--- mpg123-1.33.3.orig/src/compat/compat.h 2025-10-05 22:59:02.000000000 +0200
39+
+++ mpg123-1.33.3/src/compat/compat.h 2025-10-21 14:49:00.630023566 +0200
40+
@@ -94,7 +94,8 @@
2941
#include <sys/time.h>
3042
#endif
3143
/* For select(), I need select.h according to POSIX 2001, else: sys/time.h sys/types.h unistd.h */
@@ -35,12 +47,12 @@ diff '--color=auto' -Naur mpg123-1.28.1-orig/src/compat/compat.h mpg123-1.28.1/s
3547
#include <sys/select.h>
3648
#endif
3749

38-
diff '--color=auto' -Naur mpg123-1.28.1-orig/src/control_generic.c mpg123-1.28.1/src/control_generic.c
39-
--- mpg123-1.28.1-orig/src/control_generic.c 2021-07-12 00:49:40.876632271 +0200
40-
+++ mpg123-1.28.1/src/control_generic.c 2021-07-12 00:54:20.726636012 +0200
41-
@@ -28,8 +28,10 @@
50+
diff --color -Naur mpg123-1.33.3.orig/src/control_generic.c mpg123-1.33.3/src/control_generic.c
51+
--- mpg123-1.33.3.orig/src/control_generic.c 2025-10-05 22:59:02.000000000 +0200
52+
+++ mpg123-1.33.3/src/control_generic.c 2025-10-21 14:49:00.630277569 +0200
53+
@@ -29,8 +29,10 @@
4254
#include <ctype.h>
43-
#if !defined (WIN32) || defined (__CYGWIN__)
55+
#if !defined (_WIN32) || defined (__CYGWIN__)
4456
#include <sys/wait.h>
4557
+#ifdef NETWORK
4658
#include <sys/socket.h>
@@ -49,7 +61,7 @@ diff '--color=auto' -Naur mpg123-1.28.1-orig/src/control_generic.c mpg123-1.28.1
4961
#include <errno.h>
5062
#include <string.h>
5163

52-
@@ -397,7 +399,10 @@
64+
@@ -408,7 +410,10 @@
5365
outstream = stdout;
5466
out_is_term = stdout_is_term;
5567
}
@@ -61,10 +73,10 @@ diff '--color=auto' -Naur mpg123-1.28.1-orig/src/control_generic.c mpg123-1.28.1
6173
setlinebuf(outstream);
6274
#else /* perhaps just use setvbuf as it's C89 */
6375
/*
64-
diff '--color=auto' -Naur mpg123-1.28.1-orig/src/mpg123.c mpg123-1.28.1/src/mpg123.c
65-
--- mpg123-1.28.1-orig/src/mpg123.c 2021-07-12 00:49:40.876632271 +0200
66-
+++ mpg123-1.28.1/src/mpg123.c 2021-07-12 00:52:50.956634812 +0200
67-
@@ -1353,6 +1353,8 @@
76+
diff --color -Naur mpg123-1.33.3.orig/src/mpg123.c mpg123-1.33.3/src/mpg123.c
77+
--- mpg123-1.33.3.orig/src/mpg123.c 2025-10-05 22:59:02.000000000 +0200
78+
+++ mpg123-1.33.3/src/mpg123.c 2025-10-21 14:49:00.630634577 +0200
79+
@@ -1341,6 +1341,8 @@
6880
if(param.verbose > 2) fprintf(stderr, "Note: pausing %i seconds before next track.\n", param.delay);
6981
#ifdef WIN32
7082
Sleep(param.delay*1000);

0 commit comments

Comments
 (0)