* bug#12011: Makefile.in: allow installation of $(FULLEMACS) without linking to $(EMACS)
@ 2012-07-21 17:42 Achim Gratz
2012-08-19 16:29 ` Achim Gratz
0 siblings, 1 reply; 5+ messages in thread
From: Achim Gratz @ 2012-07-21 17:42 UTC (permalink / raw)
To: 12011
[-- Attachment #1: Type: text/plain, Size: 457 bytes --]
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.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: allow to install only the full emacs binary --]
[-- Type: text/x-patch, Size: 1861 bytes --]
From 043686d352f97657a537be95a53f8348aeb3c897 Mon Sep 17 00:00:00 2001
From: Achim Gratz <Stromeko@Stromeko.DE>
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
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: allow to install only the full emacs binary --]
[-- Type: text/x-patch, Size: 2203 bytes --]
From 469d3d20773c942219c268d48519f99419258930 Mon Sep 17 00:00:00 2001
From: Achim Gratz <Stromeko@Stromeko.DE>
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
[-- Attachment #4: Type: text/plain, Size: 201 bytes --]
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
^ permalink raw reply related [flat|nested] 5+ messages in thread
* bug#12011: Makefile.in: allow installation of $(FULLEMACS) without linking to $(EMACS)
2012-07-21 17:42 bug#12011: Makefile.in: allow installation of $(FULLEMACS) without linking to $(EMACS) Achim Gratz
@ 2012-08-19 16:29 ` Achim Gratz
2012-08-20 22:42 ` Glenn Morris
0 siblings, 1 reply; 5+ messages in thread
From: Achim Gratz @ 2012-08-19 16:29 UTC (permalink / raw)
To: 12011
[-- Attachment #1: Type: text/plain, Size: 283 bytes --]
Achim Gratz writes:
> 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.
Corrected a typo in one patch and re-generated them on top of the
current branch heads.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: patch for trunk --]
[-- Type: text/x-patch, Size: 1873 bytes --]
From 79955315ebc7aeca6b7a1dc560afb4c0d3031952 Mon Sep 17 00:00:00 2001
From: Achim Gratz <Stromeko@Stromeko.DE>
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, 15 insertions(+), 3 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index ab9f16c..fe1ba44 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -405,7 +405,12 @@ $(srcdir)/src/stamp-h.in: $(AUTOCONF_INPUTS)
## don't have to duplicate the list of utilities to install in
## this Makefile as well.
-install: all install-arch-indep install-doc install-arch-dep blessmail
+.PHONY: install install-full-only install-full-link
+
+install-full-only: all install-arch-indep install-doc install-arch-dep blessmail
+ @true
+
+install: install-full-only install-full-link
@true
## Ensure that $subdir contains a subdirs.el file.
@@ -436,14 +441,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-arch-indep install-doc
+ 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.11.4
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: patch for emacs24 --]
[-- Type: text/x-patch, Size: 2202 bytes --]
From b76aa8289bf563175d5ead21269c3f93778ff74a Mon Sep 17 00:00:00 2001
From: Achim Gratz <Stromeko@Stromeko.DE>
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..d07784b 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-full-only: all install-arch-indep install-arch-dep install-leim blessmail
+ @true
+
+install: install-full-only 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,6 +488,10 @@ install-arch-dep: mkdir
ln -sf ../libexec/* . ; fi ; fi ) ; \
else true ; fi
+install-full-link:
+ 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.11.4
[-- Attachment #4: Type: text/plain, Size: 186 bytes --]
Regards,
Achim.
--
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+
Samples for the Waldorf Blofeld:
http://Synth.Stromeko.net/Downloads.html#BlofeldSamplesExtra
^ permalink raw reply related [flat|nested] 5+ messages in thread
* bug#12011: Makefile.in: allow installation of $(FULLEMACS) without linking to $(EMACS)
2012-08-19 16:29 ` Achim Gratz
@ 2012-08-20 22:42 ` Glenn Morris
2012-08-21 4:51 ` Achim Gratz
0 siblings, 1 reply; 5+ messages in thread
From: Glenn Morris @ 2012-08-20 22:42 UTC (permalink / raw)
To: Achim Gratz; +Cc: 12011
How about just:
*** Makefile.in 2012-08-20 22:12:35 +0000
--- Makefile.in 2012-08-20 22:39:11 +0000
***************
*** 437,444 ****
--- 437,446 ----
if test "${ns_self_contained}" = "no"; then \
${INSTALL_PROGRAM} $(INSTALL_STRIP) src/emacs${EXEEXT} $(DESTDIR)${bindir}/$(EMACSFULL) || exit 1 ; \
chmod 1755 $(DESTDIR)${bindir}/$(EMACSFULL) ; \
+ if test "x${EMACS_NO_BIN_LINK}" = x; then \
rm -f $(DESTDIR)${bindir}/$(EMACS) ; \
cd $(DESTDIR)${bindir} && $(LN_S) $(EMACSFULL) $(EMACS); \
+ fi; \
else \
subdir=${ns_appresdir}/site-lisp; \
${write_subdir} || exit 1; \
Then you can use
EMACS_NO_BIN_LINK=t make install
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2012-08-22 6:56 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-07-21 17:42 bug#12011: Makefile.in: allow installation of $(FULLEMACS) without linking to $(EMACS) Achim Gratz
2012-08-19 16:29 ` Achim Gratz
2012-08-20 22:42 ` Glenn Morris
2012-08-21 4:51 ` Achim Gratz
2012-08-22 6:56 ` Glenn Morris
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).