From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Date: Mon, 10 Feb 2020 05:36:48 +0300 (MSK) From: Ivan Zakharyaschev To: ALT Linux Team development discussions In-Reply-To: Message-ID: References: <2a6a209c-013f-b3fe-f334-78e7ca297c78@etersoft.ru> <5cfa5377-1351-8101-6013-0426815610b4@basealt.ru> <20200129180524.GA8326@imap.altlinux.org> <2392356.7VnD3MWqvX@zerg.malta.altlinux.ru> <8cfc4992-7307-7225-e2c0-1f56429fdb57@basealt.ru> User-Agent: Alpine 2.20 (LFD 67 2015-01-07) MIME-Version: 1.0 Content-Type: multipart/mixed; BOUNDARY="1807885841-1772911775-1581302208=:6363" Subject: Re: [devel] =?koi8-r?b?88LP0svBIM7P18/KINfF0tPJySDQz9PMxSDJ09DPzNja?= =?koi8-r?b?z9fBzsnRIGVwb2No?= X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 10 Feb 2020 02:36:49 -0000 Archived-At: List-Archive: List-Post: This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --1807885841-1772911775-1581302208=:6363 Content-Type: text/plain; charset=koi8-r Content-Transfer-Encoding: 8BIT On Mon, 10 Feb 2020, Ivan Zakharyaschev wrote: > Например, у пакета p1 в истории были сборки: > > A: 1-alt1 > B: 1-alt2 > C: 1-alt3 > D: 2-alt1 > E: 2-alt2 > F: 2-alt3 > G: 1:1-alt1 > H: 1:1-alt2 > I: 1:1-alt3 > J: 1:2-alt1 > K: 1:2-alt2 > L: 1:2-alt3 > Не правильнее было бы считать, что есть два разумных формата Requires: > > 1) Requires: p1 >= 0:2-alt2 (уже разобран, удволетворяют все от E до L) > > 2) Requires: p1 >= 2 > > чтобы его удовлетворяли D, E, F, J, K, L? > > А Requires: p1 >= 2-alt2 считать недостаточно ясным: что хотел автор? > Может быть, раз он указал точный релиз, он хотел сравнения как в 1)? > > Технически так написать возможно и оно будет, наверное, > проинтерпретировано, как я уже сказал (удовлтетворять будут E, F, K, L). > Но стоит ли рекомендовать эту неясную форму? > > В свете записанных мной здесь соображений мне кажется, что рекомендовать > лучше либо 1), либо 2), а Requires: p1 >= 2-alt2 не рекомендовать. Что > думаете? Вот реальное поведение rpm в p8 по отношению к: 1) Requires с указанием E:V-R 2) Requires с указанием только V 3) Requires с указанием V-R (На основе лога http://git.altlinux.org/tasks/archive/done/_237/243303/build/300/x86_64/log .) ######################################## # 1) Requires с указанием E:V-R ######################################## $ < /tasks/archive/done/_$(( 243303 / 1024 ))/243303/build/300/x86_64/log sed -re '/^TESTING / i TESTED' |sed -nre '\|^\+ \./makeme\.sh.*1$|,\|^\+ \./makeme\.sh.*clean$| { /TESTING .*_with_reqGreaterEpoch$/,/TESTED/ p; }' TESTING installable_dummy2_with_reqGreaterEpoch make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' mkdir -p SPECS cat >SPECS/reqGreaterEpoch.spec <<-'EOF' Name: reqGreaterEpoch Version: 1 Release: alt1 License: dummy license Group: Other Summary: dummy summy BuildArch: noarch AutoReq: no AutoProv: no Requires: dummy > 0:1-alt1 %description dummy desc %install mkdir -p %buildroot`dirname /etc/rpminstall-tests/%name` # Fill it with some unique value; each time new. # (We rely on the fact that %%buildroot comes from mktemp.) echo %buildroot >%buildroot/etc/rpminstall-tests/%name %files /etc/rpminstall-tests/%name EOF . /usr/lib/rpm/tmpdir.sh rpmbuild --define "_tmppath $tmpdir" --define "_builddir $tmpdir/BUILD" --define "_topdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3" --define '_sourcedir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3' --define '_specdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/SPECS' --define '_srcrpmdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/SRPMS/reqGreaterEpoch' --define '_rpmdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/RPMS/reqGreaterEpoch' --define 'disttag %nil' -bb SPECS/reqGreaterEpoch.spec Executing(%install): /bin/sh -e /usr/src/tmp/sh.gBIe5aAr/rpm-tmp.35258 + umask 022 + /bin/mkdir -p /usr/src/tmp/sh.gBIe5aAr/BUILD + cd /usr/src/tmp/sh.gBIe5aAr/BUILD + /bin/chmod -Rf u+rwX -- /usr/src/tmp/sh.gBIe5aAr/reqGreaterEpoch-buildroot + : + /bin/rm -rf -- /usr/src/tmp/sh.gBIe5aAr/reqGreaterEpoch-buildroot ++ dirname /etc/rpminstall-tests/reqGreaterEpoch + mkdir -p /usr/src/tmp/sh.gBIe5aAr/reqGreaterEpoch-buildroot/etc/rpminstall-tests + echo /usr/src/tmp/sh.gBIe5aAr/reqGreaterEpoch-buildroot + /usr/lib/rpm/brp-alt Cleaning files in /usr/src/tmp/sh.gBIe5aAr/reqGreaterEpoch-buildroot (auto) Verifying and fixing files in /usr/src/tmp/sh.gBIe5aAr/reqGreaterEpoch-buildroot (binconfig,pkgconfig,libtool,desktop) Compressing files in /usr/src/tmp/sh.gBIe5aAr/reqGreaterEpoch-buildroot (auto) Verifying ELF objects in /usr/src/tmp/sh.gBIe5aAr/reqGreaterEpoch-buildroot (arch=normal,fhs=normal,lfs=relaxed,lint=relaxed,rpath=normal,stack=normal,textrel=normal,unresolved=normal) Hardlinking identical .pyc and .pyo files Processing files: reqGreaterEpoch-1-alt1 Requires: dummy > 0:1-alt1 Wrote: /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/RPMS/reqGreaterEpoch/noarch/reqGreaterEpoch-1-alt1.noarch.rpm rpm --dbpath '/usr/src/tmp/sh.ouaNq0ha' --justdb -i RPMS/dummy2/noarch/dummy-1-alt2.noarch.rpm RPMS/reqGreaterEpoch/noarch/reqGreaterEpoch-1-alt1.noarch.rpm make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_dummy0_with_reqGreaterEpoch make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.N1bUUdY1' --justdb -i RPMS/dummy0/noarch/dummy-1-alt0.noarch.rpm RPMS/reqGreaterEpoch/noarch/reqGreaterEpoch-1-alt1.noarch.rpm error: failed dependencies: dummy > 0:1-alt1 is needed by reqGreaterEpoch-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING installable_dummyV2_with_reqGreaterEpoch make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' rpm --dbpath '/usr/src/tmp/sh.r5sidyqk' --justdb -i RPMS/dummyV2/noarch/dummy-2-alt1.noarch.rpm RPMS/reqGreaterEpoch/noarch/reqGreaterEpoch-1-alt1.noarch.rpm make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_dummyV0_with_reqGreaterEpoch make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.kHGnAJFS' --justdb -i RPMS/dummyV0/noarch/dummy-0-alt1.noarch.rpm RPMS/reqGreaterEpoch/noarch/reqGreaterEpoch-1-alt1.noarch.rpm error: failed dependencies: dummy > 0:1-alt1 is needed by reqGreaterEpoch-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING installable_dummyEpoch1_with_reqGreaterEpoch make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' mkdir -p SPECS cat >SPECS/dummyEpoch1.spec <<-'EOF' Name: dummy Epoch: 1 Version: 1 Release: alt1 License: dummy license Group: Other Summary: dummy summy BuildArch: noarch AutoReq: no AutoProv: no %description dummy desc %install mkdir -p %buildroot`dirname /etc/rpminstall-tests/%name` # Fill it with some unique value; each time new. # (We rely on the fact that %%buildroot comes from mktemp.) echo %buildroot >%buildroot/etc/rpminstall-tests/%name %files /etc/rpminstall-tests/%name EOF . /usr/lib/rpm/tmpdir.sh rpmbuild --define "_tmppath $tmpdir" --define "_builddir $tmpdir/BUILD" --define "_topdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3" --define '_sourcedir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3' --define '_specdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/SPECS' --define '_srcrpmdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/SRPMS/dummyEpoch1' --define '_rpmdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/RPMS/dummyEpoch1' --define 'disttag %nil' -bb SPECS/dummyEpoch1.spec Executing(%install): /bin/sh -e /usr/src/tmp/sh.pgCUnuAy/rpm-tmp.9047 + umask 022 + /bin/mkdir -p /usr/src/tmp/sh.pgCUnuAy/BUILD + cd /usr/src/tmp/sh.pgCUnuAy/BUILD + /bin/chmod -Rf u+rwX -- /usr/src/tmp/sh.pgCUnuAy/dummy-buildroot + : + /bin/rm -rf -- /usr/src/tmp/sh.pgCUnuAy/dummy-buildroot ++ dirname /etc/rpminstall-tests/dummy + mkdir -p /usr/src/tmp/sh.pgCUnuAy/dummy-buildroot/etc/rpminstall-tests + echo /usr/src/tmp/sh.pgCUnuAy/dummy-buildroot + /usr/lib/rpm/brp-alt Cleaning files in /usr/src/tmp/sh.pgCUnuAy/dummy-buildroot (auto) Verifying and fixing files in /usr/src/tmp/sh.pgCUnuAy/dummy-buildroot (binconfig,pkgconfig,libtool,desktop) Compressing files in /usr/src/tmp/sh.pgCUnuAy/dummy-buildroot (auto) Verifying ELF objects in /usr/src/tmp/sh.pgCUnuAy/dummy-buildroot (arch=normal,fhs=normal,lfs=relaxed,lint=relaxed,rpath=normal,stack=normal,textrel=normal,unresolved=normal) Hardlinking identical .pyc and .pyo files Processing files: dummy-1-alt1 Wrote: /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/RPMS/dummyEpoch1/noarch/dummy-1-alt1.noarch.rpm rpm --dbpath '/usr/src/tmp/sh.1Qsn4dny' --justdb -i RPMS/dummyEpoch1/noarch/dummy-1-alt1.noarch.rpm RPMS/reqGreaterEpoch/noarch/reqGreaterEpoch-1-alt1.noarch.rpm make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_dummy_with_reqGreaterEpoch make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.c6EMm0v6' --justdb -i RPMS/dummy/noarch/dummy-1-alt1.noarch.rpm RPMS/reqGreaterEpoch/noarch/reqGreaterEpoch-1-alt1.noarch.rpm error: failed dependencies: dummy > 0:1-alt1 is needed by reqGreaterEpoch-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_virtDummy_with_reqGreaterEpoch make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.YwnGTrsH' --justdb -i RPMS/virtDummy/noarch/virtDummy-1-alt1.noarch.rpm RPMS/reqGreaterEpoch/noarch/reqGreaterEpoch-1-alt1.noarch.rpm error: failed dependencies: dummy > 0:1-alt1 is needed by reqGreaterEpoch-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_virtDummyDisttag_with_reqGreaterEpoch make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.YGwjGCJm' --justdb -i RPMS/virtDummyDisttag/noarch/virtDummyDisttag-1-alt1.noarch.rpm RPMS/reqGreaterEpoch/noarch/reqGreaterEpoch-1-alt1.noarch.rpm error: failed dependencies: dummy > 0:1-alt1 is needed by reqGreaterEpoch-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED ######################################## # 2) Requires с указанием только V ######################################## $ < /tasks/archive/done/_$(( 243303 / 1024 ))/243303/build/300/x86_64/log sed -re '/^TESTING / i TESTED' |sed -nre '\|^\+ \./makeme\.sh.*1$|,\|^\+ \./makeme\.sh.*clean$| { /TESTING .*_with_reqGreaterOnlyV$/,/TESTED/ p; }' TESTING noninstallable_dummy2_with_reqGreaterOnlyV make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' mkdir -p SPECS cat >SPECS/reqGreaterOnlyV.spec <<-'EOF' Name: reqGreaterOnlyV Version: 1 Release: alt1 License: dummy license Group: Other Summary: dummy summy BuildArch: noarch AutoReq: no AutoProv: no Requires: dummy > 1 %description dummy desc %install mkdir -p %buildroot`dirname /etc/rpminstall-tests/%name` # Fill it with some unique value; each time new. # (We rely on the fact that %%buildroot comes from mktemp.) echo %buildroot >%buildroot/etc/rpminstall-tests/%name %files /etc/rpminstall-tests/%name EOF . /usr/lib/rpm/tmpdir.sh rpmbuild --define "_tmppath $tmpdir" --define "_builddir $tmpdir/BUILD" --define "_topdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3" --define '_sourcedir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3' --define '_specdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/SPECS' --define '_srcrpmdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/SRPMS/reqGreaterOnlyV' --define '_rpmdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/RPMS/reqGreaterOnlyV' --define 'disttag %nil' -bb SPECS/reqGreaterOnlyV.spec Executing(%install): /bin/sh -e /usr/src/tmp/sh.pE8kdoKF/rpm-tmp.70745 + umask 022 + /bin/mkdir -p /usr/src/tmp/sh.pE8kdoKF/BUILD + cd /usr/src/tmp/sh.pE8kdoKF/BUILD + /bin/chmod -Rf u+rwX -- /usr/src/tmp/sh.pE8kdoKF/reqGreaterOnlyV-buildroot + : + /bin/rm -rf -- /usr/src/tmp/sh.pE8kdoKF/reqGreaterOnlyV-buildroot ++ dirname /etc/rpminstall-tests/reqGreaterOnlyV + mkdir -p /usr/src/tmp/sh.pE8kdoKF/reqGreaterOnlyV-buildroot/etc/rpminstall-tests + echo /usr/src/tmp/sh.pE8kdoKF/reqGreaterOnlyV-buildroot + /usr/lib/rpm/brp-alt Cleaning files in /usr/src/tmp/sh.pE8kdoKF/reqGreaterOnlyV-buildroot (auto) Verifying and fixing files in /usr/src/tmp/sh.pE8kdoKF/reqGreaterOnlyV-buildroot (binconfig,pkgconfig,libtool,desktop) Compressing files in /usr/src/tmp/sh.pE8kdoKF/reqGreaterOnlyV-buildroot (auto) Verifying ELF objects in /usr/src/tmp/sh.pE8kdoKF/reqGreaterOnlyV-buildroot (arch=normal,fhs=normal,lfs=relaxed,lint=relaxed,rpath=normal,stack=normal,textrel=normal,unresolved=normal) Hardlinking identical .pyc and .pyo files Processing files: reqGreaterOnlyV-1-alt1 Requires: dummy > 1 Wrote: /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/RPMS/reqGreaterOnlyV/noarch/reqGreaterOnlyV-1-alt1.noarch.rpm ! rpm --dbpath '/usr/src/tmp/sh.OPaCWGCn' --justdb -i RPMS/dummy2/noarch/dummy-1-alt2.noarch.rpm RPMS/reqGreaterOnlyV/noarch/reqGreaterOnlyV-1-alt1.noarch.rpm error: failed dependencies: dummy > 1 is needed by reqGreaterOnlyV-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_dummy0_with_reqGreaterOnlyV make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.DRci80Iv' --justdb -i RPMS/dummy0/noarch/dummy-1-alt0.noarch.rpm RPMS/reqGreaterOnlyV/noarch/reqGreaterOnlyV-1-alt1.noarch.rpm error: failed dependencies: dummy > 1 is needed by reqGreaterOnlyV-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING installable_dummyV2_with_reqGreaterOnlyV make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' rpm --dbpath '/usr/src/tmp/sh.owseR0e3' --justdb -i RPMS/dummyV2/noarch/dummy-2-alt1.noarch.rpm RPMS/reqGreaterOnlyV/noarch/reqGreaterOnlyV-1-alt1.noarch.rpm make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_dummyV0_with_reqGreaterOnlyV make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.VVb4c7OR' --justdb -i RPMS/dummyV0/noarch/dummy-0-alt1.noarch.rpm RPMS/reqGreaterOnlyV/noarch/reqGreaterOnlyV-1-alt1.noarch.rpm error: failed dependencies: dummy > 1 is needed by reqGreaterOnlyV-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_dummyEpoch1_with_reqGreaterOnlyV make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.67EUKrtG' --justdb -i RPMS/dummyEpoch1/noarch/dummy-1-alt1.noarch.rpm RPMS/reqGreaterOnlyV/noarch/reqGreaterOnlyV-1-alt1.noarch.rpm error: failed dependencies: dummy > 1 is needed by reqGreaterOnlyV-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_dummy_with_reqGreaterOnlyV make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.olD7rmea' --justdb -i RPMS/dummy/noarch/dummy-1-alt1.noarch.rpm RPMS/reqGreaterOnlyV/noarch/reqGreaterOnlyV-1-alt1.noarch.rpm error: failed dependencies: dummy > 1 is needed by reqGreaterOnlyV-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_virtDummy_with_reqGreaterOnlyV make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.t7JvR3HY' --justdb -i RPMS/virtDummy/noarch/virtDummy-1-alt1.noarch.rpm RPMS/reqGreaterOnlyV/noarch/reqGreaterOnlyV-1-alt1.noarch.rpm error: failed dependencies: dummy > 1 is needed by reqGreaterOnlyV-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_virtDummyDisttag_with_reqGreaterOnlyV make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.amewnMAy' --justdb -i RPMS/virtDummyDisttag/noarch/virtDummyDisttag-1-alt1.noarch.rpm RPMS/reqGreaterOnlyV/noarch/reqGreaterOnlyV-1-alt1.noarch.rpm error: failed dependencies: dummy > 1 is needed by reqGreaterOnlyV-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED ######################################## # 3) Requires с указанием V-R ######################################## $ < /tasks/archive/done/_$(( 243303 / 1024 ))/243303/build/300/x86_64/log sed -re '/^TESTING / i TESTED' |sed -nre '\|^\+ \./makeme\.sh.*1$|,\|^\+ \./makeme\.sh.*clean$| { /TESTING .*_with_reqGreater$/,/TESTED/ p; }' TESTING installable_dummy2_with_reqGreater make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' mkdir -p SPECS cat >SPECS/reqGreater.spec <<-'EOF' Name: reqGreater Version: 1 Release: alt1 License: dummy license Group: Other Summary: dummy summy BuildArch: noarch AutoReq: no AutoProv: no Requires: dummy > 1-alt1 %description dummy desc %install mkdir -p %buildroot`dirname /etc/rpminstall-tests/%name` # Fill it with some unique value; each time new. # (We rely on the fact that %%buildroot comes from mktemp.) echo %buildroot >%buildroot/etc/rpminstall-tests/%name %files /etc/rpminstall-tests/%name EOF . /usr/lib/rpm/tmpdir.sh rpmbuild --define "_tmppath $tmpdir" --define "_builddir $tmpdir/BUILD" --define "_topdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3" --define '_sourcedir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3' --define '_specdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/SPECS' --define '_srcrpmdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/SRPMS/reqGreater' --define '_rpmdir /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/RPMS/reqGreater' --define 'disttag %nil' -bb SPECS/reqGreater.spec Executing(%install): /bin/sh -e /usr/src/tmp/sh.xR3c8fHj/rpm-tmp.67188 + umask 022 + /bin/mkdir -p /usr/src/tmp/sh.xR3c8fHj/BUILD + cd /usr/src/tmp/sh.xR3c8fHj/BUILD + /bin/chmod -Rf u+rwX -- /usr/src/tmp/sh.xR3c8fHj/reqGreater-buildroot + : + /bin/rm -rf -- /usr/src/tmp/sh.xR3c8fHj/reqGreater-buildroot ++ dirname /etc/rpminstall-tests/reqGreater + mkdir -p /usr/src/tmp/sh.xR3c8fHj/reqGreater-buildroot/etc/rpminstall-tests + echo /usr/src/tmp/sh.xR3c8fHj/reqGreater-buildroot + /usr/lib/rpm/brp-alt Cleaning files in /usr/src/tmp/sh.xR3c8fHj/reqGreater-buildroot (auto) Verifying and fixing files in /usr/src/tmp/sh.xR3c8fHj/reqGreater-buildroot (binconfig,pkgconfig,libtool,desktop) Compressing files in /usr/src/tmp/sh.xR3c8fHj/reqGreater-buildroot (auto) Verifying ELF objects in /usr/src/tmp/sh.xR3c8fHj/reqGreater-buildroot (arch=normal,fhs=normal,lfs=relaxed,lint=relaxed,rpath=normal,stack=normal,textrel=normal,unresolved=normal) Hardlinking identical .pyc and .pyo files Processing files: reqGreater-1-alt1 Requires: dummy > 1-alt1 Wrote: /usr/src/RPM/BUILD/rpminstall-tests-1.1.3/RPMS/reqGreater/noarch/reqGreater-1-alt1.noarch.rpm rpm --dbpath '/usr/src/tmp/sh.AntTXmD6' --justdb -i RPMS/dummy2/noarch/dummy-1-alt2.noarch.rpm RPMS/reqGreater/noarch/reqGreater-1-alt1.noarch.rpm make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_dummy0_with_reqGreater make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.EwXNrctu' --justdb -i RPMS/dummy0/noarch/dummy-1-alt0.noarch.rpm RPMS/reqGreater/noarch/reqGreater-1-alt1.noarch.rpm error: failed dependencies: dummy > 1-alt1 is needed by reqGreater-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING installable_dummyV2_with_reqGreater make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' rpm --dbpath '/usr/src/tmp/sh.uAKOkNfs' --justdb -i RPMS/dummyV2/noarch/dummy-2-alt1.noarch.rpm RPMS/reqGreater/noarch/reqGreater-1-alt1.noarch.rpm make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_dummyV0_with_reqGreater make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.OqK7gqKv' --justdb -i RPMS/dummyV0/noarch/dummy-0-alt1.noarch.rpm RPMS/reqGreater/noarch/reqGreater-1-alt1.noarch.rpm error: failed dependencies: dummy > 1-alt1 is needed by reqGreater-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING installable_dummyEpoch1_with_reqGreater make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' rpm --dbpath '/usr/src/tmp/sh.3lu4iYq5' --justdb -i RPMS/dummyEpoch1/noarch/dummy-1-alt1.noarch.rpm RPMS/reqGreater/noarch/reqGreater-1-alt1.noarch.rpm error: failed dependencies: dummy > 1-alt1 is needed by reqGreater-1-alt1 make[1]: *** [installable_dummyEpoch1_with_reqGreater] Error 2 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_dummy_with_reqGreater make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.rOayxL1N' --justdb -i RPMS/dummy/noarch/dummy-1-alt1.noarch.rpm RPMS/reqGreater/noarch/reqGreater-1-alt1.noarch.rpm error: failed dependencies: dummy > 1-alt1 is needed by reqGreater-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_virtDummy_with_reqGreater make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.osC0xce8' --justdb -i RPMS/virtDummy/noarch/virtDummy-1-alt1.noarch.rpm RPMS/reqGreater/noarch/reqGreater-1-alt1.noarch.rpm error: failed dependencies: dummy > 1-alt1 is needed by reqGreater-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED TESTING noninstallable_virtDummyDisttag_with_reqGreater make[1]: Entering directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' ! rpm --dbpath '/usr/src/tmp/sh.C2IxVCf2' --justdb -i RPMS/virtDummyDisttag/noarch/virtDummyDisttag-1-alt1.noarch.rpm RPMS/reqGreater/noarch/reqGreater-1-alt1.noarch.rpm error: failed dependencies: dummy > 1-alt1 is needed by reqGreater-1-alt1 make[1]: Leaving directory `/usr/src/RPM/BUILD/rpminstall-tests-1.1.3' TESTED У меня в 3) тест installable_dummyEpoch1_with_reqGreater ожидается успешным из-за вот этих спорных вопросов про значение собственно релиза в зависимости без эпохи, которые я озвучил в своём предыдущем письме. Реальное поведение, что сравниваются и версия, и релиз, но не эпоха в таком случае, поэтому зависимость оказывается не удовлетворена. Для полноты картины ещё не хватает примера с бОльшим релизом и бОльшей эпохой. По моей системе я бы его назвал как-то вроде installable_dummy2Epoch1_with_reqGreater. --1807885841-1772911775-1581302208=:6363--