Commit graph

2137 commits

Author SHA1 Message Date
Michael Sevakis
29f5385263 Fix up some more red
find_first_set_bit() becomes a small inline on ARMv5+ and checkwps now gets
made with -std=gnu99 (it eats all the GCCOPTS) like the rest of things.

Change-Id: Ie6039b17fec057a3dcb0f453d8fd5efac984df89
2014-08-05 21:32:13 -04:00
Frank Gevaerts
78f4f7b621 Make crosstool-ng build with gnu make 4.0
Change-Id: Id3a5a310e6fa53e690c92f420994875cb1bfff43
2014-07-30 14:29:27 +02:00
Amaury Pouly
e08331eef4 zen/zenxfi/zenxfistyle/zenmozaic: implement plugin keymaps and enable plugins
Plugins on the ZEN/ZEN X-Fi require to increase the plugin buffer size.

Change-Id: If4651c87b402060faa24530985c6e871379c8ea1
2014-07-17 10:40:17 +02:00
Nils Stec
c9816f57bf Introduce plugin keymaps for the Sony NWZ Series
Change-Id: I46b8766bd44118bce4931b7ee71815ae5f51cb2e
Reviewed-on: http://gerrit.rockbox.org/879
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2014-06-30 21:20:15 +02:00
Amaury Pouly
d5591a2b28 zen/zenxfi: switch lcd driver to 24-bit mode
Change-Id: I2c42f0e422130bcdaf1aaf92c7b56776752f4f64
2014-06-24 18:07:55 +02:00
Thomas Martitz
cd4fb9ee79 fix sdlapp and ypr0 builds
Change-Id: I3953350c04607691b427fc2a3b00e8ae08bcea45
2014-06-23 23:47:25 +02:00
Thomas Martitz
dbb76896ec lcd-24bit: fix up previous commit a1842c0
* e200v2 shouldn't use 24bit (was just for testing)
* samsung ypr0/ypr1 should enable it but the correct number must be passed to bmp2rb

Change-Id: Ia91b0ff80a54265d4c3111d9dcb8e7b9dd12b5d4
2014-06-21 00:20:24 +02:00
Thomas Martitz
a1842c04f9 lcd-24bit: Introduce a 24-bit mid-level LCD driver
With LCD driver all calculation will be performed on RGB888 and the hardware/OS
can display from our 24bit framebuffer.

It is not yet as performance optimized as the existing drivers but should be
good enough.The vast number of small changes is due to the fact that
fb_data can be a struct type now, while most of the code expected a scalar type.

lcd-as-memframe ASM code does not work with 24bit currently so the with 24bit
it enforces the generic C code.

All plugins are ported over. Except for rockpaint. It uses so much memory that
it wouldnt fit into the 512k plugin buffer anymore (patches welcome).

Change-Id: Ibb1964545028ce0d8ff9833ccc3ab66be3ee0754
2014-06-21 00:15:53 +02:00
David Jilke
d489444119 Complete Plugin Keymaps for Creative Zen X-Fi3
This patch completes the plugin keymaps for the Zen X-Fi3 and enables those plugins for compilation.
One key was changed in "button-target.h" for compatibility with Rockboy.
This also caused the changes to "keymap-zenxfi3.c", to keep the stock functionality (no further changes in here).

Change-Id: Ic222faf89e9a9a2332a49d6e532cedb6eb16d3d7
Reviewed-on: http://gerrit.rockbox.org/762
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2014-04-06 20:51:12 +02:00
Szymon Dziok
173d9c6750 enable compiling of Sansa View
Change-Id: I3dda438cabf2a8f5f3ff5fed1ae16d0793341685
2014-03-27 21:47:35 +00:00
Dominik Riebeling
258e4ad850 OS X: detect clang and build for x86 target only.
Newer versions of Xcode / OS X don't support PPC code anymore and replace gcc
with clang. When clang is detected assume we want to build for the default
architecture only and change the minimum OS X version to 10.5.

Change-Id: I5843fa9bb3d957ec6f0a537e857608ad99c31517
2014-03-20 22:26:24 +01:00
Thomas Martitz
6499ce3e44 android: Get the port up and running again
The build system needed fixes because the tools paths changed and one tool that
we used (apkbuilder) was removed entirely. Recent NDKs don't ship gcc 4.4.3
anymore, therefore switch to 4.6. The code itself needed a fix for a jni
reference bug that was uncovered by KitKat.

The port now builds with latest sdk (r22) and ndk (r9d).

Change-Id: Id74fa54ba93bbb0ee30373fbe79e92c5ff03201d
2014-03-09 18:11:35 +01:00
Thomas Martitz
c245de029d Fix various reds. Some includes needed fixup.
Change-Id: I4327740bae17054131feb917abdd58846c451988
2014-03-03 19:10:48 +01:00
Thomas Martitz
46137ebd4d simulator: Fully simulate external storage.
The external storage will be created during make install, as simext folder in
the build directory. Upon pressing the e key the sim will mount (virtually
) this into the root directory. It can be accessed in the same way as an
sd/mmc card on real targets. This requires quite some path trickery in io.c.

Change-Id: I2fa9070a3146101ec5655b5b4115ca349d1d4bf4
2014-02-23 20:23:52 +01:00
Thomas Martitz
0f928f8785 RaaA: Move directory related stuff from filesystem-unix.c into rbpaths.c.
Part of this change is to align sdlapp builds to other application targets
in that the sim_* wrappers are not used anymore (except for sim_read/write).
Path mangling is now done in rbpaths.c as well.

Change-Id: I9726da73b50a83d9e1a1840288de16ec01ea029d
2014-02-23 20:23:52 +01:00
Frank Gevaerts
e32ace831a Disable rombox on the Player.
No more Archos rombox left...

Change-Id: I7de15b1ce1fabdb19ba7b0b69e0b7799664d8413
2014-02-05 19:50:47 +01:00
Lorenzo Miori
e876f4df6d Samsung YP-R1 target port
This is the basic port to the new target Samsung
YP-R1, which runs on a similar platform as YP-R0.
Port is usable, although there are still
some optimizations that have to be done.

Change-Id: If83a8e386369e413581753780c159026d9e41f04
2014-02-05 09:56:21 +01:00
Nick Peskett
e1da541749 Option to use the lighter hinting algorithm (FT_LOAD_TARGET_LIGHT).
I've found this algorithm produces clearer results when rendering
some fonts at small point sizes.

Change-Id: If87d82731ad324405195b25baad78fe54e92c142
Reviewed-on: http://gerrit.rockbox.org/412
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
Tested: Purling Nayuki <cyq.yzfl@gmail.com>
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
2014-01-26 16:11:05 +01:00
Thomas Martitz
77ee2851de Fix warnings. convbdf needed to be updated for the changed font struct because it generates sysfont.c.
Change-Id: Id5aea6b6c73438242a80ae6849ee5e29ab8659dc
2014-01-26 15:02:11 +01:00
Amaury Pouly
69d0dae55b Initial commit for the ZEN X-Fi Style
Change-Id: Ib25a357a7bafd2ef25f273cadff70fafbd8d4661
2014-01-21 18:52:28 +01:00
Thomas Martitz
9d26619465 Workarund GCC bug #52991 regarding packet attribute.
According to http://http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52991, since
mingw-gcc 4.7.1 -mms-bitfields is on by default, and this option breaks the
packet attribute since around 4.2.0.

We haven't set this option so I'm assuming we don't need it. Therefore a
workaround in configure can make things work again, because we rely on
the packet attribute in quite a few places.

Change-Id: I8367c16594cecfdde97c548e04607deaa92e21de
2014-01-17 11:14:47 +01:00
Marcin Bukat
a02f863eef coldfire: Use single app.lds script for all coldfires.
The only true difference in this platform is the amount of iram
between MCF5249 and MCF5250. Instead of duplicating the file
simply use one with proper ifdefs.

Change-Id: Ifd56ebd2666813633502e3b5d83669424659c039
Reviewed-on: http://gerrit.rockbox.org/713
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
2014-01-15 21:15:14 +01:00
Szymon Dziok
feff021173 Make the m:robe 100 stable again.
Change-Id: If170b0b5f7035b02d59418c201d006805546e724
2014-01-13 21:46:57 +01:00
Andrew Ryabinin
9dbdec14f0 creativezenv: change target_id & MODEL_NUMBER.
85 is already used by HIFI E.T. MA8C.

