Commit Graph

127 Commits

Author SHA1 Message Date
Samuli Piippo
347be657b7 Set iMX device specific compiler flags to QMAKE_CFLAGS
Device specific compiler flags need to go to QMAKE_CFLAGS, so that
they are used also when --force-debug-info is used. Removed separate
_DEBUG and _RELEASE, since the gcc-base provides same defaults.

Change-Id: I6ce0133a1acf419261b7756525185f43581d2a9c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-08-14 12:26:36 +02:00
Allan Sandfeld Jensen
28fe4e3a86 Remove specific maemo/meego codepaths
We no longer support the maemo/meego platform, so we can remove the
specific code for that platform.

Change-Id: Ia7f0730eba2d96794b97b7ca4753f63a2d7bc2a8
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
2014-08-06 15:48:02 +02:00
Xu Feng
99d78b40e9 add support for device linux-arm-hisilicon-hix5hd2-g++
1. add qmake configuration for linux-arm-hisilicon-x5hd2-g++ using the
   arm-linux-gnueabihf-g++ crosscompiler
2. add eglfs platform hooks file: qeglfshooks_hix5hd2.cpp
3. support hisilicon platform hix5hd2

Change-Id: I22bdbe5785d1a6bc77715b8e8aa7caa22b62ddce
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2014-07-02 13:34:07 +02:00
Mathieu Gross
1bf95fbf60 [bcm97425] Fix parameter issue in platformDestroy hook
Change-Id: Ie137314a3a3d480d10d7fe2a8505ce7d5708faba
Reviewed-by: Julien Brianceau <jbriance@cisco.com>
Reviewed-by: Holger Freyther <holger+qt@freyther.de>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-07-01 16:58:31 +02:00
Frederik Gladhorn
dbafabb019 Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
	src/corelib/global/qglobal.h

Change-Id: I03d8b6e07135056baaa1d97c3c63fbe8b25583d9
2014-02-17 11:39:16 +01:00
hjk
9de2853a94 Remove automated generation of dwarf index
The index is only helpful if the version of GDB to
create it uses the same version as the GDB version
that consumes it. Outside the "local development"
scenario this happens only by conincidence, still
we add ~3.6% to the debug library size and face
maintenance issues like QTBUG-34950.

We also don't see the same performance benefit anymore
with recent versions as we did when the feature was
added, so it's best to not create the index anymore.

People who need it, still can add it manually, or
by the 'gdb-add-index' tool that comes with recent
versions of GDB, or trust their distributors to
set up indexes matching their runtime environment.

Task-number: QTBUG-34950
Change-Id: Id4c79fa51fea9622b0891bd9b9b395b948ecb157
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2014-02-16 15:41:30 +01:00
Laszlo Agocs
8c3e0953a4 eglfs: Remove unused variable on raspi
Change-Id: I34749533e4279d151c8954f29a4fc7635e007b19
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2014-01-24 11:33:00 +01:00
Frederik Gladhorn
46791c08e1 Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev 2014-01-21 17:57:54 +01:00
Laszlo Agocs
ad5577df06 Fix eglfs compilation on raspi
For some reason the Raspberry Pi hook includes qeglfscursor.h even
though it is not necessary. Remove this because the file got moved to
eglconvenience.

Change-Id: Ia65f5a8366d750f93eacee49004219e664b52af2
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2014-01-20 19:34:58 +01:00
Frederik Gladhorn
9033977d39 Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
	src/corelib/global/qglobal.h
	src/corelib/tools/qstring.cpp
	src/gui/image/image.pri
	src/gui/image/qimage.cpp
	src/plugins/platforms/cocoa/qcocoawindow.h
	src/plugins/platforms/cocoa/qcocoawindow.mm
	src/plugins/platforms/eglfs/qeglfshooks_stub.cpp
	tests/auto/corelib/io/qstandardpaths/tst_qstandardpaths.cpp

