Commit graph

1322 commits

Author SHA1 Message Date
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
Dominik Riebeling
0d4af186c7 Rockbox Utility: pass BUILD_DIR to libs Makefiles.
Pass a subdirectory of the build folder as BUILD_DIR to the called Makefiles.
Not all do respect the value yet.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31260 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 22:00:23 +00:00
Dominik Riebeling
6b8f0b0267 mkmpioboot: use common Makefile.
Extend common libtools.make with libucl dependency, which will be needed by
other tools as well. Update mkmpioboot.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31259 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 22:00:06 +00:00
Dominik Riebeling
b24e562061 Initial common Makefile for Rockbox Utility tools / libs.
Introduce a new Makefile holding the common functionality for building tools
used by Rockbox Utility (*patcher / mk*boot). This converts mktccboot to use
the common Makefile.

Also introduces BUILD_DIR variable to control the path used for placing
intermediate objects into. This should avoid filename clashes between different
tools. Filenames are (still) assumed to be unique withing a single tool.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31257 a1c6a512-1295-4272-9138-f99709370657
2011-12-14 21:59:37 +00:00
Dominik Riebeling
9c19e875fc Remove duplicate entry in russian translation.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31236 a1c6a512-1295-4272-9138-f99709370657
2011-12-13 23:20:36 +00:00
Bertrik Sikken
c9a8031695 mkamsboot: add support for sansa clip zip firmware version v1.01.18
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31195 a1c6a512-1295-4272-9138-f99709370657
2011-12-10 09:45:28 +00:00
Dominik Riebeling
5ffd2f7598 Various adjustments for MSVC.
- MSVC uses different namings in some places. Adjust the sources via the
  preprocessor if build with MSVC.
- MSVC doesn't know about __func__, use name instead.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31185 a1c6a512-1295-4272-9138-f99709370657
2011-12-08 21:59:13 +00:00
Dominik Riebeling
6bc8916a58 QuaZip: change the order of void-casts.
MSVC requires void-casting of unused variables to be done after variable
definitions. Change the order, no functional changes.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31171 a1c6a512-1295-4272-9138-f99709370657
2011-12-07 20:13:18 +00:00
Dominik Riebeling
16f48e8ebc Rockbox Utility: disable some pointless warnings when building with VS.
Visual Studio warns about the usage of some standard library functions (like
sprintf) as part of the SDL. Since we won't change using this functions for at
least portability reasons we really don't need to know about them.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31170 a1c6a512-1295-4272-9138-f99709370657
2011-12-07 20:13:14 +00:00
Dominik Riebeling
e23adb5386 ipodpatcher: guard platform specific files.
Use the preprocessor to make platform specific files compile as empty files if
built for a different platform. This removes the need to distinguish in the
Makefile and simplifies creating a libipodpatcher.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31169 a1c6a512-1295-4272-9138-f99709370657
2011-12-07 20:06:48 +00:00
Dominik Riebeling
f83a3d0ac4 Make rbutil tools Makefile more silent.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31168 a1c6a512-1295-4272-9138-f99709370657
2011-12-07 19:34:45 +00:00
Dominik Riebeling
38f03d4eae sansapatcher: factor out handling of bundled bootloaders.
Instead of handling bundled bootloaders in the sansapatcher functions leave
that to the caller. This removes the need to have Rockbox Utility specific
parts in sansapatcher. sansa_add_bootloader() now operates on an already loaded
bootloader. For loading a convenience function sansa_read_bootloader() is
added. This also introduces a new check on loading to prevent installing an
e200 bootloader on a c200 (and vice versa).

These changes will allow building a libsansapatcher for linking with Rockbox
Utility later.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31144 a1c6a512-1295-4272-9138-f99709370657
2011-12-04 19:40:43 +00:00
Dominik Riebeling
38890ac6dc sansapatcher: guard platform specific files.
Use the preprocessor to make platform specific files compile as empty files if
built for a different platform. This removes the need to distinguish in the
Makefile and simplifies creating a libsansapatcher.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31143 a1c6a512-1295-4272-9138-f99709370657
2011-12-04 19:40:35 +00:00
Dominik Riebeling
346f1e0fc6 Add double inclusion protection and prepare for use with C++ code.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31138 a1c6a512-1295-4272-9138-f99709370657
2011-12-04 13:54:18 +00:00
Dominik Riebeling
2d2fa5c128 Add missing include.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31137 a1c6a512-1295-4272-9138-f99709370657
2011-12-04 13:54:07 +00:00
Dominik Riebeling
7de4f64bb6 Rockbox Utility: build chinachippatcher as library.
Update the chinachip Makefile based on the mkamsboot one, build and link as
library for Rockbox Utility.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31117 a1c6a512-1295-4272-9138-f99709370657
2011-12-03 09:44:21 +00:00
Dominik Riebeling
fd5f16c070 Consolidate libraries list in project file a bit.
Instead of having to mention each library several times (extra targets, target
dependencies, linker flags) create a list of libraries we build directly and
create all other lists from them. Note that libraries get processed in the
order of the list, which is important for linking order. As a result libucl
needs to come last.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31116 a1c6a512-1295-4272-9138-f99709370657
2011-12-03 09:41:48 +00:00
Dominik Riebeling
059cb71c96 Extend return codes for chinachip_patch().
Instead of passing error messages using a callback function (which becomes
awkward when used from a C++ class object) return distinct error codes from
chinachip_patch(). This also removes the kludge to support translations for
Rockbox Utility and moves the strings to translate to the installation class
where they belong.

As a side effect info messages won't be passed to Rockbox Utility anymore, but
the details of the patching progress aren't of that much interest for the user
anyway.

git-svn-id: svn://svn.rockbox.org/rockbox/trunk@31115 a1c6a512-1295-4272-9138-f99709370657
2011-12-03 09:41:44 +00:00