Commit Graph

28616 Commits

Author SHA1 Message Date
Thiago Macieira
0358b87102 Remove QDateTimePrivate::isNull{Date,Time}()
They're superfluous, since b491fab02a
removed the distinction between null and invalid. Just use the
isValidXxx equivalents.

Change-Id: I06bae9392f534e45b3f1ffff144db9badad010fd
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2016-06-10 17:56:28 +00:00
Thiago Macieira
6d311a23ad Stop QDateTimePrivate from inheriting QSharedData
We're going to have to stop using QSharedDataPointer because of the
upcoming short-datetime-optimization. By dropping the inheritance, I am
also able to rearrange the members and remove the padding hole that
existed.

The second padding hole was removed in the previous commit, which merged
two 32-bit fields into one.

On 64-bit systems, there's no way around a remaining 4-byte hole
somewhere due to the odd number of 32-bit members. I chose to leave it
in the middle of the struct, before the m_timeZone member, instead of
tail padding, so that the layout of the first members structure are the
same in bootstrapped and non-bootstrapped builds. That should help
debugging the bootstrapped tools in Qt Creator. It's also now the same
in 32- and in 64-bit systems.

Change-Id: Id69569111e7d4e619e22ffff144b1fba708885f7
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2016-06-10 17:56:23 +00:00
Thiago Macieira
1a161c8ede QDateTimePrivate: merge the time spec, DST status and validity flags
Storing them in a single byte is the first step towards the Short
QDateTime Optimization.

The bump in the "private version" by 10 is to accommodate possible
changes in the Qt 5.7 branch.

Change-Id: Id5480807d25e49e78b79ffff144a59420457bcf0
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2016-06-10 17:56:18 +00:00
Nico Rieck
67ca72796e Paint small progressbars correctly on Vista+
The animated glow always has a length of 120 but was previously drawn
with the clipping rect of the bar's actual size. For sizes smaller than
120 the native theme part would be clipped and the black gradient would
show.

Change-Id: Id81e39c405ef81ae08af0f64249568016944bdf1
Task-number: QTBUG-51266
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2016-06-10 14:48:46 +00:00
André Klitzing
9466d0e633 Disable QSslDiffieHellmanParameters tests for QT_NO_SSL builds
Change-Id: Ie0b7e9c819ddd1627709f64c30c8d2374bf50c9b
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
2016-06-10 13:18:03 +00:00
Shawn Rutledge
04e224b19a add QTest::createTouchDevice()
This enables creation of autotests which use touch events, without using
private API.

Task-number: QTBUG-44030
Change-Id: If8fe89f8423aaafd9e6501e231c33580b9365eb8
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2016-06-10 13:08:00 +00:00
Shawn Rutledge
982b70d37d autotests: use QTest::createTouchDevice()
Task-number: QTBUG-44030
Change-Id: I514c1294a0ff6587b825982a8bb354104c214120
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2016-06-10 13:07:17 +00:00
Milla Pohjanheimo
e73e2264de Blacklist tst_QWindow tests for Ubuntu 16.04
Blacklisting tests positioning(default), modalWindowPosition() and
modalWindowEnterEventOnHide_QTBUG35109()

Task-number:
QTBUG-53156
QTBUG-54001
QTBUG-35109

Change-Id: Ib0c50a356a1928afbd12a1ec3650f80f65b81265
Reviewed-by: Heikki Halmet <heikki.halmet@qt.io>
2016-06-10 08:49:44 +00:00
Mitch Curtis
ea86f73640 Mention extension in QFileInfo's suffix-related documentation
This makes it easier for users to find out how to get a file's
extension when browsing docs.