Change-Id: I3b9ba029c8f2263b011f204fdf68c3231c6d4ce5
2014-01-20 18:18:59 +01:00
Laszlo Agocs
87d2fa5f84 eglfs: Allow using a different framebuffer device
Right now /dev/fb0 is hardcoded. This is not ideal. Therefore
QT_QPA_EGLFS_FB is introduced. This environment variable can be set to
a different framebuffer device. Once it is set, eglfs will use the
specific device. This is similar to linuxfb's fb=... plugin parameter.

The actual behavior depends on the board-specific implementations.
For now only iMX6 has real support. It extracts the index from the
device name as bind the EGL display to the corresponding framebuffer
using the vendor-specific fbGetDisplayByIndex(). Other hooks can
follow suit later on.

With this patch eglfs is at least on par with linuxfb, meaning that,
if the board supports it, different apps can run on different screens.

Task-number: QTBUG-36113
Change-Id: Ia3c88bd06e108bc668433e3c5c3fce34a5a0e73d
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
2014-01-16 15:52:21 +01:00
Thiago Macieira
1b12c0608b Remove runtime detection of Neon on ARM CPUs
Now the only way to enable Neon support is to change the mkspec.

[ChangeLog][Important Behavior Changes] Qt no longer checks for
support for the Neon FPU on ARM platforms at runtime. Code optimized
for Neon must be enabled unconditionally at compile time by ensuring
the compiler supports Neon. You may need to edit your mkspec for that.

Task-number: QTBUG-30440
Change-Id: I4df9b2bf3cd022f8ed70f02f16878cb2cb3fe6fb
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2014-01-16 02:59:49 +01:00
Wolfgang Bremer
fe61f2d6b2 Rename BlackBerry arm mkspecs to be aligned with NDK structure
The current NDK uses CPUVARDIR variable to define whether x86 or armle-v7 is used.
Therefore, the whole structure uses these two definitions to separate simulator
and device builds. Renaming blackberry-armv7le-qcc to blackberry-armle-v7-qcc
allows to directly use CPUVARDIR during Qt5 builds.
For compatibility reasons the old folder is kept and includes the new qmake.conf.

Change-Id: Ia7feeeabe16eda48140a65178af28cbb9bd085a9
Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com>
2013-10-23 19:09:54 +02:00
Andy Nichols
b7b2bdef15 linux-rasp-pi: Remove custom cursor code
This code was added as an optimization for showing a mouse cursor on
the Raspberry Pi.  What happens though is while the mouse cursor does
move more smoothly, the actual application becomes less smooth when the
mouse cursor is moved.  By removing the custom cursor code, performance
will no longer be effected by rendering a moving mouse cursor.

Change-Id: I9f8ac6c236cd4ff6d8e1d999a461c3e6db75d7e3
Reviewed-by: Samuli Piippo <samuli.piippo@digia.com>
Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
2013-10-17 09:50:58 +02:00
Thomas Senyk
76359dab8e eglfs/imx6: enable double buffering and vsync by default
Enabling vsync and double buffering improves the overall impression.
Enabling by default helps to get the best "out of the box"

If not desired, one can disable this behavior via:
export QT_EGLFS_IMX6_NO_FB_MULTI_BUFFER=1

Change-Id: I21ce5366ea5829140d8103cf2dbd8c487d079db6
Reviewed-by: Donald Carr <sirspudd@gmail.com>
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-10-11 18:47:27 +02:00
Laszlo Agocs
9bf820ce47 Fix device-specific eglfs hooks to provide createNativeWindow correctly
Change-Id: I21aa17de7a79278d41b30a7590603c3382607673
Reviewed-by: Gunnar Sletta <gunnar.sletta@digia.com>
2013-09-26 18:45:16 +02:00
Dario Freddi
90005fae17 qeglfshooksrpi: update vc_dispmanx_element_change_attributes
Remove the extern prototype as it's now defined in latest
firmware headers correctly. Moreover, the signature of the function
changed. This patch fixes both issues.

