* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
@ 2009-12-12 10:28 Harald Maier
2009-12-12 19:45 ` Glenn Morris
0 siblings, 1 reply; 14+ messages in thread
From: Harald Maier @ 2009-12-12 10:28 UTC (permalink / raw)
To: emacs-pretest-bug
This bug report will be sent to the Free Software Foundation,
not to your local site managers!
Please write in English if possible, because the Emacs maintainers
usually do not have translators to read other languages for them.
Your bug report will be posted to the emacs-pretest-bug@gnu.org mailing list,
and to the gnu.emacs.bug news group.
Please describe exactly what actions triggered the bug
and the precise symptoms of the bug. If you can, give
a recipe starting from `emacs -Q':
With the checkout today the build failed on a GNU/Linux Kernel
2.6.16. The problem ist the make target "compile-main" in the lisp
directory.
$ LANG=en_US make compile-main
make[1]: Entering directory `/home/maierh/build/cvs/emacs/lisp'
make[1]: execvp: echo: Argument list too long
make[1]: *** [/home/maierh/build/cvs/emacs/lisp/mh-e/mh-alias.elc] Error 127
make[1]: Leaving directory `/home/maierh/build/cvs/emacs/lisp'
make: *** [compile-main] Error 2
Harald
If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
`bt full' and `xbacktrace'.
For information about debugging Emacs, please read the file
/usr/local/share/emacs/23.1.90/etc/DEBUG.
In GNU Emacs 23.1.90.1 (i686-pc-linux-gnu, GTK+ Version 2.8.11)
of 2009-12-12 on nyx-s10
Windowing system distributor `The X.Org Foundation', version 11.0.60900000
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: de_DE.UTF-8
value of $XMODIFIERS: @im=local
locale-coding-system: utf-8-unix
default enable-multibyte-characters: t
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
2009-12-12 10:28 bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16 Harald Maier
@ 2009-12-12 19:45 ` Glenn Morris
2009-12-12 19:50 ` Processed: " Emacs bug Tracking System
0 siblings, 1 reply; 14+ messages in thread
From: Glenn Morris @ 2009-12-12 19:45 UTC (permalink / raw)
To: 5191
merge 5167 5191
severity 5167 serious
stop
Harald Maier wrote:
> $ LANG=en_US make compile-main
> make[1]: Entering directory `/home/maierh/build/cvs/emacs/lisp'
> make[1]: execvp: echo: Argument list too long
This answers my question from bug#5167.
^ permalink raw reply [flat|nested] 14+ messages in thread
* Processed: Re: bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
2009-12-12 19:45 ` Glenn Morris
@ 2009-12-12 19:50 ` Emacs bug Tracking System
0 siblings, 0 replies; 14+ messages in thread
From: Emacs bug Tracking System @ 2009-12-12 19:50 UTC (permalink / raw)
To: Glenn Morris; +Cc: Emacs Bugs
Processing commands for control@emacsbugs.donarmstrong.com:
> merge 5167 5191
bug#5167: maximum command-line length assumed in Makefiles
bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
Merged 5167 5191.
> severity 5167 serious
Bug #5167 [emacs] maximum command-line length assumed in Makefiles
Bug #5191 [emacs] 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
Severity set to 'serious' from 'normal'
Severity set to 'serious' from 'normal'
> stop
Stopping processing here.
Please contact me if you need assistance.
Don Armstrong
(administrator, Emacs bugs database)
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
@ 2009-12-12 20:24 Chong Yidong
2009-12-12 21:40 ` Jan Djärv
2009-12-15 4:21 ` Stefan Monnier
0 siblings, 2 replies; 14+ messages in thread
From: Chong Yidong @ 2009-12-12 20:24 UTC (permalink / raw)
To: Harald Maier; +Cc: 5191
Does this patch fix it? Instead of passing ELCFILES on the command
line, it saves it to a .elcfiles file, and the recursive Make includes
that. (I am assuming the "-include" directive is supported, but we seem
to use it in src/Makefile already anyhow.)
*** emacs/lisp/Makefile.in.~1.215.~ 2009-12-09 09:21:04.000000000 -0500
--- emacs/lisp/Makefile.in 2009-12-12 15:13:02.000000000 -0500
***************
*** 211,216 ****
--- 211,218 ----
compile-first: $(COMPILE_FIRST)
+ -include $(lisp)/.elcfiles
+
# ELCFILES is set dynamically in the recursive call from `compile-main'.
compile-elcfiles: $(ELCFILES)
***************
*** 219,230 ****
compile-main:
@wd=$(lisp); $(setwins); \
els=`echo "$$wins " | sed -e 's|/\./|/|g' -e 's|/\. | |g' -e 's| |/*.el |g'`; \
for el in $$els; do \
test -f $$el || continue; \
test ! -f $${el}c && GREP_OPTIONS= grep '^;.*no-byte-compile: t' $$el > /dev/null && continue; \
! files="$$files $${el}c"; \
done; \
! $(MAKE) $(MFLAGS) compile-elcfiles EMACS=$(EMACS) ELCFILES="$$files"
# Erase left-over .elc files that do not have a corresponding .el file.
compile-clean:
--- 221,233 ----
compile-main:
@wd=$(lisp); $(setwins); \
els=`echo "$$wins " | sed -e 's|/\./|/|g' -e 's|/\. | |g' -e 's| |/*.el |g'`; \
+ echo -n "ELCFILES=" > $(lisp)/.elcfiles; \
for el in $$els; do \
test -f $$el || continue; \
test ! -f $${el}c && GREP_OPTIONS= grep '^;.*no-byte-compile: t' $$el > /dev/null && continue; \
! echo -n "$${el}c " >> $(lisp)/.elcfiles; \
done; \
! $(MAKE) $(MFLAGS) compile-elcfiles EMACS=$(EMACS)
# Erase left-over .elc files that do not have a corresponding .el file.
compile-clean:
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
@ 2009-12-12 21:00 Chong Yidong
2009-12-12 21:07 ` Glenn Morris
0 siblings, 1 reply; 14+ messages in thread
From: Chong Yidong @ 2009-12-12 21:00 UTC (permalink / raw)
To: Stefan Monnier; +Cc: Harald Maier, 5191
> Does this patch fix it? Instead of passing ELCFILES on the command
> line, it saves it to a .elcfiles file, and the recursive Make includes
> that. (I am assuming the "-include" directive is supported, but we seem
> to use it in src/Makefile already anyhow.)
On second thought, I don't think this is a good idea. Looks like the
BSDs use ".sinclude" for silent inclusion, and older systems don't even
support that.
If no better plan is forthcoming that can simultaneously cope with
ARG_MAX limitations and cross-Unix incompatibilities, I think it's
better to revert Makefile.in to the "ELCFILES abomination". We can live
with it for a while longer.
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
2009-12-12 21:00 Chong Yidong
@ 2009-12-12 21:07 ` Glenn Morris
2009-12-14 23:29 ` Chong Yidong
0 siblings, 1 reply; 14+ messages in thread
From: Glenn Morris @ 2009-12-12 21:07 UTC (permalink / raw)
To: Chong Yidong; +Cc: Harald Maier, 5191
Chong Yidong wrote:
> On second thought, I don't think this is a good idea. Looks like the
> BSDs use ".sinclude" for silent inclusion, and older systems don't even
> support that.
I think you are right that include is not portable. It's currently
only used in GNUstep builds. I don't think "echo -n" is portable
either. "printf" might be better, I'm not sure.
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
2009-12-12 20:24 Chong Yidong
@ 2009-12-12 21:40 ` Jan Djärv
2009-12-15 4:21 ` Stefan Monnier
1 sibling, 0 replies; 14+ messages in thread
From: Jan Djärv @ 2009-12-12 21:40 UTC (permalink / raw)
To: Chong Yidong, 5191; +Cc: Harald Maier
Chong Yidong skrev 2009-12-12 21.24:
> Does this patch fix it? Instead of passing ELCFILES on the command
> line, it saves it to a .elcfiles file, and the recursive Make includes
> that. (I am assuming the "-include" directive is supported, but we seem
> to use it in src/Makefile already anyhow.)
Note that in src/Makefile we only use it if we know we are using GNU Make.
Configure tests for GNU Make.
Jan D.
>
> *** emacs/lisp/Makefile.in.~1.215.~ 2009-12-09 09:21:04.000000000 -0500
> --- emacs/lisp/Makefile.in 2009-12-12 15:13:02.000000000 -0500
> ***************
> *** 211,216 ****
> --- 211,218 ----
>
> compile-first: $(COMPILE_FIRST)
>
> + -include $(lisp)/.elcfiles
> +
> # ELCFILES is set dynamically in the recursive call from `compile-main'.
> compile-elcfiles: $(ELCFILES)
>
> ***************
> *** 219,230 ****
> compile-main:
> @wd=$(lisp); $(setwins); \
> els=`echo "$$wins " | sed -e 's|/\./|/|g' -e 's|/\. | |g' -e 's| |/*.el |g'`; \
> for el in $$els; do \
> test -f $$el || continue; \
> test ! -f $${el}c&& GREP_OPTIONS= grep '^;.*no-byte-compile: t' $$el> /dev/null&& continue; \
> ! files="$$files $${el}c"; \
> done; \
> ! $(MAKE) $(MFLAGS) compile-elcfiles EMACS=$(EMACS) ELCFILES="$$files"
>
> # Erase left-over .elc files that do not have a corresponding .el file.
> compile-clean:
> --- 221,233 ----
> compile-main:
> @wd=$(lisp); $(setwins); \
> els=`echo "$$wins " | sed -e 's|/\./|/|g' -e 's|/\. | |g' -e 's| |/*.el |g'`; \
> + echo -n "ELCFILES="> $(lisp)/.elcfiles; \
> for el in $$els; do \
> test -f $$el || continue; \
> test ! -f $${el}c&& GREP_OPTIONS= grep '^;.*no-byte-compile: t' $$el> /dev/null&& continue; \
> ! echo -n "$${el}c ">> $(lisp)/.elcfiles; \
> done; \
> ! $(MAKE) $(MFLAGS) compile-elcfiles EMACS=$(EMACS)
>
> # Erase left-over .elc files that do not have a corresponding .el file.
> compile-clean:
>
>
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
2009-12-12 21:07 ` Glenn Morris
@ 2009-12-14 23:29 ` Chong Yidong
2009-12-15 0:28 ` Dan Nicolaescu
0 siblings, 1 reply; 14+ messages in thread
From: Chong Yidong @ 2009-12-14 23:29 UTC (permalink / raw)
To: Glenn Morris; +Cc: Harald Maier, 5191
Glenn Morris <rgm@gnu.org> writes:
> Chong Yidong wrote:
>
>> On second thought, I don't think this is a good idea. Looks like the
>> BSDs use ".sinclude" for silent inclusion, and older systems don't even
>> support that.
>
> I think you are right that include is not portable. It's currently
> only used in GNUstep builds. I don't think "echo -n" is portable
> either. "printf" might be better, I'm not sure.
Another idea: how about autogenerating the ELCFILES Makefile using
configure? Then Makefile.in could just have a line that says
ELCFILES=@elcfiles@
where @elcfiles@ is generated by configure.
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
2009-12-14 23:29 ` Chong Yidong
@ 2009-12-15 0:28 ` Dan Nicolaescu
2009-12-15 2:26 ` Chong Yidong
0 siblings, 1 reply; 14+ messages in thread
From: Dan Nicolaescu @ 2009-12-15 0:28 UTC (permalink / raw)
To: Chong Yidong; +Cc: Harald Maier, 5191
Chong Yidong <cyd@stupidchicken.com> writes:
> Glenn Morris <rgm@gnu.org> writes:
>
> > Chong Yidong wrote:
> >
> >> On second thought, I don't think this is a good idea. Looks like the
> >> BSDs use ".sinclude" for silent inclusion, and older systems don't even
> >> support that.
> >
> > I think you are right that include is not portable. It's currently
> > only used in GNUstep builds. I don't think "echo -n" is portable
> > either. "printf" might be better, I'm not sure.
>
> Another idea: how about autogenerating the ELCFILES Makefile using
> configure? Then Makefile.in could just have a line that says
>
> ELCFILES=@elcfiles@
>
> where @elcfiles@ is generated by configure.
Yet another idea: how about we require GNU make?
Other GNU projects require GNU make already, like GCC.
GNU make is widely available on all free systems, and even on
proprietary unixes, I've personally never seen a machine used for
software development that did not have GNU make.
We can float the idea in the 23.2 release, and make it mandatory a few
months after if we don't get significant pushback.
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
2009-12-15 0:28 ` Dan Nicolaescu
@ 2009-12-15 2:26 ` Chong Yidong
2009-12-15 3:11 ` Dan Nicolaescu
0 siblings, 1 reply; 14+ messages in thread
From: Chong Yidong @ 2009-12-15 2:26 UTC (permalink / raw)
To: Dan Nicolaescu; +Cc: Harald Maier, 5191
Dan Nicolaescu <dann@ics.uci.edu> writes:
> Yet another idea: how about we require GNU make? Other GNU projects
> require GNU make already, like GCC. GNU make is widely available on
> all free systems, and even on proprietary unixes, I've personally
> never seen a machine used for software development that did not have
> GNU make.
What about the BSDs? My impression is that they still use their own
Make version, no?
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
2009-12-15 2:26 ` Chong Yidong
@ 2009-12-15 3:11 ` Dan Nicolaescu
0 siblings, 0 replies; 14+ messages in thread
From: Dan Nicolaescu @ 2009-12-15 3:11 UTC (permalink / raw)
To: Chong Yidong; +Cc: Harald Maier, 5191
Chong Yidong <cyd@stupidchicken.com> writes:
> Dan Nicolaescu <dann@ics.uci.edu> writes:
>
> > Yet another idea: how about we require GNU make? Other GNU projects
> > require GNU make already, like GCC. GNU make is widely available on
> > all free systems, and even on proprietary unixes, I've personally
> > never seen a machine used for software development that did not have
> > GNU make.
>
> What about the BSDs? My impression is that they still use their own
> Make version, no?
They do, but GNU make is still readily available.
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
2009-12-12 20:24 Chong Yidong
2009-12-12 21:40 ` Jan Djärv
@ 2009-12-15 4:21 ` Stefan Monnier
2009-12-15 5:36 ` Eli Zaretskii
1 sibling, 1 reply; 14+ messages in thread
From: Stefan Monnier @ 2009-12-15 4:21 UTC (permalink / raw)
To: Chong Yidong; +Cc: Harald Maier, 5191
> + -include $(lisp)/.elcfiles
This is sadly not portable.
We could indeed put the list of elcfiles in a file, and then use
xargs make <.elcfiles
-- Stefan
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
2009-12-15 4:21 ` Stefan Monnier
@ 2009-12-15 5:36 ` Eli Zaretskii
2011-03-10 1:49 ` Glenn Morris
0 siblings, 1 reply; 14+ messages in thread
From: Eli Zaretskii @ 2009-12-15 5:36 UTC (permalink / raw)
To: Stefan Monnier, 5191; +Cc: cyd, Harald, 5191
> From: Stefan Monnier <monnier@IRO.UMontreal.CA>
> Date: Mon, 14 Dec 2009 23:21:23 -0500
> Cc: Harald Maier <Harald@Maierh.de>, 5191@emacsbugs.donarmstrong.com
> Reply-To: Stefan Monnier <monnier@IRO.UMontreal.CA>,
> 5191@emacsbugs.donarmstrong.com
>
> > + -include $(lisp)/.elcfiles
>
> This is sadly not portable.
> We could indeed put the list of elcfiles in a file, and then use
>
> xargs make <.elcfiles
If we eventually decide to go this way, please don't use a file name
that begins with a dot: apart of being disallowed on DOS filesystems,
such a file is hidden from `ls' and other commands, which in this case
does not seem to be justified, since this is a file generated by the
build.
^ permalink raw reply [flat|nested] 14+ messages in thread
* bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16
2009-12-15 5:36 ` Eli Zaretskii
@ 2011-03-10 1:49 ` Glenn Morris
0 siblings, 0 replies; 14+ messages in thread
From: Glenn Morris @ 2011-03-10 1:49 UTC (permalink / raw)
To: 5191-done
Version: 24.1
ELCFILES was removed, so this kind of thing won't happen in future.
^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2011-03-10 1:49 UTC | newest]
Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-12 10:28 bug#5191: 23.1.90; Make target compile-main fails under GNU/Linux Kernel 2.6.16 Harald Maier
2009-12-12 19:45 ` Glenn Morris
2009-12-12 19:50 ` Processed: " Emacs bug Tracking System
-- strict thread matches above, loose matches on Subject: below --
2009-12-12 20:24 Chong Yidong
2009-12-12 21:40 ` Jan Djärv
2009-12-15 4:21 ` Stefan Monnier
2009-12-15 5:36 ` Eli Zaretskii
2011-03-10 1:49 ` Glenn Morris
2009-12-12 21:00 Chong Yidong
2009-12-12 21:07 ` Glenn Morris
2009-12-14 23:29 ` Chong Yidong
2009-12-15 0:28 ` Dan Nicolaescu
2009-12-15 2:26 ` Chong Yidong
2009-12-15 3:11 ` Dan Nicolaescu
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.