Change-Id: I08a1b620dea5432462133324824fae85754b9a09
Task-number: QTBUG-53380
Reviewed-by: Topi Reiniö <topi.reinio@theqtcompany.com>
2016-06-10 06:59:42 +00:00
Antti Kokko
6c1e352803 Add Qt 5.7.0 changelog
Done-With: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Done-With: Thiago Macieira <thiago.macieira@intel.com>
Change-Id: I1e8d75afa4e26bac1e5f64b7a25320f80b54aa58
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
2016-06-10 06:48:56 +00:00
Allan Sandfeld Jensen
fa8d16d476 Fix QWidgetBackingStore::isDirty() for render-to-texture widgets
The backing store would not report itself dirty if only render-to-
texture widgets were dirty.

This caused QOpenGLWidgets not be repainted after being remapped if they
marked themselves dirty while unmapped.

Task-number: QTBUG-50818
Task-number: QTBUG-51815
Change-Id: If43f7cbb6f4d44831b4c21b89f884d6bcaebf87c
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2016-06-10 06:48:21 +00:00
Oswald Buddenhagen
e005e99005 fix ios device&simulator builds again
the assumption stated in b67a0836d is actually invalid - configure sets
build_all without debug_and_release there. debug_and_release does
actually imply build_all, though.

to make things less confusing, don't let configure inject
iphonesimulator_and_iphoneos into all projects, but handle it like
debug_and_release instead.

Change-Id: Ib7acdc63308a538862fc603428f81aba60bca08e
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
2016-06-10 06:36:52 +00:00
Friedemann Kleint
196d55ba5c Output region in debug operator of QPaintEvent.
This helps to analzye flicker/painting issues.

Change-Id: I18e04598013c013386c3d019ff3098b1accec3f7
Reviewed-by: Alexandru Croitor <alexandru.croitor@theqtcompany.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2016-06-10 06:09:37 +00:00
Tor Arne Vestbø
751143724a uikit: Call base class implementation of rotation callbacks
The Apple documentation explicitly says that you should call super
when implementing these methods.

Change-Id: I584bb140a4a5bde88927b379ab19158a78c6fea9
Reviewed-by: Jake Petroules <jake.petroules@qt.io>
Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
2016-06-10 06:09:14 +00:00
Friedemann Kleint
d2c6294bd5 Diaglib: Add class LogWidget.
Add a class to display debug messages, providing convenience functions for
installing and formatting parameters like indentation. It prints a startup
message containing relevant information about Qt.

Change-Id: Id0a19adbb5953a6ded1a8e692f242b63748e7273
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2016-06-09 20:16:47 +00:00
Anton Kudryavtsev
1c9818c871 QString: use new QL1S::at() in lastIndexOf()
Make overloaded lastIndexOf() functions
more homogeneous.

Change-Id: If45aac88b43d26baf7f93caec3662a1085e26b97
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2016-06-09 18:01:50 +00:00
Thiago Macieira
b05741937c Plug padding holes in QHostAddressPrivate
On ABIs where quint64 is aligned on 8-byte boundaries (such 32-bit
Windows and all 64-bit systems), there was a padding hole of 4 bytes
between QHostAddressPrivate::a and the anonymous union. If we move the
member to after the union, there is no hole anymore.

That operation causes the tail padding to grow from 3 to 7 bytes. Since
we also don't need full 32 bits for the protocol, we can shrink the
structure by 8 bytes on those architectures and by 4 bytes on 32-bit
Unix systems.

Change-Id: I461e9fc7199748faa187ffff1415d6601a7bd777
Reviewed-by: hjk <hjk@theqtcompany.com>
2016-06-09 15:59:24 +00:00
Thiago Macieira
7835b260a9 configure: check whether std::atomic<T> works for function pointers
And ask the user to apply one of the patches we're carrying to their
Standard Libraries.

Change-Id: I7e6338336dd6468ead24ffff141139c79056922e
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2016-06-09 15:58:23 +00:00
Thiago Macieira
0a78d918f0 Replace qAllocMore with a pair of more useful functions
The first is "exact", not "more": qCalculateBlockSize. It ensures that
there's no overflow in multiplying, adding the header size or when
converting back to an int.

