[Spice-devel] [PATCH] build-sys: fix make distcheck

Marc-André Lureau mlureau at redhat.com
Mon Jul 16 08:26:28 PDT 2012



----- Mensaje original -----
> On Mon, Jul 16, 2012 at 05:06:42PM +0200, Marc-André Lureau wrote:
> > Hi
> > 
> > On Mon, Jul 16, 2012 at 5:00 PM, Alon Levy <alevy at redhat.com>
> > wrote:
> > > Drop this, instead use the following:
> > >
> > >
> > > commit d0cbc0518fcb0ad5f441387a4530c63ff377ba48
> > > Author: Alon Levy <alevy at redhat.com>
> > > Date:   Mon Jul 16 12:04:34 2012 +0300
> > >
> > >     enums.h: generate in build directory, passes distcheck
> > >
> > > diff --git a/common/Makefile.am b/common/Makefile.am
> > > index 3210fc8..3ae2a6b 100644
> > > --- a/common/Makefile.am
> > > +++ b/common/Makefile.am
> > > @@ -14,7 +14,7 @@ SERVER_MARSHALLERS =
> > >                                  \
> > >         $(srcdir)/generated_server_marshallers.h        \
> > >         $(NULL)
> > >
> > > -BUILT_SOURCES = $(CLIENT_MARSHALLERS) $(SERVER_MARSHALLERS)
> > > $(top_srcdir)/spice-protocol/spice/enums.h
> > > +BUILT_SOURCES = $(CLIENT_MARSHALLERS) $(SERVER_MARSHALLERS)
> > > ../spice-protocol/spice/enums.h
> > 
> > But then you have 2 enums.h in srcdir and builddir.
> > 
> > >  noinst_LTLIBRARIES = libspice-common.la
> > >  libspice-common-server.la libspice-common-client.la
> > >  libspice_common_la_SOURCES =           \
> > > @@ -122,7 +122,7 @@ generated_server_marshallers.c:
> > > $(top_srcdir)/spice.proto $(MARSHALLERS_DEPS)
> > >  generated_server_marshallers.h: $(top_srcdir)/spice.proto
> > >  $(MARSHALLERS_DEPS)
> > >         $(AM_V_GEN)$(PYTHON) $(top_srcdir)/spice_codegen.py
> > >         --generate-marshallers $(STRUCTS) --server --include
> > >         messages.h -H >lt; $@ >/dev/null
> > >
> > > -$(top_srcdir)/spice-protocol/spice/enums.h:
> > > $(top_srcdir)/spice.proto $(MARSHALLERS_DEPS)
> > > +../spice-protocol/spice/enums.h: $(top_srcdir)/spice.proto
> > > $(MARSHALLERS_DEPS)
> > >         $(AM_V_GEN)$(PYTHON) $(top_srcdir)/spice_codegen.py
> > >         --generate-enums >lt; $@ >/dev/null
> > 
> > This will probably still "fail" if builddir == srcdir and src files
> > are made read only (which is a good thing).
> > 
> 
> distcheck doesn't use that, so what's the big deal? and make dist
> will
> work.

Well, having 2 enums.h is already a good reason to avoid this approach. Either it is in srcdir or builddir, but not in both.

Otherwise, I would really prefer we keep the current manually generated and committed approach.


More information about the Spice-devel mailing list