summaryrefslogtreecommitdiff
path: root/rbutil
AgeCommit message (Collapse)Author
2013-06-09Treat arch flags separately when building libraries.Dominik Riebeling
On OS X we're passing -arch twice which dependency generation doesn't like. Since we don't have dependencies that differ between architectures simply don't add them during dependency generation. Change-Id: Ie3d58bf9af31edcacb88345c7debf39eb798e302
2013-06-09Fix temporary files stored in current folder on first start.Dominik Riebeling
If Rockbox Utility has no configuration file on the machine updateSettings() will overwrite the global cache folder settings with an empty string before the value is set properly by the user confirming the configuration dialog. QDir() getting an empty string will result in the current working directory getting used, and thus the temporary files ending up there. On Windows most users are unlikely to have noticed this since running the executable from within the distribution zip file will make Windows execute it in the systems temporary path. Change-Id: I7724a82af403955786798c7380198086837e128f
2013-06-09Suppress unused-local-typedefs warning with Qt4.Dominik Riebeling
gcc 4.8 introduces this new warning which some Qt4 headers triggers. Since we don't want to change Qt simply disable it. The warning doesn't show up when compiling with Qt5, so only disable it for Qt4. Change-Id: Ia8fcf0859e0a370def36bc9b43ed4d096a80db28
2013-06-09Rework langstat.Dominik Riebeling
- Generally improve code and make it compliant to PEP8. - Make it work with Python3 as well. Change-Id: I9e99999c59dc501664c36dd38fcb85fb60d6d9e6
2013-05-11Update mkrk27boot Makefile for libtools.make changes.Dominik Riebeling
Change-Id: Iebcb3be6024c2fa6ec94a38b8bb1cb0c7274eb85
2013-05-11Implement dependency generation in libtools.make.Dominik Riebeling
Automatically generate dependency files for all sources so changes in headers are picked up automatically. Use one dependency file for each source file, since that allows to create them without using external tools (except the compiler of course). Change-Id: I246c1ceb525692547af22a2e32c4bab0c11507e1
2013-05-11Change mkdir -p to work on Windows.Dominik Riebeling
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-11Make libtools compile rule more generic.Dominik Riebeling
Create the object - source dependency internally and use a more generic rule for compiling. Removes the need for explicit rules for source files located in a different folder. This adds the limitation for SOURCES and LIBSOURCES to only hold C files. Change-Id: I56f6a4b1e7df36347cd2f54051e072251f456092
2013-05-10Set APPVERSION globally for extralibs Makefile.Dominik Riebeling
Make sure its value quotes are properly escaped. Otherwise make on Windows causes problems. Also, expand CPPDEFINES only once. Change-Id: I52e91f17626b2596f389811b22abc12d94f721d1
2013-05-10Restructure options passed to libs Makefile.Dominik Riebeling
Setup AR before checking for ccache to avoid adding ccache to ar. Setup CC and CFLAGS in the beginning as well. Quote ar and system speex options to fix building with ccache enabled. Change-Id: I21714f0849e990abeac72dcda52c81474e090934
2013-05-09Only pass AR to extralibs Makefile if the compiler is gcc.Dominik Riebeling
We need this only for cross compiling. Trying to figure the compiler prefix fails if the compiler isn't gcc (i.e. clang), and we only support gcc when cross compiling. Change-Id: I822e1b47ec7e9d7e9fdeae8ccf3b8d417a472ef9
2013-05-09Fix Rockbox Utility building on OS X.Dominik Riebeling
Fix a typo that broke building. Also extend the extralibs Makefile to allow calling it directly. Change-Id: I2d4dd1689a8654a6b092dfcc58d2753423831816
2013-05-04Move building libraries to separate Makefile.Dominik Riebeling
Previously several additional rules were added by qmake to build the required libraries. This has a couple of problems on Windows, requiring the use of a msys shell. Additional variables are passed as environment variables. Windows doesn't understand this. Passing the variables via make command line argument works but make won't be able to change those variables anymore, breaking things. Use intermediate variables passed via make command line that are then exported by the called Makefile. This doesn't work in the generated Makefile since the export lines must not be part of a rule. Also cleans up the project file a bit. Change-Id: Iaffb059ce8bafe17a35bd1e0a74ae7acd966c138
2013-05-04Allow overriding make variables via environment variables.Dominik Riebeling
Fixes cross compiling for Rockbox Utility. Change-Id: I3419cb4c89836ec3bee10072495042b3732fd66b
2013-04-09Add missing USB IDs.Dominik Riebeling
The new autodetection will always use USB IDs to identify players (among other means). Add missing IDs for players the current implementation relies on other means for detection only. Change-Id: I037c23705518210b6ed93b4d13ccb96d933aa198
2013-04-09Change autodetection result to a list.Dominik Riebeling
Both autodetection functionality and the configuration dialog assumed detection to only return one found device. This isn't necessarily true, especially since some players can be detected but detecting their mountpoint might be ambiguous (only if no previous Rockbox installation is present). Instead of returning individual results (found "ok" player, found "error" player etc.) return a list containing an entry for each player. Current autodetection code will never return more than one entry since it doesn't handle multiple devices yet, and the configuration dialog will show an error if multiple devices are found. Thus there is no user visible change yet. Both autodetection and configuration dialog can now get extended to handle multiple devices. Change-Id: I79b763dbd6e7111783194bcc22ab7cc06a4061c1
2013-04-05Fix ipodpatcher on OS X.Dominik Riebeling
Fix a typo and update CC handling for OS X. Change-Id: Icde3cb5956ffe45ee1d610ff34957ed7b17f3f02
2013-04-05Replace the use of uname to get the build output.Dominik Riebeling
Using uname has a couple of problems, especially when cross compiling. Instead check the defines set by the preprocessor to figure the type of binaries it produces. This improves support for cross compiling as it allows to (1) select the correct default target and (2) makes it possible to use separate build folders for different targets. Change-Id: I69a32904dab97755034f2f0d63f8402309d479d2
2013-04-04Fix Qt5 / MinGW problems.Dominik Riebeling
Add missing multimedia module and update some includes. Change-Id: I98c65c4f2e21e6a63d552669468b1da313520499
2013-04-04Rename "interface" parameter.Dominik Riebeling
Current MinGW #defines interface, causing the preprocessor messing up the function parameter. Rename it to avoid this. Change-Id: Id49edbfc056a42456d88c9e260e54844e8b1ca07
2013-04-04Put resource object into object folder.Dominik Riebeling
Use correct path for windres output. Fixes windres running even if no changes are present. Change-Id: I2841113bab9b38f2a03ba2f168b3d8bdb5c102df
2013-04-04Remove unnecessary all target.Dominik Riebeling
The target all is set in libtools.make. Setting it here breaks make knowing about the correct default target when cross compiling. Change-Id: Icdd022094d28e4dcd442e48bb6acd1fd8f9a6ad6
2013-04-04Extend Utils::mountpoints() to allow filtering for supported types.Dominik Riebeling
Instead of trying every mountpoint during autodetection allow filtering out filesystems that are not supported when retrieving the system mountpoints. Change-Id: Ic23a5c804cb7c78c146dbc1af7443c67ce12464e
2013-03-19Encode the password using base64 before storing it to the configuration file.Dominik Riebeling
There are two reasons for this: - QUrl::toEncoded() has problems with some characters like the colon and @. Those are not percent encoded, causing the string getting parsed wrongly when reading it back (see FS#12166). - The password is cleartext in the configuration file. While using base64 doesn't provide any real security either it's at least better than plaintext. Since this program is open source any fixed mechanism to obfuscate / encrypt the password isn't much help either since anyone interested in the password can look at the sources. The best way would be to eventually use host OS functionality to store the password. Change-Id: I6ac49d68211236e540b6ca16481e0e1c196532b7
2013-03-19Add option to temporarily show proxy password.Dominik Riebeling
Change-Id: I9c4394dbe679584a0b0f9b6105714176354adfe6
2013-03-13Remove keyword line.Dominik Riebeling
Change-Id: Ic118b14170bb3eb0237a921f1ffe5c3f50569cc4
2013-03-10mkimxboot: fix usageAmaury Pouly
Change-Id: I049908ac0fe65646906999b7e661a64506bd2594
2013-03-09Default to non-GUI configuration for tests.Dominik Riebeling
Change-Id: Iae0cd3ec7a4bb173bf4032b557f9ae7efb64c67d
2013-03-09ZipInstaller: rename some member variables to be in line with the rest.Dominik Riebeling
Also change the double inclusion protection to match the filename. Change-Id: I5bb64afdb62c87057867f9f9d683f0df239d2efc
2013-03-09Don't leak HttpGet objects in ZipInstaller.Dominik Riebeling
When creating a new HttpGet object schedule any old one for deletion instead of dropping its reference and relying on Qt to clean it up once the parent object is removed. Change-Id: I66f2a6f01c6b6ad3a0dce0eb4fd3eacfaf7e733d
2013-03-09Don't delete ZipInstaller instances directly.Dominik Riebeling
Schedule them for deletion instead of deleting them. That way pending events can still be handled before the main loop deletes them. Fixes crashes on the second download during installation. Change-Id: I7c718dbb0200a64d1aa3bbb6c2839282fb965dec
2013-03-07TTS encoders: allow volume range between 0.0 and 2.0.Dominik Riebeling
SAPI only allowed values from 1.0 to 10.0, making it impossible to turn down the volume of the voice. Increasing the volume by a factor of 10.0 is nothing that is likely to be useful, so change the upper limit to 2.0 and decrease the lower limit to 0.0. Lame allowed values from 0.0 to 1.0, making it impossible to increase the volume of the voice. Change the upper limit to 2.0 as well. Change-Id: I8add103f6e4b3c8f1b11ee2c0ea478727bdc99c1
2013-02-17mkimxtool: increase performance by compiling with O3Amaury Pouly
Change-Id: I3d69801488abec4fbc2a84665614936105f60ad2
2013-02-08Update copyright information for 2013.Dominik Riebeling
We're still working on this. Change-Id: I218d9ad0125950076ef3502e123e75d6f0f1de1e
2013-02-08Create Qt5 compatible version of trace event handler.Dominik Riebeling
Qt5 deprecates the way this was done before. Change-Id: Ic66bce2d1ffcb572a9ed9345abbbbc6bb6475af0
2013-01-29mkimxboot: add a switch to force versionAmaury Pouly
Add a switch to override the product and component version of the sb file. This can usually for target like the Zen X-Fi2 where the upader allows to drop any file named firmware.sb and prints the version: by using a funky version the users can check they got it right. This should not be used on the fuze+ or zenxfi3 because the OF prevents downgrade. Also make rbutil always zero out the option structure passed to mkimxboot, this has already created bugs in the past. Change-Id: I175c5def52c40c2132e11300e2f037d60a4f040e
2013-01-28mkimxboot: add support for 1.23.01 installerAmaury Pouly
Change-Id: Ibce345ec411a189bd4a0a9555d145c4f057d8b15
2013-01-28zenxfi2: rework dualbootAmaury Pouly
The previous dualboot scheme had a major flow: it needed to hold menu to boot OF but the X-Fi2 boot in recovery mode with menu! It was possible but very trick to enter the OF with USB plugged. This code provides a new scheme: - no USB plugged: boot to OF when menu is pressed - USB plugged: boot to OF when power is pressed Change-Id: Ia6e76d3ada1f67137b727daa050cf6c77afbbfb9
2013-01-27Set global cache immediately on startup.Dominik Riebeling
Setting the cache later can result in the system trying to create cache files in the current working directory, since an empty cache path will be treated as current directory. If this happens set the system temporary path. Change-Id: I1623330013d387a966015edd0e1d278c922d9475
2013-01-27Implement test for HttpGet class.Dominik Riebeling
Change-Id: I1df793fd32dafdea999b875452ee832b773d8156
2013-01-27Rewrite HttpGet based on QNetworkAccessManager.Dominik Riebeling
HttpGet used to use QHttp which has been deprecated since a while and has been removed from Qt5. Rewrite the class based on QNetworkAccessManager which is the recommended way these days. Change-Id: I4902309c433a85ec18e157ef3a9f5e60fd0f4b1f
2013-01-27Update project file for Qt5 compatibility.Dominik Riebeling
Qt5 splits widgets out of the QtGui to a new QtWidgets module. Change-Id: I35c6437a2e69c25b90989611a683855dfe31da80
2013-01-27Update Qt includes for compatibility with Qt5.Dominik Riebeling
Change-Id: Ibe400700f6bce0335a2975c6d635e10ae940f932
2013-01-27Replace toAscii() / fromAscii() with Latin1() functions.Dominik Riebeling
Qt5 deprecates the Ascii conversion functions, and the Latin1 functions pretty much do the same. Change-Id: I5dee6a443fcfee6afd3256ee536698bcf65ff896
2013-01-27Themes Window: don't set cache folder on each request.Dominik Riebeling
The Themes Window reuses the download object for getting preview images. Since the object is reused it isn't necessary to set the cache path on each network request. Change-Id: Ibc531e09ad19ede3cab7326d9230bd5188710d98
2013-01-26mkimxboot: add partial support for the Zen X-Fi StyleAmaury Pouly
Change-Id: I3428a398959dfd7fc46175d87fc67acce6a75171
2013-01-26fix styleAmaury Pouly
Change-Id: I169b6712121979453269f5f5238b33cc49cd62b2
2013-01-26mkimxboot: add an option to extract the of without processingAmaury Pouly
Change-Id: Ie370f152f4efff4428ee023a9211b82a77fd1df4
2013-01-26mkimxboot: fix bad return on internal errorAmaury Pouly
Change-Id: I6aec9ec694568c15856b03322208f257181eca21
2013-01-22Remove support for RFC850 timestamps.Dominik Riebeling
RFC850 timeformat isn't y2k compliant. Furthermore, parsing turned out to be broken and it doesn't seem supporting the format is necessary anyway. Change-Id: I062e636a9e016ff1ac49d2a55f00adb1af182576