The second is the replacement for qAllocMore: it calculates the block
size like the first, but increases the block size to accommodate future
appends. The number of elements that fit in the block is also returned.

Task-number: QTBUG-41230
Change-Id: I52dd43c12685407bb9a6ffff13f5da09f816e667
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2016-06-09 15:32:14 +00:00
Thiago Macieira
43ff604f94 x86: Fix build with BMI but no LZCNT extensions
The GCC builtins for clzs and ctzs are enabled when the x86 extension
for LZCNT and TZCNT are enabled. The use of only __BMI__ in commit
f5f47987ce was incorrect.

But GCC needs both BMI and LZCNT enabled to enable this builtin.

Change-Id: I1cc7601489634e96833cfffd145647e9fc9f2f51
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2016-06-09 15:29:25 +00:00
Allan Sandfeld Jensen
bdf270202b Remove QWidgetBackingStore::fullUpdatePending
This was no longer used and always false.

Change-Id: I981055e6cc736cfe3432914c173c8b3edc31b46e
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
2016-06-09 14:53:05 +00:00
Erik Verbruggen
923d869b0f Aarch64: vectorize ascii de-/encoding.
This works only on Aarch64, because the vaddv instruction is only
available on 64bit ARM. Doing something equivalent on 32bit ARM has the
high chance to run into micro-architecture differences: on an Cortex-a8,
transferring a single vector element from NEON to the regular CPU
registers takes 20 cycles(!).

Change-Id: Iccbfe84da82abb9b10f3f3dc35c8b950df69e251
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
2016-06-09 08:06:04 +00:00
Jan Arve Saether
7c264643f6 Fixed a bug where IM reported wrong anchor rectangle
The problem was that in some cases, the cursor position was used to
calculate the anchor rectangle instead of the anchor position.

This caused selection handles to be shown at the wrong position.

Change-Id: I8d866b644fc3c4d530529b7f468d16ae1088cd98
Reviewed-by: Richard Moe Gustavsen <richard.gustavsen@theqtcompany.com>
2016-06-09 07:36:09 +00:00
Thiago Macieira
48fd845c61 QElapsedTimer: Remove legacy code dealing with Windows pre-Vista and CE
GetTickCount64 is available on Windows Vista and WinRT. Since Windows CE
is no longer supported on dev, we don't need to dynamically resolve the
function anymore.

What's more, QueryCounterFrequency is documented to never fail since
Windows XP, so we haven't needed GetTickCount64 for years (no clue when
we dropped support for Win2k).

Change-Id: I115db302eb114bed8cd1fffd14558a81353d2aed
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-06-08 22:49:57 +00:00
Marc Mutz
a7ae92e67d QStringRef: add missing relational operators against QByteArray
QStringRef op QByteArray was ambiguous between

  bool QStringRef::operator op(const char*) const
  bool operator op(const QStringRef&, const QString&)

QByteArray op QStringRef was ambiguous between

  bool operator op(const QString&, const QStringRef&)
  bool operator op(const char*, const QStringRef&)

Fix by providing more overloads.

[ChangeLog][QtCore] Disambiguated the relational operators
comparing QByteArray with QStringRef (and vice versa).

Change-Id: I1cfa9ecfdd8b4102e652593faf35f6098289bc34
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2016-06-08 21:42:33 +00:00
Marc Mutz
f0d9eed064 QString: fix QChar <> QLatin1String relational operators for non-US-ASCII
The implementation used the QString::compare_helper(QChar*, int, char*, int)
overload, which, however, interprets the rhs as a UTF-8 sequence, not as
Latin-1.

Fix by using the (QChar*, int, QLatin1String) overload.

Extend the test to cover this case, too.