Change-Id: I7f30d6b1acbebd6152d11fa46ec87d95e6a809e7
Reviewed-on: http://gerrit.rockbox.org/703
Reviewed-by: Purling Nayuki <cyq.yzfl@gmail.com>
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2014-01-02 13:35:05 +01:00
Andrew Ryabinin
5b5f0755d6 Introduce IHIFI760/960 targets.
Change-Id: Ie36e48742c0ed9aa3fd6f49aa034a11d2492327c
2013-12-16 00:45:18 +04:00
Lorenzo Miori
1deab73980 Initial commit for the YP-Z5 port
The port uses the imx233 soc, it's a STMP3650 based Samsung player

Change-Id: I50b6d7e77fd292fab5ed26de87853cd5aaf9eaa4
Reviewed-on: http://gerrit.rockbox.org/490
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2013-12-02 20:48:21 +01:00
Amaury Pouly
977a6c3ce7 Initial commit for the Creative ZEN V
Change-Id: I3408cfdf742ea5995d5c87bf76653f436e1ec2b0
2013-11-18 21:44:06 +00:00
Amaury Pouly
a8b816ae9c creativezenmozaic: factor out code with the zen/zenxfi
Most of the code is similar, only the lcd driver is significantly different.

Change-Id: I9eab1faf08d2356f2d820d6930ef3b0653349aa1
2013-11-18 21:44:05 +00:00
Amaury Pouly
457d64fcb8 sims.pl: add a few unusable targets
Change-Id: I97ab208446c3df5327aa287edb5940aa59908260
2013-11-13 21:37:52 +00:00
Amaury Pouly
776d51c1da configure: change E370 to E370/E380
Change-Id: I55e00f53bd8c7704b5c3fe5db0b716f980504887
2013-11-13 21:37:52 +00:00
Amaury Pouly
6bff0f779f Add Creative Zen, X-Fi and Mozaic to builds.pm
Change-Id: I67664ec7315038ff602dd492b06ce4867421b60b
2013-11-12 16:24:20 +00:00
Ralf Ertzinger
b170c73f92 Updated IAP commands.
Originally written and uploaded by Lalufu (Ralf Ertzinger) in Feb 2012.
They have been condensed into a single patch and some further additions
by Andy Potter.

Currently includes Authentication V2 support from iPod to Accessory,
RF/BlueTooth transmitter support, selecting a playlist and selecting a
track from the current playlist. Does not support uploading Album Art
or podcasts. Has been tested on the following iPods,
4th Gen Grayscale, 4th Gen Color/Photo, Mini 2nd Gen, Nano 1st Gen and
Video 5.5Gen.

Change-Id: Ie8fc098361844132f0228ecbe3c48da948726f5e
Co-Authored by: Andy Potter <liveboxandy@gmail.com>
Reviewed-on: http://gerrit.rockbox.org/533
Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
2013-11-10 18:41:24 +01:00
Andrew Ryabinin
a7fa7b902e builds.pm: Add HiFi E.T. MA9C/MA8/MA8C. 2013-11-05 13:34:52 +04:00
Andrew Ryabinin
3a97e12fc5 Introduce HiFi E.T. MA8/MA8C ports.
HiFi E.T. MA8 is almost the same as MA9 except
another DAC(pcm1792 in ma8, df1704 in ma9).

MA8 has ILI9342 lcd, MA8C has ILI9342C lcd.

Change-Id: If2ac04f5a3382590b2a392c46286559f54b2ed6a
2013-11-05 09:59:45 +04:00
Andrew Ryabinin
d602717735 Introduce HiFi E.T. MA9C port.
The only difference between this target and HiFi E.T. MA9
is display driver (ILI9342 in MA9 and ILI9342c in MA9C)

Change-Id: Icc3d2490f850902a653175360f12283f3708bbb7
2013-11-05 09:59:45 +04:00
Amaury Pouly
5cfb148ae2 tools/configure: add the Creative targets to selector
Change-Id: I74c7c3cfea95350b88155c2d6d1111c84172b39d
2013-10-22 00:42:36 +02:00
Amaury Pouly
3d3f419b1a tools/scramble: document zen/xzfi/zmoz targets
Change-Id: I9b48d22968b7632ef88d9dd598ff65fd448c3dcc
2013-10-22 00:34:45 +02:00
Amaury Pouly
a0728672bf Initial commit for the Creative ZEN and ZEN X-Fi
Change-Id: Ibd7b1b0b957ef11c200cb63eff7da53f11774748
2013-10-22 00:34:45 +02:00
Amaury Pouly
d3bc64833c Initial commit for the Creative ZEN Mozaic
Change-Id: Ib65aad9f5de37e514047955cad7ca40dc0af4f74
2013-10-22 00:34:44 +02:00
Amaury Pouly
4da8a441d1 tools/scramble: add support for a couple more Creative devices
This is mostly for consistency, this tool will be unused by the newer targets.
Also update the usage() display to mention -no-ciff

Change-Id: I4500f5fdce771ad3c53701a0bbaace916e88759d
2013-10-22 00:34:35 +02:00
Amaury Pouly
0ff8ce764e tools/mkzenboot: compile in C99 mode
Change-Id: I580ffb3af71846213c0ffc18ead4e51a72ba1475
2013-10-22 00:17:06 +02:00
Frank Gevaerts
110e094db5 Switch back to kernel.org.
kernel.org is back, and nic.funet.fi is being difficult, so it's time
to switch back.

Change-Id: If981dedd0cb7bb64de7563de6657f63ebb931a6f
2013-10-20 21:14:57 +02:00
Michael Rodger
6845f6c396 Include 60s timeout for wget commands in rockboxdev.sh
Added a 60s timeout to the script to avoid having to wait for ages when a download stalls.

Change-Id: I97f0aafe4eac0fb3cfc83805c99d19f1ef02b9f9
Reviewed-on: http://gerrit.rockbox.org/636
Reviewed-by: Kevin Zheng <kevinz5000@gmail.com>
Tested-by: Michael Rodger <rockbox@atinyhedgehog.za.net>
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2013-10-19 13:06:04 +02:00
Kevin Zheng
513914c347 Do not compile with "-ldl" on FreeBSD.
The dynmaic library support provided in dlfcn.h does not require
additional linker flags on FreeBSD. It is provided with the standard C
library and will fail to link if "-ldl" is specified.

Change-Id: I9f21d8369d45a9be94129a1b37b4607adf673c57
Reviewed-on: http://gerrit.rockbox.org/637
Tested-by: Kevin Zheng <kevinz5000@gmail.com>
Reviewed-by: Michael Giacomelli <giac2000@hotmail.com>
2013-10-18 03:40:01 +02:00
Amaury Pouly
2e0a3fc5ce Add a few targerts to builds.pm
Change-Id: I6c2e139cf55c7bd07e6327abbc9dd93e5bdb6e21
Reviewed-on: http://gerrit.rockbox.org/631
Reviewed-by: Amaury Pouly <amaury.pouly@gmail.com>
2013-10-02 17:30:23 +02:00
Lorenzo Miori
5ab4e90ac4 fwpatcher/rbutil - added support for H300 v1.31K
Change-Id: I4e0801f136f9b9e490209c0808eabfc334f46643
Reviewed-on: http://gerrit.rockbox.org/630
Reviewed-by: Marcin Bukat <marcin.bukat@gmail.com>
Tested-by: Marcin Bukat <marcin.bukat@gmail.com>
2013-10-01 14:01:15 +02:00
Amaury Pouly
310e7b4943 Add some unstable targest to "sim release"
Change-Id: Ie8e3848063dc49004fa68719e031a4950f059033
2013-09-29 22:02:06 +02:00
Lorenzo Miori
9a8ed6ba35 Simulator for Samsung YP-R0
Enable simulator for the target ypr0 to
be built and used.

