16/11/2020 17:16, Bruce Richardson:
> On Mon, Nov 16, 2020 at 03:50:31PM +0000, Juraj Linkeš wrote:
> > From: Thomas Monjalon <tho...@monjalon.net>
> > > 13/11/2020 15:31, Juraj Linkeš:
> > > > The current machine='default' build name is not descriptive. The
> > > > actual default build is machine='native'. Add an alternative string
> > > > which does the same build and better describes what we're building:
> > > > machine='generic'. Leave machine='default' for backwards compatibility.
> > > 
> > > What?
> > > 
> > > "generic" means... nothing.
> > > 
> > 
> > An absence of anything means nothing. Generic means "characteristic of or 
> > relating to a class or group of things; not specific", which is pretty much 
> > what we're looking for.
> > 
> > > "default" should be the most common set of options to make a build work
> > > everywhere.
> > 
> > What we want is a value of machine that would "be the most common set of 
> > options to make a build work everywhere" and using the above definition of 
> > generic, it fits very well.
> > The reason I said the actual default build is machine='native' is because 
> > that's how the machine option is defined in meson_options.txt. It follows 
> > from what default actually means - "a preselected option adopted by a 
> > computer program or other mechanism when no alternative is specified by the 
> > user or programmer". Default then means no user input, which means 
> > machine='native', which means the default build is the default build.
> > 
> > What ""default" should mean" looks like an attempt at redefining what the 
> > word actually means and leads to confusion, in my experience. Hence an 
> > attempt to remove the potential ambiguity.
> > 
> 
> I would tend to agree that "generic" is probably a better term than
> "default" for what we use it for here in the config.

In the past, we had a different definition with make config.
I am just trying to be consistent.
Even with meson, default means "minimal CPU instructions".

Example in devtools/test-meson-builds.sh:
"test compilation with minimal x86 instruction set"
is called build-x86-default.

In config/meson.build:
"
machine type 'default' is special, it defaults to the per arch agreed common
minimal baseline needed for DPDK.
That might not be the most optimized, but the most portable version while
still being able to support the CPU features required for DPDK.
This can be bumped up by the DPDK project, but it can never be an
invariant like 'native'
"

So, why this definition is called "generic" in meson Arm config?


Reply via email to