[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Interesting automake bug
On Mon, 25 Nov 2002, Al Riddoch wrote:
>On Mon, Nov 25, 2002 at 06:22:57PM +0200, Jan Ekholm wrote:
>> On Mon, 25 Nov 2002, Chris Purnell wrote:
>>
>> >This is the implicit make rule again. Just as before with your header
>> >files. Make has an implicit rule to make an executable out of a c++
>> >source file as well as one to make a ".o" object file.
>>
>> I really don't get it. If I have something like this:
>>
>> ## programs
>> bin_PROGRAMS = panzers
>>
>> panzers_SOURCES = blast.cpp \
>> camera_manipulator.cpp \
>> connection.cpp
>> ....
>>
>> Why would it determine that "connection" is an application? Each of those
>> files does have a corresponding .hh file, but they're not even mentioned
>> anywhere. Why should their mere existence throw automake out in the
>> dark goblin woods?
>>
>
>I am pretty sure having looked at your files that the problem was caused
>by hard tabs between the .cpp file and the \ at the end of the line.
>I was not able to build your code easily as I don't yet have osg
>installed.
Now this is interesting and a lot more promising, but alas, does not work.
Doing a "make dist" gets me roughly this:
# make dist
{ test ! -d panzers-0.1 || { find panzers-0.1 -type d ! -perm -200 -exec
chmod u+w {} ';' && rm -fr panzers-0.1; }; }
mkdir panzers-0.1
list='src'; for subdir in $list; do \
if test "$subdir" = .; then :; else \
test -d panzers-0.1/$subdir \
|| mkdir panzers-0.1/$subdir \
|| exit 1; \
(cd $subdir && \
make \
top_distdir="." \
distdir=../panzers-0.1/$subdir \
distdir) \
|| exit 1; \
fi; \
done
make[1]: Entering directory `/home/chakie/prog/c++/osg/panzers/src'
g++ -g -O2 -I/opt/osgSDL//include -I/usr//include setup.cpp -o setup
...
Same problem. The Makefile.am is definitely untabified now.
Am I a total idiot?
--
Real children don't go hoppity-skip unless they are on drugs.
-- Susan Sto Helit, in Hogfather (Terry Pratchett)