bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#12011: Makefile.in: allow installation of $(FULLEMACS) without linki


From: Achim Gratz
Subject: bug#12011: Makefile.in: allow installation of $(FULLEMACS) without linking to $(EMACS)
Date: Sat, 21 Jul 2012 19:42:44 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.1 (gnu/linux)

If you have several Emacsen installed in parallel, the step in 'make
install' that links $(FULLEMACS) to $(EMACS) is almost never wanted.  It
would be nice if there was a separate target that avoided removing the
previous link (which should be left alone) and then creating a new link.

Two patches to Makefile.in (one for trunk and the other for emacs-24)
are attached that implement the above suggestion.  Feel free to give
those targets better names.


>From 043686d352f97657a537be95a53f8348aeb3c897 Mon Sep 17 00:00:00 2001
From: Achim Gratz <address@hidden>
Date: Sat, 21 Jul 2012 09:23:05 +0200
Subject: [PATCH] allow to install only the full emacs binary

---
 Makefile.in |   18 ++++++++++++++----
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/Makefile.in b/Makefile.in
index 95b0931..7cd05a4 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -397,9 +397,12 @@ $(srcdir)/src/stamp-h.in: $(AUTOCONF_INPUTS)
 ## don't have to duplicate the list of utilities to install in
 ## this Makefile as well.
 
-.PHONY: install
+.PHONY: install install-full-only install-full-link
 
-install: all install-arch-indep install-doc install-arch-dep blessmail
+install-full-only: all install-arch-indep install-doc install-arch-dep 
blessmail
+       @true
+
+install: install-full-link
        @true
 
 ## Ensure that $subdir contains a subdirs.el file.
@@ -430,15 +433,21 @@ install-arch-dep: install-arch-indep install-doc
        if test "${ns_self_contained}" = "no"; then \
          ${INSTALL_PROGRAM} $(INSTALL_STRIP) src/emacs${EXEEXT} 
$(DESTDIR)${bindir}/$(EMACSFULL) || exit 1 ; \
          chmod 1755 $(DESTDIR)${bindir}/$(EMACSFULL) ; \
-         rm -f $(DESTDIR)${bindir}/$(EMACS) ; \
-         ln $(DESTDIR)${bindir}/$(EMACSFULL) $(DESTDIR)${bindir}/$(EMACS) || 
true ; \
+         true ; \
        else \
          subdir=${ns_appresdir}/site-lisp; \
          ${write_subdir} || exit 1; \
          rm -rf ${ns_appresdir}/share; \
        fi
 
+install-full-link: install-full-only
+       if test "${ns_self_contained}" = "no"; then \
+         rm -f $(DESTDIR)${bindir}/$(EMACS) ; \
+         ln $(DESTDIR)${bindir}/$(EMACSFULL) $(DESTDIR)${bindir}/$(EMACS) || 
true ; \
+       else \
+         true ; \
+       fi
+
 ## In the share directory, we are deleting:
 ## applications (with emacs.desktop, also found in etc/)
 ## emacs (basically empty except for unneeded site-lisp directories)
-- 
1.7.10.4

>From 469d3d20773c942219c268d48519f99419258930 Mon Sep 17 00:00:00 2001
From: Achim Gratz <address@hidden>
Date: Sat, 21 Jul 2012 08:48:24 +0200
Subject: [PATCH] allow to install only the full emacs binary

---
 Makefile.in |   13 +++++++++----
 1 file changed, 9 insertions(+), 4 deletions(-)

diff --git a/Makefile.in b/Makefile.in
index 9a9be4f..7c581b1 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -449,7 +449,7 @@ $(srcdir)/src/stamp-h.in: $(AUTOCONF_INPUTS)
 ## On AIX, use tar xBf.
 ## On Xenix, use tar xpf.
 
-.PHONY: install mkdir
+.PHONY: install install-full-only install-full-link mkdir
 
 ## We delete each directory in ${COPYDESTS} before we copy into it;
 ## that way, we can reinstall over directories that have been put in
@@ -458,7 +458,10 @@ $(srcdir)/src/stamp-h.in: $(AUTOCONF_INPUTS)
 ## source exists and is distinct from the destination.
 ### We do install-arch-indep first because
 ### the executable needs the Lisp files and DOC file to work properly.
-install: all install-arch-indep install-arch-dep install-leim blessmail
+install-fullonly: all install-arch-indep install-arch-dep install-leim 
blessmail
+       @true
+
+install: install-full-link
        @true
 
 MV_DIRS = for i in $$dir; do rm -fr `basename "$$i"` ; mv "$$i" . ; done
@@ -474,8 +477,6 @@ install-arch-dep: mkdir
            INSTALL_STRIP=${INSTALL_STRIP})
        ${INSTALL_PROGRAM} $(INSTALL_STRIP) src/emacs${EXEEXT} 
$(DESTDIR)${bindir}/$(EMACSFULL)
        -chmod 1755 $(DESTDIR)${bindir}/$(EMACSFULL)
-       rm -f $(DESTDIR)${bindir}/$(EMACS)
-       -ln $(DESTDIR)${bindir}/$(EMACSFULL) $(DESTDIR)${bindir}/$(EMACS)
        if test "${ns_appresdir}" != ""; then \
          ( cd ${ns_appresdir} ; \
            if test -d share/emacs ; then dir=share/emacs/*/*; $(MV_DIRS); fi;\
@@ -487,7 +488,10 @@ install-arch-dep: mkdir
            ln -sf ../libexec/* . ; fi ; fi ) ; \
        else true ; fi
 
+install-full-link: install-full-only
+       rm -f $(DESTDIR)${bindir}/$(EMACS)
+       -ln $(DESTDIR)${bindir}/$(EMACSFULL) $(DESTDIR)${bindir}/$(EMACS)
+
 ## FIXME is the emacs-24* bit above really necessary and correct?
 ## What if I have 24.1 and 24.2 installed at the same time?
 ## In any case, it should use something like echo $version | sed 's/\..*//'
-- 
1.7.10.4


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Waldorf MIDI Implementation & additional documentation:
http://Synth.Stromeko.net/Downloads.html#WaldorfDocs

reply via email to

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