1
0
Fork 0
forked from len0rd/rockbox
Commit graph

2085 commits

Author SHA1 Message Date
Solomon Peachy
cfc02cadcc android: Fix configure script for "newer" versions of the NDK
The oldest verison of the NDK one can still download today is version
10e from mid-2015, which comes with GCC 4.9, and no longer supports
32-bit hosts.

With this, one can actually compile the iBasso DX50/DX90 targets again,
as well as the generic android target, as long as one has the correct
SDK platforms (v16 for ibasso, v19 for generic) and SDK tools installed.

Change-Id: I62f2e742d5cfc13133244aeff75a928a7294ac91
2020-04-13 16:51:58 +02:00
Solomon Peachy
b1d7d897d3 rockboxdev: Remove the ability to build the special cy-ng ypr0 toolchain
We don't actually use it any more; let's not confuse folks with it.

Change-Id: Ic8fbe9bc95495b0969249dc774c5adf2126a2b98
2020-04-13 00:39:01 +02:00
Solomon Peachy
3e0a644b5b build: Fix iHIFI 770c nightly builds. Bad CaPiTaLiZaTiOn.
Change-Id: I921e2e6e1ed8f30e162c6183b9000cc1de3382de
2020-04-12 03:46:06 +02:00
Solomon Peachy
c9ec110b6a voice: Add corrections for 'DAC' and 'ADC'
Change-Id: I9079382926ce19dd7afa50312179987f181855c3
2020-04-10 22:21:08 +02:00
Solomon Peachy
6fcd69a365 hiby_patcher: Mangle the version string in the update payload if necessary
Change-Id: I204837f8a0e56fe51b3ee317be7d9f597b89f877
2020-04-08 05:57:06 +02:00
Solomon Peachy
61847fbf13 build: Update builds.pm with xDuoo X3ii & X20
Better document the file too

Change-Id: I75148785b8ed95d1d6b442b34adee23cccd7da68
2020-04-07 15:17:33 +02:00
Marcin Bukat
180cef835b xDuoo X3II and X20 port
Provided by Roman Stolyarov
Integration, Refactoring, and Upstreaming by Solomon Peachy

X3II confirmed working by forum tester, X20 is nearly identical.

This includes bootloader, main firmware, and the flash image patcher.

Eventual Todo:

 * Further refactor AGPTek Rocker & xduoo hiby bootloaders
 * Further refactor AGPTek Rocker & xduoo hosted platform code

Change-Id: I34a674051d368efcc75d1d18c725971fe46c3eee
2020-04-06 18:15:41 +02:00
Solomon Peachy
0efa73f0ec tools: Add a tool that patches Hiby_player-derived firmware images.
Confirmed to work on the AGPTek Rocker and xDuoo X3ii targets!

Change-Id: I721c62b88b28282d1c85fd33e49262265cd2d6a5
2020-04-05 18:18:03 +02:00
Solomon Peachy
00c0d2012f rockboxdev: Store toolchain patches in-tree, instead of downloading them
This frees us from having to keep the web site in sync.

Note that only currently-referenced patches were kept.

Change-Id: I50da1b75baeac214cf142c8b76a05a8c56b4c1d4
2020-04-04 21:56:30 +02:00
Solomon Peachy
74ab8d1490 toolchain: Parallelize the toolchain build if possible
Let's actually use those newfangled multicore processors!

Change-Id: Idfc21f10d634b969c49e7f22ab723e48951db0f0
2020-04-03 09:04:20 +02:00
Solomon Peachy
5fa6acf39f FS#13184: Support 2048 byte sectors and images without bootloader in ipod_fw
(From Stefan Ott)

I wrote a little patch for ipod_fw.c that allows me to create bootable
images for the iPod video without using any external software.

The patch adds two new options:

- The -s option can now be used to specify the sector size in blocks (typically 512 or 2048) when generating an image.
- The -n option can be used to create an image without a boot loader

Change-Id: I35ebcd19ba1491bba76dfc8011e5a856108bb9ad
2020-03-29 18:48:09 +02:00
Franklin Wei
54e7eaf8fc Bump versions for 3.15.
Change-Id: Iecea72d420ded89023798e6d613cba1413adec73
2019-11-15 01:25:26 +01:00
Franklin Wei
ec8b3d3147 Add some scripts to automate target listing and generating build-info
This adds tools/list_targets.pl and tools/build-info.pl. list_targets does
exactly what it sounds like - it lists targets by target status. build-info
automates the generation of build-info.release for new releases.

