Date: Thu, 4 Jul 2019 20:31:13 +0000 From: Mark Linimon <linimon@lonesome.com> To: Gerald Pfeifer <gerald@pfeifer.com> Cc: Piotr Kubaj <pkubaj@anongoth.pl>, Alexey Dokuchaev <danfe@freebsd.org>, Cy Schubert <Cy.Schubert@cschubert.com>, "Jason W. Bacon" <jwb@FreeBSD.org>, ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: Re: svn commit: r504198 - head/Mk Message-ID: <20190704203112.GA6138@lonesome.com> In-Reply-To: <alpine.LSU.2.21.1906151058350.3441@anthias.pfeifer.com> References: <201906141610.x5EGAdnN049103@repo.freebsd.org> <F69E23F2-E526-4B3F-95EB-1786222C2D61@cschubert.com> <20190614165425.GA42674@FreeBSD.org> <8BDC3B40-7FEA-46EA-AE7C-A3C266F6978F@cschubert.com> <20190614175822.GA3336@FreeBSD.org> <20190615061345.GA20346@lonesome.com> <alpine.LSU.2.21.1906151028570.3441@anthias.pfeifer.com> <20190615084354.GA33091@ThinkPad-X200.g.anongoth.pl> <alpine.LSU.2.21.1906151058350.3441@anthias.pfeifer.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Jun 15, 2019 at 11:14:08AM +0200, Gerald Pfeifer wrote: > True, it's only 58 for USE_GCC=any versus 112 for USE_GCC=yes [...] > Still 58 ports that won't be tested with the compiler they are > (trying to be) built with on powerpc64. But ... what I understand is that "any" means "it's ok to use base gcc". That was always the intended difference to "yes" which means "you *must* use a recent gcc" [e.g. from ports]. I don't really see why we need to add the dependency on a newer gcc if the version in base suffices. What am I missing here? I don't see this as the "trying to be" case. (Also see note at end.) (Granted, this distinction becomes meaningless in FreeBSD e.g. 13 when base gcc is deleted -- but we will still be supporting 11/12 for quite some time to come.) > > Most ports just need USES=compiler:*. > > Yes, and that's where we should take action as well. And by default we have been doing that -- unless it is *known* that the port simply won't build with clang and thus requires USE_GCC. OTOH there has been recently pushback that "you could have done the same thing more minimally by" (specifying c99, etc.) The problem is, we've tried to take the fastest route to getting as large a set of packages built as possible. Thus: Mon Nov 19 13:48:26 UTC 2018 11304 Sun Jun 16 06:10:04 UTC 2019 27953 but again, a) we're getting pushback; b) in any case, work has to be done on ~120 ports to fix the "powerpc means gcc" assumption, which will soon be smashed in -CURRENT (per above). (Frankly, except for the latter I would leave the whole issue alone. Even if we spend ~1hr/port to prove that c99 is "more minimal", that's still ~100 hours.) tl:dr: we've favored getting things building over getting things perfect. But now we have to backtrack a bit for the new assumption. Different topic. Here's a special case: > For example, Mk/Uses/compiler.mk has > > .if ${_COMPILER_ARGS:Mopenmp} > .if ${COMPILER_TYPE} == clang > USE_GCC= yes > CHOSEN_COMPILER_TYPE= gcc > .endif > .endif > > which means that anyone asking for compiler:openmp gets GCC 4.2, > unless I'm missing something. Yes, openmp is a special case IIUC. fwiw, there are a number of other special cases (around 50 in all) that are mostly disjoint with the "=any" cases. All of these are going to have to be examined carefully, and have test-runs in multiple environments. Finally, w/rt using gcc4.2 being a disservice ... remember, that's what we *already do* by default on powerpc64 (et. al). Of the above number of packages, only 5916 depend on llvm*. While I don't have an easy number to show me the ones that have "c11 or more" in in USES:compiler, I can say that even so, we are still building the majority of powerpc64 packages, by far, with base gcc. mcl
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20190704203112.GA6138>