[Bug 271914] graphics/qt5-imageformats: fix build with clang 16

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Thu Jun 8 18:54:37 BST 2023


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=271914

            Bug ID: 271914
           Summary: graphics/qt5-imageformats: fix build with clang 16
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: kde at FreeBSD.org
          Reporter: dim at FreeBSD.org
             Flags: maintainer-feedback?(kde at FreeBSD.org)
          Assignee: kde at FreeBSD.org

Since clang 16 (and gcc 11) the default C++ standard is now gnu++17.
Because graphics/qt5-imageformats 's build infrastructure does not
explicitly set its C++ standard, this leads to an issue detecting libmng
in the configure stage:

  Configure summary:

  Further Image Formats:
    JasPer ................................. yes
    MNG .................................... no
    TIFF ................................... yes
      Using system libtiff ................. yes
    WEBP ................................... yes
      Using system libwebp ................. yes

This is because the small configure test program for libmng includes
libmng.h, which transitively includes lcms.h, and the latter fails due
to 'register' keywords in the header. With lcms2.h there is a special
define CMS_NO_REGISTER_KEYWORD to avoid usage of the register keyword,
but lcms.h is very old and does not support that.

As a workaround, define the register keyword away via a "head" object in
src/imageformats/configure.json, and via CXXFLAGS for the rest of the
build.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the kde-freebsd mailing list