# [PATCH 6/7] Small changes

4 messages from 2007-03-03 to 2007-03-05. Participants: Xavier Maillard, Junio C Hamano.
Thread: https://gitlist.dev/t/7058

## Xavier Maillard, 2007-03-03 10:20

Subject: [PATCH 6/7] Small changes
Message-ID: <15313.1172917217@localhost>
URL: https://gitlist.dev/e/15313.1172917217%40localhost

```

* Makefile: add git-blame as a candidate to the
  byte-compilation. Change the function to call to byte-compile.

Signed-off-by: Xavier Maillard <zedek@gnu.org>
---
 contrib/emacs/Makefile |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/contrib/emacs/Makefile b/contrib/emacs/Makefile
index 350846d..8554e39 100644
--- a/contrib/emacs/Makefile
+++ b/contrib/emacs/Makefile
@@ -2,7 +2,7 @@
 
 EMACS = emacs
 
-ELC = git.elc vc-git.elc
+ELC = git.elc vc-git.elc git-blame.elc
 INSTALL ?= install
 INSTALL_ELC = $(INSTALL) -m 644
 prefix ?= $(HOME)
@@ -15,6 +15,6 @@ install: all
 	$(INSTALL_ELC) $(ELC) $(emacsdir)
 
 %.elc: %.el
-	$(EMACS) --batch --eval '(byte-compile-file "$<")'
+	$(EMACS) -batch -f batch-byte-compile $<
 
 clean:; rm -f $(ELC)
-- 
1.5.0

```

## Junio C Hamano, 2007-03-03 22:15

Subject: Re: [PATCH 6/7] Small changes
Message-ID: <7vps7q7z44.fsf@assigned-by-dhcp.cox.net>
URL: https://gitlist.dev/e/7vps7q7z44.fsf%40assigned-by-dhcp.cox.net
In-Reply-To: <15313.1172917217@localhost>

```
Xavier Maillard <zedek@gnu.org> writes:

> * Makefile: add git-blame as a candidate to the
>   byte-compilation. Change the function to call to byte-compile.

Could we have a bit more detailed description on the latter
change?

Explaining why something needed a change is the point of a
commit log message.  Summarizing what got changed and how is
good but that is secondary, because anybody can see that you
changed the handcrafted --eval to -f by running "git show", even
if you did not have the above proposed log message.

What is left unsaid is _why_ it is better to use single dash
form of "-batch" and -f form instead of handcrafted --eval, and
the proposed log message does not clarify the reason.

>  %.elc: %.el
> -	$(EMACS) --batch --eval '(byte-compile-file "$<")'
> +	$(EMACS) -batch -f batch-byte-compile $<
>  
>  clean:; rm -f $(ELC)

```

## Xavier Maillard, 2007-03-05 07:52

Subject: Re: [PATCH 6/7] Small changes
Message-ID: <200703050752.l257qRog007776@localhost.localdomain>
URL: https://gitlist.dev/e/200703050752.l257qRog007776%40localhost.localdomain
In-Reply-To: <7vps7q7z44.fsf@assigned-by-dhcp.cox.net>

```

   From: Junio C Hamano <junkio@cox.net>

   Xavier Maillard <zedek@gnu.org> writes:

   > * Makefile: add git-blame as a candidate to the
   >   byte-compilation. Change the function to call to byte-compile.

   Could we have a bit more detailed description on the latter
   change?

Sure.

byte-compile-file is an interactive function.
batch--byte-compile is a batch function.

First function would be (better) called when using emacs in its
"interactive" form -ie. M-x byte-compile-file RET.

batch-byte-compile is reserved for batching use (no interaction
with the user).

So in non interactive mode, this is prefered way to do things.

   Explaining why something needed a change is the point of a
   commit log message.  Summarizing what got changed and how is
   good but that is secondary, because anybody can see that you
   changed the handcrafted --eval to -f by running "git show", even
   if you did not have the above proposed log message.

Sorry Iam not "good" at commit log :/ 

   What is left unsaid is _why_ it is better to use single dash
   form of "-batch" and -f form instead of handcrafted --eval, and
   the proposed log message does not clarify the reason.

First reason is given by C-h f batch-byte-compile RET which
gives:

batch-byte-compile is an autoloaded Lisp function in `bytecomp'.
(batch-byte-compile &optional noforce)

Run `byte-compile-file' on the files remaining on the command line.
Use this from the command line, with `-batch';
it won't work in an interactive Emacs.
Each file is processed even if an error occurred previously.
For example, invoke "emacs -batch -f batch-byte-compile $emacs/ ~/*.el".
If noforce is non-nil, don't recompile a file that seems to be

Second reason is "by habit" :)


Hope Ihave been clear. If you want me to submit something again
from these patches, please tell how to do so (and modify what
Ihave changed).

-- 
Xavier

```

## Junio C Hamano, 2007-03-05 08:46

Subject: Re: [PATCH 6/7] Small changes
Message-ID: <7v8xec13ig.fsf@assigned-by-dhcp.cox.net>
URL: https://gitlist.dev/e/7v8xec13ig.fsf%40assigned-by-dhcp.cox.net
In-Reply-To: <200703050752.l257qRog007776@localhost.localdomain>

```
Xavier Maillard <zedek@gnu.org> writes:

>    From: Junio C Hamano <junkio@cox.net>
>
>    Xavier Maillard <zedek@gnu.org> writes:
>
>    > * Makefile: add git-blame as a candidate to the
>    >   byte-compilation. Change the function to call to byte-compile.
>
>    Could we have a bit more detailed description on the latter
>    change?
>
> Sure.
> ...
> Hope Ihave been clear.

Thanks.  Received your other message and will apply.

```