Change-Id: I4c859fdeb54c8cc645832a7c4192f9d18590031e
2019-10-30 23:56:05 -04:00
Franklin Wei
f72b9082c6 Promote ipod6g to stable.
Manual is done and rbutil support is merged.

Change-Id: I27d8dcb88782a5c7f9ad08d17c8521be8dfe58af
2019-10-28 00:09:35 -04:00
Franklin Wei
370f9fa018 builds.pm: Note that last Recorder build was 3.13
We didn't build for the Recorder when doing 3.14.

Change-Id: I141cba5d821a86b5aa84217d8b011e2112282ff0
2019-10-28 00:09:35 -04:00
William Wilgus
90118f14cf lua add demo scripts, atexit handler, gui_scrollbar_draw
Change-Id: Ie8794e8a487f73952dae43e036787b6972fdbbee
2019-07-29 02:51:29 -05:00
Franklin Wei
c5ed45d8c7 docker-rbclient: update README
Change-Id: If7c3565147f1092e3104d7f08e705aaaf6aafd5d
2019-07-28 15:39:25 -04:00
Franklin Wei
e499b75117 docker-rbclient: whitespace fix
Gerrit's web editor can't be trusted.

Change-Id: I0dd4a6ab2f8e3600fb37e9806adf6c067feea9ed
2019-07-28 15:34:05 -04:00
Franklin Wei
02a6985799 Add build code for Docker development environment
This simplifies the tedious task of building all the Rockbox
toolchains manually by providing a build code for a Docker container
image. It's useful for quickly spinning up a build client with just a
couple commands and no waiting to compile (though downloading takes a
little while).

I've built an image as built1n/rbclient on Docker Hub.

All toolchains (even the weird ones) are included, except android16.

Change-Id: I6b863628ffb397604f59ec6def2f8bb8c8c7185f
2019-07-28 21:13:56 +02:00
Vencislav Atanasov
7f9fc20afa Use full_path_subst on more places, to avoid replacing the wrong occurrences in
paths.

If ROOTDIR=/rockbox and BUILDDIR=/rockbox/build-something, it is now possible to
successfully build both target binaries and simulators.

Change-Id: If12d1d5933c5a15feebf627a4f1636dc1e3a67fa
2019-07-28 21:00:57 +02:00
Vencislav Atanasov
321de68b21 Add Vagrant configuration for creating a development VM
Vagrant is an application that automates creation and provisioning of a virtual
machine for development. The config here creates an Ubuntu 16.04 LTS machine,
updates it, downloads and installs the toolchains for sh, m68k and arm,
mingw-w64, SDL (for Windows simulators) and other packages needed for building
Rockbox.

It works fine for building a Windows simulator and compiling iPod classic
binaries. It should be possible to make the other build types, too.

MIPS toolchain fails to build, ARM-APP is not tested because the files download
very slow on my connection. Please test if it works for you, and let me know.

Quick start: download and install Vagrant and VirtualBox for your operating
system, make sure VT-x / AMD-V is enabled in your BIOS/EFI setup, open a
shell in rockbox/tools and input the command "vagrant up"

Change-Id: Ief5476ab066663a4db7e85404b25d2d781d90532
2019-07-26 20:20:07 -04:00
Solomon Peachy
3cb272c97a build: Fix puzzles build due to missing dependency
As rbcompat.h is -include'd on the command line, the mkdep script doesn't
pick it up.  Explicitly add the dependency to lang_enum.h to the makefile.

Also add lang_enum.h to the 'make clean' target!

Change-Id: I33c8ed0cd5c1d44dce02ac9285469c0e4feac00e
2019-07-20 10:06:12 -04:00
William Wilgus
14d91cafca Fix Red - Talk support for plugins
generate lang_enum prior to apps

Change-Id: Ib484138e2b01267db856415db0364d8c93237073
2019-07-20 05:47:51 -05:00
Solomon Peachy
55eb1c54eb FS#7704 - Talk support for plugins
Original patch by Mario Lang
Heavily updated by Igor Poretsky
Further updated by myself

  This patch breaks binary API compatibility by placing the new
  functions where they make the most logical sense. IMO this is
  the better approach to take given the scope of the changes needed
  for talk support.

  Since binary API is changing, the patch also moves some other
  functions around to more logical locations.

  As well as voice support in plugins, this patch voice-enables several
  simple plugins.  There will be follow-up patches for many plugins that
  build on this one.

