Commit graph

1412 commits

Author SHA1 Message Date
Vencislav Atanasov
174a2330e9 rbutilqt/themeeditor: Fix compiler warnings
- match sign in integer comparison
- remove unused RBViewport member

Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: I9a59d701593a4290523bf4b837ab0794bea2ebaa
2026-06-29 20:13:29 -04:00
Vencislav Atanasov
6aa8d80ba2 rbutilqt: Replace Utils::findRunningProcess() on macOS with a libproc implementation
GetNextProcess, GetProcessPID and GetProcessInformation are replaced by proc_listallpids() and proc_pidpath()

Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: Ic4fe13c405e11b658b1a9540e49741d4e69069f3
2026-06-29 20:13:09 -04:00
Vencislav Atanasov
45bd7c4400 rbutilqt: Simplify Utils::filesystemName()
Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: Ib8851f27c473afa0d656ea3885e4d65342d10ab5
2026-06-29 20:12:48 -04:00
Vencislav Atanasov
204684f3e2 themeeditor: Fix class member initialization by calling the getter
Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: I5137c7c5094200809f79880bc425b0f31fee02cc
2026-06-29 20:12:32 -04:00
Vencislav Atanasov
05de3651d2 rbutilqt: Simplify conversion from UTF-16 string to QString for proxy host
Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: Idf3437f66c6ac95d38cad997143b995b2fe9a5f2
2026-06-29 17:41:25 -04:00
Vencislav Atanasov
cf2872af11 rbutilqt: Replace insecure sprintf() with snprintf()
Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: Ic2abe417f17a6f104cc4523b155ca6fdb5965bb1
2026-06-29 17:41:06 -04:00
Vencislav Atanasov
e3e416c51b rbutilqt/themeeditor: Fix Qt6 deprecations
- insertMulti() -> insert()
- QString::fromUtf16() with a parameter type other than char16_t*
- enterEvent() parameter type changed from QEvent to QEnterEvent
- QVariant -> QMetaType

Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: Ia9c6c93e281475856e8355a8aa0e64c474eed80c
2026-06-29 17:28:53 -04:00
Vencislav Atanasov
d618846a8f ipodpatcher: Remove unused functions
Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: Iedb2d42612d543e7761dd1c2628310cd053652e3
2026-06-29 16:56:16 -04:00
Vencislav Atanasov
dcc997e4e4 rbutilqt: Switch to a Qt API to get macOS version number, get system architecture using a compiler macro
This removes usage of the deprecated macOS Gestalt() API (2/2)

Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: Id10386285469c06f082a7dcdcc3284b97519b10a
2026-06-29 16:55:47 -04:00
Vencislav Atanasov
1cbf61607e rbutilqt: Switch to a Qt API to get the CPU cores count
This removes usage of the deprecated macOS Gestalt() API (1/2)

Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: Ia3af510412a97258dcd9fc9134708900c04c62c4
2026-06-29 16:54:27 -04:00
Vencislav Atanasov
cac0be6af5 rbutilqt: Replace deprecated macro Q_OS_MACX with Q_OS_MACOS
Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: I0c51044574b8ec96ceaf0b953c6735ccf5d19e5e
2026-06-29 16:53:48 -04:00
Vencislav Atanasov
e0ac7a75a3 macOS 12.0 Deprecation: kIOMasterPortDefault -> kIOMainPortDefault
Co-authored-by: ChatGPT (GPT-5.3 Mini) <chatgpt@openai.com>
Change-Id: I4b5d6b73b87b7ea9e79ed20bbd27fb88fc8647ab
2026-06-29 16:53:21 -04:00
Solomon Peachy
02f7dabc67 rbutil: Port TTS preview to QT6
Change-Id: Ib4a5b1ef1cd3927792e0022e387b6abc8e5f099e
2026-06-27 11:42:50 -04:00
Solomon Peachy
0db37606b0 rbutilqt: Handle translation load failures, part deux
This set happens on startup, when we try to load a translation
matching the system locale

Change-Id: Ib1d3effa7aa738550841023a14f733d8d5b48837
2026-06-27 07:35:21 -04:00
Solomon Peachy
4875f706c2 rbutil: Cleanly handle translation loading errors at runtime
Change-Id: I2d8c566437b9a6224db41608bf3cbab8aed76763
2026-06-27 07:29:21 -04:00
Solomon Peachy
a700dcdfb0 rbutil: Use add_compile_definitions instead of add_compile_options
Change-Id: Iaeca86f89ccfb961456a10b96f3257d444cc0971
2026-06-27 07:29:21 -04:00
Solomon Peachy
44713c3014 themeeditor: Fix a pile of unusued argument warnings
Change-Id: I919c239a410e0ff708276d5ca9d1046b70af536b
2026-06-27 07:29:21 -04:00
Solomon Peachy
5d3723bbf4 rbutil: Use QT_NO_USE_NODISCARD_FILE_OPEN everywhere
Not sure why we needed to specify this in three different places, but eh

