Add qt4 '-psql_config' configure option and use it to set
pg_config path in configure step instead of legacy PSQL_LIBS
environment variable.
Fixes [1]:
PostgreSQL support cannot be enabled due to functionality tests!
Turn on verbose messaging (-v) to ./configure to see the final report.
If you believe this message is in error you may use the continue
switch (-continue) to ./configure to continue.
make: *** [/ssd1/thomas/autobuild/instance-0/output/build/qt-4.8.6/.stamp_configured] Error 101
Patch suggested upstream ([2]).
[1] http://autobuild.buildroot.net/results/1e9/1e949d4593836bc45a55e071cc54ff9c00fad8ae
[2] https://codereview.qt-project.org/108345
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Qt has some assembly that doesn't exist in thumb1 mode.
So, force arm mode for Qt
Signed-off-by: Richard Genoud <richard.genoud@gmail.com>
Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
There are two possible configurations for Qt4 installation: standard
(with X11) and embedded (for framebuffer). Both configurations cannot be
used together for one installation and some options are specific to one
configuration or the other.
Add a choice to select the standard or the embedded installation to add
X11 support.
The integration is done in order to make maximum use of the current
configuration logic, for example by using the same mkspecs files.
Signed-off-by: Hadrien Boutteville <hadrien.boutteville@gmail.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: "Yann E. MORIN" <yann.morin.1998@free.fr>
Tested-by: Gwenhael Goavec-Merou <gwenhael.goavec-merou@trabucayre.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The Buildroot coding style defines one space around make assignments and
does not align the assignment symbols.
This patch does a bulk fix of offending packages. The package
infrastructures (or more in general assignments to calculated variable
names, like $(2)_FOO) are not touched.
Alignment of line continuation characters (\) is kept as-is.
The sed command used to do this replacement is:
find * -name "*.mk" | xargs sed -i \
-e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\s*$#\1 \2#'
-e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\s*\([^\\]\+\)$#\1 \2 \3#'
-e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\s*\([^\\ \t]\+\s*\\\)\s*$#\1 \2 \3#'
-e 's#^\([A-Z0-9a-z_]\+\)\s*\([?:+]\?=\)\(\s*\\\)#\1 \2\3#'
Brief explanation of this command:
^\([A-Z0-9a-z_]\+\) a regular variable at the beginning of the line
\([?:+]\?=\) any assignment character =, :=, ?=, +=
\([^\\]\+\) any string not containing a line continuation
\([^\\ \t]\+\s*\\\) string, optional whitespace, followed by a
line continuation character
\(\s*\\\) optional whitespace, followed by a line
continuation character
Hence, the first subexpression handles empty assignments, the second
handles regular assignments, the third handles regular assignments with
line continuation, and the fourth empty assignments with line
continuation.
This expression was tested on following test text: (initial tab not
included)
FOO = spaces before
FOO = spaces before and after
FOO = tab before
FOO = tab and spaces before
FOO = tab after
FOO = tab and spaces after
FOO = spaces and tab after
FOO = \
FOO = bar \
FOO = bar space \
FOO = \
GENIMAGE_DEPENDENCIES = host-pkgconf libconfuse
FOO += spaces before
FOO ?= spaces before and after
FOO :=
FOO =
FOO =
FOO =
FOO =
$(MAKE1) CROSS_COMPILE=$(TARGET_CROSS) -C
AT91BOOTSTRAP3_DEFCONFIG = \
AXEL_DISABLE_I18N=--i18n=0
After this bulk change, following manual fixups were done:
- fix line continuation alignment in cegui06 and spice (the sed
expression leaves the number of whitespace between the value and line
continuation character intact, but the whitespace before that could have
changed, causing misalignment.
- qt5base was reverted, as this package uses extensive alignment which
actually makes the code more readable.
Finally, the end result was manually reviewed.
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Cc: Yann E. Morin <yann.morin.1998@free.fr>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Commit 93917b6980 introduced the
installation of the binary .qm translation files, unconditionally.
This patch introduces an option to disable this behavior, saving
almost 8MB of space.
[Thomas: rename option to BR2_PACKAGE_QT_TRANSLATION_FILES instead of
BR2_PACKAGE_QT_INSTALL_TRANSLATION_FILES, and move its definition
around the installation of examples/demos rather than in the middle of
the options for the different modules.]
Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
When building Qt in a minimal configuration, a couple of Qt modules
(QtNetwork, QtSql, QtTest and QtXml) are built in addition to QtCore,
so they are installed in the sysroot but they are not copied into the
target tree.
Among these modules that could be built but optionally installed, only
QtTest had no option to allow being installed in the target fs.
Thus, programs linking against QtTest would successfully build, but
would miserably fail at runtime due to this missing dependency.
So far, the only package triggering this issue is OpenCV (the highgui
module built with Qt support).
A followup patch will add this missing dependency in OpenCV using this
new option.
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
Reviewed-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
All of qt.mk's target installs ensure that their destinations exist,
except for /usr/lib. So do the same for /usr/lib, for consistency,
and in case some combination of custom fs skeleton plus dependency
on Qt leads to installing without a pre-existing /usr/lib directory.
Signed-off-by: Danomi Manchego <danomimanchego123@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Signed-off-by: Jerzy Grzegorek <jerzy.grzegorek@trzebnica.net>
Reviewed-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The BR2_PACKAGE_QT_JAVASCRIPTCORE option was available to force the
activation or disabling of the JIT compiler in the Qt Javascript
interpreter. However, the JIT compiler is not available for all
architectures, so forcing its activation does not always
work. Moreover, Qt knows by itself for which architectures JIT support
is possible, and will automatically enable it if possible.
Therefore, this option was in fact useless, and causing build problems
when enabled on architectures for which the JIT support was not
available. This commit removes this option and there is no
replacement: Qt will enable JIT at compile time when possible.
Fixes:
http://autobuild.buildroot.org/results/aae/aaeb82753b7654eeca679ded5d0211ceebda3ea2/build-end.loghttp://autobuild.buildroot.org/results/367/3670e4f03ff0ce114c90bd7139243d82c427b52a/build-end.log
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
The Qt translation files are currently created and moved under
$(STAGING_DIR)/usr/translations but not installed on the target.
This patch defines the translations directory to
/usr/share/qt/translations and defines a QT_INSTALL_TARGET_TRANSLATIONS
macro to deploy them from the staging directory to the target directory.
Signed-off-by: Vivien Didelot <vivien.didelot@savoirfairelinux.com>
Reviewed-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Use the following to test:
/usr/share/qt/examples/opengl/hellogl_es2/hellogl_es2 -qws -display powervr
Signed-off-by: Spenser Gilliland <spenser@gillilanding.com>
Cc: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Cc: Sundareson, Prabindh <prabu@ti.com>
Cc: Peter Korsgaard <jacmet@uclibc.org>
Cc: Sinan Akpolat <sinan@linkas.com.tr>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
When selecting the Qt declarative module, all the QML imports was
built and installed to staging, but never installed to the target.
Signed-off-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Acked-by: Alexander Lukichev <alexander.lukichev@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Tested-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Precompiled header implementation is buggy in current Qt as described at
http://comments.gmane.org/gmane.comp.lib.qt.devel/5933.
The only known workaround is currently to add -no-pch to configure.
Fixes build failure terminating with error
compiling ../3rdparty/pixman/pixman-arm-neon-asm.S
cc1: fatal error: .pch/release-shared-emb-arm/QtGui: No such file or directory
compilation terminated.
such as:
http://autobuild.buildroot.net/results/648265012591280fa592a239f86ee39aec2d5fa6/build-end.log
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Finally get rid of all := used for variable definitions in packages,
as we suggest in our manual and during the review of new packages.
While I was at it, I also sometimes added a few missing new lines
between the header and the first variable definition.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The Qt configure option for specifying a custom qconfig.h
file changed from -config to -qconfig. This makes the
corresponding change in qt.mk.
Signed-off-by: Frank Hunleth <fhunleth@troodon-software.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The Qt configuration and installation process is a bit strange, and it
leads the .pc files to contain absolute paths to the staging
directory, while it should only contains paths relative to the staging
directory, because pkg-config already adds the path of the sysroot
automatically to the headers and libraries locations.
This allows the 'pkg-config --cflags' results for Qt libraries to be
correct.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
The upstream URL for Buildroot packages is usually visible in the Config.in
file, not in comments in the Makefile.
Moreover, this URL does not point to the correct upstream project.
Signed-off-by: Luca Ceresoli <luca@lucaceresoli.net>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
In fact, not only qt can install stuff in $(STAGING_DIR)/usr/mkspecs,
but also libraries that wish to integrate with qmake, such as
qwt. However, qmake and al. will look inside $(HOST_DIR)/usr/mkspecs,
so the easiest solution is to have a symbolic link between the two
directories, instead of copying things around.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Closes#4297
Tweak qmake.conf to ensure our cross pkg-config is used, instead of
whatever is first in the path. In order to do this, tweak the
QT_QMAKE_SET to be able to handle variables which aren't prefixed with
QMAKE_.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Thanks to the pkgparentdir and pkgname functions, we can rewrite the
GENTARGETS macro in a way that avoids the need for each package to
repeat its name and the directory in which it is present.
[Peter: pkgdir->pkgparentdir]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
The embedded sqlite module forces FILE_OFFSET_BITS=64 unless
SQLITE_DISABLE_LFS is defined, breaking the build for !largefile toolchains.
Webkit internally builds sqlite, so that's affected as well.
Fix it by passing -DSQLITE_DISABLE_LFS in C/CXXFLAGS for !largefile
builds, similar to how we do it for the standalone sqlite package.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Daniel Mack <zonque@gmail.com>
Acked-by: Daniel Nyström <daniel.nystrom@timeterminal.se>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Now that we use a wrapper for external toolchains (and internal ones
default to the correct setting), we no longer need to explicitly pass
sysroot/march/mtune/mabi/floating point mode in TARGET_CFLAGS.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
qmake is built during the execution of Qt ./configure script, so it is
built just with a normal make, not taking advantage of parallel
compilation. Passing MAKEFLAGS=-j$(BR2_JLEVEL) allows to speed up the
qmake compilation process quite a bit.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>