diff options
Diffstat (limited to 'src/gui/configure.cmake')
-rw-r--r-- | src/gui/configure.cmake | 159 |
1 files changed, 117 insertions, 42 deletions
diff --git a/src/gui/configure.cmake b/src/gui/configure.cmake index 20c5b9624b..da08863ac6 100644 --- a/src/gui/configure.cmake +++ b/src/gui/configure.cmake @@ -1,3 +1,6 @@ +# Copyright (C) 2022 The Qt Company Ltd. +# SPDX-License-Identifier: BSD-3-Clause + #### Inputs @@ -25,13 +28,18 @@ set_property(CACHE INPUT_libpng PROPERTY STRINGS undefined no qt system) #### Libraries -qt_set01(X11_SUPPORTED LINUX OR HPUX OR FREEBSD OR NETBSD OR OPENBSD OR SOLARIS) # special case +qt_set01(X11_SUPPORTED LINUX OR HPUX OR FREEBSD OR NETBSD OR OPENBSD OR SOLARIS OR + HURD) qt_find_package(ATSPI2 PROVIDED_TARGETS PkgConfig::ATSPI2 MODULE_NAME gui QMAKE_LIB atspi) qt_find_package(DirectFB PROVIDED_TARGETS PkgConfig::DirectFB MODULE_NAME gui QMAKE_LIB directfb) qt_find_package(Libdrm PROVIDED_TARGETS Libdrm::Libdrm MODULE_NAME gui QMAKE_LIB drm) qt_find_package(EGL PROVIDED_TARGETS EGL::EGL MODULE_NAME gui QMAKE_LIB egl) +if(INTEGRITY AND _qt_igy_gui_libs) + qt_find_package(IntegrityPlatformGraphics + PROVIDED_TARGETS IntegrityPlatformGraphics::IntegrityPlatformGraphics + MODULE_NAME gui QMAKE_LIB integrity_platform_graphics) +endif() qt_find_package(WrapSystemFreetype 2.2.0 PROVIDED_TARGETS WrapSystemFreetype::WrapSystemFreetype MODULE_NAME gui QMAKE_LIB freetype) -set_package_properties(WrapFreetype PROPERTIES TYPE REQUIRED) if(QT_FEATURE_system_zlib) qt_add_qmake_lib_dependency(freetype zlib) endif() @@ -40,7 +48,7 @@ qt_add_qmake_lib_dependency(fontconfig freetype) qt_find_package(gbm PROVIDED_TARGETS gbm::gbm MODULE_NAME gui QMAKE_LIB gbm) qt_find_package(WrapSystemHarfbuzz 2.6.0 PROVIDED_TARGETS WrapSystemHarfbuzz::WrapSystemHarfbuzz MODULE_NAME gui QMAKE_LIB harfbuzz) qt_find_package(Libinput PROVIDED_TARGETS Libinput::Libinput MODULE_NAME gui QMAKE_LIB libinput) -qt_find_package(JPEG PROVIDED_TARGETS JPEG::JPEG MODULE_NAME gui QMAKE_LIB libjpeg) +qt_find_package(WrapSystemJpeg PROVIDED_TARGETS WrapSystemJpeg::WrapSystemJpeg MODULE_NAME gui QMAKE_LIB libjpeg) qt_find_package(WrapSystemMd4c PROVIDED_TARGETS WrapSystemMd4c::WrapSystemMd4c MODULE_NAME gui QMAKE_LIB libmd4c) qt_find_package(WrapSystemPNG PROVIDED_TARGETS WrapSystemPNG::WrapSystemPNG MODULE_NAME gui QMAKE_LIB libpng) if(QT_FEATURE_system_zlib) @@ -50,20 +58,25 @@ qt_find_package(Mtdev PROVIDED_TARGETS PkgConfig::Mtdev MODULE_NAME gui QMAKE_LI qt_find_package(WrapOpenGL PROVIDED_TARGETS WrapOpenGL::WrapOpenGL MODULE_NAME gui QMAKE_LIB opengl) qt_find_package(GLESv2 PROVIDED_TARGETS GLESv2::GLESv2 MODULE_NAME gui QMAKE_LIB opengl_es2) qt_find_package(Tslib PROVIDED_TARGETS PkgConfig::Tslib MODULE_NAME gui QMAKE_LIB tslib) -qt_find_package(Vulkan PROVIDED_TARGETS Vulkan::Vulkan MODULE_NAME gui QMAKE_LIB vulkan MARK_OPTIONAL) # special case +qt_find_package(WrapVulkanHeaders PROVIDED_TARGETS WrapVulkanHeaders::WrapVulkanHeaders + MODULE_NAME gui QMAKE_LIB vulkan MARK_OPTIONAL) if((LINUX) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(Wayland PROVIDED_TARGETS Wayland::Server MODULE_NAME gui QMAKE_LIB wayland_server) + qt_find_package(Wayland PROVIDED_TARGETS Wayland::Client MODULE_NAME gui QMAKE_LIB wayland_client) endif() if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(X11 PROVIDED_TARGETS X11::X11 MODULE_NAME gui QMAKE_LIB xlib) endif() if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) - qt_find_package(X11 PROVIDED_TARGETS ${X11_SM_LIB} ${X11_ICE_LIB} MODULE_NAME gui QMAKE_LIB x11sm) + qt_find_package(X11 PROVIDED_TARGETS X11::SM X11::ICE MODULE_NAME gui QMAKE_LIB x11sm) endif() if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB 1.11 PROVIDED_TARGETS XCB::XCB MODULE_NAME gui QMAKE_LIB xcb) endif() if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) + qt_find_package(XCB 0.1.1 COMPONENTS CURSOR PROVIDED_TARGETS XCB::CURSOR MODULE_NAME gui QMAKE_LIB xcb_cursor) +endif() +if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) qt_find_package(XCB 0.3.9 COMPONENTS ICCCM PROVIDED_TARGETS XCB::ICCCM MODULE_NAME gui QMAKE_LIB xcb_icccm) endif() qt_add_qmake_lib_dependency(xcb_icccm xcb) @@ -130,6 +143,7 @@ if((X11_SUPPORTED) OR QT_FIND_ALL_PACKAGES_ALWAYS) endif() qt_add_qmake_lib_dependency(xrender xlib) +qt_find_package(RenderDoc PROVIDED_TARGETS RenderDoc::RenderDoc) #### Tests @@ -167,6 +181,7 @@ qt_config_compile_test(egl_x11 // has to be disabled in plugins like xcb in this case since the native display, // window and pixmap types will be different than what an X-based platform // plugin would expect. +#define USE_X11 #include <EGL/egl.h> #include <X11/Xlib.h> @@ -219,6 +234,7 @@ EGLDeviceEXT device = 0; EGLStreamKHR stream = 0; EGLOutputLayerEXT layer = 0; (void) EGL_DRM_CRTC_EXT; +(void) EGL_DRM_MASTER_FD_EXT; /* END TEST: */ return 0; } @@ -266,8 +282,8 @@ qt_config_compile_test(egl_viv LABEL "i.Mx6 EGL" LIBRARIES EGL::EGL - COMPILE_OPTIONS # special case - "-DEGL_API_FB=1" # special case + COMPILE_OPTIONS + "-DEGL_API_FB=1" CODE "#include <EGL/egl.h> #include <EGL/eglvivante.h> @@ -288,11 +304,16 @@ fbGetDisplayByIndex(0); "# FIXME: qmake: ['DEFINES += EGL_API_FB=1', '!integrity: DEFINES += LINUX=1'] ) +set(test_libs EGL::EGL) +if(INTEGRITY AND _qt_igy_gui_libs) + set(test_libs ${test_libs} IntegrityPlatformGraphics::IntegrityPlatformGraphics) +endif() + # egl-openwfd qt_config_compile_test(egl_openwfd LABEL "OpenWFD EGL" LIBRARIES - EGL::EGL + ${test_libs} CODE "#include <wfd.h> @@ -390,19 +411,20 @@ ioctl(fd, FBIOGET_VSCREENINFO, &vinfo); ") # opengles3 -# special case begin if(WASM) set(extra_compiler_options "-s FULL_ES3=1") endif() -# special case end + +set(test_libs GLESv2::GLESv2) +if(INTEGRITY AND _qt_igy_gui_libs) + set(test_libs ${test_libs} IntegrityPlatformGraphics::IntegrityPlatformGraphics) +endif() qt_config_compile_test(opengles3 LABEL "OpenGL ES 3.0" LIBRARIES - GLESv2::GLESv2 -# special case begin + ${test_libs} COMPILE_OPTIONS ${extra_compiler_options} -# special case end CODE "#ifdef __APPLE__ # include <OpenGLES/ES3/gl.h> @@ -424,11 +446,12 @@ glMapBufferRange(GL_ARRAY_BUFFER, 0, 0, GL_MAP_READ_BIT); } ") + # opengles31 qt_config_compile_test(opengles31 LABEL "OpenGL ES 3.1" LIBRARIES - GLESv2::GLESv2 + ${test_libs} CODE "#include <GLES3/gl31.h> @@ -446,7 +469,7 @@ glProgramUniform1i(0, 0, 0); qt_config_compile_test(opengles32 LABEL "OpenGL ES 3.2" LIBRARIES - GLESv2::GLESv2 + ${test_libs} CODE "#include <GLES3/gl32.h> @@ -463,6 +486,7 @@ glFramebufferTexture(GL_TEXTURE_2D, GL_DEPTH_STENCIL_ATTACHMENT, 1, 0); qt_config_compile_test(xcb_syslibs LABEL "XCB (extensions)" LIBRARIES + XCB::CURSOR XCB::ICCCM XCB::IMAGE XCB::KEYSYMS @@ -481,6 +505,7 @@ qt_config_compile_test(xcb_syslibs #include <xcb/xcb.h> #include <xcb/xcb_image.h> #include <xcb/xcb_keysyms.h> +#include <xcb/xcb_cursor.h> #include <xcb/randr.h> #include <xcb/render.h> #include <xcb/shape.h> @@ -512,7 +537,23 @@ xcb_xkb_get_kbd_by_name_replies_key_names_value_list_sizeof(nullptr, 0, 0, 0, 0, } ") -# special case begin +# libinput_hires_wheel_support +qt_config_compile_test(libinput_hires_wheel_support + LABEL "libinput hires wheel support" + LIBRARIES + Libinput::Libinput + CODE +"#include <libinput.h> +int main(void) +{ + /* BEGIN TEST: */ +libinput_event_type type = LIBINPUT_EVENT_POINTER_SCROLL_WHEEL; +libinput_event_pointer_get_scroll_value_v120(nullptr, LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL); + /* END TEST: */ + return 0; +} +") + # directwrite (assumes DirectWrite2) qt_config_compile_test(directwrite LABEL "WINDOWS directwrite" @@ -539,7 +580,7 @@ qt_config_compile_test(directwrite3 int main(int, char **) { IUnknown *factory = nullptr; - DWriteCreateFactory(DWRITE_FACTORY_TYPE_SHARED, __uuidof(IDWriteFactory3), + DWriteCreateFactory(DWRITE_FACTORY_TYPE_SHARED, __uuidof(IDWriteFactory6), &factory); return 0; } @@ -574,14 +615,27 @@ int main(int, char **) return 0; } ") -# special case end + +qt_config_compile_test(renderdoc + LIBRARIES + RenderDoc::RenderDoc + LABEL "RenderDoc header check" + CODE +"#include <renderdoc_app.h> +int main(int, char **) +{ + if (RENDERDOC_Version::eRENDERDOC_API_Version_1_6_0) + return 0; + return 0; +} +") #### Features qt_feature("accessibility-atspi-bridge" PUBLIC PRIVATE LABEL "ATSPI Bridge" - CONDITION QT_FEATURE_accessibility AND QT_FEATURE_xcb AND QT_FEATURE_dbus AND ATSPI2_FOUND + CONDITION QT_FEATURE_accessibility AND QT_FEATURE_dbus AND ATSPI2_FOUND ) qt_feature_definition("accessibility-atspi-bridge" "QT_NO_ACCESSIBILITY_ATSPI_BRIDGE" NEGATE VALUE "1") qt_feature("directfb" PRIVATE @@ -592,21 +646,21 @@ qt_feature("directfb" PRIVATE ) qt_feature("directwrite" PRIVATE LABEL "DirectWrite" - CONDITION TEST_directwrite # special case + CONDITION TEST_directwrite EMIT_IF WIN32 ) qt_feature("directwrite3" PRIVATE LABEL "DirectWrite 3" - CONDITION QT_FEATURE_directwrite AND TEST_directwrite3 # special case + CONDITION QT_FEATURE_directwrite AND TEST_directwrite3 EMIT_IF WIN32 ) qt_feature("direct2d" PRIVATE LABEL "Direct 2D" - CONDITION WIN32 AND NOT WINRT AND TEST_d2d1 # special case + CONDITION WIN32 AND NOT WINRT AND TEST_d2d1 ) qt_feature("direct2d1_1" PRIVATE LABEL "Direct 2D 1.1" - CONDITION QT_FEATURE_direct2d AND TEST_d2d1_1 # special case + CONDITION QT_FEATURE_direct2d AND TEST_d2d1_1 ) qt_feature("evdev" PRIVATE LABEL "evdev" @@ -628,7 +682,7 @@ qt_feature("system-freetype" PRIVATE qt_feature("fontconfig" PUBLIC PRIVATE LABEL "Fontconfig" AUTODETECT NOT APPLE - CONDITION NOT WIN32 AND QT_FEATURE_system_freetype AND FONTCONFIG_FOUND + CONDITION NOT WIN32 AND QT_FEATURE_system_freetype AND Fontconfig_FOUND ) qt_feature_definition("fontconfig" "QT_NO_FONTCONFIG" NEGATE VALUE "1") qt_feature("gbm" @@ -678,6 +732,10 @@ qt_feature("libinput-axis-api" PRIVATE LABEL "axis API in libinput" CONDITION QT_FEATURE_libinput AND ON ) +qt_feature("libinput-hires-wheel-support" PRIVATE + LABEL "HiRes wheel support in libinput" + CONDITION QT_FEATURE_libinput AND TEST_libinput_hires_wheel_support +) qt_feature("lgmon" LABEL "lgmon" CONDITION libs.lgmon OR FIXME @@ -751,7 +809,11 @@ qt_feature("vkgen" PRIVATE ) qt_feature("vulkan" PUBLIC LABEL "Vulkan" - CONDITION QT_FEATURE_library AND QT_FEATURE_vkgen AND Vulkan_FOUND + CONDITION QT_FEATURE_library AND QT_FEATURE_vkgen AND WrapVulkanHeaders_FOUND +) +qt_feature("metal" PUBLIC + LABEL "Metal" + CONDITION MACOS OR IOS OR VISIONOS ) qt_feature("vkkhrdisplay" PRIVATE SECTION "Platform plugins" @@ -774,7 +836,7 @@ qt_feature("egl_x11" PRIVATE qt_feature("eglfs" PRIVATE SECTION "Platform plugins" LABEL "EGLFS" - CONDITION NOT ANDROID AND NOT APPLE AND NOT WIN32 AND NOT WASM AND QT_FEATURE_egl + CONDITION NOT ANDROID AND NOT APPLE AND NOT WIN32 AND NOT WASM AND NOT QNX AND QT_FEATURE_egl ) qt_feature("eglfs_brcm" PRIVATE LABEL "EGLFS Raspberry Pi" @@ -806,7 +868,7 @@ qt_feature("eglfs_rcar" PRIVATE ) qt_feature("eglfs_viv_wl" PRIVATE LABEL "EGLFS i.Mx6 Wayland" - CONDITION QT_FEATURE_eglfs_viv AND Wayland_FOUND + CONDITION QT_FEATURE_eglfs_viv AND TARGET Wayland::Server ) qt_feature("eglfs_openwfd" PRIVATE LABEL "EGLFS OpenWFD" @@ -831,7 +893,7 @@ qt_feature("jpeg" PRIVATE CONDITION QT_FEATURE_imageformatplugin DISABLE INPUT_libjpeg STREQUAL 'no' ) -qt_feature_definition("jpeg" "QT_NO_IMAGEFORMAT_JPEG" NEGATE) +qt_feature_definition("jpeg" "QT_NO_IMAGEFORMAT_JPEG" NEGATE VALUE "1") qt_feature("system-jpeg" PRIVATE LABEL " Using system libjpeg" CONDITION QT_FEATURE_jpeg AND JPEG_FOUND @@ -862,14 +924,14 @@ qt_feature("sessionmanager" PUBLIC qt_feature_definition("sessionmanager" "QT_NO_SESSIONMANAGER" NEGATE VALUE "1") qt_feature("tslib" PRIVATE LABEL "tslib" - CONDITION Tslib_FOUND + CONDITION Tslib_FOUND AND NOT INTEGRITY ) qt_feature("tuiotouch" PRIVATE LABEL "TuioTouch" PURPOSE "Provides the TuioTouch input plugin." CONDITION QT_FEATURE_network AND QT_FEATURE_udpsocket ) -qt_feature("xcb" PRIVATE +qt_feature("xcb" PUBLIC SECTION "Platform plugins" LABEL "XCB" AUTODETECT NOT APPLE @@ -887,7 +949,7 @@ qt_feature("xcb-glx" PRIVATE ) qt_feature("xcb-egl-plugin" PRIVATE LABEL "EGL-X11 Plugin" - CONDITION QT_FEATURE_egl_x11 AND QT_FEATURE_opengl + CONDITION QT_FEATURE_egl AND QT_FEATURE_opengl EMIT_IF QT_FEATURE_xcb ) qt_feature("xcb-native-painting" PRIVATE @@ -912,6 +974,7 @@ qt_feature("xcb-sm" PRIVATE ) qt_feature("system-xcb-xinput" PRIVATE LABEL "Using system-provided xcb-xinput" + AUTODETECT OFF CONDITION XCB_XINPUT_FOUND ENABLE INPUT_bundled_xcb_xinput STREQUAL 'no' DISABLE INPUT_bundled_xcb_xinput STREQUAL 'yes' @@ -953,7 +1016,8 @@ qt_feature("system-textmarkdownreader" PUBLIC qt_feature("textmarkdownwriter" PUBLIC SECTION "Kernel" LABEL "MarkdownWriter" - PURPOSE "Provides a Markdown (CommonMark) writer" + CONDITION QT_FEATURE_regularexpression + PURPOSE "Provides a Markdown (CommonMark and GitHub) writer" ) qt_feature("textodfwriter" PUBLIC SECTION "Kernel" @@ -971,7 +1035,7 @@ qt_feature_definition("cssparser" "QT_NO_CSSPARSER" NEGATE VALUE "1") qt_feature("draganddrop" PUBLIC SECTION "Kernel" LABEL "Drag and Drop" - PURPOSE "Supports the drag and drop mechansim." + PURPOSE "Supports the drag and drop mechanism." CONDITION QT_FEATURE_imageformat_xpm ) qt_feature_definition("draganddrop" "QT_NO_DRAGANDDROP" NEGATE VALUE "1") @@ -1135,7 +1199,6 @@ qt_feature("accessibility" PUBLIC SECTION "Utilities" LABEL "Accessibility" PURPOSE "Provides accessibility support." - CONDITION QT_FEATURE_properties ) qt_feature_definition("accessibility" "QT_NO_ACCESSIBILITY" NEGATE VALUE "1") qt_feature("multiprocess" PRIVATE @@ -1159,6 +1222,7 @@ qt_feature("raster-fp" PRIVATE SECTION "Painting" LABEL "QPainter - floating point raster" PURPOSE "Internal painting support for floating point rasterization." + CONDITION NOT VXWORKS # QTBUG-115777 ) qt_feature("undocommand" PUBLIC SECTION "Utilities" @@ -1179,7 +1243,19 @@ qt_feature("undogroup" PUBLIC PURPOSE "Provides the ability to cluster QUndoCommands." CONDITION QT_FEATURE_undostack ) +qt_feature("graphicsframecapture" PRIVATE + SECTION "Utilities" + LABEL "QGraphicsFrameCapture" + PURPOSE "Provides a way to capture 3D graphics API calls for a rendered frame." + CONDITION TEST_renderdoc OR (MACOS OR IOS) +) qt_feature_definition("undogroup" "QT_NO_UNDOGROUP" NEGATE VALUE "1") +qt_feature("wayland" PUBLIC + SECTION "Platform plugins" + LABEL "Wayland" + CONDITION TARGET Wayland::Client +) + qt_configure_add_summary_section(NAME "Qt Gui") qt_configure_add_summary_entry(ARGS "accessibility") qt_configure_add_summary_entry(ARGS "freetype") @@ -1217,11 +1293,14 @@ qt_configure_add_summary_entry(ARGS "opengles31") qt_configure_add_summary_entry(ARGS "opengles32") qt_configure_end_summary_section() # end of "OpenGL" section qt_configure_add_summary_entry(ARGS "vulkan") +qt_configure_add_summary_entry(ARGS "metal") +qt_configure_add_summary_entry(ARGS "graphicsframecapture") qt_configure_add_summary_entry(ARGS "sessionmanager") qt_configure_end_summary_section() # end of "Qt Gui" section qt_configure_add_summary_section(NAME "Features used by QPA backends") qt_configure_add_summary_entry(ARGS "evdev") qt_configure_add_summary_entry(ARGS "libinput") +qt_configure_add_summary_entry(ARGS "libinput_hires_wheel_support") qt_configure_add_summary_entry(ARGS "integrityhid") qt_configure_add_summary_entry(ARGS "mtdev") qt_configure_add_summary_entry(ARGS "tslib") @@ -1231,6 +1310,7 @@ qt_configure_add_summary_entry(ARGS "xlib") qt_configure_add_summary_entry(ARGS "xcb-xlib") qt_configure_add_summary_entry(ARGS "egl_x11") qt_configure_add_summary_entry(ARGS "xkbcommon-x11") +qt_configure_add_summary_entry(ARGS "xcb-sm") qt_configure_end_summary_section() # end of "X11 specific" section qt_configure_end_summary_section() # end of "Features used by QPA backends" section qt_configure_add_summary_section(NAME "QPA backends") @@ -1269,7 +1349,7 @@ qt_configure_end_summary_section() # end of "GL integrations" section qt_configure_end_summary_section() # end of "XCB" section qt_configure_add_summary_section(NAME "Windows") qt_configure_add_summary_entry(ARGS "direct2d") -qt_configure_add_summary_entry(ARGS "direct2d1_1") ### special case +qt_configure_add_summary_entry(ARGS "direct2d1_1") qt_configure_add_summary_entry(ARGS "directwrite") qt_configure_add_summary_entry(ARGS "directwrite3") qt_configure_end_summary_section() # end of "Windows" section @@ -1290,14 +1370,9 @@ qt_configure_add_report_entry( CONDITION QT_FEATURE_gui AND LINUX AND NOT ANDROID AND NOT QT_FEATURE_xcb AND NOT QT_FEATURE_eglfs AND NOT QT_FEATURE_directfb AND NOT QT_FEATURE_linuxfb ) qt_configure_add_report_entry( - TYPE WARNING - MESSAGE "On OS X, AAT is supported only with -qt-harfbuzz." - CONDITION APPLE AND QT_FEATURE_system_harfbuzz -) -qt_configure_add_report_entry( TYPE ERROR - MESSAGE "The OpenGL functionality tests failed! You might need to modify the include and library search paths by editing QMAKE_INCDIR_OPENGL[_ES2], QMAKE_LIBDIR_OPENGL[_ES2] and QMAKE_LIBS_OPENGL[_ES2] in the mkspec for your platform." - CONDITION QT_FEATURE_gui AND NOT WATCHOS AND ( NOT INPUT_opengl STREQUAL 'no' ) AND NOT QT_FEATURE_opengl_desktop AND NOT QT_FEATURE_opengles2 AND NOT QT_FEATURE_opengl_dynamic + MESSAGE "The OpenGL functionality tests failed! You might need to modify the OpenGL package search path by setting the OpenGL_DIR CMake variable to the OpenGL library's installation directory." + CONDITION QT_FEATURE_gui AND NOT WATCHOS AND NOT VISIONOS AND ( NOT INPUT_opengl STREQUAL 'no' ) AND NOT QT_FEATURE_opengl_desktop AND NOT QT_FEATURE_opengles2 AND NOT QT_FEATURE_opengl_dynamic ) qt_configure_add_report_entry( TYPE WARNING |