Commit graph

1339 commits

Author SHA1 Message Date
Rafaël Carré
76440aa214 mkamsboot: ignore built files / folders 2012-01-24 17:00:26 -05:00
Dominik Riebeling
250a73317f Check running processes at startup.
Retrieve the processes running at startup and compare with a list of
potentially problematic ones.  Right now this is Itunes which is known to be
able to cause problems when trying to install the bootloader on an Ipod. No
user notification yet.

This adds the implementation for Windows.

Change-Id: I5ce8a85da52e0ed8f523b5ae6fb5d8f14f6a14c9
2012-01-22 22:26:01 +01:00
Dominik Riebeling
61047e1561 Fix a typo.
Change-Id: I32a0d202385f025e0f450f7ba2fba5b6334d8f39
2012-01-17 22:11:32 +01:00
Dominik Riebeling
b18bbabc91 Fix unused-but-set warnings in helper functions.
Instead of storing the return value and ignoring it use it directly to check if
an error occured. Addresses FS#12542.

Change-Id: I447afa006366acfd1851d5b13cae5f1561050283
2012-01-17 22:03:42 +01:00
Dominik Riebeling
633749ea61 TTS: check if created wav file exists.
Instead of simply assuming the wav file that is supposed to be created by the
TTS engine check if the file actually exists and return an error if not.

Change-Id: I9e4a85a061b44b48931614602683b1dfe7dfce67
2012-01-17 20:19:59 +01:00
Dominik Riebeling
92fa7a846a Add alternate firmware filenames for e200v2.
Depending on the firmware version the filename is different, so it's necessary
to look for all the possible filenames when searching the file inside the zip.
The player happily accepts any of the filenames, so (as before) the first one
is used. Additional firmware filenames might be necessary for other players as
well.

Change-Id: If78444a8d9b7fe167ce0be1d58407038a4f9052b
2012-01-15 23:32:15 +01:00
Dominik Riebeling
b45cc0a13a Support reading OF files from zip.
Several devices require the original firmware to be able installing the
bootloader. Most vendors distribute the firmware file in zip format. Extend
reading the original firmware file to support reading the file from the zip
directly instead of requiring the user to separately extract it.

Change-Id: Ic4e89053456d8f7d6adc294f6657aceddbc354ba
2012-01-15 23:32:15 +01:00
Dominik Riebeling
9db5c124af Fix wavtrim on voicefile creation.
Pass the threshold value for wavtrim to the TalkGenerator object instead of
using the default value. Makes wavtrim to be actually used.

Furthermore, check the result of the wavtrim call and respect its return value.
2012-01-15 12:30:03 +01:00
Dominik Riebeling
820dcfdfed Remove multithreading support from voicefile creation.
Running TTS and encoders with multiple threads is causing problems on Windows
since introduction of the feature (FS#12106, FS#11994). The current
implementation also makes wrong assumptions (having multiple threads talk to
the SAPI script doesn't make it run faster since it's still one thread
responsible for creation).

Completely remove multithreading support for that for now -- a different
implementation is necessary.

Change-Id: Icafa223644efc370a09186ce28ac83c22902e0c0
2012-01-14 16:37:01 +01:00
Dominik Riebeling
85a3f3f6b0 Update copyright information for 2012.
We're still working on this.

Change-Id: I029f192dfa9ab6d125140ce778100af1b383fd1e
2012-01-14 13:06:34 +01:00
Dominik Riebeling
42fa2a8d0f Improve error handling and logging.
- Fix a warning
- Log an error if the file to encode cannot be read.
- Adjust some log strings.
2012-01-14 12:14:49 +01:00
Dominik Riebeling
ab49b5e77b MSVC compatibility adjustments.
When using a global variable from a DLL with MSVC special handling is necessary
to avoid going through additional redirection.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31640 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 19:51:11 +00:00
Dominik Riebeling
f1fc6bae25 Rockbox Utility: use libmp3lame for voice clips.
Instead of calling the lame executable use libmp3lame directly. As result, this
simplifies the prerequisites for creating voice clips for Archos devices to
putting the library in the system's search path (Windows: put libmp3lame.dll in
the search path or the same folder RockboxUtility.exe is located in. Linux:
install the library using your systems package manager) and configuration.

This creates a notable encoding speedup on Windows (around factor 6 on my test
setup) and a small speedup on Linux (around factor 1.2).

The implemenatation currently has the following limitations:
- Only enabled on Windows and Linux. On OS X installing the correct dylib is a
  bit nontrivial, so using the old command line based method is still in use
  for now.
- The encoder parameters are currently hardcoded to use the same values the
  build system uses.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31634 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 11:50:04 +00:00