Change-Id: If8d7304971f176bcfca839f5d6da626908621be4
2026-06-26 21:38:57 -04:00
Solomon Peachy
3c41d6a1c1 rbutil: Eliminate more pre-QT6 workarounds
Change-Id: I7b5cf428ef626543aa8e932622f4658e789e9236
2026-06-26 21:38:57 -04:00
Solomon Peachy
202243a1ab tools: fix up build warnings
Change-Id: Ib1b11f2361d4a20a8cd3c4107f8e546f8ece3f49
2026-06-26 21:38:57 -04:00
Vencislav Atanasov
115b2ae800 rbutilqt: Add a CODESIGN_IDENTITY CMake variable for macOS builds
It can be used to choose which Apple Developer ID to use when signing the build of the Qt apps. By default, it uses ad-hoc signing, i.e. no Apple Developer ID is needed.

Change-Id: I5634e318f4949107eb954b729b2f8f1d60fad115
2026-06-27 02:31:11 +03:00
Solomon Peachy
e0bbf8f9da rbutil: Drop support for QT5, start cleaning up the warnings
* All deprecation warnings fixed
 * Explicitly set QT_NO_USE_NODISCARD_FILE_OPEN

Change-Id: Ice52133e93d4a01f12ff845a3056a81b100ed891
2026-06-26 16:53:17 -04:00
Solomon Peachy
949a99a24d rbutil: Support linux non-x86_64 appimage deployments
Change-Id: I6d95e45b3a013941e131ee89b50c7225b21931bf
2026-06-23 20:16:56 -04:00
Solomon Peachy
30567451b1 mkimxboot: Fix up a large pile of compile warnings with -Wextra
Change-Id: Ida1eae89e4a2cc99e8e2ed734c4d669c1a2a8cb2
2026-06-22 20:59:18 -04:00
Solomon Peachy
aeb42039f9 rbutil: Explicitly use C++17 and C11 for building (was "compiler default")
Change-Id: I9757a77520fc9d7d39a52185b92615d5eb9c0cbc
2026-06-22 10:27:38 -04:00
Solomon Peachy
13bcd68346 FS#13928 - Updated Simplified Chinese Translations (Wang Ji)
Change-Id: Ibf63047e9ade0397a29599d127ff77c51a167113
2026-06-21 11:43:49 -04:00
Solomon Peachy
f42d95b4a6 rbutil: Update vendored quazip from v1.3 to v1.5
Change-Id: Ife2678a7ef1f48020a3cc3b75dc87f725dd14068
2026-06-21 11:20:55 -04:00
Solomon Peachy
1e3301388c rbutil: Update vendored quazip from v1.1 to v1.3
Change-Id: Icd6f010adbc9712f381a409eca31506fe31bb304
2026-06-21 08:55:26 -04:00
Solomon Peachy
18237a3c1f rbutil: Refresh all translations using lupdate-qt6
Change-Id: Ie355d1a5422ab28e5e195b67ee5591bc973a1210
2026-06-20 19:48:33 -04:00
Solomon Peachy
278a5a9bc2 rbutil: Refresh all translations using lupdate-qt6
Change-Id: Ie355d1a5422ab28e5e195b67ee5591bc973a1210
2026-06-20 19:36:27 -04:00
Solomon Peachy
1d33585686 FS#13927 - Updated Simplified Chinese Rockbox Utility translation (Wang Ji)
Change-Id: I82af403ec32b7c0021b65cc8dce89bb4578f773c
2026-06-20 19:32:50 -04:00
Vencislav Atanasov
2dc466229e rbutilqt: change the macdeployqt command line
- Remove libpath as the dirs are already in the search path. It doesn't help with QtPdf, QtVirtualKeyboardQml or QtVirtualKeyboard not being found (at least on my system). The native libraries are properly found and copied to the app bundle.
- Remove "|| true" at the end, as even though macdeployqt shows a bunch of "ERROR: " messages, it still exits with code 0

Note: This is a partial revert of bf273149. codesign is still required, the binary is killed with SIGKILL by the OS if the libraries are modified but the signature is not updated.
Change-Id: I2d7d4e32ed8043f302c163db4f89fc90cc921f88
2026-06-20 14:00:59 -04:00
Vencislav Atanasov
005826b630 rbutilqt: Clarify if a setting comes from rbutil.ini or build-info
Also implement a fast path for QVariant PlayerBuildInfo::value(BuildInfo item)

Change-Id: Ice4e2dfbf9d7e3ba2e0f6692c320d50e3918b0d4
2026-06-20 12:57:11 -04:00
Solomon Peachy
39e7f3f29d rbutil: Move all URLs other than build-info out of rbutil.ini
Now there is zero overlap between what can be found in rbutil.ini
and the downloadable build-info.

