From d07ea0efbc0dc2d1bf2341d377bb81d0b239967d Mon Sep 17 00:00:00 2001 From: Timur Pocheptsov Date: Tue, 21 Nov 2017 16:15:44 +0100 Subject: A temporary fix for CI: define macros from the missing if_types.h One of our CI machines has WatchOS SDK 3.2 which is missing net/if_types.h. This block integrations and until SDK is updated in VM, we provide the missing macros from if_types.h. To be removed ASAP. Task-number: QTBUG-64447 Change-Id: I202d3313b9a6a6d7bd29670f0bffc182d4660f81 Reviewed-by: Thiago Macieira Reviewed-by: Jake Petroules --- src/network/kernel/qnetworkinterface_uikit_p.h | 21 +++++++++++++++++++++ src/network/kernel/qnetworkinterface_unix.cpp | 6 +++++- 2 files changed, 26 insertions(+), 1 deletion(-) (limited to 'src/network/kernel') diff --git a/src/network/kernel/qnetworkinterface_uikit_p.h b/src/network/kernel/qnetworkinterface_uikit_p.h index c32bc4446c..ea40e74f5c 100644 --- a/src/network/kernel/qnetworkinterface_uikit_p.h +++ b/src/network/kernel/qnetworkinterface_uikit_p.h @@ -237,5 +237,26 @@ struct in6_ifreq { #define SIOCGIFAFLAG_IN6 _IOWR('i', 73, struct in6_ifreq) #define SIOCGIFALIFETIME_IN6 _IOWR('i', 81, struct in6_ifreq) +// The definition below is ONLY a temporary workaround to unblock +// integrations on CI. MUST be removed ASAP, as soon as SDK is +// updated. Currently, we have WatchOS SDK 3.2 and it's missing +// net/if_types.h (unlike SDK 4.0, which has it). Alas, we have to +// work this around. We only define constants that we use in code. + +#if !QT_DARWIN_PLATFORM_SDK_EQUAL_OR_ABOVE(__MAC_NA, __IPHONE_NA, __TVOS_NA, __WATCHOS_4_0) + +#define QT_WATCHOS_OUTDATED_SDK_WORKAROUND + +#define IFT_PPP 0x17 /* RFC 1331 */ +#define IFT_LOOP 0x18 /* loopback */ +#define IFT_SLIP 0x1c /* IP over generic TTY */ + +#define IFT_GIF 0x37 /*0xf0*/ +#define IFT_STF 0x39 /*0xf3*/ + +#define IFT_IEEE1394 0x90 /* IEEE1394 High Performance SerialBus*/ + +#endif // WatchOS SDK below 4.0 + #endif // QNETWORKINTERFACE_UIKIT_P_H diff --git a/src/network/kernel/qnetworkinterface_unix.cpp b/src/network/kernel/qnetworkinterface_unix.cpp index 078b8dd143..30bb37319b 100644 --- a/src/network/kernel/qnetworkinterface_unix.cpp +++ b/src/network/kernel/qnetworkinterface_unix.cpp @@ -405,11 +405,15 @@ static void getAddressExtraInfo(QNetworkAddressEntry *entry, struct sockaddr *sa # elif defined(Q_OS_BSD4) QT_BEGIN_INCLUDE_NAMESPACE # include -# include #if defined(QT_PLATFORM_UIKIT) # include "qnetworkinterface_uikit_p.h" +#if !defined(QT_WATCHOS_OUTDATED_SDK_WORKAROUND) +// TODO: remove it as soon as SDK is updated on CI!!! +# include +#endif #else # include +# include # include #endif // QT_PLATFORM_UIKIT QT_END_INCLUDE_NAMESPACE -- cgit v1.2.3