Split the testsuite into two sub-packages

Small sub-package 'mysql-test' will remain architecture dependent
and will continue to carry all architecture dependent parts of the testsuite.

New huge sub-package 'mysql-test-data' will hold all of the
achitecture independent data and will be built as 'noarch'.

This will save over 1GB of redundant data per each package build.
This commit is contained in:
Michal Schorm 2024-08-15 00:12:11 +02:00
parent 121323a08d
commit 0422db7c11

View File

@ -445,6 +445,7 @@ developing MySQL client applications.
%if %{with test}
%package -n %{pkgname}-test
Summary: The test suite distributed with MySQL
Requires: %{pkgname}-test-data = %{sameevr}
Requires: %{pkgname}%{?_isa} = %{sameevr}
Requires: %{pkgname}-common = %{sameevr}
Requires: %{pkgname}-server%{?_isa} = %{sameevr}
@ -478,8 +479,21 @@ Requires: perl(Time::HiRes)
%description -n %{pkgname}-test
MySQL is a multi-user, multi-threaded SQL database server. This
package contains the regression test suite distributed with
the MySQL sources.
package contains the architecture specific files for the
regression test suite distributed with the MySQL sources.
%package -n %{pkgname}-test-data
Summary: The test suite distributed with MySQL
BuildArch: noarch
Requires: %{pkgname}-test = %{sameevr}
# As this package is noarch, it can't use the %%{?_isa} RPM macro
%conflict_with_other_streams test-data
%description -n %{pkgname}-test-data
MySQL is a multi-user, multi-threaded SQL database server. This
package contains the architecture independent data for the
regression test suite distributed with the MySQL sources.
%endif
@ -1008,7 +1022,9 @@ fi
%{_bindir}/mysqld_safe
%{_bindir}/comp_err
%{_bindir}/mysql_test_event_tracking
%attr(-,mysql,mysql) %{_datadir}/mysql-test
%dir %{_datadir}/mysql-test
%{_datadir}/mysql-test/platform-specific-tests.list
%dir %{_libdir}/mysql
%dir %{_libdir}/mysql/plugin
@ -1108,6 +1124,11 @@ fi
%{_libdir}/mysql/plugin/component_test_execute_regular_statement.so
%{_libdir}/mysql/plugin/component_test_mysql_signal_handler.so
%{_libdir}/mysql/plugin/component_test_server_telemetry_metrics.so
%files -n %{pkgname}-test-data
%attr(-,mysql,mysql) %{_datadir}/mysql-test
%exclude %{_datadir}/mysql-test/platform-specific-tests.list
%endif
%changelog