path: root/rbutil/rbutilqt/
AgeCommit message (Collapse)AuthorFilesLines
2020-11-07rbutil: Explicitly enable svg module.Dominik Riebeling1-2/+1
Since most icons are svg now we need this. Linux implicitly enables it, Windows doesn't. Change-Id: Idbc0610c9ca3c0ceddd48a2af7e71d5348ba10f6
2020-11-06rbutil: Simplify qmake check.Dominik Riebeling1-1/+1
Change-Id: I68f2584ba246f120af8841d1a4141b71c9e3b5c0
2020-10-29rbutil: More Qt6 compatibility.Dominik Riebeling1-0/+3
Qt6 doesn't contain QTextCodec anymore but instead provides it in the optional core5compat module. Change-Id: Ia45985a32df3826faf041981b8935c839946e5c9
2020-10-22rbutil: Rename libbzip2.a to libbz2.a.Dominik Riebeling1-6/+5
When cross compiling for Windows (at least mxe) links bz2, causing both our copy and the system one getting linked, resulting in symbol clashes. Make sure we use the same name as the system one, so the linker can pick one of both. Change-Id: I16213a20f48d4e192cd0b756931f9ccb449fd1c0
2020-10-21rbutil: Fix linking zlib on Windows.Dominik Riebeling1-4/+1
With Qt4 zlib was linked implicitly (and explicitly linking it caused errors). This was a Qt issue that has been resolved with (at least current) Qt5, now we need to explicitly link zlib on native Windows. Change-Id: Ia5a6bdc83a39f6f5629c34ed835d2272a887f161
2020-10-18rbutil: Pass isysroot to rbutil libs on macOS.Dominik Riebeling1-0/+6
On macOS we pass the full path to the compiler. On recent versions this causes the compiler to not find its SDK path, this needs to get passed via the isysroot option. Change-Id: Iea2820e1755cc80e12691119dfa31d70938ea511
2020-10-18sbtools: convert crypto to libtomcrypt.Dominik Riebeling1-4/+2
Replace the use of crypto++ with tomcrypt, which is much smaller and C. This gets rid of various build issues for systems that don't ship crypo++ (i.e. everything except Linux.) Change-Id: Ic0799e17b94935c71b14765cf9a2a7ea2b0adc7a
2020-10-11rbutil: Add project file for building multiple binaries.Dominik Riebeling1-26/+0
To use ipodpatcher and sansapatcher as external binaries (so we can do proper permission elevation) we need to build them using qmake as part of the main build. Add a subdirs template based project file to do that, and project files for the patchers. Move Linux appimage rules one level up, since it needs to include the patchers as well. Change-Id: I63ee59372668f4319402df65a77a6f04521d133b
2020-08-16rbutil: Qt6: allow building without Multimedia module.Dominik Riebeling1-1/+4
Qt6 beta doesn't include the Multimedia module. Allow building without, and disable on Qt6 for now. Change-Id: Ie2ad25c81d9c62c8c6e8efaf8309b3600afce1d0
2020-08-08rbutil: Drop Qt4 support.Dominik Riebeling1-39/+9
The last version of Qt4 was released in 2011, time to officially move to Qt5. Change-Id: I57d2261bfa44ec824ef4a406f60ce1bd9bc52589
2020-08-07rbutil: Drop support for libusb0.Dominik Riebeling1-6/+2
libusb1 is maintained and stable since years. No need to keep the old implementation around. Change-Id: I25a4c5643fc9a88eaad3e8f2f7e1dd705be080e0
2020-08-06rbutil: Explicitly link bzip2 only on non-Windows.Dominik Riebeling1-1/+7
When building for Windows (at least using mxe) bzip2 clashes with existing symbols. This seems to be a similar issue as with zlib. Don't link it explicitly, so the linker uses the existing symbols. Fixes building for Windows. Change-Id: I7a1e980542961f3e7f8febedd6c0b8f04a6f6ec0
2020-07-26rbutil: Always use Qt Multimedia to play TTS preview.Dominik Riebeling1-7/+1
We're using it on Windows and macOS, there's no reason to not do so on Linux. Change-Id: I6e4d9006eff22fd4bf6b882407a5497b2f8cdd2f
2020-06-30rbutil: Fix filename for additional rule to create dmg image on macOS.Dominik Riebeling1-1/+1
2020-06-21rbutil: Fix compiling 32bit Rockbox Utility on 64bit Linux.Dominik Riebeling1-1/+2
Pass the machine options for libs to the c++ compiler as well. Change-Id: I56bfbbe4aca4b3a7b86bb0d5323a1f7d78d4f60c
2020-06-20rbutil: Add extra build rule on Linux to create AppImage.Dominik Riebeling1-0/+27
Build the "appimage" target to create an AppImage file from the binary. The needed linuxdeploy tools will be downloaded first. Change-Id: Ia1e8977ea7689fb547c5d1a6abe6448a94f1b1af
2020-04-09rbutil: Add bspatch and libbzip2Solomon Peachy1-1/+1
This is to enable binary patching of Hiby-based firmware files Note that noting in rbutil uses this yet. Change-Id: I03ac824dd7402d508eb4e857ad78f184eb0d0243
2019-11-10rbutil: fix windows release buildFranklin Wei1-1/+4
This fixes two of them: not finding the lrelease binary and not compiling for C++11 (which is required by some Qt headers now). Change-Id: I3c0eb3c2002c3ce7a2eeea877db5fa6942c9b2ba
2019-11-09rbutil: fix windows cross compile (via M cross environment)Franklin Wei1-2/+5
This fixes a couple of issues when cross-compiling for windows: - lib builds (i.e. mks5lboot) were overriding the cross CC/CXX with the native CC, producing incompatible binaries. - Qt made the accessibility plugin part of the core library, so we no longer need to import it. Change-Id: I9d884aee62dfa51d3624a3fa9b99c23b3b375f20
2019-10-28rbutil: add support for iPod Classic 6G bootloaderCástor Muñoz1-1/+1
Change-Id: I0e237a81098a2d4df8d9f5d6deaaab3863a84fc6
2019-01-25Fix host build of mkimxboot, mknwzboot, nwztools, and rbutil with crypto++Solomon Peachy1-1/+3
Necessary to get working builds on my Fedora 29 system. Change-Id: Ia6232427c959629ade9a85fc412738f688facedb
2016-03-27Improve handling of Qt5 subversions on OS X.Dominik Riebeling1-2/+10
Qt 5.6 on OS X requires targeting at least OS X 10.7, while for earlier versions we can still target 10.6. Handle this case and inform the user about the used target version. Change-Id: I78e426037e2966241ab9a63105e04e7366b469ed
2015-05-30Make lrelease detection work on Windows.Dominik Riebeling1-2/+2
Make sure to expand variable before testing. Change-Id: I6b6f11782677c178fe3f2209f84887084940976a
2015-05-30Make lrelease detection work on Windows.Dominik Riebeling1-3/+6
Windows doesn't have which, so building natively on Windows didn't create translations anymore. Use a which-less approach instead. Change-Id: I7b4c40b26d68da54277a148e8e2d76ac81061c8b
2015-05-18Extend project file message output and always run lrelease.Dominik Riebeling1-7/+12
Check for lrelease and always try to run it if found. If not found show a warning. This avoids build problems for certain setups which previously required -config dbg to complete. Change-Id: I60f0f49adc8455743afc5e4d23294ce0729f38d2
2015-05-13Fix libs path for building with MSVC.Dominik Riebeling1-1/+1
Change-Id: Iaa0a20c8bff1faaa191de70d6f02c62dafec1591
2015-05-02Apply -Wno-unused-local-typedefs for gcc only.Dominik Riebeling1-1/+1
Change-Id: I098882ea1c1a3f5265a763046400d79aed8eb43f
2015-05-02Separate logger / quazip project file parts.Dominik Riebeling1-1/+3
Move to separate project include file for better readability and reusability. Change-Id: If75805be8fad4aec8ede600f5c616a9412ac0505
2015-05-02Update quazip to release 0.7.1.Dominik Riebeling1-1/+1
Update to latest quazip release. Note that quazip is now LGPL and not GPL / LGPL dual licensed anymore. Change-Id: Ie1e975b5b546dd31218eef9df472527493fe81e0
2014-03-23Improve MSVC support in project file.Dominik Riebeling1-2/+4
Enable MSVC specifics by checking QMAKESPEC instead of depending on a qmake command line switch. Change-Id: I77f72acd6661d5d7bc5776cc2dc877a11920dc7e
2014-03-22Add msvc qmake config option for building with MSVC.Dominik Riebeling1-3/+8
When building with MSVC we need to add the msvc folder to the include list, and remove the libraries from the dependencies since they need to get built separately. Change-Id: I297787f32495da4541c67bfef549b4d1ad68dd18
2014-03-20OS X: update project file for Qt5 support.Dominik Riebeling1-1/+15
- Qt5 doesn't support PPC anymore, so always build for x86 only. - Qt5 requires the use of the multimedia module (as Windows). Change-Id: I7d54faffe9d2fb557f55234ba7b81a508d92a38b
2013-11-04Fix compiling with MSVC.Dominik Riebeling1-1/+1
MSVC doesn't understand the gcc specific -Wno-unused-local-typedefs option. Don't add it in this case. Change-Id: I7ffb6c0c9c797eaad85975199c386020c464ca7b
2013-11-04Fix cutelogger with MSVC.Dominik Riebeling1-1/+1
We're compiling cutelogger directly, not as DLL. Therefore we must not add __declspec attributes to the header. Change-Id: I41b87fd4ba34dfbcd0d37245ff1c1f279139bb33
2013-11-04Use cutelogger for Rockbox Utility internal trace.Dominik Riebeling1-2/+1
Change tracing from qDebug() to use cutelogger, which is available under the LGPL2.1. This allows to automatically add filename and line number to the log, and also provides multiple log levels. Change-Id: I5dbdaf902ba54ea99f07ae10a07467c52fdac910
2013-06-09Don't pass -Wno-unused-local-typedefs on OS X.Dominik Riebeling1-1/+1
OS X' gcc 4.0 (still used to be able building fat binaries) doesn't ignore that option and instead errors out. Change-Id: Id5927ff04dc606480af9add554eeaa75c169510f
2013-06-09Suppress unused-local-typedefs warning with Qt4.Dominik Riebeling1-0/+5
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-05-10Restructure options passed to libs Makefile.Dominik Riebeling1-16/+16
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 Riebeling1-2/+4
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-04Move building libraries to separate Makefile.Dominik Riebeling1-56/+14
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-04-04Fix Qt5 / MinGW problems.Dominik Riebeling1-0/+3
Add missing multimedia module and update some includes. Change-Id: I98c65c4f2e21e6a63d552669468b1da313520499
2013-01-27Update project file for Qt5 compatibility.Dominik Riebeling1-6/+14
Qt5 splits widgets out of the QtGui to a new QtWidgets module. Change-Id: I35c6437a2e69c25b90989611a683855dfe31da80
2012-05-14Windows: always define UNICODE.Dominik Riebeling1-0/+1
Change-Id: Id188cc03118d7dd769d838f8481e44ba31406dbf
2012-04-28Don't assume the compiler to be gcc / g++.Dominik Riebeling1-3/+2
When setting up qmake to use ccache keep using the compiler as defined in the qmakespec instead of assuming it always to be gcc / g++. Change-Id: I00ce32158ca4a5d67517347cae2e86b77051b3c9
2012-02-14Move manual tab contents to separate widget.Dominik Riebeling1-1/+2
Create a new widget which holds the contents of the manual tab and its logic. Unify its display / download code. Fixes FS#12587, which was caused by duplicated code. Change-Id: I5721d2a95ebeaf80481c1fd149eda22cf1328501
2012-01-29Use relative paths to quazip includes.Dominik Riebeling1-1/+1
Shorten the include list a bit by using relative paths. Change-Id: I91fa7b292179c9f8cd0c257ef9b8d26bca34963b
2012-01-05Update OS X library building.Dominik Riebeling1-16/+9
- 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:// a1c6a512-1295-4272-9138-f99709370657
2012-01-04Rockbox Utility: add support for mkimxboot bootloader.Dominik Riebeling1-1/+7
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:// a1c6a512-1295-4272-9138-f99709370657
2012-01-02Rockbox Utility: update building libs.Dominik Riebeling1-41/+47
- 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:// a1c6a512-1295-4272-9138-f99709370657
2011-12-16Rename libchinachip to libchinachippatcher.Dominik Riebeling1-4/+4
Use the same name for output file / library and folder to simplify dependencies. git-svn-id: svn:// a1c6a512-1295-4272-9138-f99709370657