merge develop

This commit is contained in:
Felix Kauselmann 2018-02-12 21:41:46 +01:00
parent d99a6cb44f
commit 601e70fc85
2 changed files with 35 additions and 28 deletions

View File

@ -11,12 +11,12 @@ from the source dir. For separate builds of YACReader or YACReaderLibrary,
enter their respective subfolders and run the commands from there. enter their respective subfolders and run the commands from there.
The headless version of YACReaderLibrary is located in the YACReaderLibraryServer The headless version of YACReaderLibrary is located in the YACReaderLibraryServer
folder. To build it, enter the folder and run the steps as described above. folder. To build it, enter the folder and run the commands described above.
## Build dependencies: ## Build dependencies:
- Qt >= 5.3 with the following modules: - Qt >= 5.6 with the following modules:
- declarative - declarative
- quickcontrols - quickcontrols
- sql - sql
@ -26,22 +26,21 @@ folder. To build it, enter the folder and run the steps as described above.
- opengl - opengl
- sql-sqlite - sql-sqlite
- network - network
- A pdf rendering backend (optional, see below) - A pdf rendering backend (optional, see below)
- qrencode (optional) - qrencode (optional)
- glu - glu
- (lib)unarr (see below) - (lib)unarr (see below)
Please note that not all of these dependencies are needed at build time. Not all dependencies are needed at build time. For example the qml components in
A good example for this is YACReaderLibrary's GridView mode which will YACReaderLibrary (GridView, InfoView) will only show a white page if the
silently fail and only show a white page if the proper qml modules required qml modules (declarative, quickcontrols) are missing.
(declarative, quickcontrols) are missing. This can also happen if these dependencies are too old (i.e Qt < 5.6 is used).
## Backends ## Backends
### Decompression ### Decompression
YACReader uses [(lib)unarr](https://github.com/selmf/unarr) for comic book YACReader uses [(lib)unarr](https://github.com/selmf/unarr) for comic book archive
decompression. Most Linux distributions don't ship this library yet, so you will decompression. Most Linux distributions don't ship this library yet, so you will
probably have to build it yourself. probably have to build it yourself.
@ -56,9 +55,9 @@ Starting with version 9.0.0 YACReader supports the following pdf render engines:
- poppler (Linux/Unix default) - poppler (Linux/Unix default)
- pdfium (default for Windows and MacOS) - pdfium (default for Windows and MacOS)
- pdfkit (MacOS only) - pdfkit (MacOS only)
- no_pdf (no pdf support) - no_pdf (disable pdf support)
To override the default for a given platform add CONFIG+=[pdfbackend] as an options To override the default for a given platform add CONFIG+=[pdfbackend] as an option
when running qmake. when running qmake.
While the Poppler backend is well tested and has been the standard for YACReader While the Poppler backend is well tested and has been the standard for YACReader

View File

@ -11,12 +11,25 @@ QT_VER_MIN = $$member(QT_VERSION, 1)
lessThan(QT_VER_MAJ, 5) { lessThan(QT_VER_MAJ, 5) {
error(YACReader requires Qt 5 or newer but Qt $$[QT_VERSION] was detected.) error(YACReader requires Qt 5 or newer but Qt $$[QT_VERSION] was detected.)
} }
lessThan(QT_VER_MIN, 6) {
warning ("Qt < 5.6 detected. Compilation will probably work, but some qml based components in YACReaderLibrary (GridView, InfoView) will fail at runtime.")
}
lessThan(QT_VER_MIN, 4):!CONFIG(no_opengl) { lessThan(QT_VER_MIN, 4):!CONFIG(no_opengl) {
CONFIG += legacy_gl_widget CONFIG += legacy_gl_widget
message ("Qt < 5.4 detected. Using QGLWidget for coverflow.") warning ("Qt < 5.4 detected. Using QGLWidget for coverflow.")
warning ("QGLWidget based coverflow is scheduled for removal.")
} }
lessThan(QT_VER_MIN, 3) { lessThan(QT_VER_MIN, 3) {
error ("You need at least Qt 5.3 to build YACReader or YACReaderLibrary") error ("You need at least Qt 5.3 to compile YACReader or YACReaderLibrary.")
}
# Disable coverflow for arm targets
isEmpty(QMAKE_TARGET.arch) {
QMAKE_TARGET.arch = $$QMAKE_HOST.arch
}
contains(QMAKE_TARGET.arch, arm.*) {
message("Building for ARM architecture. Disabling OpenGL coverflow ...")
CONFIG += no_opengl
} }
# build without opengl widget support # build without opengl widget support
@ -24,15 +37,10 @@ CONFIG(no_opengl) {
DEFINES += NO_OPENGL DEFINES += NO_OPENGL
} }
#default values for decompression backends # default value for comic archive decompression backend
!CONFIG(unarr):!CONFIG(7zip) { !CONFIG(unarr):!CONFIG(7zip) {
unix {
CONFIG += unarr CONFIG += unarr
} }
win32 {
CONFIG += unarr
}
}
# default values for pdf render backend # default values for pdf render backend
win32:!CONFIG(poppler):!CONFIG(pdfium):!CONFIG(no_pdf) { win32:!CONFIG(poppler):!CONFIG(pdfium):!CONFIG(no_pdf) {