automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: removing a source file for the dist rule


From: Ralf Wildenhues
Subject: Re: removing a source file for the dist rule
Date: Thu, 5 Nov 2009 20:34:15 +0100
User-agent: Mutt/1.5.20 (2009-08-09)

* Vincent Torri wrote on Thu, Nov 05, 2009 at 10:23:38AM CET:
> On Thu, 5 Nov 2009, Ralf Wildenhues wrote:
> >* Vincent Torri wrote on Thu, Nov 05, 2009 at 08:06:51AM CET:
> >>>>using just nodist_ is not sufficient : make distcheck fails:
> >>>>
> >>>>make[2]: *** No rule to make target `eet_amalgamation.c', needed by 
> >>>>`distdir'.  Stop.
[...]
> >>nodist_libeet_la_SOURCES = eet_amalgamation.c
> >
> >Put this line inside the 'if EET_AMALGAMATION'.
> 
> Same error

Oops.  Sorry about that, that was untested.  By this:

  if EET_AMALGAMATION
  eet_sources_used = eet_amalgamation.c
  [...]
  else
  eet_sources_used = $(base_sources)
  endif

  nodist_libeet_la_SOURCES = eet_amalgamation.c
  libeet_la_SOURCES = $(eet_sources_used)

you are adding eet_amalgamation.c to $(libeet_la_SOURCES) even if
EET_AMALGAMATION is true, which means it should be distributed.
Let's add it only to nodist_libeet_la_SOURCES.  Also, BUILT_SOURCES
is only strictly necessary for included files (where in the first round,
make cannot know what they are needed for), so you can simplify to
something like this:

  base_sources = ...
  if EET_AMALGAMATION
  libeet_la_SOURCES = eet_amalgamation.c
  eet_amalgamation.c: Makefile
          rule to make it ...

  else
  libeet_la_SOURCES = $(base_sources)
  endif

Also, note that eet_amalgamation.c does not need to depend on
$(base_sources) if you managed to change the code to #include all the .c
files (instead of grepping their code).

Cheers,
Ralf




reply via email to

[Prev in Thread] Current Thread [Next in Thread]