Dominik Riebeling
3e014d3523 Fix wrong includes.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31633 a1c6a512-1295-4272-9138-f99709370657
2012-01-08 11:49:57 +00:00
Dominik Riebeling
959432d728 Fix typo in comment.
Thanks to fml for noticing.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31595 a1c6a512-1295-4272-9138-f99709370657
2012-01-06 20:45:36 +00:00
Dominik Riebeling
f22ecf6726 MSVC: fix error in README and update librbspeex build folder.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31594 a1c6a512-1295-4272-9138-f99709370657
2012-01-06 19:29:29 +00:00
Dominik Riebeling
ade55fd3d4 Fix "invalid settings" dialog appearing twice.
Instead of checking the settings on startup set only the device display.
Otherwise the settings are checked directly on startup and after finishing the
build information download, which leads to the configuration dialog getting
opened twice.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31593 a1c6a512-1295-4272-9138-f99709370657
2012-01-06 19:26:56 +00:00
Dominik Riebeling
be0e197190 Split up encoders sources.
Create a separate source / header file for each supported encoder and the base
class and rename classes for better readability. This should also make it
easier adding new encoders.

Remove a few trailing spaces while at it.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31592 a1c6a512-1295-4272-9138-f99709370657
2012-01-06 19:19:32 +00:00
Dominik Riebeling
ded02d82e7 Remove OS X special universal binary handling.
Since the libs are now build as universal libs there is no need anymore to
create separate binaries for both architectures and run lipo on them, just
build in a single run now. Fixes building universal binaries and dmg for all
tools using libtools.make.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31590 a1c6a512-1295-4272-9138-f99709370657
2012-01-06 09:24:38 +00:00
Dominik Riebeling
c6dcec4e0d Update OS X library building.
- As done with libucl and librbspeex, create universal libraries using ar
  instead of building twice and using lipo. This notably simplifies things.
- Allow overwriting the compiler via command line. This is required for
  building on OS X.
- Update Rockbox Utility to the changed library rules. Fixes building which was
  broken by the previous Makefile changes.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31588 a1c6a512-1295-4272-9138-f99709370657
2012-01-05 22:26:08 +00:00
Dominik Riebeling
61f999a16e Rockbox Utility: add support for mkimxboot bootloader.
Reworked version of FS#12402 by Jean-Louis Biasini.

Since the mkimxboot process takes quite a while which blocks the UI it has been
adjusted to perform the actual firmware patching in a separate process. Various
other small changes have been made to make it fit better into Rockbox Utility's
dialogs / messages and update the code to latest changes.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31580 a1c6a512-1295-4272-9138-f99709370657
2012-01-04 19:19:02 +00:00
Dominik Riebeling
56e1e859ca Extend flashing hint a bit.
Since flashing the firmware is a rather critical process extend the post
installation hint to advise the user of charging the player first.


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31579 a1c6a512-1295-4272-9138-f99709370657
2012-01-04 17:52:34 +00:00
Dominik Riebeling
f36f7825d7 Update displayed settings on startup.
Update the target values in the main window immediately on startup. Downloading
the target information might not complete successfully, and in that case a
previously selected target will not be shown. If the target information
download finishes the displayed values are updated again (to show target status
information).


git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31546 a1c6a512-1295-4272-9138-f99709370657
2012-01-03 21:52:19 +00:00
Dominik Riebeling
2b04f7bba5 Remove trailing whitespaces.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31545 a1c6a512-1295-4272-9138-f99709370657
2012-01-03 21:48:27 +00:00
Dominik Riebeling
1f0e653038 Fix cross compiling on OS X.
- The OS X specific flags must not be set when cross compiling. Check for a
  MinGW compiler on OS X before adding them.
- Do not set CC explicitly in chinachippatcher, it will be set from Rockbox
  Utility's Makefile.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31527 a1c6a512-1295-4272-9138-f99709370657
2012-01-02 17:45:16 +00:00
Dominik Riebeling
d7b8b10fec Remove unnecessary include.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31526 a1c6a512-1295-4272-9138-f99709370657
2012-01-02 17:09:30 +00:00
Dominik Riebeling
97ac4c0e34 Rockbox Utility: update building libs.
- Build libs in a libs/ folder below the build folder. This makes it easier to
  remove them when cleaning the build directory.
- Pass flags via environment instead as parameters to make. Hopefully fixes
  problems when using QtCreator on Windows.