Change-Id: I0114b436dbaf5a171e6429a1e3760e292c7152cf
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-09-16 23:46:39 +02:00
Frederik Gladhorn
5c23199d4e Merge remote-tracking branch 'origin/stable' into dev
Conflicts:
	configure
	mkspecs/macx-xcode/Info.plist.app
	mkspecs/macx-xcode/Info.plist.lib
	qmake/doc/qmake.qdocconf
	src/corelib/global/qglobal.h
	tests/auto/other/exceptionsafety/exceptionsafety.pro
	tests/auto/widgets/widgets/qcombobox/tst_qcombobox.cpp

Change-Id: I3c769a4a82dc2e99a12c69123fbf17613fd2ac2a
2013-08-14 09:06:31 +02:00
Jan Arne Petersen
ba77bb34dd eglfs/imx6: Implement platformDisplay() in hooks
Return the native display created in QEglFSImx6Hooks in
platformDisplay().

Change-Id: I2b28ac66dce12a1054fc2f78dbfad0723f8e5688
Reviewed-by: Andy Nichols <andy.nichols@digia.com>
2013-08-06 15:52:59 +02:00
Tomasz Olszak
f2a611ce6c Fixed mkspecs/devices/linux_device_post.conf for non-arm platforms.
Now arm specific -mfloat-abi flag is added to compiler flags
only for arm architecture in linux_arm_device_post.conf.

Change-Id: Ie77ac6e0717d9d1fd9c14e1d6a26e86f08ab418c
Reviewed-by: Jarosław Staniek <staniek@kde.org>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-07-24 18:58:24 +02:00
Thiago Macieira
bea3ae7669 Add QMAKE_NM to the mkspecs
We'll use nm to get the listing of symbols in the next commit.

The -P option is "portable", which sounds like a good idea. I don't
have access to any of the commercial Unix systems, but I do remember
them printing a different format than GNU binutils's nm.

Change-Id: If6f80624bedaf2b1dabf608e16aa097d9910d739
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-06-10 16:46:06 +02:00
Axel Waggershauser
5fcf441392 Fix '=' alignment and replace tabs in *.conf (whitespace only change)
Replace all tabs with proper space characters and consistently align
the '=' characters. The default alignment for the '=' of 25 characters
has been left as is to get a minimal diff. Lines with the '=' further
to the right and those belonging to 'proper code (TM)' have not been
touched.

The work was mostly done using the following python script (might
come in handy again...):

import sys, re
indent_eq = 25 + 0*4 # 25 characters was the most widely used indentation for the '=' character
p = re.compile(r'(\w+)[ \t]*([\-\+]?)(=$|= )[ \t]*(.*$)')

for fn in sys.argv[1:]:
    with open(fn, 'r+') as f:
        lines = []
        nl_count = 0
        continuity_indent = None
        for l in f:
            m = p.match(l)
            nl = l
            if m:
                n_spaces = max(m.start(3), indent_eq - 1) - len(m.group(2)) - len(m.group(1))
                if m.group(2) and m.start(2) >= indent_eq-1 and m.start(2) % 4 == 0:
                    n_spaces -= 1 # left-shift '+=' by one if the '+' is aligned to a multiple of 4
                n_spaces = max(1, n_spaces) # we want at least one space before '='/'+='
                nl = m.group(1) + ' '*n_spaces + ''.join(m.group(2,3,4)) + '\n'
                continuity_indent = nl.find('= ') + 2 if l[-2] == '\\' else None # remember indent on '\\$'
            elif continuity_indent:
                nl = ' '*continuity_indent + l.lstrip()
                if l[-2] != '\\': # check when to stop the continuation
                    continuity_indent = None
            elif l.startswith('#'):
                nl = l.expandtabs(2)
            if l != nl:
                nl_count += 1
            lines.append(nl)
        if nl_count > 0:
            print fn, nl_count, len(lines)
            f.seek(0)
            f.writelines(lines)
            f.truncate()