Change-Id: I1b080f07ab90f5c4856881d08ad70e1053bbb0c0
Reviewed-on: http://gerrit.rockbox.org/618
Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
2013-09-29 14:15:48 +02:00
Amaury Pouly
9392d036c4 Initial commit for the sony NWZ-E360 and NWZ-E370
Change-Id: I52d21e136a98eaf481615d641795cf7ecf325465
2013-09-25 14:31:39 +02:00
Thomas Martitz
0e8fa703bb bmp2rb: Data was written with an incorrect offset.
Change-Id: I460872f05f80e28be312de5c93d54c7c6e36fbd7
2013-09-08 12:52:48 +02:00
Thomas Martitz
cb27d4066a bmp2rb: Fix incorrect left-over comment
Change-Id: I29c6403cec1aa228f6730c8b78c830a23d021d95
2013-09-07 11:17:41 +02:00
Thomas Martitz
cd741b7c7e bmp2rb: Support generating 24bit BMP raw data.
This will be required by the R0 port. Generating C source with 24bit data is
not supported yet because Rockbox doesn't support this depth yet (and has no
data type for it).

Change-Id: I6474a6d32bb7942661bac833bb3348073335e25c
2013-09-07 11:00:16 +02:00
Amaury Pouly
48ccea96f2 tools: fix scramble usage()
For some weird reason the fuze+ is not in the list ?!

