Date: Fri, 20 Jan 2012 13:33:21 +0000 From: Matthew Seaman <m.seaman@infracaninophile.co.uk> To: Chris Rees <utisoft@gmail.com> Cc: freebsd-ports@freebsd.org Subject: Re: with the cvs history? trying to help INDEX builds. Message-ID: <4F196D21.50300@infracaninophile.co.uk> In-Reply-To: <CADLo83_qVjwsNg-sTzC4ANsyghZpqDm09WAapRv4aP7VZJqJcg@mail.gmail.com> References: <4F177264.3090708@freebsd.org> <4F17DB1C.6080503@infracaninophile.co.uk> <CADLo83-WtVmyGHM=O4FbTNbDy9h=A1t111bP6eYc%2BTL8-RGmuA@mail.gmail.com> <4F193FD5.8070208@infracaninophile.co.uk> <CADLo83-n_C9h-eLSMZ%2B23s_piocyNuTy_VsNxkKK2RZAA_wG-Q@mail.gmail.com> <4F1966C2.6090908@infracaninophile.co.uk> <CADLo838bMSv9jaX=gvW0t5KUBHPDF-PffmSnLdwoxqRJxQyyNQ@mail.gmail.com> <CADLo83_qVjwsNg-sTzC4ANsyghZpqDm09WAapRv4aP7VZJqJcg@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig9A29FFA9B5076EC2D829918E Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable On 20/01/2012 13:14, Chris Rees wrote: > On 20 Jan 2012 13:06, "Matthew Seaman" <m.seaman@infracaninophile.co.uk= > > wrote: >> >> On 20/01/2012 12:53, Chris Rees wrote: >>> On 20 Jan 2012 10:20, "Matthew Seaman" <m.seaman@infracaninophile.co.= uk> >>> wrote: >>>> >>>> On 20/01/2012 09:18, Chris Rees wrote: >>>>> On 19 Jan 2012 08:58, "Matthew Seaman" < > m.seaman@infracaninophile.co.uk> >>>>> wrote: >>>> >>>>>> On 19/01/2012 01:31, Michael Scheidell wrote: >>>> >>>>>>> anyway, worth the cycles? >>>>>>> take out -.include <bsd.port.pre.mk>; -.if ${ARCH} =3D=3D "sparc6= 4" >>>>>>> -BROKEN=3D Does not install on sparc64 >>>>>>> -.endif >>>>>>> and replace it with NOT_FOR_ARCHS=3D sparc64 ? >>>> >>>>>> I'd say worth it to standardize on NOT_FOR_ARCHS / ONLY_FOR_ARCHS = to >>>>>> handle this sort of thing. By my calculations there are 28 ports > that >>>>>> set 'BROKEN' because of architecture incompatibility on my amd64 >>>>>> system[*], whereas there are 904 ports that set either ONLY_FOR_AR= CHS >>> or >>>>>> NOT_FOR_ARCHS. >>>> >>>>> No, it's not worth it :) >>>>> >>>>> This means we won't be able to differentiate between BROKEN and > IGNORE. >>>> >>>> Not even if people make use of the {NOT,ONLY}_FOR_ARCHS_REASON or >>>> {NOT,ONLY}_FOR_ARCHS_REASON_${ARCH} variables? >>>> >>>> Actually I take your point, that it should be possible to distinguis= h >>>> between ports that permanently won't work on some architectures by >>>> design, and ports that temporarily don't work because of mistakes or= >>>> broken dependencies or so forth, and that are expected to be fixed >>>> sooner rather than later. Unfortunately those two cases are already= >>>> pretty confused. For instance (arbitrarily picking out a few grep > hits): >>>> >>>> ./audio/amarok-kde4/Makefile:NOT_FOR_ARCHS_REASON_sparc64=3D >>> "GCC-related >>>> build error" >>>> ./audio/openal/Makefile:NOT_FOR_ARCHS_REASON_ia64=3D does not > compile >>>> ./biology/migrate/Makefile:ONLY_FOR_ARCHS_REASON=3D Does not > compile >>>> >>>> Where 'does not compile' or 'fails to install' are similarly the mos= t >>>> popular reasons given for arch-related brokenness using the BROKEN >>>> variable. Given the banal and uninformative nature of such reasons,= >>>> there's no easy way to tell if this is a temporary condition or not.= >>>> >>>> Hmm... Perhaps if there was a BROKEN_FOR_ARCH{,_REASON{,${ARCH}}} se= t > of >>>> variables documented alongside the other ..FOR_ARCH variables? >>> >>> Occasionally someone runs an exp- for sparc64 (lol) etc. >>> >>> They use TRYBROKEN to test packages marked BROKEN, but ONLY_FOR_ARCHS= > sets >>> IGNORE. >>> >>> Ports marked this way (incorrectly) will never be tested, and thus ne= ver >>> marked fixed. >>> >> >> Yes, I understand thae distinction between BROKEN and IGNORE, thank yo= u >> very much. So the BROKEN_FOR_ARCH variable family should ultimately s= et >> BROKEN rather than IGNORE. Obviously. >> >=20 > Sorry, missed that bit. >=20 > Thing is... adding this change to bsd.port.mk will actually mean that > instead of each BROKEN Makefile testing for it, *every* port's Makefile= > then tests for it. But that argument applies equally to the {NOT,ONLY}_FOR_ARCHS variables, which I'd guess are two amongst dozens of other variables that get manipulated in some form or other every time you invoke 'make' in any port directory. Is that really going to cause a significant extra load? Actually, going back to the original question -- if this means not having to .include <bsd.port.pre.mk> in a reasonable number of cases, then it might even be a win overall when generating an index. (At a guess. Have to do some experiments to confirm that.) Cheers, Matthew --=20 Dr Matthew J Seaman MA, D.Phil. 7 Priory Courtyard Flat 3 PGP: http://www.infracaninophile.co.uk/pgpkey Ramsgate JID: matthew@infracaninophile.co.uk Kent, CT11 9PW --------------enig9A29FFA9B5076EC2D829918E Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG/MacGPG2 v2.0.16 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEUEARECAAYFAk8ZbSEACgkQ8Mjk52CukIzh1wCYiI4rnLdp1Js46o8usaFJl5AV AQCfaILlcwIeDNcZQy+KcCrTTJN+/cM= =jA8K -----END PGP SIGNATURE----- --------------enig9A29FFA9B5076EC2D829918E--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4F196D21.50300>