Change-Id: I1d2870d0a2fe2e30d398c140fe523e69dd20c81b
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-03-27 17:16:37 +01:00
Volker Krause
a3f74835f8 raspberry pi: add /opt/vc/include/interface/vmcs_host/linux to GL includes
This matches upstream changes on https://github.com/raspberrypi/firmware/

Change-Id: Ie28c2fa574d5cd097c033926970db40e8904e42e
Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com>
2013-03-27 08:36:10 +01:00
Rafael Roquetto
d1308232d3 Qnx: Add BlackBerry Playbook config token
Change-Id: I31367b6c9b20fdfce1c60c4b9f0b213aba1872e4
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-03-06 21:50:28 +01:00
Sean Harmer
e37d579183 Add device mkspec for i.MX53 devices
This is tested with eglfs plugin on the Yocto Project's Poky
distribution.

Change-Id: I73edd66d6cd62febb2f699ac5b1ca1f1c0dea449
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Andreas Holzammer <andreas.holzammer@kdab.com>
Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
2013-02-25 21:24:37 +01:00
Sergio Ahumada
48e0c4df23 Update copyright year in Digia's license headers
Change-Id: Ic804938fc352291d011800d21e549c10acac66fb
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2013-01-18 09:07:35 +01:00
Rafael Roquetto
13a1e7a444 Device mkspec for BlackBerry Playbook
Change-Id: I4a437ce2da7c94b49c747e9fcdc9ec622ef51ddc
Reviewed-by: Donald Carr <sirspudd@gmail.com>
Reviewed-by: Sérgio Martins <sergio.martins.qnx@kdab.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-01-16 16:06:28 +01:00
Milian Wolff
90cb4d8e2e Fix QtBase cross compilation in debug mode for iMX6 targets.
The platform specific CFLAGS, most notably -march=armv7-a, were only
added to QMake's _RELEASE flags but not to the _DEBUG flags.
This then resulted in strange compilation errors such as this one:
http://qt-project.org/forums/viewthread/22141

Change-Id: Ib47996c6946b043294437e8543827da270df836d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2013-01-14 18:24:31 +01:00
Thomas Senyk
07e0c4c98d updating qeglfshooks_imx6.cpp to 12.09.01 (L3.0.35) opengl-drivers
Change-Id: Id19c1e99ca5c6a28c61f67b76181ebf85fd20a37
Reviewed-by: Otavio Salvador <otavio@ossystems.com.br>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
2012-12-14 11:02:47 +01:00
Sergio Ahumada
0df026de86 Stop using the name "Trolltech" in QSettings
Also change Trolltech for QtProject in other places

Task-number: QTBUG-23269
Change-Id: Ie4e344f23cab77c575562d18b481b3369ce30491
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
2012-12-03 03:47:08 +01:00
Thomas Senyk
38a6d7e7a1 Introduce a Tegra2 mkspec to the device specs
Change-Id: I16275f2f289a78e3217d765934b999b188005c14
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2012-10-08 17:27:51 +02:00
Thomas Senyk
fcf12a214c Simplify the imx6-device-mkspec
This change is possible due to commit 18654058
As it's now possible to use configure's -sysroot without
gcc's --sysroot, it's possible to use configure's pkg-config setup
(which comes with its -sysroot). This gives the possibility to
simplify the mkspec and be in line with the other device-mkspecs