Change-Id: Ibe493475e4187021310ca153930489787c359745
2013-08-06 21:24:38 +02:00
Michael Sevakis
1329cc29de Fix .ncbss from possibly overlapping .ncdata in plugins/codecs.
(Take #2)

If .bss wasn't large enough, and .ncdata was empty, .ncbss would be
at an address overlapping the alignment-padded end of .ncdata and
and linking would fail with an overlap error.

Adds plugin load end address that accounts for IRAM going past
the final .bss sections, making IRAM overlay compatible. load_code
could also use this instead of the file size.

The .lds becomes a bit more straightforward and explicit when
assigning addresses.

Change-Id: Id0c33f257710e97ece2c831e0feaaa32c1a14e05
2013-07-11 04:32:23 -04:00
Nils Wallménius
084c75e5f9 Fix building of sh, arm and m68k toolchains with new texinfo
Recent versions of texinfo breaks various binutils and GCC
builds. For GCC setting MAKEINFO=missing at configure time works
but not for binutils where patches are used to fix parsing errors.
This also makes rockboxdev.sh handle applying multiple patches.

Change-Id: Ia8e6dc7662ab725490e4b4428676d235f0bd38bb
Reviewed-on: http://gerrit.rockbox.org/471
Reviewed-by: Nils Wallménius <nils@rockbox.org>
2013-06-15 21:01:26 +02:00
Rafaël Carré
b4ca244af2 Always build test plugins in simulators
Change-Id: I13094bfbed9fe05a48b4e81759978d112e19f48b
2013-06-13 18:42:29 +02:00
Dominik Riebeling
43d8d6fece Don't pass ar output to /dev/null.
Since ar is not running in verbose mode there is normally no output to get rid
of, and in case of errors it's useful to see them. Also, Windows doesn't know
about /dev/null.
Make dependency generation for librbspeex more silent as well.

Change-Id: Ie0d4a406e665ebd67331d6cd1fa2fc02f8bf21b9
2013-06-09 16:54:59 +02:00
Andrew Ryabinin
fc0cf8d91b builds.pm: Add HiFi E.T MA9.
Change-Id: Ic8d31244c4ddc3924d889d0cb0d444844a1bb345
2013-05-18 18:57:16 +04:00
Dominik Riebeling
4877f618d6 Rework rbspeex dependency generation to use single dependency files.
Similar as done in d2b8f91 change dependency generation to use one file per
source file. This removes the need to have external tools installed on Windows.
Previously Cygwin or msys tools needed to be in the system PATH which was
problematic at times.

This means that now building on Windows (using MinGW) doesn't require
additional tools anymore.

Change-Id: I4c0675e99c3cc3a729b91beefd58320db498ae0a
2013-05-11 20:34:12 +02:00
Dominik Riebeling
9a9efefdb2 ucl: Replace use of uname by checking the compiler output.
Similar as done for libtools.make ask the compiler for the binary it creates
instead of using uname to figure the target to avoid special handling when
cross compiling.

Change-Id: Icb4654616e4339bf9e6e3be5177b35e0bb313bcd
2013-05-11 20:34:12 +02:00
Dominik Riebeling
4f3fa9accb Change mkdir -p to work on Windows.
Windows mkdir doesn't know about the -p option and requires paths to use \ as
path separator. Try to detect when building on Windows and use the Windows
internal function instead of relying on a compatible mkdir in the path.

Change-Id: I47d47d45edeb38c672321f77d6e91268bf744dba
2013-05-11 20:34:12 +02:00
Dominik Riebeling
5c3e190e8a Remove leftover debugging warning.
Change-Id: Icb7d2de4284c1db5766f0039e5546b8956ef5afa
2013-05-06 23:27:28 +02:00
Andrew Ryabinin
fa4e1baa83 Introduce HiFi E.T MA9 port.
Change-Id: I79aadc958fd5222f26f91ed127f8c6fb2c465dc2
2013-05-06 14:09:24 +04:00
Dominik Riebeling
736c3780f1 Change the order of global linker options and -T.
95e23de made -Wl,--gc-sections appear after -T by combining it with the global
linker options. Moving the global linker options in front of -T seems to fix
the crash observed on mini2g after that change -- as it seems the linker
behaves differently if --gc-sections is passed after -T.

Fixes FS#12857.

Change-Id: Id64dc6b91726760d75a1a0cd85bb7c06208d2f45
2013-05-04 22:25:24 +02:00
Dominik Riebeling
d964199cc7 Replace use of uname by checking the compiler output.
Similar as done in ea0bfe7 ask the compiler for the binary it creates instead
of using uname to figure the target.

Simplify source file preprocessing to avoid using grep to improve compatibility
with Windows.

Change-Id: I39ecfe690c9bb70b07b0af5a7804d7e5ab512d71
2013-05-04 21:41:50 +02:00
Bryan Childs
1489fa3a15 Adapt logic in configure script to cope with both x86 and x86_64 architecture Android NDKs
Change-Id: I520443a17f1d9ced43222e14182ca4726717bc32
Reviewed-on: http://gerrit.rockbox.org/458
Reviewed-by: Frank Gevaerts <frank@gevaerts.be>
Tested-by: Frank Gevaerts <frank@gevaerts.be>
2013-04-26 21:42:15 +02:00
Michael Sevakis
95e23defb0 Make fixepoint.c as a shared library (libfixedpoint.a).
Change-Id: Icc10d6e85f890c432f191233a4d64e09f00be43d
Reviewed-on: http://gerrit.rockbox.org/456
Reviewed-by: Michael Sevakis <jethead71@rockbox.org>
Tested-by: Michael Sevakis <jethead71@rockbox.org>
2013-04-26 00:11:04 +02:00
Dominik Riebeling
7271ff603d Add ANDROID_SDK_PATH and ANDROID_NDK_PATH to generated Makefile.
Previously it was sufficient to set those variables when running configure.
Since ANDROID_NDK_PATH is now also used in the Android Makefile set both
variables in the generated Makefile as well -- not everyone has (or wants) to
set them globally in the environment.

Change-Id: Ib64ffeea379c58c9d361b3fbfefb67084dce666c
2013-04-04 22:42:22 +02:00
Thomas Martitz
0d5883d07a autoconf.pl: Add support for build folders with screen resolution (e.g. build-android-320x480).
Change-Id: If2ab767f44db604177a0028e86100633631ca8b8
2013-03-16 22:30:46 +01:00
Dominik Riebeling
962368571e Don't include unwarminder for checkwps, database and warble.
If the host is ARM simply checking the architecture the compiler produces
binaries for will include unwarminder even for the PC tools, breaking them.

Fixes building checkwps and database on ARM hosts. Doesn't fix warble, there
are additional problems with that.

Change-Id: I135b1103a60b9e3720117cde1075b7d73424f384
2013-03-13 21:53:11 +01:00
Alex Parker
dfd54d5295 Update for 3.13
Change-Id: Iba0860682834a9389196276662f8ce67c18312d6
2013-03-07 18:39:53 +00:00
Lorenzo Miori
60592165ca Samsung YP-R0 hosted target code refactoring
As per title this patch aims at splitting common target
code and specific target code in a better way to
support future ports within the same environment
(e.g. Samsung YP-R1 where the Linux and the SoC
are the same, with differences in hardware devices
handling)

Change-Id: I67b4918c46403b184d3d8f42ab5aae7d01037fd0
Reviewed-on: http://gerrit.rockbox.org/409
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
2013-03-06 00:21:22 +01:00
Rafaël Carré
c1305ce088 Clip Zip: promote to stable
Change-Id: I2d2788a6b5eed65e0032794a18767d5db5d93750
Reviewed-on: http://gerrit.rockbox.org/396
Reviewed-by: Bertrik Sikken <bertrik@sikken.nl>
2013-02-18 08:25:14 +01:00
Jonathan Gordon
5aa4bf6faa fix checkwps
Change-Id: Ie3bdfe18db6f8279f3575b253519fe4820649898
2013-02-12 21:07:23 +11:00
Björn Stenberg
1501df045f Deprecate the EXTRA_LIBS variable.
Instead specify explicit library dependencies for codecs and plugins.
2013-01-24 16:06:45 +01:00
Thomas Martitz
6242d9f7fc android: Undo accidental switch to asm threads.
sigaltstack() is not available (more accurately, not exposed by the
NDK) pre-gingerbread/2.3. However the android-arm target runs on
down to eclair/2.1, where the asm threads still work fine.

Change-Id: I2bb14bc6bb5653c401552189699a676109ac6587
2012-11-07 23:32:58 +01:00
Thomas Martitz
3365a148ce configure: Remove leftover debugging output
Change-Id: I1a1f32faa72987b113f109b876639a1b153f0a88
2012-11-07 23:08:20 +01:00
Thomas Martitz
48572c6265 android: Add x86 target.
Change-Id: If205f8c69a7ac803eecab394e6d1758aeda86336
2012-11-06 12:21:14 +01:00
Thomas Martitz
8e3c77d53e configure: merge androidcc and androidmipscc.
Change-Id: Ice8ba3f2cb51091486b3f446447cc8d256bc4c00
2012-11-06 12:21:14 +01:00
Thomas Martitz
885079b8af configure: autodetect mips arch version
Change-Id: Icaaca3d23ca89da977a065396b1961f9fe40da41
2012-11-06 12:21:14 +01:00
Marcin Bukat
5dec7af1ec Revert "SH gcc 4.6.3 with link-time optimization, for Archos targets"
This was commited by accident, sorry.
2012-10-24 14:05:39 +02:00
Boris Gjenero
c975de1534 SH gcc 4.6.3 with link-time optimization, for Archos targets
This is work from FS#12431 synced to current HEAD and slightly
tweaked (gcc 4.6.2 -> 4.6.3, binutils 2.21.1 -> 2.22)

Change-Id: I76af91e80ac2a9c16a776c7f0a33cc51603bbf9b
2012-10-24 14:02:41 +02:00
Alex Parker
9a7d11de1f Bump current version to 3.12
Change-Id: I10e925f40dc134627c77de5b17518ebdffee9a0e
2012-10-15 21:22:48 +01:00
Jonas Häggqvist
3d35f14351 FS#12764 - bdf2bmp fails to compile
Change-Id: I8e5ea31f0b529c0160ce6bdaa21a7d3dfe6c391d
2012-10-14 12:12:25 +02:00
Thomas Martitz
c555938ea0 checkwps: Do not error out on rwps for non-remote targets.
This breaks themes on the theme site (that ship an rwps for remote targets) for
non-remote targets. As rockbox just ignores the rwps checkwps now does the same.

Change-Id: Id8c7833f0bd88d239dce87711456b94c93480a51
2012-09-24 09:47:03 +02:00
Dominik Riebeling
094eca6f66 Announce 3.10 as release version for nano2g.
Change-Id: Id35a137242a05cea488fc49630cbc11fb477e22b
Reviewed-on: http://gerrit.rockbox.org/315
Reviewed-by: Dominik Riebeling <Dominik.Riebeling@gmail.com>
2012-09-22 00:06:56 +02:00
Dominik Riebeling
a1b780e670 Add support for Microsoft Speech Platform.
MSSP is accessible via vbs by simply changing the object to be used (both
SAPI5 and MSSP use the ISpVoice COM interface). Add command line parameter to
sapi_voice.vbs to switch the COM object used, and add the necessary
implementation of the SAPI class to Rockbox Utility.

Important: you will need to install the Speech Runtime separately and install
the version matching the bitsize of Rockbox Utility. I.e. you will need to
install the x86 version even on a x64 machine (unless you build a 64bit binary
of Rockbox Utility).

Change-Id: If760cd69c556c17a2ae539965d0941d16fdc10e1
2012-09-09 12:07:53 +02:00
Dominik Riebeling
9e2eb6243f Change sapi_voice.vbs voice list separation character.
The currently used comma for separating voices for the /listvoices command is
used by Speech Platform based voices. Change the character to a semicolon
which isn't used by voices.

Change-Id: I1a7e6e4229f864f56635143e864dadf38cdd7e73
2012-09-08 20:46:20 +02:00
Amaury Pouly
dbe9436ff2 zenxfi2: correctly disable plugins in configure script
Change-Id: If766c39b1b70ded2089964c850affbe953ac17c4
2012-08-30 01:10:36 +02:00
Thomas Martitz
1e7f606647 checkwps: harden filename extension checking.
Change-Id: I91aaacaaff621cfbeef9572df60b339a00475aa9
2012-07-31 10:56:35 +02:00
Thomas Martitz
efe73e143a Fix database tool.
It was also broken functionally, probably since a while.So restore the
functionality. Run it on the dap, the tcd files will be placed into .rockbox folder.

Change-Id: Id7a6ce4389dfaf99799258902be80d630af0601c
2012-07-31 10:33:27 +02:00
Thomas Martitz
b358bcfc25 checkwps: Simplify expression.
Change-Id: I4d5cf82aa753074f81f25ae3d89a97ee607376e5
2012-07-31 10:05:58 +02:00
Frank Gevaerts
2b3cff88af Add the ipod 6g (classic) to builds.pm
This should have been done ages ago

Change-Id: I53b258981b139c0bb73777c83938645333ca8780
2012-07-01 21:07:54 +02:00
Bertrik Sikken
eb652b054e Fix link order of mkzenboot and usb_benchmark to make them compile with gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3
Change-Id: I433a36074cacc4b0a97f88af5fe26d0084c1fc25
2012-06-19 20:12:51 +02:00
Frank Gevaerts
bf6abf7b38 Define GCCNUM properly. Case matters!
Change-Id: I5c7e9879f95f454e2811edfeaaa7cedc395646c1
2012-06-11 23:25:53 +02:00
Frank Gevaerts
20261dd2f6 Fix YP-R0 build.
YP-R0 never used sigaltstack threading, although it was (inadvertently)
defined. Due to the new handling of ifdefs in 268b725 this definition
started to be used, so remove it.

Change-Id: Ib5247741fc6dcfb66022d50c269812dfc3c4e214
2012-06-11 23:21:45 +02:00
Huan Zhang
fbe33e0728 Fix libmad compilation on MIPS with newer gcc. FS#12013
Since gcc 4.4 the MIPS port no longer recognizes the "h" asm constraint.
It was necessary to remove this constraint in order to avoid generating
unpredictable code sequences. We can achieve the same effect using
128-bit types.

See also:GCC 4.4 release notes at  http://gcc.gnu.org/gcc-4.4/

Change-Id: I713cdf57cde1a989ad960aa441ab1ccf51f1cdc6
2012-06-11 23:17:19 +02:00
Frank Gevaerts
10b2143fbf The threading model should be set from configure, not config.h.
Change-Id: If87bbd4a02825df20e5fe29c4ada85bf5ba25e99
2012-06-11 23:05:41 +02:00
Frank Gevaerts
d1560e5869 Add the Android/MIPS target
Change-Id: Iec1d2f08c8a43e486ab1696566a718b18598ff95
2012-06-11 22:29:45 +02:00
Thomas Martitz
66b6fdbb73 wpsbuild: Rewrite to fix various issues and support .fms
wpsbuild.pl is enhanced to produce fallback themes that were previously
hardcoded in buildzip.pl. It also recognizes resolution strings as
regular expressions now so you can specify resolution dependant settings
as <setting>.<regex>: <value> (needed to support single themes on multiple
resolutions). The WPSBUILD syntax completely changed as
well and it includes the fallback themes as well. Ultimately wpsbuild is
also able to install .fms files.

Change-Id: Idf5994f17b9750983d7bc3ef583540a8cdae1dde
2012-06-10 21:20:36 +02:00
Dominik Riebeling
d6ef5a0d80 Create binary voice string archive on target.
Extend genlang to create files holding the voice strings in a binary format
similar to lng. Create such files for all languages during a normal build, put
them in a zip file and add them to rockbox.zip so they are installed with a
main build.

Creating a voice file requires access to the voice strings, which are currently
not distributed with Rockbox. Therefore it is necessary to either have access
to the source code of the installed build or to use a build the genlang service
on rockbox.org can retrieve the strings for, making it impossible for normal
users to generate a voice file for custom builds, test builds and older builds
that aren't supported by the rockbox.org script. It also requires a network
connection when creating voice files with Rockbox Utility even if creating a
voice file by itself isn't network related.

Furthermore, putting the voice strings on the target is also a prerequisite for
eventually supporting a TTS on the player.

Strip voice strings path.

Change-Id: Ic2f86130909b3b257986a348e5cfcf618c4500c3
2012-06-09 22:44:56 +02:00
Dominik Riebeling
9f7c6a1745 genlang: add VOICE_ prefix to unused voice-only strings.
voicefont uses the id prefix VOICE_ to recognize voice-only strings. Unused ids
get a NOT_USED prefixed entry to keep order correct. However, since this
applies to voice-only entries as well voicefont doesn't recognize those as
voice entries and puts them at the end of the lang strings table. This messes
up the order in the created voice file, so add VOICE_ as prefix so voicefont
can identify them.

Change-Id: Ic3f2ec038ce1ed93c84286979e6583b478fa697e
2012-06-05 23:30:04 +02:00
Dominik Riebeling
b2380b535e voicefont: make format version a parameter.
Make hardcoded format version a parameter to allow adjusting depending on the
installed Rockbox version. Rockbox Utility will read the version from the
installed version. Since the command line voicefont tool is only intended for
use in the current tree it uses a fixed version.

Change-Id: I1ec935d47c71961e93b3c6bc6c5d816cd9fc83ff
2012-06-05 23:24:54 +02:00
Dominik Riebeling
7c78963bbb Add voicefile version to rockbox-info.txt.
When the voicefile binary format changes there is no easy way to figure which
format is compatible with a given Rockbox installation. Add the version number
to rockbox-info.txt so tools like Rockbox Utility can easily retrieve it and
therefore support different versions.

Change-Id: Ia5b8f00f89065f0dd0adf061612d844dcaff39c6
Reviewed-on: http://gerrit.rockbox.org/269
Tested-by: Dominik Riebeling <Dominik.Riebeling@gmail.com>
Reviewed-by: Dominik Riebeling <Dominik.Riebeling@gmail.com>
2012-06-05 23:23:44 +02:00
Dominik Riebeling
4613ffae8a Remove unnecessary variable and simplify voice-only counting.
Voice-only strings are identified when reading the strings, so there is no
reason to first store that information and then count them later.

Change-Id: Ie6bd2c4bbf5736630e58d06a20739ef527e3cd69
2012-06-03 22:10:44 +02:00
Dominik Riebeling
d83ef9935c voicefont: rename SWAP macros.
Those macros actually swap to big endian. Since the macro names didn't tell
what way to swap (and on big endian they don't swap anything at all) they are
somewhat confusing. Change names for clarity.

Change-Id: Ie4b0026458a69d7533abb66109a6f83bc5ee2c0e
2012-06-03 22:10:38 +02:00
Thomas Martitz
eb027788cf tools/autoconf.pl: 2 enhancements
* -y param to not ask for confirmation
* detect <buildtype>-<target> as well

Change-Id: Ie63f5882560cd7c7ee1c00f153e756b8695d567f
2012-05-28 11:34:15 +02:00
Bertrik Sikken
2fb4fe90f6 zenxfi3: disable building of plugins ("no" means yes, use an empty string instead)
Change-Id: I85e01ae07daa8656be33ddc47592102d318a17e0
2012-05-27 00:39:24 +02:00
Frank Gevaerts
f3fd2d41cc Make overlay plugins work again.
Overlay plugins got broken because ovl_offset.pl assumes the audio buffer
ends where the plugin buffer starts. Buflib however keeps its handle table
there, so there are a few hundred bytes fewer available, so loading the
overlay fails. We work around this by linking the overlay at a slightly
lower address (1024 bytes lower). If the handle table ever grows more than
that, overlays will start failing again and we either need a different
solution or increase the margin a bit.

Change-Id: Id98cb52da2c8c4a4bc773362a46f646774112f85
2012-05-19 18:53:17 +02:00
Amaury Pouly
12c64a4b79 Initial commit for the Creative ZEN X-Fi2 and X-Fi3 ports
These are really similar devices so one commit for both is ok.

Change-Id: I8bd1d3fef1eb6d00aaadfb7af56c771f62d0c9c3
2012-05-19 16:10:52 +02:00
Frank Gevaerts
bc4631055f Move the mr100 to unstable
mr100 audio is broken in 3.11. It's working again in master since
da6cebb6b0, but backporting that is
not realistic.

Change-Id: I11118a0d228da866259e4e01ed00ac010a3838a3
2012-05-19 13:06:31 +02:00
Dominik Riebeling
6eebdb3bc9 Add .nomedia on Android.
Prevent Android from adding theme files to its media database by putting a
.nomedia file in the rockbox folder.

Change-Id: I76ee3381a6599b9d1ecfe34d15a4fdd35da80336
2012-05-19 11:01:45 +02:00
Peter D'Hoye
63a48fa9b0 more tools checks to be done before starting toolchain builds 2012-05-19 01:45:23 +02:00
Dominik Riebeling
2d9c0bab54 Add support for cp1252 (Western European) codepage.
In Europe Windows defaults to its own codepage cp1252 (also known as "WinLatin"
or "Windows-1252"). cp1252 adds some characters to ISO-8859-1.

Some mp3 tagging software on Windows uses cp1252 instead of ISO-8859-1. This
violates the ID3 specification, which requires tags to be ISO-8859-1 or
Unicode. However, similar violations are made for other codepages and supported
by Rockbox using the "Default Codepage" setting. Add support for cp1252 to
enable people using such broken tools to override the correct decoding to get
their tags displayed properly.

Change-Id: I9f2ec478afe2503e99ee8e6609416c92b0f453e0
Reviewed-on: http://gerrit.rockbox.org/209
Reviewed-by: Jens Arnold <amiconn@rockbox.org>
Tested-by: Jens Arnold <amiconn@rockbox.org>
2012-05-19 01:42:53 +02:00
Peter D'Hoye
0587e85e23 add aditional required tools to the check 2012-05-19 01:01:22 +02:00
Jens Arnold
266dc52fab Make the player_unifont tool build again
This tool is rarely needed (only when working on the player charset)
and got lost in the big make system overhaul.
2012-05-18 23:31:24 +02:00
Rafaël Carré
bed634d445 thumb-cc.py: fix for python 3.2 2012-05-07 00:19:03 -04:00
Nils Wallménius
00cf2ce711 Add include path to checkwps.make to fix build.
Change-Id: I3edddee9422255bf6d944f76c74686a256a8a852
2012-05-03 14:58:44 +02:00
Sean Bartell
cadb3627fc Add rbcodecplatform.h and rbcodecconfig.h.
librbcodec users must provide these two files when the library is built.
rbcodecconfig.h provides configuration #defines and basic types, and
will be included by public librbcodec headers, so it must not conflict
with the user's code. rbcodecplatform.h provides various OS functions,
and will only be included by source files and private headers. This
system is intended to provide maximum flexibility for use on embedded
systems, where no operating system headers are included. Unix systems
can just copy rbcodecconfig-example.h and rbcodecplatform-unix.h with
minimal changes.

Change-Id: I350a2274d173da391fd1ca00c4202e9760d91def
Reviewed-on: http://gerrit.rockbox.org/143
Reviewed-by: Nils Wallménius <nils@rockbox.org>
Tested-by: Nils Wallménius <nils@rockbox.org>
2012-05-03 14:49:35 +02:00
Michael Sevakis
a8b597e620 Database build also needs a /lib/rbcodec/dsp include path.
Change-Id: Id54ac979ce232028a0bdc133e70f6bb9ab1471da
2012-04-29 05:29:35 -04:00
Michael Sevakis
60f4757d41 CheckWPS needs an include patch to /lib/rbcodec/dsp.
Change-Id: I7092be2be4b23137e011b2344d92b40fdcf1517e
2012-04-29 05:19:06 -04:00
Frank Gevaerts
b794cbbdca Replace a \n-using sed expression with a more compatible tr
BSD sed doesn't handle \n the way GNU sed does, and in this case the
substitution is trivially done using tr anyway, so use tr.

Change-Id: Iedb459d871ae6758d76352225e91dd4dc4717a53
2012-04-28 00:55:07 +02:00
Sean Bartell
f40bfc9267 Add codecs to librbcodec.
Change-Id: Id7f4717d51ed02d67cb9f9cb3c0ada4a81843f97
Reviewed-on: http://gerrit.rockbox.org/137
Reviewed-by: Nils Wallménius <nils@rockbox.org>
Tested-by: Nils Wallménius <nils@rockbox.org>
2012-04-25 22:13:20 +02:00
Björn Stenberg
2315a23c04 Missed a comma. 2012-04-20 15:23:49 +02:00
Andrew Ryabinin
0e19067624 Add rockchip targets to builds.pm.
Change-Id: I9c0e51b865aac0f47b66a8291af9846dcdc1fa2a
Reviewed-on: http://gerrit.rockbox.org/221
Reviewed-by: Björn Stenberg <bjorn@haxx.se>
2012-04-20 15:19:09 +02:00
Andrew Ryabinin
6d73d6efc6 rk27generic: Disable plugins.
Change-Id: I86b289501ef654393c2987129f7d7f57411fcc3d
2012-04-20 17:09:12 +04:00
Rafaël Carré
05ebf79540 configure: remove support for ARM non EABI compiler
Change-Id: I4a25b368337e25bc0f9b3e2639beaf1225150a06
2012-04-14 19:17:21 -04:00
Dominik Riebeling
2aae745458 Add new tarball generation script.
The old script depended on svn. An earlier version of this script has already
been used in the 3.11. branch.

Change-Id: Id03abb8f7bd005ede343243194c4453f0b2e8943
2012-04-12 21:15:49 +02:00
Frank Gevaerts
d8cb5c7007 Release v3.11.2
Change-Id: Ica45096cf25ae66e3730183e7929d8dbcfbed265
Reviewed-on: http://gerrit.rockbox.org/212
Reviewed-by: Björn Stenberg <bjorn@haxx.se>
2012-04-12 10:36:56 +02:00
Frank Gevaerts
80f9577d81 builds.pm in master has to wait for the actual release.
This reverts the builds.pm part of d5859c6 (which was accidentally
pushed too soon) to avoid having the website link to nonexistent files.

The modifications need to be re-done as soon as 3.11.1 is actually on
the server.

Change-Id: Ifee2ed497ffcaefe32b75fa25d829cf0c7b6d17d
2012-04-08 01:22:02 +02:00
Frank Gevaerts
d5859c6d21 Bump version numbers for 3.11.1
Change-Id: I98c904b1d5e5c80c21d8a08b5413cd1e7f70bff2
2012-04-07 21:34:04 +02:00
Thomas Martitz
4b56ee048a Refactor and unify objcopy calls in the build system. Also now properly handles DEBUG builds on hosted targets to keep debug symbols if necessary.
Change-Id: I884031b79c6d49479e4d95752f35ced68872dd5d
2012-04-04 21:48:19 +02:00
Dominik Riebeling
905f920dc9 Shorten voicefont progress output a bit.
Change-Id: I07a85af75acd9b73aabff80feb5226abce83b313
2012-04-03 23:28:34 +02:00
Frank Gevaerts
9ca9b657e4 Revert 1207c7b and fix the actual warnings.
The warnings 1207c7b was supposed to get rid of are sim-only. This
means the binsize argument used for the _FORTIFY_SOURCE fix did not
apply at all. This one actually checks the return values.

Change-Id: Ic4cd8c25de4305310baa868c077a66981cdfcb4b
2012-04-03 20:59:11 +02:00
Frank Gevaerts
1207c7b641 Disable _FORTIFY_SOURCE for the simulator
Most of our code was written to be efficient. While adding return value
checks everywhere would be a good idea in theory, it would increase binsize
a lot, and #ifdeffing those checks for sim-only is not doable. Disabling
_FORTIFY_SOURCE makes the warning disappear for innocent commits that
can't be blamed for them.

Change-Id: I8171869a140580cbf89f39776856eb3f65641366
2012-04-03 20:15:32 +02:00
Alex Parker
e46382a6c7 Bump builds.pm so that Rockbox Utility notices 3.11
Change-Id: I116f08cae0c731eab60225cf404fbcb1d9f6ece9
2012-04-01 11:14:52 +01:00
Frank Gevaerts
560ee29453 Drop the nano2g back to unstable for now
Change-Id: Id6d346d0bdc3c09e5c112ab57ee3c71c18a643a8
2012-03-31 14:27:48 +02:00
Thomas Martitz
b18d76a1c4 configure fixes.
1) use " instead of ' to expand variable
2) fix x86 arch autodetection (android toolchain doesnt use _X86_)

