mirror of
https://github.com/mappu/miqt.git
synced 2024-12-22 08:58:37 +00:00
qmultimedia: add support in genbindings
This commit is contained in:
parent
62aa3fb25e
commit
df7aae6f1b
@ -409,8 +409,14 @@ func AllowType(p CppParameter, isReturnType bool) error {
|
||||
"QPlatformWindow", // e.g. qwindow.h, as below
|
||||
"QPlatformSurface", // e.g. qsurface.h. as below
|
||||
"QPlatformMenu", // e.g. QMenu_PlatformMenu. Defined in the QPA, could probably expose as uintptr
|
||||
"QPlatformMediaCaptureSession", // Qt 6 Multimedia qmediacapturesession.h
|
||||
"QPlatformMediaRecorder", // Qt 6 Multimedia qmediarecorder.h
|
||||
"QPlatformVideoSink", // Qt 6 Multimedia qvideosink.h
|
||||
"QTextDocument::ResourceProvider", // Qt 6 typedef for unsupported std::function<QVariant(const QUrl&)>
|
||||
"QTransform::Affine", // Qt 6 qtransform.h - public method returning private type
|
||||
"QAbstractAudioBuffer", // Qt 5 Multimedia, this is a private/internal type only
|
||||
"QAbstractVideoBuffer", // Works in Qt 5, but in Qt 6 Multimedia this type is used in qvideoframe.h but is not defined anywhere (it was later added in Qt 6.8)
|
||||
"QRhi", // Qt 6 unstable types, used in Multimedia
|
||||
"____last____":
|
||||
return ErrTooComplex
|
||||
}
|
||||
|
@ -78,6 +78,22 @@ func ProcessLibraries(clangBin, outDir, extraLibsDir string) {
|
||||
ClangMatchSameHeaderDefinitionOnly,
|
||||
)
|
||||
|
||||
generate(
|
||||
"qt/multimedia",
|
||||
[]string{
|
||||
// Theoretically, QtMultimediaWidgets and QtMultimedia are different
|
||||
// packages, but QtMultimedia qcamera.h has a dependency on qvideowidget.
|
||||
// Bind them together since our base /qt/ package is Widgets anyway.
|
||||
"/usr/include/x86_64-linux-gnu/qt5/QtMultimedia",
|
||||
"/usr/include/x86_64-linux-gnu/qt5/QtMultimediaWidgets",
|
||||
},
|
||||
AllowAllHeaders,
|
||||
clangBin,
|
||||
pkgConfigCflags("Qt5MultimediaWidgets"),
|
||||
outDir,
|
||||
ClangMatchSameHeaderDefinitionOnly,
|
||||
)
|
||||
|
||||
// Depends on QtCore/Gui/Widgets, QPrintSupport
|
||||
generate(
|
||||
"qt-restricted-extras/qscintilla",
|
||||
@ -183,4 +199,32 @@ func ProcessLibraries(clangBin, outDir, extraLibsDir string) {
|
||||
outDir,
|
||||
ClangMatchSameHeaderDefinitionOnly,
|
||||
)
|
||||
|
||||
// Qt 6 QtMultimedia
|
||||
generate(
|
||||
"qt6/multimedia",
|
||||
[]string{
|
||||
"/usr/include/x86_64-linux-gnu/qt6/QtMultimedia",
|
||||
"/usr/include/x86_64-linux-gnu/qt6/QtMultimediaWidgets",
|
||||
},
|
||||
AllowAllHeaders,
|
||||
clangBin,
|
||||
"--std=c++17 "+pkgConfigCflags("Qt6MultimediaWidgets"),
|
||||
outDir,
|
||||
ClangMatchSameHeaderDefinitionOnly,
|
||||
)
|
||||
|
||||
// Qt 6 Spatial Audio (on Debian this is a dependency of Qt6Multimedia)
|
||||
generate(
|
||||
"qt6/spatialaudio",
|
||||
[]string{
|
||||
"/usr/include/x86_64-linux-gnu/qt6/QtSpatialAudio",
|
||||
},
|
||||
AllowAllHeaders,
|
||||
clangBin,
|
||||
"--std=c++17 "+pkgConfigCflags("Qt6SpatialAudio"),
|
||||
outDir,
|
||||
ClangMatchSameHeaderDefinitionOnly,
|
||||
)
|
||||
|
||||
}
|
||||
|
@ -4,7 +4,9 @@ RUN DEBIAN_FRONTEND=noninteractive apt-get update && \
|
||||
apt-get install --no-install-recommends -qyy \
|
||||
golang-go \
|
||||
qtbase5-dev \
|
||||
qtmultimedia5-dev \
|
||||
qt6-base-dev \
|
||||
qt6-multimedia-dev \
|
||||
libqscintilla2-qt5-dev \
|
||||
clang \
|
||||
git \
|
||||
|
Loading…
Reference in New Issue
Block a user