GNU bug report logs - #16375
subdir-objects breaks build which specifies sources relative to $(top_srcdir)

Previous Next

Package: automake;

Reported by: Diab Jerius <djerius <at> cfa.harvard.edu>

Date: Mon, 6 Jan 2014 21:24:01 UTC

Severity: normal

Done: Stefano Lattarini <stefano.lattarini <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Diab Jerius <djerius <at> cfa.harvard.edu>
To: 16375 <at> debbugs.gnu.org
Subject: bug#16375: subdir-objects breaks build which specifies sources relative to $(top_srcdir)
Date: Mon, 6 Jan 2014 16:20:22 -0500
[Message part 1 (text/plain, inline)]
automake 1.14.1
autoconf 2.69

I have a project which has the unique feature of specifying all source
paths relative to $(top_srcdir), e.g.:

libdebug_la_SOURCES    =  $(top_srcdir)/debug.c

(The actual project is a recursive build with multiple nested source
directories, with paths like

   libYYY_la_SOURCES   = $(top_srcdir)/YYY/source.

 but this small sample elicits the undesired behavior described below.)

Without subdir-objects, automake complains about requiring
subdir-objects, but the project is built correctly.

With subdir-objects,  automake & autoconf conspire to generate code
which results in config.status creating a directory literally called
'$(top_srcdir)/.deps', and make dieing with the error

% make
Makefile:372: .deps/debug.Plo: No such file or directory
make: *** No rule to make target `.deps/debug.Plo'.  Stop.

In the complete project (which is recursive) each directory gets it's
own version of the '$(top_srcdir)' directory, .e.g, in
lists/Makefile.am,

  liblists_la_SOURCES = $(top_srcdir)/lists/foo.c

results in the creation of

  lists/$(top_srcdir)/lists/.deps


It is perhaps out of the ordinary to specify sources this way for a
recursive make, but it does actually work (and I'd like to be able to
continue with that idiom, as I have other tools which parse
Makefile.am and require this setup to work).


I've attached a tar file of the stripped down project with the results
of running

autoreconf -i >& autoreconf.log
./configure >& configure.log


Thanks!

Diab
[suplib-am-bug.tar.gz (application/x-gzip, attachment)]

This bug report was last modified 11 years and 91 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.