Change-Id: Ibf73b6ccfdb1baee3bb2f77d8f298119ecbfe16c
2012-03-30 22:52:09 +02:00
Thomas Martitz
3414c952b9 configure: prevent $LDOPTS from stacking up on make reconf.
Change-Id: I9af88c5201d60ac8beb9e4a24b9933802ae2a96c
2012-03-30 11:23:07 +02:00
Michael Giacomelli
0e4a29811b Mark the Sansa c200v2 series of players as stable
These were originally held back as unstable due to bugs in rockbox's
audio buffering that only occuried on very low memory targets.  The
c200v2 is the lowest memory target we have.  Various improvements
to our buffering system seem to have fully corrected these problems.

Change-Id: I4404fe9b85c037904aea4b720e5a1fcb266f3d18
2012-03-28 18:09:22 -04:00
Thomas Martitz
a8b3d506db Enable tlsf in warble build to fix it.
Change-Id: I5b43a995264b4e699fb62ded72139a7e0ee7f46d
2012-03-29 00:01:44 +02:00
Thomas Martitz
f5a3dbc6d9 Fix ARM version detection (need to pass mcpu/march to cpp).
Change-Id: Ic3283abca56a2bf0dd0f786b52f0f28a21442e13
2012-03-28 23:32:57 +02:00
Thomas Martitz
3a3f4d6476 Override manually selected arch/arch_version in simcc().
Change-Id: Iad118d85120f7f442ced19dabfd3e5d7760c1038
2012-03-28 23:24:02 +02:00
Thomas Martitz
7b1a369cf7 build system: completely autodetect target cpu architecture.
The existing ARCH Makefile variable is exported to the C code as well.
Additionally the version (arm-only for now) is detected as well. This
allows to for complete autodetection, i.e. that optimized ASM is picked up
if determined by preprocessor (CPU_ARM, etc).

