Commit graph

2516 commits

Author SHA1 Message Date
Dana Conrad
89fd4d0a51 hibyOS: OF patcher script for Native ports
This is a script to patch a native bootloader
(bootloader.*) into a stock OF firmware image (update.upt).

Usage: hibyos_nativepatcher.sh <path/to/update.upt>
<path/to/bootloder.*>

Resulting file will be placed next to the original update, and will
be named [$orig_name]_patched_[$rbver].upt

Now with some rudimentary error checking at key points!

Works on macos.
Works on linux, at least debian in docker. Linux
usage requires 7z and genisoimage.

Change-Id: I2878e7ab4652b73f44c6f1efd54047953f636c86
2024-09-08 12:29:23 -04:00
Dana Conrad
a5462d6192 erosqnative: Give erosqnative_v3 its own target ID and modelname
This is needed so "make clean; make reconf" will work correctly.

Change-Id: Ife13e59ac6054f04f7095aa2263ec64595eeb3a2
2024-09-08 12:29:03 -04:00
Dana Conrad
878e29396c ErosQNative: Add v3 LCD support, conditional on bootloader
bootloader passes the player version to rockbox for LCD init changes

Credit ZappBranigan2972 on forums for original changes
Credit Bilgus for devicedata additions

Change-Id: Ia2ca493edef49b7457e84dc19b05397dc915fa5a
2024-09-02 13:29:43 -04:00
Aidan MacDonald
ec8fb871f0 rockboxdev: fix glib compile error on hosts with Python 3.12 (FS#13471)
On hosts running Python 3.12, building the hosted MIPS toolchain fails
on glib with the error

    Traceback (most recent call last):
      File "<string>", line 2, in <module>
    ModuleNotFoundError: No module named 'imp'
    gmake[6]: *** [Makefile:982: install-codegenPYTHON] Error 1
    gmake[6]: Leaving directory '/tmp/rbdev-build/build-glib-2.46.2/gio/gdbus-2.0/codegen'

due to 'imp' being removed from Python 3.12 after a long deprecation
period. The module is imported by automake's py-compile script, but
in newer versions of automake this has been updated to use 'importlib'
instead, so running autoreconf fixes this.

We need to patch m4macros/glib-gettext.m4 to avoid an error running
autoreconf (see: https://gitlab.gnome.org/GNOME/glib/-/issues/1159):

    ac-wrapper: autoreconf: warning: auto-detected versions not found ( 2.69 2.69); falling back to latest available
    autoreconf-2.71: export WARNINGS=
    autoreconf-2.71: Entering directory '.'
    autoreconf-2.71: configure.ac: not using Gettext
    autoreconf-2.71: running: aclocal --force -I m4macros ${ACLOCAL_FLAGS}
    am-wrapper: aclocal: warning: auto-detected versions not found (1.15); falling back to latest available
    m4macros/glib-gettext.m4:39: error: m4_copy: won't overwrite defined macro: glib_DEFUN
    m4macros/glib-gettext.m4:39: the top level
    autom4te-2.71: error: /usr/bin/m4 failed with exit status: 1
    aclocal-1.16: error: /usr/bin/autom4te-2.71 failed with exit status: 1
    autoreconf-2.71: error: aclocal failed with exit status: 1

This problem goes away in glib 2.47.5 when they switched to using
upstream gettext.

Change-Id: I878a9d7086d17c6de43470b6e5f14917f0ae1bb9
2024-08-26 16:44:42 +01:00
Solomon Peachy
4d26f559ee fonts: Rename COPYING to COPYING-fonts.txt in the fonts zip
Change-Id: I45c4a768de5a3c9b57e632bf796f08246a035cc3
2024-07-30 10:18:18 -04:00
Solomon Peachy
ea1ad28cfc fonts: Include fonts/COPYING license text in fonts zip packages
Change-Id: I9352bdfac0012c3bf97e6a4cac20aad64604d774
2024-07-30 10:10:11 -04:00
Solomon Peachy
cff56c8e8c builds: Temporarily switch nightly Bulgarian voice back to 'espeak'
Turns out the 'gtts' tool on the buildserver is too old to support
Bulgarian.  Once this is dealt with, go ahead and switch back.

Change-Id: I507b3b736a722569a2050a2e1f61ed4dce210a44
2024-07-29 07:25:26 -04:00
Solomon Peachy
2363c7b095 genlang: Remove ability to output a sorted lang file.
This is handled by updatelang (if desired) and helps simplify genlang

Change-Id: I69b02c831fcfe5d06086c4f33472c890c7092fac
2024-07-28 20:45:37 -04:00
Solomon Peachy
3c2a110728 updatelang: Add the ability to sort output file in the English file's order
Change-Id: Ia115549b96365cbee6f1f96c5b0351dcec538955
2024-07-28 20:45:34 -04:00
Solomon Peachy
adbb005fd2 builds: Switch default Bulgarian voice to 'gtts'
I don't like hitting an external service but the voice pool makes
this largely a one-off.

Change-Id: Icbf7951800ef4cdf863f1e7eef7c490f2329f504
2024-07-27 08:31:31 -04:00
Solomon Peachy
566d99aced voice: Switch default English Piper voice to 'en_GB-semaine-medium'
The former one ('cori') had some very pathological corner cases
especiallly when voicing single letters. This one is just
better all around.

Change-Id: I275256a637cf70ba196aafdecc24038bfe841955
2024-07-27 07:47:12 -04:00
Solomon Peachy
2dddf16e2c voice: Shorten silence threshold to 250ms (from 500ms)
Change-Id: I32ef8691f9e0adad1af4fce3c167cfcd950ca120
2024-07-26 21:03:29 -04:00
Solomon Peachy
bcaeaa135a build-info: Add a trailing newline to the output
Change-Id: I994cd41c7d9f3767e42d6a5de935f8b7965426d2
2024-07-24 20:03:39 -04:00
Solomon Peachy
a872e38ccc voices: Use espeak, not piper, to build bulgarian voices.
As there was no bulgarian piper voice, it defaulted to czech, with
very bad results.

Change-Id: I15dd7c3007d7b7e50a40bea20c37640e7aebb39e
2024-07-24 09:47:43 -04:00
Solomon Peachy
334def8431 configure: Fix android x86 build
Change-Id: Iea1d92bcf83f016e724496ebf037c8402ede170c
2024-07-24 09:01:04 -04:00
Solomon Peachy
6dd9b9786c voice: Fix typo in Bulgarian gtts default cmdline
Change-Id: I56b285aa1ba89f645702b514339d60e3679fc98c
2024-07-23 13:55:37 -04:00
Solomon Peachy
a153f6c266 voice: Add defaults for Bulgarian voicing, and add it to the nightly builds.
Change-Id: I40e9eaf34c68c3e1f77591862f5c4eb6c2a2c059
2024-07-23 12:15:27 -04:00
Solomon Peachy
c72030f98c voice: Add default voice entries for Korean for gtts and espeak
(Piper does not have a Korean voice set yet)

Change-Id: I6675aed6f7b1f376cd80bcb447ceae8e6bedac36
2024-07-22 20:34:40 -04:00
Solomon Peachy
e8257580c6 voices: Add Korean (using espeak-ng) to the nightly voice build set
Change-Id: I8dd3db1fa571353e8a3c06fb6db0d8205530bfd5
2024-07-22 20:27:24 -04:00
Solomon Peachy
9f366b1b8a voice: Flag ':' in voiced strings.
Also corrected the 100% languages:

   English, English-US, Chinese-Simplified, German, and Italian

(There is one Italian string I didn't know how to fix)

Change-Id: I958c6737810ad0199333d17fc092eab3120cef40
2024-07-21 11:22:24 -04:00
Solomon Peachy
3294337a4c builds: Based on feedback, switch default Slovak TTS to espeak-ng
Change-Id: I399ed08fd5e4facd96c16791e0fea91d69e37cc2
2024-07-21 09:46:59 -04:00
Solomon Peachy
130ad0a262 voice: Have allvoices() sort voices by shortname (eg en_us)
Change-Id: Id4c8b28b09732082cb4b35b3e5f4c05874e6f83c
2024-07-19 08:15:31 -04:00
Solomon Peachy
5d53c94255 voice: Switch all daily builds over to the Piper TTS engine
(And flip on Chinese as well)

Change-Id: Id5429c6d0dc323e09a5db4c968f741f16cfd4142
2024-07-18 20:57:24 -04:00
Solomon Peachy
e32b1d6bd6 builds: More manual-related fixes
Change-Id: I53cb4afaff434a054e5007d8577f1e401b8fba21
2024-07-18 14:55:06 -04:00
Solomon Peachy
a7159ad483 voice: Encode all tts options in the POOL filename.
It was only including about half.  Unfortunately this will likely
invalidate all existing pools.

Change-Id: Ib1da430259823a5429b4119067ba9ef0c16b7900
2024-07-18 10:30:34 -04:00
Solomon Peachy
16094fca33 voice: Minor tweaks for Chineese TTS
Change-Id: I717a40cd00e9deabf093aabd05bc2608488c5f56
2024-07-18 10:30:34 -04:00
Solomon Peachy
8ddd94f3fd voice: Add default mappings for Chinese-Simplified TTS
Change-Id: I89aaedf4843a4323af0f2a734e05ccd87b9b2530
2024-07-18 10:03:20 -04:00
Solomon Peachy
c3b83c0a5c builds: tweak the 'manualbuilds' filter
Change-Id: I56bb898d8f2f013b51b7972098b558c22d5625d5
2024-07-18 08:16:32 -04:00
Solomon Peachy
b072c60571 build-info: Unreleased 'stable' targets get demoted to 'unstable'
This keeps rbutil from being confused.

When a new release happens, all of this automagically fixes itself!

Change-Id: I15e3ebb5e274638b9b88f670ce53f950061e9044
2024-07-17 23:35:17 -04:00
Solomon Peachy
35fb94fc9b builds: Flag several stable targets that don't have manuals
Change-Id: Ic70dec49844a2f070ee6ebfd0d810c1deb9cc931
2024-07-17 22:03:50 -04:00
Solomon Peachy
350bb5fd74 builds: promote xDuoo X3ii and X20 to stable
They don't need a manual to be considered stable, but rbutil
can install them just fine.

Change-Id: I9c110711d78254f24f5813f3169ad7a4cefb19cc
2024-07-17 21:43:00 -04:00
Solomon Peachy
4d97a4f3f2 builds: Create a function that generates a list of all manual builds
Change-Id: Ib7869f89c9ccec727bc9ed691cd1ee120c1ec7ae
2024-07-17 21:43:00 -04:00
Solomon Peachy
d5dd295ace builds: Promote AGPTek Rocker to 'stable'
Change-Id: I0dbee4f9dfd5c268ac3ea6b97c23069e50bf791d
2024-07-17 21:11:03 -04:00
Solomon Peachy
8753c41b2e tools: Fix the tools/release/manuals.pl script
It was looking for the versioned pdf filename, which it
then renamed immediately anyway.

Change-Id: I3173fde3cdde56b4bf0b95f9d08b2b8468381972
2024-07-12 12:08:37 -04:00
Solomon Peachy
af1eddb6e9 release/voices: Update script to check for global POOL
...If it's already defined, don't override it.

And don't wipe its contents!

Change-Id: I83ca2ffbd443c1d9766f4a5662a5da5fccbaf3c5
2024-07-07 09:02:27 -04:00
Solomon Peachy
3e9ca6ec8e configure: Stray unquoted space in a sed expression
Should fix SDL builds where --static-libs are not present

Change-Id: I96056f3e4d9a4ae971ad2d9e792ba542478f331b
2024-07-04 10:38:49 -04:00
Solomon Peachy
30ef953393 configure: Fix 'make reconf' when win64 sim builds are enabled
Change-Id: I9d3c23dee58cb3b4edce7bfcc0429500ffe23e58
2024-07-04 09:48:02 -04:00
Solomon Peachy
961f8a0f56 configure: if we can't link SDL statically, drop -static from the cmdline
Fixes building windows simulator builds on Fedora systems

Change-Id: I1e17e8f2f395a0298fc9d3d7e03c621d23208221
2024-07-04 09:48:02 -04:00
Solomon Peachy
d0e47affa9 xduoox3: Script to patch a firmware image with a new bootloader binary
Change-Id: Ie4cfc34ea1d40ca660b8f23e7782d617b31d7ff4
2024-07-03 16:51:58 -04:00
Solomon Peachy
6f1e67e5e3 builds: Add an explicit 'simbuilds' list
It includes all targets that have a working simulator build.

 * All stable targets except those that are flagged as bad
 * All unstable targets that are flagged as good

Change-Id: Id0e20a10af72236c819077f919ee5cc168ebf14e
2024-06-30 16:25:58 -04:00
Solomon Peachy
1c3f77eccd Revert "Toolchains: Update to GCC 8.5.0"
Accidental push instead of going to gerrit.   #!$!#!

This reverts commit 67dc833e46.

Change-Id: I42a7c9dfd0f1a3dd676b1a5d3eee0a900f2561f7
2024-06-30 15:06:44 -04:00
Solomon Peachy
67dc833e46 Toolchains: Update to GCC 8.5.0
All toolchain dependencies are circa the GCC 8.5.0 release:

  GCC 8.5.0, binutils 2.37, gmp 6.2.1, mpfr 4.1.0, mpc 1.2.1, isl 0.18

Native:

 * arm  (smoke tested on ipodvideo+mini2g)
 * mips (seems to be stable on xDuoo X3)
 * m68k (binaries untested)

Hosted:

 * arm (binaries untested)
 * mips (smoke tested on xDuoo X3ii)

Unchanged:

 * Android NDK (unchanged at GCC 4.9.4)

Change-Id: I1c2fca5d87d4a11e50aa495fad75f4f9c938c766
2024-06-30 15:05:08 -04:00
Solomon Peachy
8e280bdda8 configure: Hopefully resolve windows simulator builds issues for hosted targets
Change-Id: If4ded4cb3a19603ea0e5e0b7d3f4c281492dbc8b
2024-06-26 09:43:42 -04:00
Solomon Peachy
c2c8fcb561 updatelang: ignore "same as english" flag when determining suggested voice string
Change-Id: I78d416679c64b837fff29d51e15e1dbd78f9fc0b
2024-06-24 13:21:27 -04:00
Solomon Peachy
8f75b29aed voice.pl: Fix an issue with the piper tts engine
It only arose with the dailybuild scripts.

Change-Id: Iefb0fbab39846df6e52b3860f3d74e6dc9c39305
2024-06-23 19:41:53 -04:00
Solomon Peachy
c862769977 voices: Enable nightly generation of Czech voice files.
It has a higher completion state than some of the others we're already
generating.

Change-Id: I2cbb5f53872449591e3493d83f91dd38047ff14c
2024-06-23 14:06:46 -04:00
Solomon Peachy
d117debca9 voice: Don't touch the voice pool file when we reference it.
...With over 14,000 pool files, it's silly.

Change-Id: Ib615e0813caef0506bed4e53099578dc8e74cacc
2024-06-23 14:06:46 -04:00
Solomon Peachy
6319d71296 builds.pm: Add voices for the Piper TTS engine
This is only used by the nightly voice builds.  Default remains
espeak-ng.

Currently defined but disabled until their translation status improves:

   Spanish (68%)
   Swedish (66%)
   Danish (62%)
   Estonian (19%)

Change-Id: I96cd00b809bedb480392b84fc9546987a1f5a7c4
2024-06-23 13:50:29 -04:00
Solomon Peachy
bb12746972 voice: Make sure we always copy INVALID_VOICE and LANG_NAME clips
If they were in the pool, they'd not be copied out.

Change-Id: If3d7d72656eba18e2df7f7f1307f967494cb4ab6
2024-06-21 16:58:43 -04:00
Solomon Peachy
bd2f5760ab updatelang: More special VOICE_LANG_NAME handling.
If someone submits an incomplete translation without a VOICE_LANG_NAME,
it will add the phrase but with a blank string.  In subsequent runs,
the blank string will be treated as an error.. and copied from English.

Make it so that if it is blank, it stays blank.

Change-Id: Ib4a6645a5a52c9d0ff6dcfd0702c2a507bf8d756
2024-06-20 22:08:30 -04:00