From 3f9817b26cd26fa731ca88537c0137d31c0383e4 Mon Sep 17 00:00:00 2001 From: Jacek Poplawski Date: Wed, 5 Jul 2023 12:47:37 +0200 Subject: Add initial support for building for VxWorks using clang Change-Id: I8c4538cd5582bfea69a6e1890445c4c75e6ca0d7 Reviewed-by: Thiago Macieira --- mkspecs/common/vxworks/qplatformdefs.h | 43 ++++++++++++++++++++++++++++++++++ mkspecs/vxworks-clang/qplatformdefs.h | 9 +++++++ 2 files changed, 52 insertions(+) create mode 100644 mkspecs/common/vxworks/qplatformdefs.h create mode 100644 mkspecs/vxworks-clang/qplatformdefs.h (limited to 'mkspecs') diff --git a/mkspecs/common/vxworks/qplatformdefs.h b/mkspecs/common/vxworks/qplatformdefs.h new file mode 100644 index 0000000000..75bbb3e0f9 --- /dev/null +++ b/mkspecs/common/vxworks/qplatformdefs.h @@ -0,0 +1,43 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only + +#ifndef Q_VXWORKS_PLATFORMDEFS_H +#define Q_VXWORKS_PLATFORMDEFS_H + +#include "qglobal.h" + +#include +#include + +#include +#include +#include + +// from VxWorks 7 +#ifndef S_ISSOCK +# ifdef S_IFSOCK +# define S_ISSOCK(m) (((m) & S_IFMT) == S_IFSOCK) +# else +# define S_ISSOCK(m) 0 +# endif +#endif + +#include "../common/posix/qplatformdefs.h" + +#undef QT_OPEN_LARGEFILE + +#define O_LARGEFILE 0 +#define QT_OPEN_LARGEFILE O_LARGEFILE + +#define QT_MMAP ::mmap + +#define QT_SNPRINTF ::snprintf +#define QT_VSNPRINTF ::vsnprintf + +/* vxworks exposes these definitions only when _POSIX_C_SOURCE >=200809L but we don't want to set this, as it hides other API */ +#ifndef UTIME_NOW +# define UTIME_NOW ((1l << 30) - 1l) +# define UTIME_OMIT ((1l << 30) - 2l) +#endif + +#endif /* Q_VXWORKS_PLATFORMDEFS_H */ diff --git a/mkspecs/vxworks-clang/qplatformdefs.h b/mkspecs/vxworks-clang/qplatformdefs.h new file mode 100644 index 0000000000..a9fd98e333 --- /dev/null +++ b/mkspecs/vxworks-clang/qplatformdefs.h @@ -0,0 +1,9 @@ +// Copyright (C) 2023 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only + +#ifndef QPLATFORMDEFS_H +#define QPLATFORMDEFS_H + +#include "../common/vxworks/qplatformdefs.h" + +#endif // QPLATFORMDEFS_H -- cgit v1.2.3