Building a sim/raaa on a arm host will now automatically generate a arm
optmized build like we have for native targets.

Change-Id: I0b35393f8fb3ebd20beaa9e7371fa57bf3782107
2012-03-28 23:02:39 +02:00
Thomas Martitz
c56950ea3a tlsf: move to /lib (it's also used by plugins).
Change-Id: I5e37b28c1ce4608d60b036343f280af3311ad490
2012-03-28 23:02:39 +02:00
Frank Gevaerts
215ac639ff Fix makefile conditions
Change-Id: I7e36cec5e3dd86b3220a8a14561596aaa81fdefb
2012-03-27 01:22:51 +02:00
Thomas Martitz
83cb2e5dae Fix warble and clean up/refactor Makefile.
Change-Id: I8754ad8724e22147b98a156fecea599bdda72292
2012-03-27 00:16:09 +02:00
Thomas Martitz
d5f4391187 Partly undo 54e00c1: put include back to root.make and use SECONDEXPANSION.
Change-Id: If38507ed896f577ea30e2ddae3bac3f4b98cee59
2012-03-26 23:57:20 +02:00
Thomas Martitz
045c69c51d Fix bootloaders.
Change-Id: I7e1666d604c554509375a4ae858ff3cd7be96b3a
2012-03-26 23:55:02 +02:00
Thomas Martitz
54e00c18a3 Fix sim/checkwps build failure.
Change-Id: Iefd533fe26495a29f8e79113b38748b504d94213
2012-03-26 23:16:48 +02:00
Thomas Martitz
f269aa0060 build system: unify/simplify library handling a bit.
libs in $ROOT/lib now add to $(CORE_LIBS) and $(EXTRA_LIBS) and are
automatically linked by the core and codecs/plugins respectively.

Change-Id: Iff482c792a8c8142718f6a16a450c6e2f1497c9a
2012-03-26 22:27:40 +02:00
Nils Wallménius
8a7eb4b18c Add missing include path.
Change-Id: Icc19a89286f34fa88d151c0212273013d7b14f40
2012-03-18 12:58:33 +01:00
Sean Bartell
b5716df4cb Build librbcodec with DSP and metadata.
All associated files are moved to /lib/rbcodec.

Change-Id: I572ddd2b8a996aae1e98c081d06b1ed356dce222
2012-03-18 12:00:39 +01:00
Jonathan Gordon
5edae54e0d skin_engine: Reenable skin debugging in the sim (use --debugwps)
Change-Id: I2881edda45cd3ea69f5284d93bc93c47bb63b3f2
2012-03-15 23:26:07 +11:00
Marcin Bukat
3448f5b6ad Mark MPIO HD300 as stable in tools/builds.pm
Change-Id: Ib2c9e02703de5801d08e05c1eb1066cb7c3328a5
2012-03-10 14:26:31 +01:00
Dominik Riebeling
975332d608 Disable built-in make rules for binutils 2.16.1.
If make provides a built-in rule for .m files (seen on Fedora 16, reported on
the net for OS X) it breaks binutils 2.16.1. Disable built-in rules to avoid
this.

Change-Id: I2e76c52661e47edf81706ed5c8c30f5e6cab8546
2012-03-04 10:40:15 +01:00
Marcin Bukat
587f52f50e rk27xx: switch to RKW format for binary
Change-Id: I859473abbaf05c8268d832b25d15f27f1ea44648
2012-03-04 00:35:32 +01:00
Marcin Bukat
f35e300304 scramble: add RKW firmware file format encoder
Change-Id: I8057d6186724c3e8a319a262f45c12da7afb722e
2012-03-04 00:33:41 +01:00
Frank Gevaerts
466a7c6a40 Integrate the warble tool in the regular build system.
Only sdl app builds work properly for now.

Change-Id: I7807d42f69b8577b401e48cdc63de71e54f49217
2012-03-03 20:19:08 +01:00
Frank Gevaerts
c6d20104eb Fix __PCTOOL__ dependencies on SIMULATOR
* filesize() is not POSIX, so it doesn't need stubbing or redirecting
* make the various directory functions use the sim_ versions for PCTOOL
* PCTOOL needs generic byteswap functions
* fix the database makefile to not use -DSIMULATOR anymore

Change-Id: Ic6abc4f662830b85626c751a472fa4a03e844871
2012-03-03 18:54:47 +01:00
Amaury Pouly
dc572fbde3 configure: fix $(LD) which was incorrectly set as $(AR)
Change-Id: I76db28bf0d583840bc00e96b73370316ad7d8b73
2012-03-01 16:51:55 +01:00
Frank Gevaerts
f0ecce9ee5 Fix ucl-related makefiles
Change-Id: I5f2f896d34c242c9b365bd8ea823fa89647a366d
2012-02-29 12:30:28 +01:00
Frank Gevaerts
58b226edc5 Add "allbuilds" to builds.pm, similar to "stablebuilds" and "usablebuilds"
Change-Id: Ia81a090e0c5ad53b09c38861b17e14674b1087d4
2012-02-25 15:28:36 +01:00
Marcin Bukat
b4eab59951 Arm stack unwinder
Simplified stack unwinder for ARM. This is port of
http://www.mcternan.me.uk/ArmStackUnwinding/
backtrace() is called from UIE() on native targets
and from panicf() on both native and ARM RaaA.

Change-Id: I8e4b3c02490dd60b30aa372fe842d193b8929ce0
2012-02-22 08:33:26 +01:00
Frank Gevaerts
a16b65e47d Force YPR0 to 240x320
The YPR0 has a fixed screen size. Letting the generic RaaA screen
size selection code work on causes checkwps/buildall.sh to build
broken checkwps binaries. There's no good reason to allow
overriding the screen size here

Change-Id: Ic666d28d10273000a8c1867580c8d1a13dd98dc9
2012-02-22 01:08:17 +01:00
Ralf Ertzinger
d2f97da668 Make logf() output to serial optional
Only output logf() to the serial port if LOGF_SERIAL is defined
(in addition to HAVE_SERIAL). Add an option to advanced configure
to set this (defaults to off).

Change-Id: I13d0f5df391e5371f7797f46a3faaf7a6974b9e4
Reviewed-on: http://gerrit.rockbox.org/92
Reviewed-by: Björn Stenberg <bjorn@haxx.se>
2012-02-16 14:44:43 +01:00
Thomas Martitz
30a7e59d25 checkwps/ypr0: Forgot new file.
Change-Id: I14d2f1c174c118ba44fbbd92051157e0f21db68f
2012-02-11 13:11:48 +01:00
Thomas Martitz
295c1c1e8b checkwps: Fix buildall.sh and some RaaA/ypr0 versions.
Change-Id: I5889743e94ed568c8f7dcc50de0b03b8421969f7
2012-02-10 20:27:59 +01:00
Amaury Pouly
c18a4e6316 fuze+: update builds.pm to reflect the fact that we have icons
Change-Id: I7542b05b851d5a3b9353c48550a6de290ca33037
2012-02-01 15:02:21 +01:00
Frank Gevaerts
dbcf173fdf YP-R0 is supposed to be unstable these days, so add it to tools/builds.pm
Change-Id: Ia3cf9370c38d1593fe156806d12eec3da438beac
2012-01-29 13:54:46 +01:00
Amaury Pouly
d6848584f7 fuze+: mark as unstable
Change-Id: I4a21e220e16b567eb3e7afe5e7d1a3293dd13bb2
2012-01-27 20:19:07 +01:00
Jonathan Gordon
c42f19f897 Disable the backdrop in the failsafe theme so the colours acually work
Change-Id: Ib65fa0be50dfa050f1db5c615685bdbd992cea1d
2012-01-25 19:22:23 +11:00
Torne Wuff
2ab2857b58 Remove svn id.
Another "test" commit :)