Change-Id: I59b26d63d0caec036b80ef8818c75d0cebe519d2
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-06-08 21:35:54 +00:00
Jake Petroules
e672fd5432 Remove QSysInfo code related to unsupported versions of Windows.
Change-Id: Ia28f17146d61724dbea73939793dfbd503546e56
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-06-08 21:21:55 +00:00
Joerg Bornemann
bd4344a0bd Fix qplugin autotest on Windows
Since Qt 5.0.0 we never built the test plugins on Windows, because we
checked for the existence of QtCore[d]4.dll, and the actual test does
not complain if it cannot find any plugins.
Use the right conditions to check for debug/release Qt builds on
Windows. Use subdirs dependencies on every platform and then actually
pass the right variable to SUBDIRS. Clean up the pro file while we're at
it.

Change-Id: I099f30afd445fbf43dc5677d256ffe55b27639b3
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
2016-06-08 19:40:29 +00:00
Friedemann Kleint
6c0783d107 Revert "Insignifify qfileinfo on Windows, like QDir".
This reverts commit 55655abfaf.

The crashes in release mode cannot be locally reproduced.

Change-Id: I4e7b1defbeac5d5512b2fa82a367d2e04e3c37a4
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
2016-06-08 19:05:46 +00:00
Friedemann Kleint
19def3d8f1 Revert "Insignifify qdiriterator test"
This reverts commit b373d183de.

The crashes in release mode cannot be locally reproduced.

Change-Id: I38ff5e9e045cff0e94e24ca07fb6e18e88b677c7
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
2016-06-08 19:05:38 +00:00
Friedemann Kleint
36ffe18f05 Re-enable tst_QDir on Windows.
Partially revert f3939d943e.

Change-Id: I67e4d8973bc18d9cd77750c6379221d34e9484b3
Reviewed-by: Jędrzej Nowacki <jedrzej.nowacki@theqtcompany.com>
2016-06-08 19:04:36 +00:00
Błażej Szczygieł
afa0e9bf6a QtWidgets: Open submenus also on left mouse button press
This patch allows to open submenus also on left mouse button press.

Previously submenus could be opened only on right mouse button press
as ContextMenu event which was inconvenient especially for long submenu
popup timeout.

Task-number: QTBUG-53054
Change-Id: I1bd78ed4436f738c8838f7f4687ffebb94b66725
Reviewed-by: Félix Bourbonnais <thor400.75@gmail.com>
Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2016-06-08 19:04:03 +00:00
Błażej Szczygieł
4762fabce1 xcb: Fix transient parent and "Qt::Window" flag
Don't set transient parent property when Qt::Window flag is set.
Delete transient parent property if a window doesn't have a transient parent.
Force setting standard window flags for Qt::Window only if there are no other
flags.

Amends 98c10a02c5

Task-number: QTBUG-52550
Change-Id: I68ee715b632487e9dd0e7ffbbfc0c2cdd0f0e151
Reviewed-by: Dmitry Shachnev <mitya57@gmail.com>
Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
2016-06-08 19:04:01 +00:00
Luca Bellonda
767319a5aa Add support for 8bit encodings not ASCII compatible in QXMLStreamWriter.
When using a 8 bit encoding to write a file, a test discovers if the
encoding is really ASCII compatible by examining a letter and one of the
XML reserved characters. EBCDIC, in the current base, was not well
handled.

[ChangeLog][QtCore][QXmlStreamWriter] Fixed a bug that prevented the
generation of valid XML files when using encoding with 8 bit per
character but not ASCII compatible. QXMLStreamWriter generated XML
markup using always ASCII in this case.

Change-Id: I9c86a122dd91b2290d50c358638442f99777d4ae
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-06-08 18:50:25 +00:00
Thiago Macieira
e454e986d5 Move the Q_DECL_UNUSED attribute elsewhere to satisfy ICC 17
It doesn't like the attribute there. I think it's a compiler bug, but I
can't be sure because the part of the standard dealing with the
placement of attributes and where they apply is very complex. Exercise
left for the reader to determine if ICC is correct or not to reject it
there.