- Respect silent config option when calling the lib Makefiles.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31525 a1c6a512-1295-4272-9138-f99709370657
2012-01-02 16:59:29 +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
Dominik Riebeling
8c6c6a6b20 libtools.make: allow overriding variables via environment.
Simplify a bit while at it as well.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31523 a1c6a512-1295-4272-9138-f99709370657
2012-01-02 16:59:22 +00:00
Dominik Riebeling
57a0ebb164 Rockbox Utility: recognize Nano 6th gen as unsupported device.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31436 a1c6a512-1295-4272-9138-f99709370657
2011-12-26 09:06:21 +00:00
Dominik Riebeling
893666a734 Rockbox Utility: add description and helper code for VS.
For building Rockbox Utility with Visual Studio some extra steps need to be
done. Visual Studio is also lacking some C99 standard headers. Add the missing
headers (from clang / msinttypes) and a Makefile to automate the extra steps.
See the README file for other requirements and necessary steps.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31407 a1c6a512-1295-4272-9138-f99709370657
2011-12-22 21:27:21 +00:00
Frank Gevaerts
0cb0b50236 Remove duplicate include. Thanks to Jean-Louis Biasini for spottin this.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31383 a1c6a512-1295-4272-9138-f99709370657
2011-12-20 20:32:51 +00:00
Rafaël Carré
51ff206e23 rbutil: enable clipzip
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31382 a1c6a512-1295-4272-9138-f99709370657
2011-12-20 19:19:43 +00:00
Rafaël Carré
e4614c4208 mkamsboot: update README
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31380 a1c6a512-1295-4272-9138-f99709370657
2011-12-20 18:48:20 +00:00
Rafaël Carré
6a94f6b551 mkamsboot: don't boot OF when USB is plugged
USB now works on all models

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31379 a1c6a512-1295-4272-9138-f99709370657
2011-12-20 18:48:14 +00:00
Dominik Riebeling
13b2f53813 Rename libchinachip to libchinachippatcher.
Use the same name for output file / library and folder to simplify
dependencies.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31334 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 21:34:48 +00:00
Dominik Riebeling
84205025c7 libtools.make: add rule to build a DLL.
This only works for Windows, so you need to use it on Windows or set CROSS
accordingly.

Update mkamsboot to make mkamsboot.dll build and link against ucl.dll.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31333 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 21:10:29 +00:00
Dominik Riebeling
70837fb1ed sansapatcher, ipodpatcher: use MinGW C99 version of stdio functions.
The MinGW versions know additional format identifiers. Use those versions to
avoid warnings. See also http://article.gmane.org/gmane.comp.gnu.mingw.user/27539/

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31331 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 21:10:21 +00:00
Dominik Riebeling
6c6123143f ipodpatcher: move linker only options out of CFLAGS.
OS X requires some linker-only options. Remove them from CFLAGS to avoid a
compiler warning.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31330 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 20:25:56 +00:00
Dominik Riebeling
8be58fd8ec Rockbox Utility: use libsansapatcher.
Instead of building sansapatcher sources directly build and use the library.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31329 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 20:10:36 +00:00
Dominik Riebeling
1828bb8ea3 sansapatcher: allow building without bootloaders.
There is no need to always build sansapatcher with embedded bootloaders. Allow
building without similar to ipodpatcher. Interactive mode will obviously not be
available if built without bootloaders.
Fix rules for creating the source files for the embedded bootloaders.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31328 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 20:10:33 +00:00
Dominik Riebeling
472c02d0f7 sansapatcher: use libtools.make.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31327 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 20:10:29 +00:00
Dominik Riebeling
d992536285 Rockbox Utility: use libipodpatcher.
Instead of building the sources directly build and link libipodpatcher.a as
done for other tools.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31326 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 19:34:18 +00:00
Dominik Riebeling
98becd2076 mkamsboot: fix building as universal library.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31325 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 18:59:38 +00:00
Dominik Riebeling
b056e027fc ipodpatcher: convert to use libtools.make.
This allows building libipodpatcher, which will make it possible to stop
building ipodpatcher files in Rockbox Utility directly. Move some OS X common
values to libtools.make as well (might fix building libmkamsboot on OS X).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31324 a1c6a512-1295-4272-9138-f99709370657
2011-12-16 18:35:01 +00:00
Dominik Riebeling
d16cefca95 mkamsboot: convert to use libtools.make.
As a result building mkamsboot for Rockbox Utility will now respect BUILD_DIR,
which should eliminate all possibly remaining issues with dualboot.o.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31283 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 18:45:05 +00:00
Dominik Riebeling
dfcb85e625 chinachippatcher: convert to use libtools.make.
While at it break some long lines in the program output as well.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31282 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 18:45:00 +00:00
Dominik Riebeling
17a0c83482 Break some long lines.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31281 a1c6a512-1295-4272-9138-f99709370657
2011-12-15 18:44:57 +00:00
Dominik Riebeling
911a355d76 Pass version when building libmktccboot for Rockbox Utility.
On OS X if no version is passed a string containing a space gets generated in
some situation, which will break building. Explicitly set version to some known
string as done for other libs.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31262 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 22:24:41 +00:00
Dominik Riebeling
b52a9cc976 mkimxboot: use common Makefile.
Change mkimxboot to use the common Makefile. This will fix the object file
clash when building libmkimxboot for linking with Rockbox Utility (will be
needed for FS#12402).

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31261 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 22:00:47 +00:00