Change-Id: Iba84dec39b062f69098bea62a286acfd36479226
2026-06-20 10:07:53 -04:00
Solomon Peachy
fba3021ffd rbutil: add Ingenic jz4740, jz4760, and x1000 recovery modes to the blacklist
Change-Id: I661c8cd005c95bbb00a9a693859a3852dc445f29
2026-06-20 10:07:53 -04:00
Vencislav Atanasov
bf273149b7 Fix CMake build of RockboxUtility and RockboxThemeEditor on macOS (part 2)
Add search path for the Qt libraries, ignore the signature verification error and then re-sign again.

Co-authored-by: Qwen3.7-Plus
Change-Id: Ifa6232cd56e78e593b3395384dd2a98fa9cc67e5
2026-06-19 21:03:17 -04:00
Vencislav Atanasov
2e126ee3ba Fix CMake build of RockboxUtility and RockboxThemeEditor on macOS (part 1)
Create a new target dmgbuild_venv which is added as a dependency of both RockboxUtility and RockboxThemeEditor so CMake understands that it's a shared dependency.

Co-authored-by: Qwen3.7-Plus
Change-Id: I417de25356885574546a7ae2a53ddbd44f6be557
2026-06-19 21:02:52 -04:00
Vencislav Atanasov
53d2a99a2a Hack to fix ipodpatcher on macOS - ignore exit code from unmount
ipodpatcher tries to unmount volumes that are not mounted e.g. the firmware partition, before making any changes. On macOS this fails with a non-zero exit code, causing the whole process (bootloader installation or uninstallation) to fail.

A proper fix would be to trace every path that uses ipod_reopen_rw(), and only call unmount if we expect the volume to be currently mounted.

Change-Id: Ieaa58da336216d5060465cfc2b7f5f8c729fe8b9
2026-06-19 21:02:37 -04:00
Solomon Peachy
a269a1360a rbutilqt: Add a bunch of missing player icons
Change-Id: I4126fd35e69b58e93e5fb63c70292c592e05ebe5
2026-06-19 20:55:52 -04:00
Solomon Peachy
f2f92dd8e1 rbutil: Update erosq/k hw4 version listing
Change-Id: I7a692a5dabb887cf7aefd98819b0b3a04be4dace
2026-06-19 17:01:07 -04:00
Solomon Peachy
3de8814fb8 Fix build of rbutil
Regression introduced in db0d7649e0

Change-Id: I395dc1d5046f3cf93dade08d2bb781c1afbef632
2026-06-19 16:50:57 -04:00
Solomon Peachy
5a838851ed utils: More warning fixes
Change-Id: Ie7af33ab0e3ac43f93a4cf2df50ddac10243b9f7
2026-06-17 13:56:29 -04:00
Solomon Peachy
0fc352da0f utils: Fix a small pile of warnings
Change-Id: Idf95fc0a6ce94ebb2282bc3b017bc7ba8aeb42fc
2026-06-17 10:39:57 -04:00
Solomon Peachy
3403e3cfb9 imxtools: Fix several build warnings
Change-Id: Idebf0445d3e861ff27e152730c5bed64c2e4489b
2026-06-17 10:39:57 -04:00
Solomon Peachy
db0d7649e0 ipodpatcher: Fix build warning and 'make clean'
Change-Id: I9e546b0e4e0bcc30efccfca334281398e358ae8d
2026-06-17 10:39:57 -04:00
Solomon Peachy
d54b9e6f8d chore: Get rid of *all* vestigal CVS '$Id:$' tags
Change-Id: I35c13a9768c582e4851aa252dd3ea5c89f760c8c
2026-06-01 16:01:18 -04:00
Solomon Peachy
d72a93836c nwztools: Update database generator script to work with python3
Change-Id: I662de90b57a3836755b88ff51537eb1597f226f4
2026-05-29 23:36:45 -04:00
Vencislav Atanasov
1adadc943d Change which macro is used to check for Windows targets
This fixes a false-positive on macOS that was caused by the macro "#define TARGET_OS_WIN32 0"

Change-Id: I1fcfb19b5aae4f63f00b9500094d619c4f7eea4b
2026-04-18 13:43:49 -04:00
Solomon Peachy
1c4774e7e9 manual: Correct dead links for Sandisk Fuze+ firmware download
All URLs into Sandisk's web site return 404 or 403 errors, so
point at our local mirror of Sansa firmware files instead.

Change-Id: Ib3efcb62b13431f6416a320483877ca162ea5990
2026-04-03 17:33:08 -04:00
Aidan MacDonald
f44b6c78e0 misc: respect standard __ASSEMBLER__ define in CPU headers
The JZ47xx and S5L87xx processor families used their own
special defines (__ASSEMBLY__ and ASM respectively) in
their CPU headers to check if they were included from an
assembly source file.

For GCC the standard seems to be __ASSEMBLER__, so check
for that instead and remove the non-standard symbols.
Being more consistent across platforms makes it easier to
include cpu.h from cross-platform files (eg. plugin.lds).

Change-Id: I282930cad34e1a2ff18166f3b4338548b34f4a49
2026-03-05 21:13:50 +00:00