Change-Id: I18070c06e77e8a3c016c2eb6b6c5dbe6633b9b54
2019-07-20 08:48:35 +02:00
Frank Gevaerts
b0de98ad3b Put -lfirmware in CORE_LIBS, to fix -thumb builds
For unknown reasons, -thumb builds need -lfirmware after -lrbcodec (but
still before -lunwarminder)i. Other builds are still happy if we do that.
Including it via CORE_LIBS instead of explicitly achieves that.

Change-Id: Id69e4a0c042f90f71cfd9a72202ce4d8ef6a4181
2019-07-19 15:16:37 +02:00
Franklin Wei
7b118eccac configure: add --32-bit option to build a 32-bit simulator/application
I use this to test duke3d in the sim, because it does some nasty pointer
arithmetic with 32-bit ints.

Should be useful for other things as well.

Change-Id: I807c81b32c61538de9edc3fca77fde193dc4e617
2019-06-17 23:11:25 -04:00
Solomon Peachy
1b2fd8918f Fix a capitalization typo in the ihifi770c configure target name.
Change-Id: Iccdb109329cec2de477e1f96f30335dbdea535ad
2019-01-02 16:50:05 +01:00
Solomon Peachy
d4942cc74c Add Xuelin iHIFI 770/770C/800 support
Taken from the xvortex fork (Roman Stolyarov)
Ported, rebased, and cleaned up by myself.

Change-Id: I7b2bca2d29502f2e4544e42f3d122786dd4b7978
2019-01-02 08:10:01 -05:00
Solomon Peachy
4c933a1d01 build: Properly generate build dependency for autogenerated bitmap .h files
* bmp2rb generated a .h file that rockbox .c files used.
 * .h files in .c files were used to generate dependency graphs for make
 * When Make saw the .h file for the bitmap, it didn't know how what
   to do with them
 * Only arose in parallel builds

Fixed this by adding explicit dependencies for the .h files as part of
the existing 'bmpdepfile' function.

Solves the Xduoo X3 bootloader build failure that I could trigger 100%
of the time by using 'make -j8'

Change-Id: I6b3e78dde26c820a3b6c7c286e7d6c981b8e01fc
2018-12-25 11:54:11 -05:00
Solomon Peachy
e598ba13f5 Support using 'rbspeak' to generate voice files.
(Full credit to Igor Poretsky)

Change-Id: Ib9c5d2748cd7e0543b7fd110e83b4656089254b8
2018-12-22 20:27:39 -05:00
William Wilgus
4055f90f08 Fix host build for newer linux distros
I realized there was a better way to do this..

Instead of specifying a path just have gcc run the preprocessor (-E) on
an input file consisting of only '#include <byteswap.h>' if it succeeds
then we can use it if not then don't define OS_USE_BYTESWAP_H

Change-Id: I0de8e469445221bc1b5ad8cc032de5b89a85ab66
2018-12-10 01:36:33 -06:00
William Wilgus
0f5f5c3390 Fix Sim & checkwps for newer distros
__builtin found fix for rbendian.h
tools/configure defines SIM_USE_BYTESWAP_H if byteswap.h is found in
/usr/include/ maybe there is a better mechanism for this

Change-Id: I4d004e68313e8b32aa5587582be36bc459fdaf6b
2018-12-08 03:19:14 -06:00
William Wilgus
9450689483 Fix Sim for newer distros
__builtin found fix for rbendian.h
tools/configure defines SIM_USE_BYTESWAP_H if byteswap.h is found in
/usr/include/ maybe there is a better mechanism for this

genshortcut.sh is a simple script to make .desktop shortcut files
several newer distros don't allow you to run the simulator from the
file manager, this or perhaps a different method can probably be
included while building a sim at a later date.

for now it can be run manually like so:
similar to ../tools/configure
run from your simulator folder
../tools/genshortcut.sh exepath shortname icon
ex. ../tools/genshortcut.sh ./rockboxui clip+sim music-app

Change-Id: Ia05d3a9349b27c5968a4a7a68b2eb480e60faec3
2018-12-07 21:04:30 +01:00
Solomon Peachy
fa8760705c speech: additional correction rules for acronyms etc.
Taken from Igor Poretsky's tree.

