Обсуждение:Ports/arm/Experience
%def_without bootstrap
Предлагаю:
- обкладывать спеки пакетов, которые затрагивает бутстрап базового сборочного окружения, параметром bootstrap;
- по нему: --disable check --disable static --without doc --without apidocs --without profile --disable selinux --without selinux --disable java --without java --without python3 --disable ldap и подобное (возможно, в т.ч. cxx/cpp, nls, included_gettext);
- также отключать сборку man/info;
- также и задействование системных gnulib и библиотек вроде glib, если есть добавленные в исходники;
- вероятно, отключать тесты (на рассуждение майнтейнера/портирующего);
- возможно, в %configure на первых порах добавлять --disable-asm
Кусочки кода в процессе получения findutils-4.6.0-alt1.1.e2k.rpm:
%def_with bootstrap # ... %if_with bootstrap %def_disable check %else %def_enable selinux %endif # bootstrap # ... %{?!_with_bootstrap:BuildRequires: makeinfo glibc-devel-static} # ... %if_without bootstrap %package -n find-static Summary: Static version of the GNU find Group: File tools Requires: %name = %version-%release %description -n find-static This package contains statically linked version of the GNU find program. %endif # ... %check %if_without bootstrap %make_build -k check -C dynamic %make_build -k check -C static %endif # ... %if_without bootstrap %_infodir/*.info* %endif # ... %if_without bootstrap %files -n find-static %_bindir/find.static %endif %changelog * Sat Jan 16 2016 Michael Shigorin <mike@altlinux.org> 4.6.0-alt1.1 - BOOTSTRAP: + don't build static version + disable selinux + disable tests
NB: rpmbuild тоже умеет --nodeps, при этом игнорирует BR:
rpm -bb --nodeps --short-circuit --with bootstrap krb5.spec