* bug#13199: Cleanly rebuild once != cleanly rebuild twice
@ 2012-12-16 11:52 Kelly Dean
2012-12-16 20:04 ` Glenn Morris
0 siblings, 1 reply; 2+ messages in thread
From: Kelly Dean @ 2012-12-16 11:52 UTC (permalink / raw)
To: 13199
With the Emacs 24.2 source code and GNU Make 3.81, "make clean; make" does not give the same result as "make clean; make; make clean; make". This failure is user unfriendly; it leads to confusion when you're trying to debug, if you only do "make clean; make" after editing the source code.
Steps to reproduce the bug/feature:
tar Jxf emacs-24.2.tar.xz
cd emacs-24.2
./configure --with-jpeg=no --with-png=no --with-gif=no --with-tiff=no
mv lisp/help-macro.el lisp/help-macro.el.old
sed -e "s/\*Help\*/\*Foo\*/g" < lisp/help-macro.el.old > lisp/help-macro.el
make clean; make; make clean; make
src/emacs -Q
C-h C-h
You get "*Foo*", as expected. But now
C-g C-x C-c
sed -e "s/\*Help\*/\*Bar\*/g" < lisp/help-macro.el.old > lisp/help-macro.el
make clean; make
src/emacs -Q
C-h C-h
You still get "*Foo*", but you should get "*Bar*". Now again do
C-g C-x C-c
make clean; make
src/emacs -Q
C-h C-h
Now you get "*Bar*" as expected.
^ permalink raw reply [flat|nested] 2+ messages in thread
* bug#13199: Cleanly rebuild once != cleanly rebuild twice
2012-12-16 11:52 bug#13199: Cleanly rebuild once != cleanly rebuild twice Kelly Dean
@ 2012-12-16 20:04 ` Glenn Morris
0 siblings, 0 replies; 2+ messages in thread
From: Glenn Morris @ 2012-12-16 20:04 UTC (permalink / raw)
To: Kelly Dean; +Cc: 13199
Kelly Dean wrote:
> With the Emacs 24.2 source code and GNU Make 3.81, "make clean; make"
> does not give the same result as "make clean; make; make clean; make".
> This failure is user unfriendly; it leads to confusion when you're
> trying to debug, if you only do "make clean; make" after editing the
> source code.
>
> Steps to reproduce the bug/feature:
>
> tar Jxf emacs-24.2.tar.xz
> cd emacs-24.2
> ./configure --with-jpeg=no --with-png=no --with-gif=no --with-tiff=no
> mv lisp/help-macro.el lisp/help-macro.el.old
> sed -e "s/\*Help\*/\*Foo\*/g" < lisp/help-macro.el.old > lisp/help-macro.el
> make clean; make; make clean; make
Because the .el files are pre-compiled in a normal Emacs release, make
clean does not (and should not) delete .elc files. If you want to patch
lisp files, I advise you to use a more thorough `make maintainer-clean'
first. This is unnecessary for the vast majority of people building a
release. (I haven't actually tested your example.)
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2012-12-16 20:04 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-12-16 11:52 bug#13199: Cleanly rebuild once != cleanly rebuild twice Kelly Dean
2012-12-16 20:04 ` Glenn Morris
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.