Change-Id: I87e17314d8b24ae983b1fffd1454bde826b7bcf4
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2016-06-08 18:34:10 +00:00
Marc Mutz
5a15545ee2 QDebug: fix streaming of QChars
Commit 9ef3ff30 introduced a new function, putUcs4(), to
output QChar, char16_t, char32_t as a, possibly escaped,
character literal, but got the order of stream modifiers
wrong. Instead of applying the field width to the 'ucs'
streaming, it applied it to the prefix '\u'. The same
problem exists for the pad char, leading to the result
   '00\ue4'
for a QChar containing
  ä (LATIN SMALL LETTER A WITH DIAERESIS)

Fix by reordering the elements streamed so that the
prefixes come last.

Added a test.

Change-Id: I6eaa0586501b9e780aaa3bb5dcec0e5c2f86a219
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-06-08 18:29:38 +00:00
Marc Mutz
0843ce8524 tst_qstringapisymmetry: cover QByteArray, const char*, too
As in 032efc2cb2, which added the
API-symmetry test, define the missing relational operators
locally in the test harness until they are fixed in the library.

Change-Id: Ic2688e6b6b3e028a9c29f1a5eb01058375ef3fe9
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2016-06-08 15:32:02 +00:00
Ralf Nolden
4fb2b74119 Remove a.out defines in OpenBSD and NetBSD mkspec
OpenBSD made the switch from a.out to ELF with release 3.4, published
2003, see http://www.openbsd.org/34.html. In preparation to cleaning
up the mkspecs for OpenBSD, remove the a.out defines as only recent
versions of OpenBSD (5.8 onward) will be supported.

NetBSD switched from a.out to ELF file format with release 1.5, see
https://www.netbsd.org/releases/formal-1.5/NetBSD-1.5.html in the year
2000.

Remove the defines for older a.out systems now as we are at release 7.0
and only 6.0 onwards releases are currently supported anyway.

While cleaning up, remove the old comments for QT_SOCKLEN_T values of
outdated OpenBSD and NetBSD releases as well.

Change-Id: I8519eab7bcd4af19c0e9f628657878f32b2bd602
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-06-08 15:23:47 +00:00
Giuseppe D'Angelo
982ef5b494 QSharedPointer/QWeakPointer/QScopedPointer: add comparison against nullptr
Some constructors were added, but the comparison operators were missing.
The STL has them, so we ought have them too.

Change-Id: I030c14a3b355988f509716b4b1b1a835b3ab9481
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
2016-06-08 09:09:47 +00:00
Erik Verbruggen
997572d859 Use built-ins for qPopulationCount on MSVC and recent Clang versions.
Change-Id: Ib7e5f1129dda664d81f8a59bfa851ae70ef04542
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-06-08 08:03:31 +00:00
Martin Porcelli
5f3a262a73 QSslSocket: Data is sent after a certificate is downloaded on Windows.
QSslSocket was not transmitting existing data after finishing its
handshake if it had to download a certificate on Windows.

Task-number: QTBUG-48816
Change-Id: Ie35b5f4ca0f6c3c40fe2394166eb31f9f72dac55
Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Reviewed-by: Richard J. Moore <rich@kde.org>
2016-06-08 07:42:42 +00:00
Lars Knoll
95a4e5f016 Set ssl in QT_CONFIG when openssl is enabled
Makes things symmetrical with the windows configure and cleans
up the logic in ssl.pri

Change-Id: I4a373afe78e904de7d04baea38c250ff0c9d5062
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
2016-06-08 07:07:15 +00:00
Anton Kudryavtsev
7a4ce3cbcc QString: remove unnecessary copy in replace()
When a copy is needed, replace_helper() takes
care of that for us.

