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
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
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
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
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
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
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
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>
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
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
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
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
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
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
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
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
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
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
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
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
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>
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
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