automake
[Top][All Lists]
Advanced

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

Re: Need for a portable way to specify intermediate targets.


From: Bob Friesenhahn
Subject: Re: Need for a portable way to specify intermediate targets.
Date: Wed, 4 Jan 2006 12:34:13 -0600 (CST)

I expect that Automake conditionals with traditional make rules for
the intermediate targets wrapped up in a conditional will do the
trick. If you use Automake's maintainer-mode feature, then you can use

if MAINTAINER_MODE
  foo.c : foo.bar
     dosomething
endif

There is also a MAINTAINER_TARGETS variable that you can use to add additional targets for when maintainer mode is activated. This won't help if your foo.c is already depended on by a normal target but it may have value for other maintainer purposes.

Bob

On Wed, 4 Jan 2006, Peter Ekberg wrote:

Hello!

I have the following needs:

1. Extract some data from a list of files using script foo.
2. Process the data further using a second script bar.
3. Concatenate the processed data.
4. Run a third script foobar on the concatenation to
  produce a .c file.
5. Distribute the generated .c file, so that only
  the maintainer (me) needs to run 1-4.
6. Use the generated .c file as usual.

I have made an attempt as outlined in the attached sample,
with silly barebones scripts to save some bandwidth.
Run "./bootstrap; ./configure; make" to test the attempt.

My attempt fails the last bit of point 5, the scripts are
triggered for everyone, even when the generated .c file is
newer than any of its dependencies.

The real project where this is needed currently requires
GNU make, and is using the .INTERMEDIATE target, just add

.INTERMEDIATE: $(FOOBARS) splunk.foobar

to Makefile.am and use GNU make to get the behaviour I desire.

Is there a portable solution to my needs?

Cheers,
Peter


======================================
Bob Friesenhahn
address@hidden, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/




reply via email to

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