On Thu, Sep 12, 2002 at 11:57:25AM -0500, Manoj Srivastava wrote: > >> I thought (as outlined in a related bugreport, although my words in > >> this report were a bit confused) that the policy should have made the > >> binary-arch target mandatory, so that the atobuilders could know from > >> the declared standard-version whether the target was expected or not. > > Well, since policy currently lists build-arch and build-indep > as optional, and a large number of packages provide neither, we would > need to work through a transition period if we were to mandate > it. Also, since targets are not really something that helper packages > provide (as far as I am aware), every rules file would have to be > tweaked manually; and this is likely to take time. So, mandatory > would happen in a couple of releases; but I would think that we would > need a solution faster.
If policy >= X.Y.Z mandates build-arch, then autobuilders could check standard-version to decide. If a package with newer standard-version does not provide it, then it's considered a serious bug, and the autobuilders will even take care of not letting those propagate into testing. Anyway, if/when a new policy version requires that, and then a package appears referencing this new version, I find reasonable to require a small edition of the rules file. > Julian> There was a long flame^Wdiscussion a while back about the possibility > Julian> of doing something like the following: > > Julian> ret=$(set +e; debian/rules -q build-arch >/dev/null 2>&1; echo $?) > Julian> if [ $ret -eq 2 ]; then > Julian> debian/rules build > Julian> else > Julian> debian/rules build-arch > Julian> fi > > This sounds workable, does not require most package's rules > files to be edited, and works today. 1. this does not help to give provision for non-makefiles debian/rules 2. there may be a buggy make in sid, or I miss something. Given a makefile (not a rules file, but that should not matter) containing: |boot: | @ for p in $(BACKENDS); do \ | echo ">>> $$p"; \ | $(MAKE) boot-$$p || exit 1; \ | done When the target has already successfully built, and I check that running just "make boot" succeeds with exit code 0, with -q I get: biglook-alpha[1092]$ make -q boot; echo $? >>> gtk make: *** [boot] Erreur 1 2 => obviously some command is run => make.info says for exit code 2: "It will print messages describing the particular errors.". Hm. Or did I miss something ? -- Yann Dirson <[EMAIL PROTECTED]> | Why make M$-Bill richer & richer ? Debian-related: <[EMAIL PROTECTED]> | Support Debian GNU/Linux: Pro: <[EMAIL PROTECTED]> | Freedom, Power, Stability, Gratuity http://ydirson.free.fr/ | Check <http://www.debian.org/>