Clang 19 has become more strict about initialization with undefined
behavior, resulting in errors similar to:
./SimpleModule.h:126:40: error: in-class initializer for static data member is not a constant expression
126 | static const int kMinSignedValue = -1 << kScaleBits;
| ~~~^~~~~~~~~~~~~
./SimpleModule.h:176:22: note: in instantiation of template class 'signConverter<kInt8>' requested here
176 | transform<typename signConverter<Format>::signedToUnsigned>(src, dst, count);
| ^
./SimpleModule.h:183:5: note: in instantiation of function template specialization 'ConvertSign::convertSignedToUnsigned<kInt8>' requested here
183 | convertSignedToUnsigned<kInt8>(src, dst, count);
| ^
This is because left-shifting negative values is undefined. Replace -1
with ~0u which results in the expected value.
While here, add a few other patches to remove warnings about undefined
left-shifts, and add support for the "make test" target.
PR: 281477
Approved by: maintainer timeout (2 weeks)
MFH: 2024Q3
Mk/Uses/gstreamer.mk:
- Sort, fix whitespace issues and typos
- Promote several common variables to improve maintainer QOL
* There's now no need to set manually set PORTVERSION nor
SOVERSION in several Makefiles
* This will help to prevent not updating some components
* A note has been added, however, to remind maintainers
to remake distinfo for certain ports
- Improve documentation
multimedia/gstreamer1-plugins-webrtc:
- New port split from multimedia/gstreamer1-plugins-bad
- multimedia/gstreamer1-plugins-rust has been updated
to reflect this change
net/gstreamer1-plugins-sctp:
- New port split from multimedia/gstreamer1-plugins-bad
x11-toolkits/gstreamer1-plugins-qt5:
- Moved here from graphics/gstreamer1-plugins-qt to
align with its new Qt6 counterpart
x11-toolkits/gstreamer1-plugins-qt6:
- New port: GStreamer Qt6 QML videosink plugin
*/*:
- Improve Makefile order and formatting
- Sorry for the repo churn, but not fixing this would just lead to more
poorly formatted gstreamer ports in the future via copypasta
https://gstreamer.freedesktop.org/releases/1.24/#1.24.8
PR: 278914
Reported by: vvd
Improvements include:
- switch to build shared libraries so that they are usable for other apps
- optionize bundled commands (ON by default)
- rename "player" command to "libvgm-player"
(player is too generic name and can cause filename clashes)
Co-authored-by: Daniel Engberg <diizzy@FreeBSD.org>
PR: 281363
Reported by: diizzy
Add PIPEWIRE and SIMD options.
Add checks to disable CPU instruction sets that are opt-out by default
and only consider the host builder. For example, disable SSE4.1 on an
amd64 host building for an i386 target. Additional instruction sets can
be enabled by setting CPUTYPE appropriately in /etc/make.conf or in its
poudriere(8) counterpart.