Change-Id: I2196ef07724f23dacd47d9ee1a71c3200b4135fc
Reviewed-on: http://gerrit.rockbox.org/64
Reviewed-by: Björn Stenberg <bjorn@haxx.se>
2012-01-23 16:04:47 +01:00
Thomas Martitz
74c8746595 Don't filter out -O for sims.
It's not useful as it means we test code at a different -O level than
we run it at.
Fixes build errors caused by gcc 4.3. Fix some warnings
the change would introduce as well.

Change-Id: Id9ff31dc08694b0bfc5272f5e690c41f7918ed22
2012-01-22 20:33:37 +01:00
Thomas Martitz
91a3978fdc ypr0: Enable asm optimizations.
Change-Id: Ib9f98563a9687827a384e5c7587638f5874cf485
2012-01-22 18:46:45 +01:00
Thomas Martitz
8e8e978de6 Add framework to let make automatically pick optimized asm implementations over generic C ones to firmware.
Example: for a file asm/foo.c, make will look for asm/arm/foo.[cS] and
compile it if found. If not found it'll fall back to asm/foo.c.

Also introduce new ARCH make variable. This is automatically detected by
configure. It is distinct from CPU since CPU defines the dir used for
the target tree (i.e. firmware/target/X, so it can be "hosted").
ARCH really has the target isa and can be x86 for sims/raaa too.