Change-Id: I0f34ec2c5c7b06334ad3c1605001c0803272b027
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Paul Olav Tvete <paul.tvete@digia.com>
2012-10-08 17:27:29 +02:00
Iikka Eklund
be15856f61 Change copyrights from Nokia to Digia
Change copyrights and license headers from Nokia to Digia

Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
2012-09-22 19:20:11 +02:00
Oswald Buddenhagen
8a728b9a4a add missing maemo platform announcement to n9 spec
Change-Id: I24855dc3fdfcc19a81f7e030c9dfbbdddd2bb552
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
2012-09-21 02:44:22 +02:00
Laszlo Papp
940a4d0318 Rename the N9 device mkspecs folder to match the *-maemo* regex
Change-Id: I0c7b74d67f44d776a74671d38bbc0f2424974c2c
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Romain Pokrzywka <romain.pokrzywka@kdab.com>
Reviewed-by: Simon Hausmann <simon.hausmann@nokia.com>
2012-09-14 15:23:15 +02:00
Oswald Buddenhagen
6a3a234742 centralize initialization of CONFIG in mkspecs
"CONFIG += qt warn_on release link_prl" is in every single spec (though
for link_prl there is one genuine exception and two apparent omissions).

Change-Id: I72e1e315586af828eefa3b0b70998ab892ec3c1a
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-08 13:36:20 +02:00
Oswald Buddenhagen
809bc47fad centralize initialization of QT in specs
there is no reason whatsoever to duplicate this so many times, and even
less reason to have specs with a deviating default.

Change-Id: Ia25836c079580adebc373697b8bd03598f79c69b
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-08 13:36:16 +02:00
Oswald Buddenhagen
cd9599792e remove useless TEMPLATE assignments from specs
"app" is the built-in default anyway

Change-Id: I4f581ee5b81aee08860dbdda5d863943bceafb1b
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-08 13:36:12 +02:00
Oswald Buddenhagen
204176483c adjust specs to the new target mode handling
not strictly necessary, but nicer.

QMAKE_PLATFORM (and thus CONFIG) now also contains the name of the OS, and
its family (if applicable, e.g., bsd). this also adds more feature search
paths.

Change-Id: I3ab971e6e3b2b32cae53b95e4bc67a86688bc5cb
Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org>
Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
2012-09-08 13:36:09 +02:00
Donald Carr
1ecef1ea35 Update Raspberry Pi mkspec
Hard float enabled Raspbian image is now primary platform provided by the
Raspberry Pi foundation.

Change-Id: I2d59ad26fac459907b4f51764975a3e6e29c6033
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Thomas Senyk <thomas.senyk@pelagicore.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-08-09 03:25:55 +02:00
Thomas Senyk
84792b5ad5 Adding iMX6-device-files
Change-Id: Ifdfacf7201c9ee47783ae782d1f9042fe529a039
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-07-10 03:23:39 +02:00
Donald Carr
e6ccfe40eb Set Wayland as default platform on Raspberry-Pi
Update Raspberry-Pi mkspec to indicate that wayland is the default platform
for the Raspberry-Pi.

Change-Id: I10b30ecfb16faed6027137225d9e95409faa7e87
Reviewed-by: Johannes Zellner <johannes.zellner@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-06-24 05:26:10 +02:00
Girish Ramakrishnan
7042de0894 eglfs: move m_pos into Cursor
Change-Id: I51e92d265e7ea6372ae58b357f75362e2d9a2df9
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-06-22 15:42:44 +02:00
Johannes Zellner
60f2abff5e raspberry: remove unused screen size detection code
The fbdev fallback code now resides in the default implemenatation of
the hooks.

Change-Id: Id3d2cd23ab826b90c0e6d442bfb222aa8c291646
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-06-19 00:38:27 +02:00
Johannes Zellner
11aa64b1a1 eglfs: Pass QSurfaceFormat to createNativeWindow() hook
Change-Id: Ib352d8591360a224359ef218b95cd27cdfaf81aa
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-06-14 16:12:31 +02:00
Girish Ramakrishnan
4b7a4c40d8 eglfs: mark overriden methods with Q_DECL_OVERRIDE
The current cursor implementation can be a bit hard to read
without hints about which methods are overriden.

