diff options
author | Giuseppe D'Angelo <[email protected]> | 2022-06-17 16:44:21 +0200 |
---|---|---|
committer | Giuseppe D'Angelo <[email protected]> | 2022-06-27 00:12:56 +0200 |
commit | 7466422e9ce964553dd09fce9f48437af7ec76c8 (patch) | |
tree | f727125120f9ff25fb72633be5645c6742b6f6c5 /src/gui/opengl/qopenglprogrambinarycache_p.h | |
parent | 821aa1ff095ae66a89eb8725650dccac363f06ad (diff) |
Add a way to declare _exported_ logging categories
If a library declares a logging category that needs to be used
by clients (e.g. via inline methods, macros, etc.), then the
logging category function generated by Q_DECLARE_LOGGING_CATEGORY
has to be exported.
We've seen this problem with Q_NAMESPACE, Q_GADGET, etc.: these
macros also declare functions or objects that in some cases need to
be exported.
And precisely like Q_NAMESPACE, Q_GADGET, etc., people end up
relying on the implementation details of Q_DECLARE_LOGGING_CATEGORY
(specifically, what does it expand to) in order to place the
export directives in the right place.
Introduce a more robust solution and apply it around qtbase.
Cleanup some minor code as a drive-by (remove `extern` and useless
semicolons).
[ChangeLog][QtCore][QLoggingCategory] Added the
Q_DECLARE_EXPORTED_LOGGING_CATEGORY macro, in order to allow dynamic
libraries to declare a logging category that can be then used by
client code.
Change-Id: I18f40cc937cfe8277b8d62ebc824c27a0773de04
Reviewed-by: Thiago Macieira <[email protected]>
Reviewed-by: Qt CI Bot <[email protected]>
Reviewed-by: Kai Koehne <[email protected]>
Diffstat (limited to 'src/gui/opengl/qopenglprogrambinarycache_p.h')
-rw-r--r-- | src/gui/opengl/qopenglprogrambinarycache_p.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gui/opengl/qopenglprogrambinarycache_p.h b/src/gui/opengl/qopenglprogrambinarycache_p.h index 0553121a22a..0237c81fc51 100644 --- a/src/gui/opengl/qopenglprogrambinarycache_p.h +++ b/src/gui/opengl/qopenglprogrambinarycache_p.h @@ -28,7 +28,7 @@ QT_BEGIN_NAMESPACE // therefore stay independent from QOpenGLShader(Program). Must rely only on // QOpenGLContext/Functions. -Q_GUI_EXPORT Q_DECLARE_LOGGING_CATEGORY(lcOpenGLProgramDiskCache) +Q_DECLARE_EXPORTED_LOGGING_CATEGORY(lcOpenGLProgramDiskCache, Q_GUI_EXPORT) class Q_GUI_EXPORT QOpenGLProgramBinaryCache { |