Thanks, for the fast reply. I know that I can do it this way.
But I really want to put only foo.x into aaa_SOURCES
With the normal build it works perfect. But not with this automatic renaming
thing, because automake puts this rule int the Makefile:
aaa-foo.o: foo.x
........
and in my opinion it should put this in it,
aaa-foo.o: foo.cc
........
It makes no sense to me to compile foo.x with g++
Is this a bug or a feature ?
Am Montag, 23. April 2007 schrieb Benoit Sigoure:
> Quoting Ralf Wildenhues <[EMAIL PROTECTED]>:
> > Hello Florian,
> >
> > * [EMAIL PROTECTED] wrote on Sun, Apr 22, 2007 at 03:38:45PM CEST:
> >> --- snip ----
> >> SUFFIXES = .x
> >>
> >> .x.cc:
> >>
> >> %.cc %.h: %.x
> >>
> >> :> $*.cc
> >> :> $*.h
> >>
> >> bin_PROGRAMS = aaa
> >> aaa_SOURCES = main.cc foo.x
> >> --- snip ----
> >>
> >> as soon long I don't add:
> >>
> >> --- snip ----
> >> aaa_CXXFLAGS = -I.
> >> --- snip ----
> >>
> >> the automatic renaming of the objectfiles breaks my compilation,
> >> because in the Makefile there is this rule created:
> >
> > [...]
> >
> >> Is there a way to tell automake to create a rule for foo.cc instead?
> >
> > If foo.cc and foo.h are not to be distributed (i.e., they are not
> > portable to other systems), then put foo.x in EXTRA_DIST, foo.cc and
> > foo.h in nodist_aaa_SOURCES and CLEANFILES. I think you may have to
> > put foo.h into BUILT_SOURCES as well for a parallel build.
>
> You didn't make it clear that `foo.x' should not be listed in
> `(nodist_)aaa_SOURCES'. Only `foo.cc' AND `foo.h' must be there. And I'd
> put both `foo.h' and `foo.cc' in BUILT_SOURCES, because that's what they
> are.
--
It shall be unlawful for any suspicious person to be within the
municipality.
-- Local ordinance, Euclid Ohio