Change-Id: I18e5d2b7b7bbc2ad2be551a74a0fcae5ffbcbf8b
2012-01-22 18:46:45 +01:00
Thomas Martitz
6b7db7e465 Fix database build.
Change-Id: I3e057a680057bdda859af5deefbda0e65211b284
2012-01-21 19:03:39 +01:00
Thomas Martitz
cf333a61c7 Move supprt-arm.S to separate library.
Core, codecs and plugins link it separately so this gets rid of SOURCES trickery.
Don't build it for hosted targets.

Change-Id: If15ef90e93cd218a4352ae8e89eea95d3122452f
2012-01-21 18:39:19 +01:00
Björn Stenberg
858a0cfb92 Remove svn id (test commit). 2012-01-20 11:10:18 +01:00
Björn Stenberg
35f0c964da Remove svn id. 2012-01-19 17:26:11 +01:00
Dominik Riebeling
420ae56cec rbspeex: make local functions static. 2012-01-12 20:49:19 +01:00
Dominik Riebeling
5e21bbf575 Rename snprintf when building with MSVC to link with CRT.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31641 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 20:09:59 +00:00
Jens Arnold
e9b257f340 Add missing languages from configure, and sort them in exactly the same order for easier maintenance.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31639 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 17:59:52 +00:00
Jens Arnold
8b4805203b Remove outdated (and buggy) configuration option for the 8MB mod. This is configured by selecting memory size directly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31638 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 17:38:40 +00:00
Jens Arnold
334e61293e Fix several flaws in argument handling and reconfiguring, mainly related to voice building: (1) Properly retain arguments containing spaces by re-quoting them. (2) Properly retain --tts when the default is selected by just pressing return. (3) Only append --tts and --language if they weren't already specified on the commandline, preventing duplication on 'make reconf'. (4) Never append --ttsopts and --encopts for the same reason. These are commandline only anyway.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31637 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 13:59:15 +00:00
Dominik Riebeling
1ef25cd7e0 librbspeex.a: simplify Makefile for OS X.
- As done with the libucl Makefile replace the universal library handling and
  use ar to create a library from fat objects instead.
- Replace OUT with BUILD_DIR to be in line with the other Makefiles. As a
  result librbspeex will now be build in a subfolder better named than "build"
  when building with Rockbox Utility.
- Make the Makefile depend on the depencency file. This should fix problems
  with a broken dependency file not being regenerated properly, causing the
  build to fail.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31587 a1c6a512-1295-4272-9138-f99709370657
2012-01-05 22:26:04 +00:00
Dominik Riebeling
1a26524d01 Fix building mkamsboot on OS X.
mkamsboot requires libucl to be linked. Since the introduction of libtools.make
the OS X specific universal library isn't triggered anymore so the libucl built
uses the wrong architecture. Rockbox Utility builds libucl by itself and still
triggers the universal library rule.

Since ar can create fat archives but not operate on them adjust the ar call to
not try to update the archive -- the archive is created anyway, so asking for
an update is not really necessary. Remove any old archive first to make sure
we're not trying to update one, since that would now fail. As a result the OS X
specific hackery to build both ppc and i386 in a single call isn't necessary
anymore.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31585 a1c6a512-1295-4272-9138-f99709370657
2012-01-05 21:23:35 +00:00
Thomas Jarosch
949e6398c8 FS #11859: Enable optimizations for SDL application builds.
Only disable them for the simulator (like before).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31547 a1c6a512-1295-4272-9138-f99709370657
2012-01-03 22:33:47 +00:00
Thomas Martitz
84f651f9b6 android: Adjust gcc/linker cmdline. Fixes build with ndk r7.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31542 a1c6a512-1295-4272-9138-f99709370657
2012-01-03 21:15:17 +00:00
Rafaël Carré
4ef988bfb4 new include directory for targets with common SoC : cpu/soc
for now, only arm/pp

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31529 a1c6a512-1295-4272-9138-f99709370657
2012-01-03 04:23:08 +00:00
Dominik Riebeling
c5530d9258 Allow passing additional CFLAGS.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31524 a1c6a512-1295-4272-9138-f99709370657
2012-01-02 16:59:26 +00:00
Torne Wuff
3a9aa8e51b Fix up tools/version.sh for git transition.
Since we will be transitioning to git, stop considering svn the primary source.
If HEAD is a git-svn revision, return the svn revision number as before
(this means that if you check out old versions they keep their previously
canonical version numbers) but if it's not, then just print the short SHA1.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31480 a1c6a512-1295-4272-9138-f99709370657
2011-12-31 16:32:21 +00:00
Torne Wuff
79f88e7f39 Remove bzr support from tools/version.sh.
Only I ever used this that I know of, and now we are migrating to git it's
not needed (and won't work correctly, since we won't be svn-derived).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31479 a1c6a512-1295-4272-9138-f99709370657
2011-12-31 16:30:14 +00:00
Rafaël Carré
f77353c71a ucl: make it possible to specify additional CFLAGS
example: CFLAGS=-m32 make -C mkamsboot

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31450 a1c6a512-1295-4272-9138-f99709370657
2011-12-27 00:12:35 +00:00
Thomas Martitz
2ec443df12 Remove bash-specific syntax from rockboxdev.sh
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31422 a1c6a512-1295-4272-9138-f99709370657
2011-12-24 15:40:11 +00:00
Thomas Martitz
249bba03f1 Initial commit of the Samsung YP-R0 port.
This port is a hybrid native/RaaA port. It runs on a embedded linux system,
but is the only application. It therefore can implement lots of stuff that
native targets also implement, while leveraging the underlying linux kernel.

The port is quite advanced. User interface, audio playback, plugins work
mostly fine. Missing is e.g. power mangement and USB (see SamsungYPR0 wiki page).

Included in utils/ypr0tools are scripts and programs required to generate
a patched firmware. The patched firmware has the rootfs modified to load
Rockbox. It includes a early/safe USB mode.

This port needs a new toolchain, one that includes glibc headers and libraries.
rockboxdev.sh can generate it, but e.g. codesourcey and distro packages may
also work.

Most of the initial effort is done by Lorenzo Miori and others (on ABI),
including reverse engineering and patching of the original firmware,
initial drivers, and more. Big thanks to you.

Flyspray: FS#12348
Author: Lorenzo Miori, myself

Merry christmas to ypr0 owners! :)

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31415 a1c6a512-1295-4272-9138-f99709370657
2011-12-24 11:56:46 +00:00
Thomas Martitz
461e2c72ad Actually call ct-ng (i.e. fix left-over from testing).
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31413 a1c6a512-1295-4272-9138-f99709370657
2011-12-23 13:54:00 +00:00
Thomas Martitz
6296045e2a Add crosstool-NG build to rockboxdev.sh.
rockboxdev.sh can now build toolchains using ct-ng (and build ct-ng before
if required). It downloads the appropriate config for ct-ng and lets it do its job.

Used for the upcoming YP-R0 target, which requires a full toolchain including libc.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31412 a1c6a512-1295-4272-9138-f99709370657
2011-12-23 13:49:43 +00:00
Thomas Martitz
c00938e4a3 Configure: Fix endianess detection.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31409 a1c6a512-1295-4272-9138-f99709370657
2011-12-23 09:13:36 +00:00
Thomas Martitz
013cc9dedf Resolve CROSS/CROSS_COMPILE dualism in configure to use only CROSS_COMPILE (only used for SDL builds so far), which should be the de facto environment variable for this.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31408 a1c6a512-1295-4272-9138-f99709370657
2011-12-23 09:03:31 +00:00