Change-Id: I9e5c89cb70b2902c96062a9edaf77fedda6ddb2c
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
2016-06-08 06:24:08 +00:00
Marc Mutz
862fa24179 Optimize QJsonObject::operator==
The old code iterated through one QJsonObject and looked up the key
in the other, comparing the values. It had linearithmic complexity,
and created one QString 'key' per element.

Since the entries in a QJsonObject are lexicographically ordered,
we can, however, just walk through the two objects in lock-step and
compare corresponding entries (at the same index) with each other.

Doing so saves O(N) QString creations and QJsonObject::value()
calls, and makes operator== linear in the number of elements.

Change-Id: Ib46ee0c1008b7f114454e282b6bd2bfcdbe59e2a
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
2016-06-08 04:38:20 +00:00
Alejandro Exojo
f9c60038bf Fix QVariantAnimation documentation
Since 5.0, this class is not abstract. Only the documentation of
updateCurrentValue was updated at that time. Fix the class reference and
the mentions of the class being abstract in the Animation Framework
overview.

Change-Id: I8ef9accb0b870dc8eb75bfc74361c7f2ad8d1d8b
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
Reviewed-by: Frederik Gladhorn <frederik.gladhorn@qt.io>
2016-06-08 04:32:45 +00:00
Laszlo Agocs
76810e1495 xcb: Disable GLX pbuffers with Chromium in VMs
Change-Id: I474e4a4ce424a92b46381eb26aeda811ed059819
Task-number: QTCREATORBUG-16252
Task-number: QTCREATORBUG-14937
Reviewed-by: Błażej Szczygieł <spaz16@wp.pl>
Reviewed-by: Gatis Paeglis <gatis.paeglis@qt.io>
2016-06-08 04:22:57 +00:00
Ralf Nolden
a914003c82 Remove OpenBSD _POSIX_THREAD_SAFE_FUNCTIONS undefine
The qplatformdefs.h for OpenBSD included an undefine of
_POSIX_THREAD_SAFE_FUNCTIONS because of (at the time) missing
implementations of the required _r() functions. After checking these
functions http://www.unix.org/whitepapers/reentrant.html
against the OpenBSD man pages http://man.openbsd.org/OpenBSD-4.4/cat3/getpwuid_r.0
they are all complete with OpenBSD 4.4 released in 2008. As
OpenBSD only supports the current and the last release before (5.8 and
5.9 now), it is safe to assume that this undefine can go away now
for sure.

Change-Id: I341bcae77d1bd7249ac3fdeaefce9c5eb595eca7
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-06-08 04:11:22 +00:00
Ralf Nolden
6db053139e Delete unsupported/freebsd-g++-46 mkspec
The freebsd-g++46 mkspec was intended to specifically use gcc 4.6 from
FreeBSD ports collection. However, the ports collection moves its
"standard" gcc version and uses symlinks to the standard commands
(e.g. gcc -> gcc48) on installing gcc. The current gcc in ports is
4.8.5, so the mkspec is not useful at all.

Change-Id: I041325d05c7dc3f47f4a774d6f46ba24a601bf3e
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-06-08 04:11:16 +00:00
Ralf Nolden
37ef6b4968 OpenBSD: use clock_gettime() provided by OS
The use of clock_gettime() is limited to systems having _POSIX_TIMERS
defined, however OpenBSD implements clock_gettime() but does not have the
posix define. Enable using clock_gettime() on OpenBSD as well.

Change-Id: I785954fe61b42b15755ca625a766c9a95179ae8d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-06-08 04:11:10 +00:00
Ralf Nolden
4ea95609cc FreeBSD: remove -D_THREAD_SAFE from pthread usage
On FreeBSD, the gcc manpages until Release 5.1 mentioned using
the -D_THREAD_SAFE define when using -pthread. This has been obsoleted
and the gcc manpages from Release 5.2 onwards have this removed.

Now we finally remove this historic relic here, too.

Change-Id: I00a5b688c56f46b938c0806fb44b72d5afe5079e
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
2016-06-08 04:11:03 +00:00