[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: automake 1.8.3: Tru64: fix for depcomp
From: |
Nicolas Joly |
Subject: |
Re: automake 1.8.3: Tru64: fix for depcomp |
Date: |
Thu, 29 Apr 2004 14:55:41 +0200 |
User-agent: |
Mutt/1.5.5.1i |
On Sat, Apr 24, 2004 at 11:20:59AM +0200, Alexandre Duret-Lutz wrote:
> >>> "Burgers" == Burgers A R <address@hidden> writes:
>
> Burgers> In order to get the dependencies for a LTLIBRARY right for Tru64's
> Burgers> native cc C-compiler, I had to apply the following patch to
> Burgers> automake's depcomp script. cc -MD outputs the dependencies in the
> Burgers> .o.d file, not in the .lo.d file.
>
> Burgers> I am using automake 1.8.3, autoconf 2.59,
> Burgers> libtool (ltmain.sh (GNU libtool) 1.5 (1.1220 2003/04/05 19:32:58))
>
> Thanks, I'm installing the following patch on HEAD and
> branch-1-8. It would be nice to know the difference between
> your setup and Nicolas's.
>
> 2004-04-24 Alexandre Duret-Lutz <address@hidden>
>
> * lib/depcomp (tru64) [libtool]: Nicolas Joly reported on
> 2002-06-12 that dependencies were output in $dir.libs/$base.lo.d.
> Teun Burgers reported on 2004-03-30 they were in $dir.libs/$base.o.d.
> Try both.
I just made some testing with one of my projects with automake 1.8.4 /
libtool 1.5.6, and noticed some remaining problems about libtool and
Tru64 dependency mode.
source='sequence.c' object='sequence.lo' libtool=yes
depfile='.deps/sequence.Plo' tmpdepfile='.deps/sequence.TPlo' depmode=tru64
/bin/ksh ../depcomp /bin/ksh ../libtool --mode=compile cc -DHAVE_CONFIG_H -I.
-I. -I. -g -c -o sequence.lo sequence.c
mkdir .libs
cc -DHAVE_CONFIG_H -I. -I. -I. -g -c -MD sequence.c -DPIC -o .libs/sequence.o
cc -DHAVE_CONFIG_H -I. -I. -I. -g -c -MD sequence.c -o sequence.o >/dev/null
2>&1
With libtool 1.5 and Tru64 C compiler, 2 separate objects are now
generated. And, as a side effect, two separate `.d' dependencies files
are made : `sequence.o.d' and `.libs/sequence.o.d'.
Actually, the second one is processed to make the final
`.deps/sequence.Plo' file. But the first one remains unused, and seems
forgotten here ... This breaks `gmake distcheck' target, which
complains about `files left in build directory after distclean'.
I that case, shouldn't it be better to use for tmpdepfile2 :
"$dir$base.o.d" instead of "$dir.libs/$base.o.d"
NB: "$dir.libs/$base.o.d" are automatically cleaned with `make
distclean', with the `.libs' directory removal.
--
Nicolas Joly
Biological Software and Databanks.
Institut Pasteur, Paris.