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.
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:
- Qt >= 5.3 with the following modules:
- Qt >= 5.6 with the following modules:
- declarative
- quickcontrols
- sql
@ -26,22 +26,21 @@ folder. To build it, enter the folder and run the steps as described above.
- opengl
- sql-sqlite
- network
- A pdf rendering backend (optional, see below)
- qrencode (optional)
- glu
- (lib)unarr (see below)
Please note that not all of these dependencies are needed at build time.
A good example for this is YACReaderLibrary's GridView mode which will
silently fail and only show a white page if the proper qml modules
(declarative, quickcontrols) are missing.
Not all dependencies are needed at build time. For example the qml components in
YACReaderLibrary (GridView, InfoView) will only show a white page if the
required qml modules (declarative, quickcontrols) are missing.
This can also happen if these dependencies are too old (i.e Qt < 5.6 is used).
## Backends
### 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
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)
- pdfium (default for Windows and MacOS)
- 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.
While the Poppler backend is well tested and has been the standard for YACReader

View File

@ -1,8 +1,8 @@
#functions to automatically initialize some of YACReader's build options to
#default values if they're not set on build time
#for a more detailed description, see INSTALL.TXT
# functions to automatically initialize some of YACReader's build options to
# default values if they're not set on build time
# for a more detailed description, see INSTALL.TXT
#check Qt version
# check Qt version
QT_VERSION = $$[QT_VERSION]
QT_VERSION = $$split(QT_VERSION, ".")
QT_VER_MAJ = $$member(QT_VERSION, 0)
@ -11,30 +11,38 @@ QT_VER_MIN = $$member(QT_VERSION, 1)
lessThan(QT_VER_MAJ, 5) {
error(YACReader requires Qt 5 or newer but Qt $$[QT_VERSION] was detected.)
}
lessThan(QT_VER_MIN, 4):!CONFIG(no_opengl) {
CONFIG += legacy_gl_widget
message ("Qt < 5.4 detected. Using QGLWidget for coverflow.")
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, 3){
error ("You need at least Qt 5.3 to build YACReader or YACReaderLibrary")
lessThan(QT_VER_MIN, 4):!CONFIG(no_opengl) {
CONFIG += legacy_gl_widget
warning ("Qt < 5.4 detected. Using QGLWidget for coverflow.")
warning ("QGLWidget based coverflow is scheduled for removal.")
}
lessThan(QT_VER_MIN, 3) {
error ("You need at least Qt 5.3 to compile YACReader or YACReaderLibrary.")
}
#build without opengl widget support
# 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
CONFIG(no_opengl) {
DEFINES += NO_OPENGL
}
#default values for decompression backends
# default value for comic archive decompression backend
!CONFIG(unarr):!CONFIG(7zip) {
unix {
CONFIG += unarr
}
win32 {
CONFIG += unarr
}
CONFIG += unarr
}
#default values for pdf render backend
# default values for pdf render backend
win32:!CONFIG(poppler):!CONFIG(pdfium):!CONFIG(no_pdf) {
CONFIG += pdfium
}