Opened 9 days ago

Closed 4 days ago

#20336 closed enhancement (fixed)

gtk4-4.16.0

Reported by: Xi Ruoyao Owned by: Bruce Dubbs
Priority: normal Milestone: 12.3
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description

New minor version.

Change History (8)

comment:1 by Xi Ruoyao, 9 days ago

The upstream has switched the default from GL to Vulkan on Wayland. And to enable the Vulkan support (removing -D vulkan=disabled) we need glslc. As other google packages, building it makes a headache...

curl https://github.com/google/shaderc/archive/v2024.1/shaderc-2024.1.tar.gz -LO

tar xf shaderc-2024.1.tar.gz
cd shaderc-2024.1

# Allow building with system spirv-tools and glslang
# Copied from Gentoo: https://gitweb.gentoo.org/repo/gentoo.git/tree/media-libs/shaderc/shaderc-2024.1-r1.ebuild
sed '/build-version/d'   -i glslc/CMakeLists.txt
sed '/third_party/d'     -i CMakeLists.txt
sed 's|SPIRV|glslang/&|' -i libshaderc_util/src/compiler.cc

# The lines: shaderc version, spirv-tools version, and glslang version
cat > glslc/src/build-version.inc << EOF
"2024.1"
"1.2.290.0"
"14.3.0"
EOF

mkdir build
cd    build

cmake -D CMAKE_INSTALL_PREFIX=/usr \
      -D CMAKE_BUILD_TYPE=Release  \
      -D SHADERC_SKIP_TESTS=ON     \
      -G Ninja ..
ninja

# "ninja install" installs some libraries (including two static libraries)
# and I don't like them.  Just install the glslc program.
sudo install -vm755 glslc/glslc /usr/bin

comment:2 by Xi Ruoyao, 9 days ago

When I run GTK-4 apps with gtk-4.16.0 + Vulkan, the Intel Vulkan driver complains something like

MESA-INTEL: warning: ../src/intel/vulkan/anv_formats.c:763: FINISHME: support YUV colorspace with DRM format modifiers
MESA-INTEL: warning: ../src/intel/vulkan/anv_formats.c:794: FINISHME: support more multi-planar formats with DRM modifiers

but nevertheless they seem running fine.

comment:3 by Bruce Dubbs, 8 days ago

Owner: changed from blfs-book to Bruce Dubbs
Status: newassigned

in reply to:  2 ; comment:4 by Bruce Dubbs, 7 days ago

Replying to Xi Ruoyao:

When I run GTK-4 apps with gtk-4.16.0 + Vulkan, the Intel Vulkan driver complains something like

MESA-INTEL: warning: ../src/intel/vulkan/anv_formats.c:763: FINISHME: support YUV colorspace with DRM format modifiers
MESA-INTEL: warning: ../src/intel/vulkan/anv_formats.c:794: FINISHME: support more multi-planar formats with DRM modifiers

but nevertheless they seem running fine.

What version of mesa are you running? A grep of the mesa 24.2.2 only shows the YUV message in docs/relnotes/24.2.0.rst and no hits for the multi-planar message.

in reply to:  4 comment:5 by Xi Ruoyao, 7 days ago

Replying to Bruce Dubbs:

Replying to Xi Ruoyao:

When I run GTK-4 apps with gtk-4.16.0 + Vulkan, the Intel Vulkan driver complains something like

MESA-INTEL: warning: ../src/intel/vulkan/anv_formats.c:763: FINISHME: support YUV colorspace with DRM format modifiers
MESA-INTEL: warning: ../src/intel/vulkan/anv_formats.c:794: FINISHME: support more multi-planar formats with DRM modifiers

but nevertheless they seem running fine.

What version of mesa are you running? A grep of the mesa 24.2.2 only shows the YUV message in docs/relnotes/24.2.0.rst and no hits for the multi-planar message.

24.2.2.

When doing a grep we have to remove the FINISHME: part because the actual code is like:

anv_finishme("support YUV colorspace with DRM format modifiers");

i.e. the FINISHME: prefix is added by anv_finishme(). And the message gives where the message is: ../src/intel/vulkan/anv_formats.c:763. Here .. is the mesa source dir because we are building with meson setup ${OPTIONS} ...

I've not seen any negative effect so far despite these warnings.

comment:6 by Bruce Dubbs, 7 days ago

Looking at the code, those are the only two anv_finishme() calls in that file. We could comment them out.

anv_finishme() is a macro in src/intel/vulkan/anv_private.h. It looks like a developer only type of message. We could effectively change that to a no-op if we want.

in reply to:  6 comment:7 by Xi Ruoyao, 7 days ago

Replying to Bruce Dubbs:

Looking at the code, those are the only two anv_finishme() calls in that file. We could comment them out.

anv_finishme() is a macro in src/intel/vulkan/anv_private.h. It looks like a developer only type of message. We could effectively change that to a no-op if we want.

It's easier to suppress them with MESA_LOG_FILE=/dev/null at runtime.

comment:8 by Bruce Dubbs, 4 days ago

Resolution: fixed
Status: assignedclosed

Fixed at commit 964682d806.

Note: See TracTickets for help on using tickets.