Rename qtnamespacemacros.h -> qtconfigmacros.h
But keep qtnamespacemacros.h for now, some modules include it explicitly, so need to change those to include qtconfigmacros.h first. The plan is to move QT_SHARED, QT_STATIC and QT_CONFIG macros there too. Change-Id: I945b3dfffbd9cd394a6cf42a36df6657d1703d5b Pick-to: 6.4 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>bb10
parent
b779b8062c
commit
22b16a1db1
|
|
@ -51,6 +51,7 @@ qt_internal_add_module(Core
|
|||
global/qcompare_impl.h
|
||||
global/qcompare.h
|
||||
global/qcompilerdetection.h
|
||||
global/qtconfigmacros.h
|
||||
global/qcontainerinfo.h
|
||||
global/qendian.cpp global/qendian.h global/qendian_p.h
|
||||
global/qenvironmentvariables.cpp global/qenvironmentvariables.h
|
||||
|
|
|
|||
|
|
@ -166,7 +166,7 @@
|
|||
# define Q_STATIC_ASSERT_X(Condition, Message) Q_STATIC_ASSERT(Condition)
|
||||
#endif
|
||||
|
||||
# include <QtCore/qtnamespacemacros.h>
|
||||
# include <QtCore/qtconfigmacros.h>
|
||||
|
||||
#ifndef __ASSEMBLER__
|
||||
QT_BEGIN_NAMESPACE
|
||||
|
|
|
|||
|
|
@ -0,0 +1,85 @@
|
|||
// Copyright (C) 2022 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 QTCONFIGMACROS_H
|
||||
#define QTCONFIGMACROS_H
|
||||
|
||||
// valid for both C and C++
|
||||
#define QT_MANGLE_NAMESPACE0(x) x
|
||||
#define QT_MANGLE_NAMESPACE1(a, b) a##_##b
|
||||
#define QT_MANGLE_NAMESPACE2(a, b) QT_MANGLE_NAMESPACE1(a,b)
|
||||
#if !defined(QT_NAMESPACE) || defined(Q_MOC_RUN) /* user namespace */
|
||||
# define QT_MANGLE_NAMESPACE(name) name
|
||||
#else
|
||||
# define QT_MANGLE_NAMESPACE(name) QT_MANGLE_NAMESPACE2( \
|
||||
QT_MANGLE_NAMESPACE0(name), QT_MANGLE_NAMESPACE0(QT_NAMESPACE))
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
#if !defined(QT_NAMESPACE) || defined(Q_MOC_RUN) /* user namespace */
|
||||
|
||||
# define QT_PREPEND_NAMESPACE(name) ::name
|
||||
# define QT_USE_NAMESPACE
|
||||
# define QT_BEGIN_NAMESPACE
|
||||
# define QT_END_NAMESPACE
|
||||
# define QT_BEGIN_INCLUDE_NAMESPACE
|
||||
# define QT_END_INCLUDE_NAMESPACE
|
||||
# define QT_FORWARD_DECLARE_CLASS(name) class name;
|
||||
# define QT_FORWARD_DECLARE_STRUCT(name) struct name;
|
||||
|
||||
#else /* user namespace */
|
||||
|
||||
# define QT_PREPEND_NAMESPACE(name) ::QT_NAMESPACE::name
|
||||
# define QT_USE_NAMESPACE using namespace ::QT_NAMESPACE;
|
||||
# define QT_BEGIN_NAMESPACE namespace QT_NAMESPACE {
|
||||
# define QT_END_NAMESPACE }
|
||||
# define QT_BEGIN_INCLUDE_NAMESPACE }
|
||||
# define QT_END_INCLUDE_NAMESPACE namespace QT_NAMESPACE {
|
||||
# define QT_FORWARD_DECLARE_CLASS(name) \
|
||||
QT_BEGIN_NAMESPACE class name; QT_END_NAMESPACE \
|
||||
using QT_PREPEND_NAMESPACE(name);
|
||||
|
||||
# define QT_FORWARD_DECLARE_STRUCT(name) \
|
||||
QT_BEGIN_NAMESPACE struct name; QT_END_NAMESPACE \
|
||||
using QT_PREPEND_NAMESPACE(name);
|
||||
|
||||
namespace QT_NAMESPACE {}
|
||||
|
||||
# ifndef QT_BOOTSTRAPPED
|
||||
# ifndef QT_NO_USING_NAMESPACE
|
||||
/*
|
||||
This expands to a "using QT_NAMESPACE" also in _header files_.
|
||||
It is the only way the feature can be used without too much
|
||||
pain, but if people _really_ do not want it they can add
|
||||
QT_NO_USING_NAMESPACE to their build configuration.
|
||||
*/
|
||||
QT_USE_NAMESPACE
|
||||
# endif
|
||||
# endif
|
||||
|
||||
#endif /* user namespace */
|
||||
|
||||
#else /* __cplusplus */
|
||||
|
||||
# define QT_BEGIN_NAMESPACE
|
||||
# define QT_END_NAMESPACE
|
||||
# define QT_USE_NAMESPACE
|
||||
# define QT_BEGIN_INCLUDE_NAMESPACE
|
||||
# define QT_END_INCLUDE_NAMESPACE
|
||||
|
||||
#endif /* __cplusplus */
|
||||
|
||||
/* ### Qt 6.9 (or later): remove *_MOC_* macros (moc does not need them since 6.5) */
|
||||
#ifndef QT_BEGIN_MOC_NAMESPACE
|
||||
# define QT_BEGIN_MOC_NAMESPACE QT_USE_NAMESPACE
|
||||
#endif
|
||||
#ifndef QT_END_MOC_NAMESPACE
|
||||
# define QT_END_MOC_NAMESPACE
|
||||
#endif
|
||||
|
||||
/* silence syncqt warning */
|
||||
QT_BEGIN_NAMESPACE
|
||||
QT_END_NAMESPACE
|
||||
|
||||
#endif /* QTCONFIGMACROS_H */
|
||||
|
|
@ -4,82 +4,6 @@
|
|||
#ifndef QTNAMESPACEMACROS_H
|
||||
#define QTNAMESPACEMACROS_H
|
||||
|
||||
// valid for both C and C++
|
||||
#define QT_MANGLE_NAMESPACE0(x) x
|
||||
#define QT_MANGLE_NAMESPACE1(a, b) a##_##b
|
||||
#define QT_MANGLE_NAMESPACE2(a, b) QT_MANGLE_NAMESPACE1(a,b)
|
||||
#if !defined(QT_NAMESPACE) || defined(Q_MOC_RUN) /* user namespace */
|
||||
# define QT_MANGLE_NAMESPACE(name) name
|
||||
#else
|
||||
# define QT_MANGLE_NAMESPACE(name) QT_MANGLE_NAMESPACE2( \
|
||||
QT_MANGLE_NAMESPACE0(name), QT_MANGLE_NAMESPACE0(QT_NAMESPACE))
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
#if !defined(QT_NAMESPACE) || defined(Q_MOC_RUN) /* user namespace */
|
||||
|
||||
# define QT_PREPEND_NAMESPACE(name) ::name
|
||||
# define QT_USE_NAMESPACE
|
||||
# define QT_BEGIN_NAMESPACE
|
||||
# define QT_END_NAMESPACE
|
||||
# define QT_BEGIN_INCLUDE_NAMESPACE
|
||||
# define QT_END_INCLUDE_NAMESPACE
|
||||
# define QT_FORWARD_DECLARE_CLASS(name) class name;
|
||||
# define QT_FORWARD_DECLARE_STRUCT(name) struct name;
|
||||
|
||||
#else /* user namespace */
|
||||
|
||||
# define QT_PREPEND_NAMESPACE(name) ::QT_NAMESPACE::name
|
||||
# define QT_USE_NAMESPACE using namespace ::QT_NAMESPACE;
|
||||
# define QT_BEGIN_NAMESPACE namespace QT_NAMESPACE {
|
||||
# define QT_END_NAMESPACE }
|
||||
# define QT_BEGIN_INCLUDE_NAMESPACE }
|
||||
# define QT_END_INCLUDE_NAMESPACE namespace QT_NAMESPACE {
|
||||
# define QT_FORWARD_DECLARE_CLASS(name) \
|
||||
QT_BEGIN_NAMESPACE class name; QT_END_NAMESPACE \
|
||||
using QT_PREPEND_NAMESPACE(name);
|
||||
|
||||
# define QT_FORWARD_DECLARE_STRUCT(name) \
|
||||
QT_BEGIN_NAMESPACE struct name; QT_END_NAMESPACE \
|
||||
using QT_PREPEND_NAMESPACE(name);
|
||||
|
||||
namespace QT_NAMESPACE {}
|
||||
|
||||
# ifndef QT_BOOTSTRAPPED
|
||||
# ifndef QT_NO_USING_NAMESPACE
|
||||
/*
|
||||
This expands to a "using QT_NAMESPACE" also in _header files_.
|
||||
It is the only way the feature can be used without too much
|
||||
pain, but if people _really_ do not want it they can add
|
||||
DEFINES += QT_NO_USING_NAMESPACE to their .pro files.
|
||||
*/
|
||||
QT_USE_NAMESPACE
|
||||
# endif
|
||||
# endif
|
||||
|
||||
#endif /* user namespace */
|
||||
|
||||
#else /* __cplusplus */
|
||||
|
||||
# define QT_BEGIN_NAMESPACE
|
||||
# define QT_END_NAMESPACE
|
||||
# define QT_USE_NAMESPACE
|
||||
# define QT_BEGIN_INCLUDE_NAMESPACE
|
||||
# define QT_END_INCLUDE_NAMESPACE
|
||||
|
||||
#endif /* __cplusplus */
|
||||
|
||||
/* ### Qt 6.9 (or later): remove *_MOC_* macros (moc does not need them since 6.5) */
|
||||
#ifndef QT_BEGIN_MOC_NAMESPACE
|
||||
# define QT_BEGIN_MOC_NAMESPACE QT_USE_NAMESPACE
|
||||
#endif
|
||||
#ifndef QT_END_MOC_NAMESPACE
|
||||
# define QT_END_MOC_NAMESPACE
|
||||
#endif
|
||||
|
||||
/* silence syncqt warning */
|
||||
QT_BEGIN_NAMESPACE
|
||||
QT_END_NAMESPACE
|
||||
#include <QtCore/qtconfigmacros.h>
|
||||
|
||||
#endif /* QTNAMESPACEMACROS_H */
|
||||
|
|
|
|||
Loading…
Reference in New Issue