diff --git a/qt6-qtwayland.spec b/qt6-qtwayland.spec new file mode 100644 index 0000000..22e997b --- /dev/null +++ b/qt6-qtwayland.spec @@ -0,0 +1,164 @@ + +%global qt_module qtwayland + +%global examples 1 + +%define short_version 6.5 + +Summary: Qt6 - Wayland platform support and QtCompositor module +Name: qt6-%{qt_module} +Version: 6.5.0 +Release: 1 + +License: LGPLv3 +Url: http://www.qt.io +Source0: https://download.qt.io/official_releases/qt/%{short_version}/%{version}/submodules/%{qt_module}-everywhere-src-%{version}.tar.xz + +# filter qml provides +%global __provides_exclude_from ^%{_qt6_archdatadir}/qml/.*\\.so$ + +BuildRequires: gcc-c++ +BuildRequires: cmake +BuildRequires: ninja-build +BuildRequires: qt6-qtbase-devel >= %{version} +BuildRequires: qt6-qtbase-static +BuildRequires: qt6-qtbase-private-devel +%{?_qt6:Requires: %{_qt6}%{?_isa} = %{_qt6_version}} +BuildRequires: qt6-qtdeclarative-devel + +BuildRequires: pkgconfig(xkbcommon) +BuildRequires: pkgconfig(wayland-scanner) +BuildRequires: pkgconfig(wayland-server) +BuildRequires: pkgconfig(wayland-client) +BuildRequires: pkgconfig(wayland-cursor) +BuildRequires: pkgconfig(wayland-egl) +BuildRequires: pkgconfig(egl) +BuildRequires: pkgconfig(gl) +BuildRequires: pkgconfig(xcomposite) +BuildRequires: pkgconfig(xrender) +BuildRequires: pkgconfig(libudev) +BuildRequires: pkgconfig(libinput) + +BuildRequires: libXext-devel + +%description +%{summary}. + +%package devel +Summary: Development files for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +Requires: qt6-qtbase-devel%{?_isa} +Requires: qt6-qtdeclarative-devel%{?_isa} +%description devel +%{summary}. + +%if 0%{?examples} +%package examples +Summary: Programming examples for %{name} +Requires: %{name}%{?_isa} = %{version}-%{release} +# BuildRequires: qt6-qtwayland-devel >= %{version} +%description examples +%{summary}. +%endif + +%prep +%autosetup -n %{qt_module}-everywhere-src-%{version} -p1 + + +%build +%cmake_qt6 -DQT_BUILD_EXAMPLES:BOOL=%{?examples:ON}%{!?examples:OFF} + +cmake --build . %{?_smp_mflags} --verbose + +%install +DESTDIR="%{buildroot}" cmake --install . + +## .prl/.la file love +# nuke .prl reference(s) to %%buildroot, excessive (.la-like) libs +pushd %{buildroot}%{_qt6_libdir} +for prl_file in libQt6*.prl ; do + sed -i -e "/^QMAKE_PRL_BUILD_DIR/d" ${prl_file} + if [ -f "$(basename ${prl_file} .prl).so" ]; then + rm -fv "$(basename ${prl_file} .prl).la" + sed -i -e "/^QMAKE_PRL_LIBS/d" ${prl_file} + fi +done +popd + + +%ldconfig_scriptlets + +%files +%doc README +%license LICENSES/* +%{_qt6_libdir}/libQt6WaylandCompositor.so.6* +%{_qt6_libdir}/libQt6WaylandClient.so.6* +%{_qt6_libdir}/libQt6WaylandCompositor.so.6* +%{_qt6_libdir}/libQt6WaylandClient.so.6* +%{_qt6_libdir}/libQt6WaylandEglClientHwIntegration.so.6* +%{_qt6_libdir}/libQt6WaylandEglCompositorHwIntegration.so.6* +%{_qt6_libdir}/libQt6WlShellIntegration.so.6* +%{_qt6_plugindir}/wayland-decoration-client/ +%{_qt6_plugindir}/wayland-graphics-integration-server +%{_qt6_plugindir}/wayland-graphics-integration-client +%{_qt6_plugindir}/wayland-shell-integration +%{_qt6_plugindir}/platforms/libqwayland-egl.so +%{_qt6_plugindir}/platforms/libqwayland-generic.so +#{_qt6_plugindir}/platforms/libqwayland-xcomposite-egl.so +#{_qt6_plugindir}/platforms/libqwayland-xcomposite-glx.so +%{_qt6_qmldir}/QtWayland/ + +%files devel +%{_qt6_libexecdir}/qtwaylandscanner +%{_qt6_headerdir}/QtWaylandCompositor/ +%{_qt6_headerdir}/QtWaylandClient/ +%{_qt6_headerdir}/QtWaylandEglClientHwIntegration/ +%{_qt6_headerdir}/QtWaylandEglCompositorHwIntegration/ +%{_qt6_headerdir}/QtWlShellIntegration/ +%{_qt6_headerdir}/QtWaylandGlobal/ +%{_qt6_libdir}/libQt6WaylandCompositor.so +%{_qt6_libdir}/libQt6WaylandClient.so +%{_qt6_libdir}/libQt6WaylandEglClientHwIntegration.so +%{_qt6_libdir}/libQt6WaylandEglCompositorHwIntegration.so +%{_qt6_libdir}/libQt6WlShellIntegration.so +%{_qt6_libdir}/libQt6WaylandCompositor.prl +%{_qt6_libdir}/libQt6WaylandClient.prl +%{_qt6_libdir}/libQt6WaylandEglClientHwIntegration.prl +%{_qt6_libdir}/libQt6WaylandEglCompositorHwIntegration.prl +%{_qt6_libdir}/libQt6WlShellIntegration.prl +%{_qt6_libdir}/cmake/Qt6WaylandCompositor/Qt6WaylandCompositorConfig*.cmake +%{_qt6_mkspecsdir}/modules/*.pri +%{_qt6_libdir}/cmake/Qt6/*.cmake +%{_qt6_libdir}/cmake/Qt6BuildInternals/StandaloneTests/QtWaylandTestsConfig.cmake +%{_qt6_libdir}/cmake/Qt6Gui/*.cmake +%{_qt6_libdir}/cmake/Qt6Qml/QmlPlugins/*.cmake +%dir %{_qt6_libdir}/cmake/Qt6WaylandCompositor/ +%{_qt6_libdir}/cmake/Qt6WaylandCompositor/ +%dir %{_qt6_libdir}/cmake/Qt6WaylandClient/ +%{_qt6_libdir}/cmake/Qt6WaylandClient/ +%dir %{_qt6_libdir}/cmake/Qt6WaylandScannerTools/ +%{_qt6_libdir}/cmake/Qt6WaylandScannerTools/ +%dir %{_qt6_libdir}/cmake/Qt6WaylandEglClientHwIntegrationPrivate/ +%{_qt6_libdir}/cmake/Qt6WaylandEglClientHwIntegrationPrivate/ +%dir %{_qt6_libdir}/cmake/Qt6WaylandEglCompositorHwIntegrationPrivate/ +%{_qt6_libdir}/cmake/Qt6WaylandEglCompositorHwIntegrationPrivate/ +%dir %{_qt6_libdir}/cmake/Qt6WlShellIntegrationPrivate/ +%{_qt6_libdir}/cmake/Qt6WlShellIntegrationPrivate/ +%dir %{_qt6_libdir}/cmake/Qt6WaylandGlobalPrivate/ +%{_qt6_libdir}/cmake/Qt6WaylandGlobalPrivate/ +%{_qt6_archdatadir}/metatypes/qt6*_metatypes.json +%{_qt6_archdatadir}/modules/*.json +%{_qt6_libdir}/pkgconfig/*.pc + + +%if 0%{?examples} +%files examples +%{_qt6_examplesdir}/wayland/ +%endif + +%changelog +* Tue May 9 2023 EastDong - 6.5.0-1 +- update package + +* Wed Nov 30 2022 Jingwiw - 6.4.0 +- init package \ No newline at end of file diff --git a/qt6-qtwayland.yaml b/qt6-qtwayland.yaml new file mode 100644 index 0000000..3fda633 --- /dev/null +++ b/qt6-qtwayland.yaml @@ -0,0 +1,4 @@ +version_control: git +src_repo: https://code.qt.io/qt/qtwayland.git +tag_prefix: "^v" +separator: "." diff --git a/qtwayland-everywhere-src-6.5.0.tar.xz b/qtwayland-everywhere-src-6.5.0.tar.xz new file mode 100644 index 0000000..fbd296c Binary files /dev/null and b/qtwayland-everywhere-src-6.5.0.tar.xz differ