Change-Id: I3376890a13be46e1ece03d1442dd5a15ccd61382
Reviewed-by: Johannes Zellner <johannes.zellner@nokia.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2012-06-13 23:59:17 +02:00
Johannes Zellner
1c86619037 raspberry pi: Dont use the video layer for EGLFS
The OpenmaxIL video_render component uses the dispmanx layer 0, so EGLFS
should use at least z index 1. Otherwise the video_render would conflict
with the UI and thus overpaints it.

Change-Id: I3bed23567fa8c4399207289c6ef952c5a5e0d503
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Donald Carr <donald.carr@nokia.com>
2012-06-12 04:30:12 +02:00
Girish Ramakrishnan
4fd095d242 raspberry pi: add /opt/vc/include/interface/vcos/pthreads to includes
See https://github.com/raspberrypi/firmware/pull/32 for more information.

Change-Id: I51bb532336ed069cde938540cd962721b1a72adb
Reviewed-by: Johannes Zellner <johannes.zellner@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-06-12 04:30:09 +02:00
Donald Carr
b194575b85 Fix common device spec paths
This fixes breakage in the Raspberry Pi spec introduced in:

https://codereview.qt-project.org/#change,27536

due to incorrect depth assumptions regarding included files.

Change-Id: I802b828f1755f299939fed192dd3ca9bf1a83002
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-06-07 04:16:49 +02:00
Donald Carr
058c8da0f1 Generalize common device properties out of Raspberry Pi spec
Change-Id: I58cc9c9219bf3e9ed8e7401cb66f968306d7bfc9
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-06-06 02:02:40 +02:00
Girish Ramakrishnan
5933205cfc eglfs: implement hardware cursor for the raspberry-pi
The cursor is rendered on a dispmanx layer and moved
around. This approach saves us from having to update the
underlying window each time the cursor moves.

Dispmanx layers cannot be moved to negative coords. As
a result, currently it is not possible to move to a
location less than the hostpot. A future commit will
fix this problem.

Change-Id: Ida5ee961d03a6929860c515e503482756a4913ed
Reviewed-by: Johannes Zellner <johannes.zellner@nokia.com>
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-06-01 15:22:49 +02:00
Donald Carr
dce42ebd23 Add hard float-abi support to Raspberry Pi spec
Change-Id: I1bed28bdb5f84e61605972713a20359cc6deeaa6
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
2012-05-30 23:55:35 +02:00
Donald Carr
15fcb229cb Introduce a Snowball mkspec to the device specs
Change-Id: I7aa2f1a719c424079d7f0d7b3410f293cee05fa9
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-25 00:19:37 +02:00
Girish Ramakrishnan
2d990ccba6 -device: remove redundant check for empty CROSS_COMPILE
Remove the check from ST7540 and PNX8473 specs since
it's already checked in deviceSanityCheckCompiler

Change-Id: I2accb12f9e692e253f76194ca68b1f4cc673a833
Reviewed-by: Johannes Zellner <johannes.zellner@nokia.com>
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-05-24 14:49:56 +02:00
Holger Hans Peter Freyther
92a61d896e bcm97425: Fix linking the directfbegl QPA plugin
directfbegl requires libQtPlatformSupport to provide some EGL
helper functions. Enable EGL by adding it to the QT_CONFIG variable
in the qmake.conf.

Change-Id: I80d3163d9da4b9eb232aea72ba7d4388453f8247
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-05-24 07:14:58 +02:00
Girish Ramakrishnan
ac16d72214 eglfs/pi: update handles are 'local' variables
Change-Id: Iec687e9cd015ed389a637b50e4e4e332478b6e1f
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Andy Nichols <andy.nichols@nokia.com>
2012-05-22 05:09:11 +02:00
Donald Carr
707fc2bb00 Clean up Raspberry Pi spec
Introduce platform libs hook to handle/allow device specific initialization and the associated symbol resolution

Change-Id: I098b07dcb581390d369d9165c6cedc7ace1e088a
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-22 05:09:04 +02:00
Romain Pokrzywka
a3d4e0cbb1 Remove optimization flag from QMAKE_CFLAGS
-O2 is already the default optimization level for release builds,
as defined in gcc-base.conf. In addition, it shouldn't be set for
debug builds.

