summaryrefslogtreecommitdiffstats
path: root/mkspecs/common/qcc-base-qnx.conf
Commit message (Collapse)AuthorAgeFilesLines
* Use C++17 for qmake and force the build of everything with C++17Olivier Goffart2020-02-081-1/+1
| | | | | | | | | | | | | We will want to use C++17 code in our headers soon. (including the one in the bootstrap libraries) This patch is quick and dirty, I guess it will be cleaner once we move to cmake Updated QMAKE_MACOSX_DEPLOYMENT_TARGET because 10.13 runtime does not support C++17 stdlib features Change-Id: I75ac171436945dddd1bb953a9c8d323ac20da7ac Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Add default location for the Wayland scanner tool on QNXJames McDonnell2019-12-141-0/+2
| | | | | | Change-Id: I0cfa823414a8f7866c594edb60b09b60f2b4d16b Reviewed-by: Dan Cape <dcape@qnx.com> Reviewed-by: Johan Helsing <johan.helsing@qt.io>
* qmake: add support for mkspecs which don't support strict_c++Mikhail Svetkin2018-04-051-3/+7
| | | | | | | | | | Some mkspecs do not support c++ strict mode. We should allow them to build Qt with GNU extenstions. Change-Id: I0d76cf95355b38953e3475773ec5474c856e1370 Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* make mkspecs not mess up -rpath-linkOswald Buddenhagen2017-05-311-1/+1
| | | | | | | | | | | | | | | adding shared install paths via QMAKE_LFLAGS in the spec has the tiny side effect that they are searched _first_, which is generally a really bad idea - they should be _last_. for that purpose, introduce QMAKE_RPATHLINKDIR_POST, and migrate all specs to use it. QMAKE_RPATHDIR_POST is added for consistency, but not actually used. Task-number: QTBUG-59457 Change-Id: Iac6cda5e9111ef8cca454a69861fe8408bb40589 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* make mkspecs not mess up library and include search pathsOswald Buddenhagen2017-05-311-2/+2
| | | | | | | | | | | | | | adding shared install paths to QMAKE_{INCDIR,LIBDIR} in the spec has the tiny side effect that they are searched _first_, which is generally a really bad idea - they should be _last_. for that purpose, make QMAKE_{INCDIR,LIBDIR}_POST live up to their names (i.e., search them actually last) and migrate all affected specs to use them. Task-number: QTBUG-40825 Change-Id: Ie0de81c3cc49e193186d2fedd7d6c77590c8ef79 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Clean up QT_QPA_DEFAULT_PLATFORM handlingJake Petroules2016-10-051-3/+0
| | | | | | | | This is now centralized in configure.pri except where it explicitly needs to be overridden. Change-Id: If829d6b5eecf9a5fc403d0a0600d12c9e5781525 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* qt_poll: split out into separate file and sanitize buildLouai Al-Khanji2015-12-051-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The qt_poll function calls recv to query whether fds marked by select as readable should be marked POLLIN or POLLHUP in the pollfd structure. On many platforms such as QNX this requires extra link-time libraries which were not previously required by QtCore. While the qt_poll function is intended as a fallback mechanism only for those platforms which do not implement poll natively, the function was compiled unconditionally whenever QT_BUILD_INTERNAL was defined, e.g. in developer builds. Additionally the function was included on those systems that define poll in system headers so that configure determines build-time availability, but do not define _POSIX_POLL > 0 or indicate POSIX:2008 compliance via either the _POSIX_VERSION or _XOPEN_VERSION macros. On those systems a sysconf query for _SC_POLL was performed to determine at runtime whether to call the system poll or qt_poll. Both of these cases are in fact counterproductive. In the first case the sole consumer of the function is a single manual unit test. In the second, to my knowledge no platform requires the runtime fallback. Despite that, we were forcing an extra dylib in both cases. Both cases are fixed by 1) moving the implementation into its own file for the unit test to include and 2) dropping the dynamic fallback if configure determines availability of poll at compile-time. This also reverts commit 13777097118c496391d4b9656b95097ac25e4a40, which added -lsocket for QtCore on QNX. Change-Id: I2dd10695c5d4cac81b68d2c2558797f3cdabc153 Reviewed-by: James McDonnell <jmcdonnell@qnx.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Added -lsocket in QMAKE_LIBS_CORE for QNXLiang Qi2015-12-021-0/+1
| | | | | | | | | | This change ammends 105fc117. Change-Id: I154f968c450dafa6269c5d4210e02dcc2280598e Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: James McDonnell <jmcdonnell@qnx.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Remove remaining support for BlackberryLouai Al-Khanji2015-11-211-1/+1
| | | | | | | | | The platform is no longer supported or actively maintained, and is in the way for improvements to the Unix event dispatcher and QProcess implementations. Change-Id: I3935488ca12e2139ea5f46068d7665a453e20526 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Update mkspecs to use "c++11" instead of "c++0x"Thiago Macieira2015-10-181-1/+1
| | | | | | | | We no longer support any compilers that don't know the actual version number of the standard. Change-Id: Ib056b47dde3341ef9a52ffff13ef154791dd0d22 Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
* fix place of "qnx" in $$QMAKE_PLATFORMOswald Buddenhagen2015-10-011-1/+1
| | | | | | | | | | it must come first, as it is most specific. an alternative fix would be re-organizing the includes, but that requires a lot more effort to get right. Change-Id: I1526a3c966f3dc3f3df1efc00ec271d333ed7ebf Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
* Add a linker version script to Qt librariesThiago Macieira2015-09-131-0/+1
| | | | | | | | | | | | | | | | | | | | | | | This linker script is only enabled for systems with GCC or GCC-like compilers, though technically it should work on the BSDs too (will enable after testing). For regular modules, this declares one ELF version "Qt_5" and places all QtCore symbols inside, then it declares unused ELF versions "Qt_5.x" for each older minor release. For modules declared "internal_module", all symbols are placed in version Qt_5_PRIVATE_API. The big advantage of an ELF version is that, when we do Qt 6, both versions of QtCore could be loaded in memory without conflicts and all symbols would be resolved to the correct library. No module can talk to both at the same time, but this avoids mistakes of loading them indirectly by plugins. The extra Qt_5.x versions will be used in the next commit. Change-Id: I049a653beeb5454c9539ffff13e3fe6f050fdf31 Reviewed-by: Lisandro Damián Nicanor Pérez Meyer <perezmeyer@gmail.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Add detection of C++14 and C++1z compiler featuresThiago Macieira2015-09-051-0/+2
| | | | | | | | | | | | | | | [ChangeLog][General Improvements] Qt's buildsystem now detects whether the compiler supports C++14 and experimental support for C++1z. If the compiler supports it, then Qt is automatically compiled using that support. \ This does not apply to user applications built using qmake: those are still built with C++11 support only. To enable support for C++14 in your application, add to your .pro file: CONFIG += c++14 (similarly for C++1z). Change-Id: Ib056b47dde3341ef9a52ffff13ef1f5d01c42596 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* make QMAKE_DIRLIST_SEP consistent with QMAKE_DIR_SEPOswald Buddenhagen2014-04-301-0/+1
| | | | | | | | | | that is, make it match the shell used by the make command. this is unlike DIRLIST_SEPARATOR and DIR_SEPARATOR, which always match the actual system shell. Change-Id: I0fb277d75b32be029808623a3b77e1358c4e265e Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
* purge vestiges of opengl es 1 supportOswald Buddenhagen2014-04-041-1/+0
| | | | | | | | amends 0d5170256c1. Change-Id: Ifa178d38f602bb7c66ef13334673ff47e332af5b Reviewed-by: Jørgen Lind <jorgen.lind@digia.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com>
* BlackBerry,QNX: Switch to QMAKE_PLATFORM from CONFIGWolfgang Bremer2014-04-031-1/+1
| | | | | | | | | | This is the right configuration of the platform within the mkspecs. It enables the usage of additional features like the automatic detection of platform specific prf files. Change-Id: I2f19265d283e47c62455128f217bc44ba88cdc98 Reviewed-by: Sergio Ahumada <sahumada@blackberry.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Fix '=' alignment and replace tabs in *.conf (whitespace only change)Axel Waggershauser2013-03-271-9/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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>
* Use quotes for the error message and remove a line break for cohesionLaszlo Papp2013-03-191-2/+1
| | | | | Change-Id: Id0964ee2a084d721051338f4c2587acb7d1b1cde Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Blackberry: Specify QMAKE_LFLAGS_RPATHLINK for BB10 platformTobias Koenig2013-02-181-0/+1
| | | | | | | | The linker from the BBNDK needs -rpath-link to resolve transitive dependencies, like on Linux. Change-Id: I85726841ea15070e8661b9bdbffaf950fdd247e9 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* QNX: Tidy up QMAKE_LFLAGS in qnx mkspecsSean Harmer2012-09-031-1/+1
| | | | | | | | | | | | We do not need to include -lang-c++ more than once in QMAKE_LFLAGS* variables. The fact that this was not appearing more than once was due to QMAKE_LFLAGS being overwritten (rather than appended to) in qcc-base-qnx.conf and a weird coincindence in qmake's code to dedupe libraries passed in to QMAKE_LFLAGS. The deduping was working based upon options beginning with "-l", including the -lang-c++ option here. Change-Id: I983f216c0e362a9fe6a924074c5d84aaa659a14f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Decouple -lang-c++ from CXX command on QNX mkspecsRafael Roquetto2012-08-171-1/+0
| | | | | | | | | | Making -lang-c++ integral part of the $CXX command was wrong, because there are cases where $CXX must be called without the -lang-c++ file (when building asm files for instance). This commit moves the -lang-c++ to $CXX_FLAGS where it belongs. Change-Id: I667c8d722105c6117fcd8ff3102dbdfcb890b24f Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* [QNX] Force UNIX-style separators on Windows hostsRafael Roquetto2012-07-131-0/+5
| | | | | | | | | The QNX toolchain, even on Windows, uses UNIX-style directory separators ('/'). Change-Id: I78575c9856b1700438c05ec0da81149688d85522 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* QNX: set QMAKE_CXXFLAGS_CXX11Marc Mutz2012-07-031-0/+1
| | | | | | | | | | | | | | | | | | Rationale: QCC is a wrapper around GCC, but it doesn't understand -std, so we need to pass it via -Wc. The underlying GCC is v4.4, which doesn't know -std=c++11 yet, only c++0x. We can't use -std=c++0x here, because the QNX headers depend on some GNU extensions (nanosleep() was one that I saw), so it has to be gnu++0x, ie. STD C++ + GNU extensions. Change-Id: Ia5caf68f558b1638224e4876f1bbec84a0a93f67 Reviewed-by: Thomas McGuire <thomas.mcguire@kdab.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
* centralize definitions of shell commandsOswald Buddenhagen2012-06-191-13/+0
| | | | | | | there are only two types. everything else is duplication. Change-Id: I87f2bdd3d56b94bb2ecdb60e8861afeb9af3666f Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* purge QMAKE_INCDIR_QT and QMAKE_LIBDIR_QTOswald Buddenhagen2012-06-191-3/+0
| | | | | | | they are equivalent to QT_INSTALL_(HEADERS|LIBS)/get. Change-Id: Ic4b47f3ca7db55785b96f19020a2fa020a8d25bd Reviewed-by: Joerg Bornemann <joerg.bornemann@nokia.com>
* Set default Lighthouse plugin for QNXAndreas Holzammer2012-04-231-0/+3
| | | | | | | Change-Id: Id1e51fcd3ce795b2c408d0376679597f6da5c33a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Fix finding EGL on QNXThomas McGuire2012-04-161-0/+1
| | | | | | | | | | | | | A recent change in platformsupport required "egl" to be defined, otherwise the QNX plugin would fail at runtime with unresolved symbols. Now the EGL config test passes. Change-Id: I111eb939abac86885bcdb35d5f5899f515bd8c4e Reviewed-by: Sean Harmer <sean.harmer@kdab.com> Reviewed-by: Kevin Krammer <kevin.krammer@kdab.com> Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Robin Burchell <robin+qt@viroteck.net>
* Moved 'qnx' CONFIG definition to common location.Rafael Roquetto2012-04-041-0/+2
| | | | | | | | | Removed the duplicated 'qnx' CONFIG defition from the mkspecs and declared it on the common qcc-base-qnx.conf configuration file. Change-Id: Ie215e3dd794762f20bec9c19afd5936a78a9d963 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com> Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com>
* Update qnx mkspecs to not use fixed tool pathsSean Harmer2012-03-121-3/+0
| | | | | | | | | This changeset allows Qt to be built for QNX platforms in light of commit d59e85d9095f5d8fa787149fe8d34e8dfac0a0b5. Change-Id: Idf8e89cf1b0a5625ef7ee6397c223137fa151cdc Reviewed-by: Rafael Roquetto <rafael.roquetto@kdab.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
* Add mkspecs for Blackberry Playbook NDKRafael Roquetto2012-01-261-0/+69
mkspecs for QNX qcc, armv7le and x86 targets Change-Id: Ie4b0ec46a8837ad63f5aea8429cfdd516531e09a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>