[PATCH 1/3] makefiles: Allow make-time silent build output
Alexandre Julliard
julliard at winehq.org
Thu Sep 19 04:11:53 CDT 2019
Jeff Smith <whydoubt at gmail.com> writes:
> (sorry, that was supposed to be a reply all)
>
> On Wed, Sep 18, 2019, 7:21 PM Jeff Smith <whydoubt at gmail.com> wrote:
>
> On Wed, Sep 18, 2019 at 4:03 PM Alexandre Julliard <julliard at winehq.org> wrote:
> >
> > Jeff Smith <whydoubt at gmail.com> writes:
> >
> > > @@ -3773,6 +3773,20 @@ static void output_sources( struct makefile *make )
> > >
> > > strarray_add( &make->phony_targets, "all" );
> > >
> > > + output("ifeq ($(V),0)\n");
> > > + output(" QUIET = @\n");
> > > + output(" QUIET_AR = @echo ' ' AR $@;\n");
> > > + output(" QUIET_BISON = @echo ' ' BISON $@;\n");
> > > + output(" QUIET_BUILD = @echo ' ' BUILD $@;\n");
> > > + output(" QUIET_CC = @echo ' ' CC $@;\n");
> > > + output(" QUIET_CCLD = @echo ' ' CCLD $@;\n");
> > > + output(" QUIET_GEN = @echo ' ' GEN $@;\n");
> > > + output(" QUIET_FLEX = @echo ' ' FLEX $@;\n");
> > > + output(" QUIET_LN = @echo ' ' LN $@;\n");
> > > + output(" QUIET_RANLIB = @echo ' ' RANLIB $@;\n");
> > > + output(" QUIET_TEST = @echo ' ' TEST $@;\n");
> > > + output("endif\n\n");
> >
> > We don't use if() in makefiles, for portability reasons.
>
> What other implementations of make are supported that do not handle ifeq()?
> Would guarding that block in C with an appropriate check make it acceptable?
>
> Alternatively, is nested macro expansion an option? i.e. XYZ=$(XYZ_$(V))
No, I'm afraid that's not portable either. You'd need to generate
different makefiles based on the configure flag or something like
that. Though I'm not sure it's worth the trouble.
--
Alexandre Julliard
julliard at winehq.org
More information about the wine-devel
mailing list