# got wet with make --dry-run

2 messages from 2009-01-01 to 2009-01-01. Participants: jidanni@jidanni.org, Thomas Rast.
Thread: https://gitlist.dev/t/16952

## jidanni@jidanni.org, 2009-01-01 17:03

Subject: got wet with make --dry-run
Message-ID: <87eizn0xhd.fsf@jidanni.org>
URL: https://gitlist.dev/e/87eizn0xhd.fsf%40jidanni.org

```
Gentlemen, make --dry-run is booby trapped to still execute commands:
$ (cd Documentation; make --dry-run); find -mtime -1 -type f
./Documentation/doc.dep
./GIT-VERSION-FILE
Forgot $(MAKEFLAGS)? (info "(make)Options/Recursion").
By the way, why would an offline make need
/bin/sh: curl-config: command not found

```

## Thomas Rast, 2009-01-01 19:44

Subject: Re: got wet with make --dry-run
Message-ID: <200901012045.02734.trast@student.ethz.ch>
URL: https://gitlist.dev/e/200901012045.02734.trast%40student.ethz.ch
In-Reply-To: <87eizn0xhd.fsf@jidanni.org>

```
jidanni@jidanni.org wrote:
> Gentlemen, make --dry-run is booby trapped to still execute commands:
> $ (cd Documentation; make --dry-run); find -mtime -1 -type f
> ./Documentation/doc.dep
> ./GIT-VERSION-FILE
> Forgot $(MAKEFLAGS)? (info "(make)Options/Recursion").

A two minute check into Makefile shows that the recursion is
implemented via $(MAKE), which is the recommended way to do it.  It's
impossible to "forget" $(MAKEFLAGS), since the docs clearly say that
it is always exported unless explicitly unexported.

The *real* reason why it rebuilds GIT-VERSION-FILE is that the
Makefile says '-include GIT-VERSION-FILE', and uses the version info
to decide some parts of the build process.  (It'll also do a similar
thing with the $CFLAGS detection code.)  Since this influences the
actual commands executed, it seems sensible to run them even under
'make -n'.

> By the way, why would an offline make need
> /bin/sh: curl-config: command not found

From somewhere near the top of Makefile, which is definitely a
recommended read:

# Define NO_CURL if you do not have libcurl installed.  git-http-pull and
# git-http-push are not built, and you cannot use http:// and https://
# transports.


Next time please take the time to investigate at least a little bit
into your "issues" before starting to cry foul.

-- 
Thomas Rast
trast@{inf,student}.ethz.ch


```
