automake
[Top][All Lists]
Advanced

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

Re: top_srcdir and subpackages


From: Stepan Kasal
Subject: Re: top_srcdir and subpackages
Date: Wed, 7 Sep 2005 11:40:57 +0200
User-agent: Mutt/1.4.1i

Hello Harlan,

On Wed, Sep 07, 2005 at 12:12:43AM +0000, Harlan Stenn wrote:
> I have 2 auto* packages, and one subdir (sntp/) is a subpackage of the parent.
> I'm using autoconf 2.59 and automake 1.9.6.
...
> address@hidden> grep '^top_srcdir' A.pogo/sntp/Makefile
> A.rackety/sntp/Makefile
> A.pogo/sntp/Makefile:top_srcdir = ../../sntp
> A.rackety/sntp/Makefile:top_srcdir = ../../sntp
> address@hidden> grep '^top_srcdir' A.pogo/sntp/libopts/Makefile
> A.rackety/sntp/libopts/Makefile
> A.pogo/sntp/libopts/Makefile:top_srcdir = ../../..
> A.rackety/sntp/libopts/Makefile:top_srcdir = ../../..
> address@hidden> 
> 
> top_srcdir in the sntp/libopts/ subdir seems Wrong.

indeed, it is.  I stared at the Autoconf-2.59 source code for some time,
but haven't found any bug.

Suggestions:

1) How is the subdir declared?
        AC_CONFIG_SUBDIRS([sntp])
Or with a slash ("sntp/")?  The former is "nicer" but both should work.

2) Doesn't something in AC_CONFIG_* commands (the second parameter)
modify the shell variable `srcdir'.  Autoconf relies on it, though it
doesn't have ac_ prefix.  (Yes, it should be fixed, I guess.)

3) Do you call ../configure, or do you use a full path?

4) After the failed build, what does A.pogo/sntp/config.status --version say?
Does the call contain "--srcdir=../../sntp"?
What if you do a fresh unpack and then
        mkdir -p A.pogo/sntp/
        cd A.pogo/sntp/
        ../../sntp/configure
or
        ../../sntp/configure --srcdir=../../sntp
or the command showed by config.status?

5) Could you try CVS version of Autoconf?  The config.status code has changed
a lot, including the macro which computes top_srcdir.
I use CVS Autoconf with Automake 1.9.6 without any problem.
(But you always have to call "automake", so that the new variable
"datadirroot" gets into Makefile.in's.)

6) If you were willing to debug the issue, the ac_srcdir computation is
performed in the generated config.status, just above the computation
(first occurrence) of "ac_INSTALL".  (This sentence is valid for both
CVS version and 2.59, by pure coincidence.)

And last, but not least: thank you for your bug report!

And thank you in advance for the debugging work you will contribute.  ;-)

Happy hacking,
        Stepan Kasal




reply via email to

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