1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-18 00:10:04 +00:00

x11-toolkits/aquamarine: unbreak build with libc++ 16

In file included from src/allocator/GBM.cpp:1:
In file included from ./include/aquamarine/allocator/GBM.hpp:3:
In file included from ./include/aquamarine/allocator/Allocator.hpp:4:
In file included from ./include/aquamarine/allocator/../buffer/Buffer.hpp:6:
In file included from /usr/local/include/hyprutils/math/Region.hpp:5:
/usr/local/include/hyprutils/math/Vector2D.hpp:141:5: error: no member named 'format_error' in namespace 'std'
    AQ_FORMAT_PARSE(AQ_FORMAT_FLAG('j', formatJson) //
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/local/include/hyprutils/math/Vector2D.hpp:110:57: note: expanded from macro 'AQ_FORMAT_PARSE'
            switch (*it) { specs__ default : throw std::format_error("invalid format specification"); }                                                                            \
                                                   ~~~~~^
/usr/local/include/hyprutils/math/Vector2D.hpp:148:68: error: no member named 'format' in namespace 'std'
        std::string formatString = precision.empty() ? "{}" : std::format("{{:.{}f}}", precision);
                                                              ~~~~~^
/usr/local/include/hyprutils/math/Vector2D.hpp:151:33: error: no member named 'format' in namespace 'std'
            formatString = std::format("[{0}, {0}]", formatString);
                           ~~~~~^
/usr/local/include/hyprutils/math/Vector2D.hpp:153:33: error: no member named 'format' in namespace 'std'
            formatString = std::format("{0}x{0}", formatString);
                           ~~~~~^
/usr/local/include/hyprutils/math/Vector2D.hpp:155:33: error: no member named 'format' in namespace 'std'
            formatString = std::format("[Vector2D: x: {0}, y: {0}]", formatString);
                           ~~~~~^
/usr/local/include/hyprutils/math/Vector2D.hpp:157:31: error: no member named 'vformat' in namespace 'std'
            string buf = std::vformat(formatString, std::make_format_args(vec.x, vec.y));
                         ~~~~~^
/usr/local/include/hyprutils/math/Vector2D.hpp:157:58: error: no member named 'make_format_args' in namespace 'std'
            string buf = std::vformat(formatString, std::make_format_args(vec.x, vec.y));
                                                    ~~~~~^
/usr/local/include/hyprutils/math/Vector2D.hpp:158:25: error: no member named 'format_to' in namespace 'std'
            return std::format_to(ctx.out(), "{}", buf);
                   ~~~~~^
/usr/local/include/hyprutils/math/Vector2D.hpp:159:23: error: no type named 'format_error' in namespace 'std'; did you mean 'domain_error'?
        } catch (std::format_error& e) { return std::format_to(ctx.out(), "[{}, {}]", vec.x, vec.y); }
                 ~~~~~^
/usr/include/c++/v1/stdexcept:123:29: note: 'domain_error' declared here
class _LIBCPP_EXCEPTION_ABI domain_error
                            ^
In file included from src/allocator/GBM.cpp:1:
In file included from ./include/aquamarine/allocator/GBM.hpp:3:
In file included from ./include/aquamarine/allocator/Allocator.hpp:4:
In file included from ./include/aquamarine/allocator/../buffer/Buffer.hpp:6:
In file included from /usr/local/include/hyprutils/math/Region.hpp:5:
/usr/local/include/hyprutils/math/Vector2D.hpp:159:54: error: no member named 'format_to' in namespace 'std'
        } catch (std::format_error& e) { return std::format_to(ctx.out(), "[{}, {}]", vec.x, vec.y); }
                                                ~~~~~^
src/allocator/GBM.cpp:68:40: error: no member named 'format' in namespace 'std'
                                  std::format("GBM: Allocating a buffer: size {}, format {}, cursor: {}, multigpu: {}", attrs.size, fourccToName(attrs.format), CURSOR, MULTIGPU)));
                                  ~~~~~^
./src/include/Shared.hpp:26:13: note: expanded from macro 'TRACE'
            expr;                                                                                                                                                                  \
            ^~~~
src/allocator/GBM.cpp:77:56: error: no member named 'format' in namespace 'std'
            allocator->backend->log(AQ_LOG_DEBUG, std::format("GBM: Automatically selected format {} for new GBM buffer", fourccToName(attrs.format)));
                                                  ~~~~~^
src/allocator/GBM.cpp:118:58: error: no member named 'format' in namespace 'std'
        TRACE(allocator->backend->log(AQ_LOG_TRACE, std::format("GBM: Using modifier-based allocation, modifiers: {}", explicitModifiers.size())));
                                                    ~~~~~^
./src/include/Shared.hpp:26:13: note: expanded from macro 'TRACE'
            expr;                                                                                                                                                                  \
            ^~~~
src/allocator/GBM.cpp:120:62: error: no member named 'format' in namespace 'std'
            TRACE(allocator->backend->log(AQ_LOG_TRACE, std::format("GBM: | mod 0x{:x}", mod)));
                                                        ~~~~~^
./src/include/Shared.hpp:26:13: note: expanded from macro 'TRACE'
            expr;                                                                                                                                                                  \
            ^~~~
src/allocator/GBM.cpp:144:56: error: no member named 'format' in namespace 'std'
            allocator->backend->log(AQ_LOG_ERROR, std::format("GBM: Failed to query fd for plane {}", i));
                                                  ~~~~~^
src/allocator/GBM.cpp:158:34: error: no member named 'format' in namespace 'std'
                            std::format("GBM: Allocated a new buffer with size {} and format {} with modifier {} aka {}", attrs.size, fourccToName(attrs.format), attrs.modifier,
                            ~~~~~^
src/allocator/GBM.cpp:236:38: error: no member named 'format' in namespace 'std'
    backend_->log(AQ_LOG_DEBUG, std::format("Created a GBM allocator with drm fd {}", drmfd_));
                                ~~~~~^
src/allocator/GBM.cpp:246:41: error: no member named 'format' in namespace 'std'
        backend->log(AQ_LOG_ERROR, std::format("Couldn't open a GBM device at fd {}", fd_));
                                   ~~~~~^
src/allocator/GBM.cpp:258:41: error: no member named 'format' in namespace 'std'
        backend->log(AQ_LOG_ERROR, std::format("Couldn't allocate a gbm buffer with invalid size {}", params.size));
                                   ~~~~~^
fatal error: too many errors emitted, stopping now [-ferror-limit=]

Reported by:	pkg-fallout
This commit is contained in:
Jan Beich 2024-07-20 05:18:53 +02:00
parent 6fe85dedb3
commit de28fc5f84

View File

@ -30,6 +30,11 @@ USE_XORG= pixman
GH_ACCOUNT= hyprwm
PLIST_SUB= VERSION=${DISTVERSION:C/-.*//}
# XXX Drop after FreeBSD 14.0 EOL around 2024-10-01
.if exists(/usr/lib/libc++.so) && !exists(/usr/include/c++/v1/__format/write_escaped.h)
CXXFLAGS+= -fexperimental-library
.endif
# XXX Drop after FreeBSD 13.4 EOL around 2026-01-31
# https://cgit.freebsd.org/src/commit/?id=af93fea71038
.if !exists(/usr/include/sys/timerfd.h)