Change-Id: Idd7406b0d135d9579676b389050fd6e5776e722c
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-17 23:56:35 +02:00
Romain Pokrzywka
c70008d13e Apply compiler platform flags to debug builds as well
Compiler flags like CPU architecture and FPU should be set on
QMAKE_CFLAGS instead of QMAKE_CFLAGS_RELEASE, as the latter only
applies to release builds

Change-Id: I2e729a9e413934e904fc2810394e118940b8557f
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-17 23:56:16 +02:00
Donald Carr
1da0db344a device: don't set a default cross compile prefix
qmake -set can be used instead to set a the default cross compile.
device_config.prf already contains code to read this default.

Remove per-spec CROSS_COMPILE checks

Introduce deviceSanityCheckCompiler() usage where appropriate

Done-with: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Change-Id: I07c75c9e933dc1174a1bf8bf523b6b4a6b427408
Reviewed-by: Romain Pokrzywka <romain.pokrzywka@kdab.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-15 04:56:59 +02:00
Donald Carr
f1ea4ed3d4 Remove stale udev check
udev headers now ship as part of the base debian reference image

Change-Id: I181c7f48ca59af46fccf8f3204845379d068c023
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-12 01:24:55 +02:00
Donald Carr
bcc9c50b50 Introduce Arch Linux specific link line to pi mkspec
Change-Id: I77c99a2f5e25c28ad2d4a13e3b56d3603cd5bb64
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-05 00:52:14 +02:00
Donald Carr
6102ab8d64 Make eglfs hooks functionality namespace cognisant
Change-Id: Ie9f86bd0494c0423f50d0f405922ab169b2431e3
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-05-02 04:29:15 +02:00
Romain Pokrzywka
8d406e988c Add makespecs for standard devices in the OMAP3 family
The beagleboard and Archos gen8 tablets are built on the same hardware
and OpenEmbedded platform build system.
The makespecs enable OpenGL/ES2 support and EGLFS as the default
platform.

Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Donald Carr <donald.carr@nokia.com>

Change-Id: I04938676f82f9136efd662ff3ede16221eadf275
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-25 19:46:28 +02:00
Donald Carr
a5ff60dc96 Add N9 device mkspec to device mkspecs folder
Change-Id: Ie8b0e8a014316b218c86cfdc0c58cad1ae4d3015
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-24 12:48:38 +02:00
Donald Carr
408f3fb200 Adjust device mkspecs to use qpa default plugin var
Change-Id: If7be3517a423324e744805e8508eb9277a600ed4
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-20 03:39:10 +02:00
Holger Hans Peter Freyther
19524b7499 directfb: Integrate building into configure.
Add DirectFB buildsystem integration by adding a configure target
and adding it as subdirectory to the project file. The default is
to automatically build directfb. Update the Broadcom/9425 build.

Change-Id: I482f865cebd9d5cd4c98c184773f8534f92db9df
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-13 18:15:26 +02:00
Holger Hans Peter Freyther
01b54bcd84 device: Introduce hooks for the directfb plugin and use them
The EGL integration is vendor specific, add platform hooks to the
DirectFB plugin and implement them for the Broadcom 97425. The hook
interface is internal and there are no ABI/API gurantees.

Change-Id: I33359830c51f16895e771837fccb71e03c81cf18
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-13 08:33:37 +02:00
Bhooshan Supe
e784245238 device: Add device support for Trident's Shiner
Add mkspec for the Trident's Shiner platform to be used in conjunction
with the -device support in configure. This allows you to build Qt

Change-Id: I68d8e8eb78f073e98f72207e9c5de6a0da0ed35d
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-12 04:15:28 +02:00
Bhooshan Supe
8730c333ba device: Add device support for STMicroelectronic's ST7108
Add mkspec for the STMicroelectronic's ST7108 platform to be used in
conjunction with the -device support in configure. This allows you
to build Qt with the application libraries provided by STM SDK 35.