Change-Id: I339c3524916aebb71b6f81727c60ea1c7324e5eb
2018-11-10 01:39:46 +01:00
Solomon Peachy
ebaddc671e build: Log the zipfile creation
Change-Id: I7d5b923cfe6bc133a1b2ac39b39bbe07e327d9cd
2018-09-28 11:53:15 -04:00
Solomon Peachy
3e209f34e4 misc: Fix some assorted compiler warnings
Change-Id: Ibc4aac79e6fce92ad4414ed50122c2d4d6295f89
2018-09-28 11:53:15 -04:00
Franklin Wei
e9bdb4b028 Fix syntax error in builds.pm
This should fix the build system.

Change-Id: I7af7628083cf20aa85278dfa3fee70a0ccb2dcc3
2018-07-29 12:05:16 -04:00
Michael Giacomelli
3e91ad5df2 Fix download link for the MIPS toolchain. 2018-07-28 10:56:31 -04:00
Solomon Peachy
0662793ca0 Add cleaned-up xDuoo X3 support
Cleaned up, rebased, and forward-ported from the xvortex fork.

(original credit to vsoftster@gmail.com)

Change-Id: Ibcc023a0271ea81e901450a88317708c2683236d
Signed-off-by: Solomon Peachy <pizza@shaftnet.org>
2018-07-28 10:56:31 -04:00
Amaury Pouly
b3e2bd619b Update MIPS toolchain to GCC 4.9.4 and binutils 2.26.1, update configure
Change-Id: I4d3dad4521bdf0b0d6ee5d1635ddbf57483d2b42
2018-07-28 10:56:31 -04:00
Marcin Bukat
20bdfa8209 Agptek Rocker: Add to builds.pm
Change-Id: I512dc1d5419d4e59a3dd2503ce9da0a826975af1
2018-06-14 11:29:02 +02:00
Marcin Bukat
203e4adb1e Agptek Rocker: Slightly tweak build procedure
In bootloader build create stripped binary bootloader.rocker

Change-Id: Id67bebe82251fac22ad905ad3d49525691816746
2018-06-14 11:02:18 +02:00
Marcin Bukat
419219e06d Agptek Rocker: Update tools to alter .upt update images
Change all references to official rockbox repository

Change-Id: I22d305bc6c6f89b8737b2bc15378bfd7fe10621e
2018-06-13 13:30:34 +02:00
Marcin Bukat
f4390794ef bmp2rb: Add XRGB 32bit native format
Change-Id: Ic4af5a7c53c032e58dc252d1f69001d7aafd7f26
2018-06-12 12:55:56 +02:00
Marcin Bukat
fbb6a2ff6d Agptek Rocker: Build plugins
Patch provided by Aapo Tahkola.

Change-Id: I37a42a950d78d6b8aa3927ec7aeb30030f7be7a5
2018-06-12 10:31:15 +02:00
Marcin Bukat
0538ba3d59 Agptek Rocker: Restrict root directory to SD only
Actual / of underlying linux OS should not be available to user.
I am still not sure if implementation is correct. It doesn't
perform any relative path sandboxing for example.

Change-Id: Ic577a10f3947f6e950e2c4d03173f9f207395eb7
2018-06-12 10:31:15 +02:00
Marcin Bukat
09fde79ec8 Agptek Rocker: Add tools to work with OF update images
Original firmware update is provided as .upt file. This file
is actually ISO9660 image containing uBoot, kernel image and
UBIFS rootfs and additional control files. Installing
bootloader means patching UBIFS rootfs image.

Change-Id: Ica86d1189dc1d5f3131d2035d8b87c8d08ec36b5
2018-06-12 10:31:14 +02:00
Marcin Bukat
d55680993d Agptek Rocker: Initial commit
Change-Id: I26b51106c7b1c36a603fba6d521e917d79b5a95b
2018-06-12 10:31:14 +02:00
Marcin Bukat
beef52c5f0 mipsel-rockbox-linux toolchain build fix
If we use mips-rockbox-linux target resulting toolchain is
big endian. If we use mipsel-rockbox-linux build fail since
linux doesn't have separate archs for BE and LE mips. So we
tweak arch passed to linux-headers stage to fix this.

Change-Id: Iccae529998d1cd8f3429fa3b2ca4f030122f23bb
2018-06-12 10:31:03 +02:00
Amaury Pouly
1b2faea677 Add generic linux MIPS toolchain
Change-Id: I9f8927e348421bd8592d62eb61f6acf324d5f3a4
2018-06-12 10:31:03 +02:00