b625d11e7c
Resolves: RHEL-28239
344 lines
10 KiB
RPMSpec
344 lines
10 KiB
RPMSpec
|
|
%global qt_module qt3d
|
|
|
|
#global unstable 1
|
|
%if 0%{?unstable}
|
|
%global prerelease rc2
|
|
%endif
|
|
|
|
Summary: Qt6 - Qt3D QML bindings and C++ APIs
|
|
Name: qt6-%{qt_module}
|
|
Version: 6.6.1
|
|
Release: 5%{?dist}
|
|
|
|
%global examples 1
|
|
%global build_tests 1
|
|
|
|
License: LGPL-3.0-only OR GPL-3.0-only WITH Qt-GPL-exception-1.0
|
|
Url: http://www.qt.io
|
|
%global majmin %(echo %{version} | cut -d. -f1-2)
|
|
%global qt_version %(echo %{version} | cut -d~ -f1)
|
|
|
|
%if 0%{?unstable}
|
|
Source0: https://download.qt.io/development_releases/qt/%{majmin}/%{qt_version}/submodules/%{qt_module}-everywhere-src-%{qt_version}-%{prerelease}.tar.xz
|
|
%else
|
|
Source0: https://download.qt.io/official_releases/qt/%{majmin}/%{version}/submodules/%{qt_module}-everywhere-src-%{version}.tar.xz
|
|
%endif
|
|
Source1: qt3dcore-config-multilib_p.h
|
|
|
|
Patch0: qt3d-assimp-fix-build.patch
|
|
|
|
BuildRequires: gcc-c++
|
|
BuildRequires: cmake
|
|
BuildRequires: ninja-build
|
|
BuildRequires: qt6-rpm-macros >= %{version}
|
|
BuildRequires: qt6-qtbase-static >= %{version}
|
|
BuildRequires: qt6-qtbase-private-devel
|
|
%{?_qt6:Requires: %{_qt6}%{?_isa} = %{_qt6_version}}
|
|
BuildRequires: qt6-qtdeclarative-devel
|
|
BuildRequires: qt6-qtshadertools-devel
|
|
BuildRequires: qt6-qtimageformats
|
|
# FIXME: enable with newer assimp
|
|
%if 0%{?fedora}
|
|
BuildRequires: pkgconfig(assimp) >= 3.3.1
|
|
%endif
|
|
Requires: qt6-qtimageformats%{?_isa} >= %{version}
|
|
|
|
%description
|
|
Qt 3D provides functionality for near-realtime simulation systems with
|
|
support for 2D and 3D rendering in both Qt C++ and Qt Quick applications).
|
|
|
|
%package devel
|
|
Summary: Development files for %{name}
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
Requires: qt6-qtbase-devel%{?_isa}
|
|
%description devel
|
|
%{summary}.
|
|
|
|
%if 0%{?examples}
|
|
%package examples
|
|
Summary: Programming examples for %{name}
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
%description examples
|
|
%{summary}.
|
|
%endif
|
|
|
|
%if 0%{?build_tests}
|
|
%package tests
|
|
Summary: Unit tests for %{name}
|
|
Requires: %{name}%{?_isa} = %{version}-%{release}
|
|
|
|
%description tests
|
|
%{summary}.
|
|
%endif
|
|
|
|
%prep
|
|
%autosetup -n %{qt_module}-everywhere-src-%{qt_version}%{?unstable:-%{prerelease}} -p1
|
|
|
|
|
|
%build
|
|
# QT is known not to work properly with LTO at this point. Some of the issues
|
|
# are being worked on upstream and disabling LTO should be re-evaluated as
|
|
# we update this change. Until such time...
|
|
# Disable LTO
|
|
%define _lto_cflags %{nil}
|
|
|
|
%cmake_qt6 \
|
|
-DQT_BUILD_EXAMPLES:BOOL=%{?examples:ON}%{!?examples:OFF} \
|
|
-DQT_BUILD_TESTS=%{?build_tests:ON}%{!?build_tests:OFF} \
|
|
-DQT_FEATURE_qt3d_system_assimp=%{?fedora:ON}%{!?fedora:OFF}
|
|
|
|
%cmake_build
|
|
|
|
|
|
%install
|
|
%cmake_install
|
|
|
|
%if 0%{?build_tests}
|
|
%qt6_install_tests
|
|
%endif
|
|
|
|
%ifarch %{multilib_archs}
|
|
# multilib: qt3dcore-config_p.h
|
|
mv %{buildroot}%{_qt6_headerdir}/Qt3DCore/%{version}/Qt3DCore/private/qt3dcore-config_p.h %{buildroot}%{_qt6_headerdir}/Qt3DCore/%{version}/Qt3DCore/private/qt3dcore-config-%{__isa_bits}_p.h
|
|
install -p -m644 -D %{SOURCE1} %{buildroot}%{_qt6_headerdir}/Qt3DCore/%{version}/Qt3DCore/private/qt3dcore-config_p.h
|
|
%endif
|
|
|
|
## .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
|
|
%license LICENSES/GPL* LICENSES/LGPL*
|
|
%{_qt6_libdir}/libQt63DAnimation.so.6*
|
|
%{_qt6_libdir}/libQt63DCore.so.6*
|
|
%{_qt6_libdir}/libQt63DExtras.so.6*
|
|
%{_qt6_libdir}/libQt63DInput.so.6*
|
|
%{_qt6_libdir}/libQt63DLogic.so.6*
|
|
%{_qt6_libdir}/libQt63DQuick.so.6*
|
|
%{_qt6_libdir}/libQt63DQuickAnimation.so.6*
|
|
%{_qt6_libdir}/libQt63DQuickExtras.so.6*
|
|
%{_qt6_libdir}/libQt63DQuickInput.so.6*
|
|
%{_qt6_libdir}/libQt63DQuickRender.so.6*
|
|
%{_qt6_libdir}/libQt63DQuickScene2D.so.6*
|
|
%{_qt6_libdir}/libQt63DRender.so.6*
|
|
%{_qt6_plugindir}/geometryloaders/
|
|
%{_qt6_plugindir}/renderers/
|
|
%{_qt6_plugindir}/renderplugins/
|
|
%{_qt6_plugindir}/sceneparsers/
|
|
%{_qt6_qmldir}/Qt3D/
|
|
%{_qt6_qmldir}/QtQuick/Scene2D/
|
|
%{_qt6_qmldir}/QtQuick/Scene3D/
|
|
|
|
%files devel
|
|
%dir %{_qt6_libdir}/cmake/Qt63DAnimation
|
|
%dir %{_qt6_libdir}/cmake/Qt63DCore/
|
|
%dir %{_qt6_libdir}/cmake/Qt63DExtras
|
|
%dir %{_qt6_libdir}/cmake/Qt63DInput
|
|
%dir %{_qt6_libdir}/cmake/Qt63DLogic
|
|
%dir %{_qt6_libdir}/cmake/Qt63DQuick
|
|
%dir %{_qt6_libdir}/cmake/Qt63DQuickAnimation
|
|
%dir %{_qt6_libdir}/cmake/Qt63DQuickExtras
|
|
%dir %{_qt6_libdir}/cmake/Qt63DQuickInput
|
|
%dir %{_qt6_libdir}/cmake/Qt63DQuickRender/
|
|
%dir %{_qt6_libdir}/cmake/Qt63DQuickScene2D
|
|
%dir %{_qt6_libdir}/cmake/Qt63DRender/
|
|
%{_qt6_archdatadir}/mkspecs/modules/*.pri
|
|
%{_qt6_includedir}/Qt3DAnimation
|
|
%{_qt6_includedir}/Qt3DCore/
|
|
%{_qt6_includedir}/Qt3DExtras
|
|
%{_qt6_includedir}/Qt3DInput/
|
|
%{_qt6_includedir}/Qt3DLogic/
|
|
%{_qt6_includedir}/Qt3DQuick
|
|
%{_qt6_includedir}/Qt3DQuickAnimation
|
|
%{_qt6_includedir}/Qt3DQuickExtras
|
|
%{_qt6_includedir}/Qt3DQuickInput/
|
|
%{_qt6_includedir}/Qt3DQuickRender/
|
|
%{_qt6_includedir}/Qt3DQuickScene2D
|
|
%{_qt6_includedir}/Qt3DRender/
|
|
%{_qt6_libdir}/cmake/Qt6/FindWrapQt3DAssimp.cmake
|
|
%{_qt6_libdir}/cmake/Qt6BuildInternals/StandaloneTests/Qt3DTestsConfig.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DAnimation/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DCore/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DExtras/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DInput/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DLogic/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DQuick/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DQuickAnimation/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DQuickExtras/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DQuickInput/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DQuickRender/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DQuickScene2D/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt63DRender/*.cmake
|
|
%{_qt6_libdir}/cmake/Qt6Qml/QmlPlugins/*.cmake
|
|
%{_qt6_libdir}/libQt63DAnimation.prl
|
|
%{_qt6_libdir}/libQt63DAnimation.so
|
|
%{_qt6_libdir}/libQt63DCore.prl
|
|
%{_qt6_libdir}/libQt63DCore.so
|
|
%{_qt6_libdir}/libQt63DExtras.prl
|
|
%{_qt6_libdir}/libQt63DExtras.so
|
|
%{_qt6_libdir}/libQt63DInput.prl
|
|
%{_qt6_libdir}/libQt63DInput.so
|
|
%{_qt6_libdir}/libQt63DLogic.prl
|
|
%{_qt6_libdir}/libQt63DLogic.so
|
|
%{_qt6_libdir}/libQt63DQuick.prl
|
|
%{_qt6_libdir}/libQt63DQuick.so
|
|
%{_qt6_libdir}/libQt63DQuickAnimation.prl
|
|
%{_qt6_libdir}/libQt63DQuickAnimation.so
|
|
%{_qt6_libdir}/libQt63DQuickExtras.prl
|
|
%{_qt6_libdir}/libQt63DQuickExtras.so
|
|
%{_qt6_libdir}/libQt63DQuickInput.prl
|
|
%{_qt6_libdir}/libQt63DQuickInput.so
|
|
%{_qt6_libdir}/libQt63DQuickRender.prl
|
|
%{_qt6_libdir}/libQt63DQuickRender.so
|
|
%{_qt6_libdir}/libQt63DQuickScene2D.prl
|
|
%{_qt6_libdir}/libQt63DQuickScene2D.so
|
|
%{_qt6_libdir}/libQt63DRender.prl
|
|
%{_qt6_libdir}/libQt63DRender.so
|
|
%{_qt6_libdir}/qt6/metatypes/qt6*_metatypes.json
|
|
%{_qt6_libdir}/qt6/modules/*.json
|
|
%{_qt6_libdir}/pkgconfig/*.pc
|
|
|
|
%if 0%{?examples}
|
|
%files examples
|
|
%{_qt6_examplesdir}/
|
|
%endif
|
|
|
|
%if 0%{?build_tests}
|
|
%files tests
|
|
%{_qt6_archdatadir}/tests
|
|
%endif
|
|
|
|
%changelog
|
|
* Wed Mar 27 2024 Jan Grulich <jgrulich@redhat.com> - 6.6.1-5
|
|
- Add -tests subpackage with unit tests that can run in CI
|
|
Resolves: RHEL-28239
|
|
|
|
* Fri Jan 26 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.6.1-4
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
|
|
* Mon Jan 22 2024 Fedora Release Engineering <releng@fedoraproject.org> - 6.6.1-3
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild
|
|
|
|
* Tue Jan 16 2024 Jan Grulich <jgrulich@redhat.com> - 6.6.1-2
|
|
- Use system assimp
|
|
|
|
* Mon Nov 27 2023 Jan Grulich <jgrulich@redhat.com> - 6.6.1-1
|
|
- 6.6.1
|
|
|
|
* Tue Oct 10 2023 Jan Grulich <jgrulich@redhat.com> - 6.6.0-1
|
|
- 6.6.0
|
|
|
|
* Sun Oct 01 2023 Justin Zobel <justin.zobel@gmail.com> - 6.5.3-1
|
|
- new version
|
|
|
|
* Fri Jul 21 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.5.2-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild
|
|
|
|
* Fri Jul 21 2023 Jan Grulich <jgrulich@redhat.com> - 6.5.2-1
|
|
- 6.5.2
|
|
|
|
* Wed Jul 12 2023 Jan Grulich <jgrulich@redhat.com> - 6.5.1-3
|
|
- Rebuild for qtbase private API version change
|
|
|
|
* Wed Jul 12 2023 Jan Grulich <jgrulich@redhat.com> - 6.5.1-2
|
|
- Rebuild for qtbase private API version change
|
|
|
|
* Mon May 22 2023 Jan Grulich <jgrulich@redhat.com> - 6.5.1-1
|
|
- 6.5.1
|
|
|
|
* Tue Apr 04 2023 Jan Grulich <jgrulich@redhat.com> - 6.5.0-1
|
|
- 6.5.0
|
|
|
|
* Thu Mar 23 2023 Jan Grulich <jgrulich@redhat.com> - 6.4.3-1
|
|
- 6.4.3
|
|
|
|
* Tue Jan 31 2023 Jan Grulich <jgrulich@redhat.com> - 6.4.2-3
|
|
- migrated to SPDX license
|
|
|
|
* Fri Jan 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 6.4.2-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild
|
|
|
|
* Mon Jan 16 2023 Jan Grulich <jgrulich@redhat.com> - 6.4.2-1
|
|
- 6.4.2
|
|
|
|
* Wed Nov 23 2022 Jan Grulich <jgrulich@redhat.com> - 6.4.1-1
|
|
- 6.4.1
|
|
|
|
* Mon Oct 31 2022 Jan Grulich <jgrulich@redhat.com> - 6.4.0-1
|
|
- 6.4.0
|
|
|
|
* Sat Jul 23 2022 Fedora Release Engineering <releng@fedoraproject.org> - 6.3.1-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild
|
|
|
|
* Wed Jul 13 2022 Jan Grulich <jgrulich@redhat.com> - 6.3.1-1
|
|
- 6.3.1
|
|
|
|
* Wed May 25 2022 Jan Grulich <jgrulich@redhat.com> - 6.3.0-2
|
|
- Enable examples
|
|
|
|
* Wed Apr 13 2022 Jan Grulich <jgrulich@redhat.com> - 6.3.0-1
|
|
- 6.3.0
|
|
|
|
* Fri Feb 25 2022 Jan Grulich <jgrulich@redhat.com> - 6.2.3-2
|
|
- Enable s390x builds
|
|
|
|
* Mon Jan 31 2022 Jan Grulich <jgrulich@redhat.com> - 6.2.3-1
|
|
- 6.2.3
|
|
|
|
* Fri Jan 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 6.2.2-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild
|
|
|
|
* Tue Dec 14 2021 Jan Grulich <jgrulich@redhat.com> - 6.2.2-1
|
|
- 6.2.2
|
|
|
|
* Fri Oct 29 2021 Jan Grulich <jgrulich@redhat.com> - 6.2.1-1
|
|
- 6.2.1
|
|
|
|
* Thu Sep 30 2021 Jan Grulich <jgrulich@redhat.com> - 6.2.0-1
|
|
- 6.2.0
|
|
|
|
* Mon Sep 27 2021 Jan Grulich <jgrulich@redhat.com> - 6.2.0~rc2-1
|
|
- 6.2.0 - rc2
|
|
|
|
* Sat Sep 18 2021 Jan Grulich <jgrulich@redhat.com> - 6.2.0~rc-1
|
|
- 6.2.0 - rc
|
|
|
|
* Mon Sep 13 2021 Jan Grulich <jgrulich@redhat.com> - 6.2.0~beta4-1
|
|
- 6.2.0 - beta4
|
|
|
|
* Thu Aug 12 2021 Jan Grulich <jgrulich@redhat.com> - 6.1.2-1
|
|
- 6.1.2
|
|
|
|
* Fri Jul 23 2021 Fedora Release Engineering <releng@fedoraproject.org> - 6.1.1-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
|
|
|
* Mon Jun 07 2021 Jan Grulich <jgrulich@redhat.com> - 6.1.1-1
|
|
- 6.1.1
|
|
|
|
* Thu May 06 2021 Jan Grulich <jgrulich@redhat.com> - 6.1.0-1
|
|
- 6.1.0
|
|
|
|
* Mon Apr 05 2021 Jan Grulich <jgrulich@redhat.com> - 6.0.3-1
|
|
- 6.0.3
|
|
|
|
* Thu Feb 04 2021 Jan Grulich <jgrulich@redhat.com> - 6.0.1-1
|
|
- 6.0.1
|
|
|
|
* Wed Jan 27 2021 Fedora Release Engineering <releng@fedoraproject.org> - 6.0.0-2
|
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
|
|
|
* Mon Jan 18 2021 Jan Grulich <jgrulich@redhat.com> - 6.0.0-1
|
|
- 6.0.0
|