Change-Id: I36aa174200f034ccd6ee285e3f8a8ffec99b3e70
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-12 04:15:26 +02:00
Bhooshan Supe
0fdd1155e1 device: Add device support for STMicroelectronic's ST7540
Add mkspec for the STMicroelectronic's ST7540 platform to be used in
conjunction with the -device support in configure. This allows you
to build Qt with the application libraries provided by STM SDK 36.

Change-Id: I4369b23b9a0c9063417e5cc71969f65e967e4019
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
2012-04-12 04:15:23 +02:00
Girish Ramakrishnan
e60ca0de60 eglfs: rework hooks design
There are two problems with the current design:
1. if (hooks) hooks->foo() doesn't work in debug mode when no platform hook
   is defined. The problem doesn't arise in release mode because the compiler
   optimizes away the if (hooks) into a no-op since hooks is NULL when no
   platform hook is defined.
2. Adding a new hook requires changing every platform's hook implementation.

New approach:
1. Define QEglFSHooks as a class with virtual functions. A stub file provides
   the default implementation.
2. Platform hooks derive from above class and reimplement whatever is needed.

The filenames and variables have been changed to be more in line with the
Qt style.

Change-Id: I2eaaa5ad7c8b48a06361c4747d4f210c428c983f
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-11 09:24:58 +02:00
Donald Carr
42f3bf772b Extend eglhooks to include hasCapability
Add BufferQueueingOpenGL to Raspberry PI's numerous capabilities

Change-Id: I1197c28a0c82df3ae2f6d5360791010e17373555
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Donald Carr <donald.carr@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-11 09:22:23 +02:00
Donald Carr
71616d2c7a device: Add device support for the Broadcom Raspberry PI
Add mkspec for the Raspberry PI platform to be used in conjunction with the
-device support in configure. This allows you to build Qt with the
application libraries provided by the Raspberry PI foundation.

The Raspberry PI is described here:

http://en.wikipedia.org/wiki/Raspberry_Pi

and its use with Qt is documented here:

http://wiki.qt-project.org/Devices/RaspberryPi

Change-Id: Ib8d11d0a469edaaf34ccc04cf33a42a725fc2bdb
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-04 20:11:09 +02:00
Girish Ramakrishnan
24afb1097d eglfs: Introduce hooks for the eglfs plugin
EGL provides an api to create a rendering context for khronos APIs
on native surfaces. The board initialization and window creation
is platform specific.

This commit adds platform hooks/extensions to the EGLFS plugin and
implements them for the Amlogic 8726M. The hook interface is internal
and there are no ABI/API guarantees.

EGLFS is now linked with -Wl,-no-undefined to make sure that a hook does not
add unresolvable symbols.

Change-Id: I7f4fcdb422aacbf00de468f4d8e85ae5368bfacf
Reviewed-by: Girish Ramakrishnan <girish.1.ramakrishnan@nokia.com>
Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
2012-04-04 16:05:06 +02:00
Holger Hans Peter Freyther
2340c5d92e device: Add device support for the Broadcom 97425 platform
Add mkspec for the Broadcom 97425 platform using the new device.pri
support. This allows to build Qt with the application libraries provided
by Broadcom.

Change-Id: Icad442be5da071e4f936e41236d4136234c5d16f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
2012-04-02 11:44:14 +02:00
Girish Ramakrishnan
cb0b3fc34d device: Add device support for Amlogic 8726M board
Add mkspec for the Amlogic 8726M platform using the -device
support in configure. This allows to build Qt with the application
libraries provided by Amlogic.

The 8726M is an ARM Cortex-A9 that support NEON and has a Mali 400-M GPU.

Change-Id: I01ea0c8e7d34dcb165653980a1856f6e22318c4d
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Johannes Zellner <johannes.zellner@nokia.com>
2012-03-30 18:36:12 +02:00