unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
       [not found] ` <20210304184725.15B2320E1B@vcs0.savannah.gnu.org>
@ 2021-03-05 12:03   ` Basil L. Contovounesios
  2021-03-05 19:17     ` Glenn Morris
  0 siblings, 1 reply; 22+ messages in thread
From: Basil L. Contovounesios @ 2021-03-05 12:03 UTC (permalink / raw)
  To: Glenn Morris; +Cc: emacs-devel

rgm@gnu.org (Glenn Morris) writes:

> branch: master
> commit 9e945092674ac2a7db46fecae30587ec2ca7cb05
> Author: Glenn Morris <rgm@gnu.org>
> Commit: Glenn Morris <rgm@gnu.org>
>
>     Generate info/dir directly from any org sources

Sadly git-bisect points to this as breaking parallel
'make -j16 bootstrap':

  running /bin/bash -c make -j16 bootstrap || exit 1
  [...]
  config.status: creating src/emacs-module.h
  config.status: creating Makefile
  config.status: creating lib/gnulib.mk
  config.status: creating ./doc/man/emacs.1
  config.status: creating lib/Makefile
  config.status: creating lib-src/Makefile
  config.status: creating oldXMenu/Makefile
  config.status: creating doc/emacs/Makefile
  config.status: creating doc/misc/Makefile
  config.status: creating doc/lispintro/Makefile
  config.status: creating doc/lispref/Makefile
  config.status: creating src/Makefile
  config.status: creating lwlib/Makefile
  config.status: creating lisp/Makefile
  config.status: creating leim/Makefile
  config.status: creating nextstep/Makefile
  config.status: creating nt/Makefile
  config.status: creating test/Makefile
  config.status: creating admin/charsets/Makefile
  config.status: creating admin/unidata/Makefile
  config.status: creating admin/grammars/Makefile
  config.status: creating src/config.h
  config.status: executing src/epaths.h commands
  make[2]: Entering directory '/home/blc/.local/src/emacs'
  make[2]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
  Makefile:1031: *** multiple target patterns.  Stop.
  make[2]: Leaving directory '/home/blc/.local/src/emacs'
  config.status: error: 'src/epaths.h' could not be made.
  make[1]: *** [Makefile:446: force-Makefile] Error 2
  make[1]: Leaving directory '/home/blc/.local/src/emacs'
  make: *** [Makefile:1139: bootstrap] Error 2
  9e945092674ac2a7db46fecae30587ec2ca7cb05 is the first bad commit

Let me know if/how I can be of help with debugging/fixing this.

Thanks,

-- 
Basil



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-05 12:03   ` master 9e94509 3/3: Generate info/dir directly from any org sources Basil L. Contovounesios
@ 2021-03-05 19:17     ` Glenn Morris
  2021-03-06 11:51       ` Basil L. Contovounesios
  0 siblings, 1 reply; 22+ messages in thread
From: Glenn Morris @ 2021-03-05 19:17 UTC (permalink / raw)
  To: Basil L. Contovounesios; +Cc: emacs-devel

"Basil L. Contovounesios" wrote:

>   Makefile:1031: *** multiple target patterns.  Stop.

I would look at what:
  make --no-print-directory -s -C doc/misc echo-sources
outputs for you. Perhaps something with a colon?

As I said in bug#46837 help is needed in this general area.



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-05 19:17     ` Glenn Morris
@ 2021-03-06 11:51       ` Basil L. Contovounesios
  2021-03-06 13:49         ` Lars Ingebrigtsen
                           ` (2 more replies)
  0 siblings, 3 replies; 22+ messages in thread
From: Basil L. Contovounesios @ 2021-03-06 11:51 UTC (permalink / raw)
  To: Glenn Morris; +Cc: emacs-devel

[-- Attachment #1: Type: text/plain, Size: 2700 bytes --]

Glenn Morris <rgm@gnu.org> writes:

> "Basil L. Contovounesios" wrote:
>
>>   Makefile:1031: *** multiple target patterns.  Stop.
>
> I would look at what:
>   make --no-print-directory -s -C doc/misc echo-sources
> outputs for you. Perhaps something with a colon?

No, but $(info ${info_dir_deps}) does:

  config.status: executing src/epaths.h commands
  make[2]: Entering directory '/home/blc/.local/src/emacs'
  make[2]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
  ./build-aux/make-info-dir ./build-aux/dir_top ./doc/emacs/emacs.texi
  ./doc/lispintro/emacs-lisp-intro.texi ./doc/lispref/elisp.texi
  ./doc/misc/make[2]: ./doc/misc/Entering ./doc/misc/directory
  ./doc/misc/'/home/blc/.local/src/emacs' ./doc/misc/auth.texi
  ./doc/misc/autotype.texi ./doc/misc/bovine.texi ./doc/misc/calc.texi
  ./doc/misc/cc-mode.texi ./doc/misc/cl.texi ./doc/misc/dbus.texi
  ./doc/misc/dired-x.texi ./doc/misc/ebrowse.texi ./doc/misc/ede.texi
  ./doc/misc/ediff.texi ./doc/misc/edt.texi ./doc/misc/efaq.texi
  ./doc/misc/eieio.texi ./doc/misc/emacs-gnutls.texi
  ./doc/misc/emacs-mime.texi ./doc/misc/epa.texi ./doc/misc/erc.texi
  ./doc/misc/ert.texi ./doc/misc/eshell.texi ./doc/misc/eudc.texi
  ./doc/misc/eww.texi ./doc/misc/flymake.texi ./doc/misc/forms.texi
  ./doc/misc/gnus.texi ./doc/misc/htmlfontify.texi
  ./doc/misc/idlwave.texi ./doc/misc/ido.texi ./doc/misc/info.texi
  ./doc/misc/mairix-el.texi ./doc/misc/message.texi ./doc/misc/mh-e.texi
  ./doc/misc/modus-themes.org ./doc/misc/newsticker.texi
  ./doc/misc/nxml-mode.texi ./doc/misc/octave-mode.texi
  ./doc/misc/org.org ./doc/misc/pcl-cvs.texi ./doc/misc/pgg.texi
  ./doc/misc/rcirc.texi ./doc/misc/reftex.texi ./doc/misc/remember.texi
  ./doc/misc/sasl.texi ./doc/misc/sc.texi ./doc/misc/semantic.texi
  ./doc/misc/ses.texi ./doc/misc/sieve.texi ./doc/misc/smtpmail.texi
  ./doc/misc/speedbar.texi ./doc/misc/srecode.texi
  ./doc/misc/todo-mode.texi ./doc/misc/tramp.texi ./doc/misc/url.texi
  ./doc/misc/vhdl-mode.texi ./doc/misc/vip.texi ./doc/misc/viper.texi
  ./doc/misc/widget.texi ./doc/misc/wisent.texi ./doc/misc/woman.texi
  ./doc/misc/make[2]: ./doc/misc/Leaving ./doc/misc/directory
  ./doc/misc/'/home/blc/.local/src/emacs/doc/misc'
  make[2]: warning: jobserver unavailable: using -j1.  Add '+' to parent make rule.
  Makefile:1034: *** multiple target patterns.  Stop.
  make[2]: Leaving directory '/home/blc/.local/src/emacs'
  config.status: error: 'src/epaths.h' could not be made.
  make[1]: *** [Makefile:446: force-Makefile] Error 2
  make[1]: Leaving directory '/home/blc/.local/src/emacs'
  make: *** [Makefile:1142: bootstrap] Error 2

The following seems to work around it.  WDYT?


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Fix-Makefile-subshell-output-when-run-in-parallel.patch --]
[-- Type: text/x-diff, Size: 939 bytes --]

From 7025b840306950f6e934bb970afe51c916786fb8 Mon Sep 17 00:00:00 2001
From: "Basil L. Contovounesios" <contovob@tcd.ie>
Date: Sat, 6 Mar 2021 11:40:48 +0000
Subject: [PATCH] Fix Makefile subshell output when run in parallel

For discussion, see the following thread:
https://lists.gnu.org/r/emacs-devel/2021-03/msg00255.html

* Makefile.in (texi_misc): Avoid interspersing parallel Make output
with that from subshell.
---
 Makefile.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Makefile.in b/Makefile.in
index 856c29a453..0e16145c0a 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1008,7 +1008,7 @@ misc-dvi misc-html misc-pdf misc-ps:
 
 info-dir: ${srcdir}/info/dir
 
-texi_misc = $(shell ${MAKE} --no-print-directory -s -C doc/misc echo-sources)
+texi_misc = $(shell ${MAKE} --no-print-directory -O -s -C doc/misc echo-sources)
 
 srcdir_doc_info_dir_inputs = \
   ${srcdir}/doc/emacs/emacs.texi \
-- 
2.30.1


[-- Attachment #3: Type: text/plain, Size: 20 bytes --]


Thanks,

-- 
Basil

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 11:51       ` Basil L. Contovounesios
@ 2021-03-06 13:49         ` Lars Ingebrigtsen
  2021-03-06 14:09           ` Basil L. Contovounesios
  2021-03-06 14:16         ` Mattias Engdegård
  2021-03-06 17:28         ` Glenn Morris
  2 siblings, 1 reply; 22+ messages in thread
From: Lars Ingebrigtsen @ 2021-03-06 13:49 UTC (permalink / raw)
  To: Basil L. Contovounesios; +Cc: Glenn Morris, emacs-devel

"Basil L. Contovounesios" <contovob@tcd.ie> writes:

> The following seems to work around it.  WDYT?

This fixes the build problem here, too.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 13:49         ` Lars Ingebrigtsen
@ 2021-03-06 14:09           ` Basil L. Contovounesios
  0 siblings, 0 replies; 22+ messages in thread
From: Basil L. Contovounesios @ 2021-03-06 14:09 UTC (permalink / raw)
  To: Lars Ingebrigtsen; +Cc: Glenn Morris, emacs-devel

Lars Ingebrigtsen <larsi@gnus.org> writes:

> "Basil L. Contovounesios" <contovob@tcd.ie> writes:
>
>> The following seems to work around it.  WDYT?
>
> This fixes the build problem here, too.

Thanks for confirming, pushed.

Fix Makefile subshell output when run in parallel
117505454c 2021-03-06 14:08:27 +0000
https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=117505454ce04c0c0ce2c2b4058823cf764fc2eb

-- 
Basil



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 11:51       ` Basil L. Contovounesios
  2021-03-06 13:49         ` Lars Ingebrigtsen
@ 2021-03-06 14:16         ` Mattias Engdegård
  2021-03-06 14:51           ` Eli Zaretskii
  2021-03-06 17:28         ` Glenn Morris
  2 siblings, 1 reply; 22+ messages in thread
From: Mattias Engdegård @ 2021-03-06 14:16 UTC (permalink / raw)
  To: Basil L. Contovounesios; +Cc: Glenn Morris, emacs-devel

6 mars 2021 kl. 12.51 skrev Basil L. Contovounesios <contovob@tcd.ie>:

> -texi_misc = $(shell ${MAKE} --no-print-directory -s -C doc/misc echo-sources)
> +texi_misc = $(shell ${MAKE} --no-print-directory -O -s -C doc/misc echo-sources)

Maybe configure should check for the required GNU Make version then? (Om macOS, the system standard is 3.81, which worked until this change.)




^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 14:16         ` Mattias Engdegård
@ 2021-03-06 14:51           ` Eli Zaretskii
  2021-03-06 15:31             ` Basil L. Contovounesios
  0 siblings, 1 reply; 22+ messages in thread
From: Eli Zaretskii @ 2021-03-06 14:51 UTC (permalink / raw)
  To: Mattias Engdegård; +Cc: contovob, rgm, emacs-devel

> From: Mattias Engdegård <mattiase@acm.org>
> Date: Sat, 6 Mar 2021 15:16:21 +0100
> Cc: Glenn Morris <rgm@gnu.org>, emacs-devel@gnu.org
> 
> 6 mars 2021 kl. 12.51 skrev Basil L. Contovounesios <contovob@tcd.ie>:
> 
> > -texi_misc = $(shell ${MAKE} --no-print-directory -s -C doc/misc echo-sources)
> > +texi_misc = $(shell ${MAKE} --no-print-directory -O -s -C doc/misc echo-sources)
> 
> Maybe configure should check for the required GNU Make version then? (Om macOS, the system standard is 3.81, which worked until this change.)

Indeed, it broke my builds as well.  So I reverted the change for now,
until we find a gentler one.  I don't want us to depend on a Make
version that is too recent.



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 14:51           ` Eli Zaretskii
@ 2021-03-06 15:31             ` Basil L. Contovounesios
  2021-03-06 15:51               ` Eli Zaretskii
  2021-03-06 17:23               ` Andreas Schwab
  0 siblings, 2 replies; 22+ messages in thread
From: Basil L. Contovounesios @ 2021-03-06 15:31 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: Mattias Engdegård, emacs-devel, rgm

[-- Attachment #1: Type: text/plain, Size: 877 bytes --]

Eli Zaretskii <eliz@gnu.org> writes:

>> From: Mattias Engdegård <mattiase@acm.org>
>> Date: Sat, 6 Mar 2021 15:16:21 +0100
>> Cc: Glenn Morris <rgm@gnu.org>, emacs-devel@gnu.org
>> 
>> 6 mars 2021 kl. 12.51 skrev Basil L. Contovounesios <contovob@tcd.ie>:
>> 
>> > -texi_misc = $(shell ${MAKE} --no-print-directory -s -C doc/misc echo-sources)
>> > +texi_misc = $(shell ${MAKE} --no-print-directory -O -s -C doc/misc echo-sources)
>> 
>> Maybe configure should check for the required GNU Make version then?
>> (Om macOS, the system standard is 3.81, which worked until this
>> change.)
>
> Indeed, it broke my builds as well.  So I reverted the change for now,
> until we find a gentler one.  I don't want us to depend on a Make
> version that is too recent.

I'm sorry about the breakage.

How's the following (hopefully gentler) workaround instead?


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Try-another-fix-for-parallel-Make-subshell-output.patch --]
[-- Type: text/x-diff, Size: 1467 bytes --]

From 6a9fe04962ee4b092df6b09e99a3aa422e080c0a Mon Sep 17 00:00:00 2001
From: "Basil L. Contovounesios" <contovob@tcd.ie>
Date: Sat, 6 Mar 2021 15:24:33 +0000
Subject: [PATCH] Try another fix for parallel Make subshell output

For discussion, see the following thread:
https://lists.gnu.org/r/emacs-devel/2021-03/msg00255.html

* Makefile.in (srcdir_doc_info_dir_inputs): Discard interspersed
parallel Make output from texi_misc.
---
 Makefile.in | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/Makefile.in b/Makefile.in
index 856c29a453..fc5381bc3e 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1008,13 +1008,17 @@ misc-dvi misc-html misc-pdf misc-ps:
 
 info-dir: ${srcdir}/info/dir
 
+# FIXME: This subshell output can be interspersed with parallel Make
+# output.  The current workaround is to filter only words that look
+# like the file names we expect.  An alternative workaround is to pass
+# the -O option, but that is not supported by older Make versions.
 texi_misc = $(shell ${MAKE} --no-print-directory -s -C doc/misc echo-sources)
 
 srcdir_doc_info_dir_inputs = \
   ${srcdir}/doc/emacs/emacs.texi \
   ${srcdir}/doc/lispintro/emacs-lisp-intro.texi \
   ${srcdir}/doc/lispref/elisp.texi \
-  $(addprefix ${srcdir}/doc/misc/,${texi_misc})
+  $(addprefix ${srcdir}/doc/misc/,$(filter %.texi %.org,${texi_misc}))
 info_dir_inputs = \
   ../build-aux/dir_top \
   $(subst ${srcdir}/doc/,,${srcdir_doc_info_dir_inputs})
-- 
2.30.1


[-- Attachment #3: Type: text/plain, Size: 20 bytes --]


Thanks,

-- 
Basil

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 15:31             ` Basil L. Contovounesios
@ 2021-03-06 15:51               ` Eli Zaretskii
  2021-03-06 17:21                 ` Basil L. Contovounesios
  2021-03-06 17:23               ` Andreas Schwab
  1 sibling, 1 reply; 22+ messages in thread
From: Eli Zaretskii @ 2021-03-06 15:51 UTC (permalink / raw)
  To: Basil L. Contovounesios; +Cc: mattiase, emacs-devel, rgm

> From: "Basil L. Contovounesios" <contovob@tcd.ie>
> Cc: Mattias Engdegård <mattiase@acm.org>,  rgm@gnu.org,
>   emacs-devel@gnu.org
> Date: Sat, 06 Mar 2021 15:31:58 +0000
> 
>  texi_misc = $(shell ${MAKE} --no-print-directory -s -C doc/misc echo-sources)
>  
>  srcdir_doc_info_dir_inputs = \
>    ${srcdir}/doc/emacs/emacs.texi \
>    ${srcdir}/doc/lispintro/emacs-lisp-intro.texi \
>    ${srcdir}/doc/lispref/elisp.texi \
> -  $(addprefix ${srcdir}/doc/misc/,${texi_misc})
> +  $(addprefix ${srcdir}/doc/misc/,$(filter %.texi %.org,${texi_misc}))

This only works if the other output is interspersed "at word level",
i.e. you don't have characters from one Make mixed up with those of
another inside a single word.  Right?

Why do we need to use $(shell) at all?  Can't we use $(wildcard) to
the same effect without starting another process?  If the problem is
that some *.texi files are generated, and we don't want them in the
list, how about generating them in a subdirectory of doc/misc/?



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 15:51               ` Eli Zaretskii
@ 2021-03-06 17:21                 ` Basil L. Contovounesios
  0 siblings, 0 replies; 22+ messages in thread
From: Basil L. Contovounesios @ 2021-03-06 17:21 UTC (permalink / raw)
  To: Eli Zaretskii; +Cc: mattiase, emacs-devel, rgm

Eli Zaretskii <eliz@gnu.org> writes:

>> From: "Basil L. Contovounesios" <contovob@tcd.ie>
>> Cc: Mattias Engdegård <mattiase@acm.org>,  rgm@gnu.org,
>>   emacs-devel@gnu.org
>> Date: Sat, 06 Mar 2021 15:31:58 +0000
>> 
>>  texi_misc = $(shell ${MAKE} --no-print-directory -s -C doc/misc echo-sources)
>>  
>>  srcdir_doc_info_dir_inputs = \
>>    ${srcdir}/doc/emacs/emacs.texi \
>>    ${srcdir}/doc/lispintro/emacs-lisp-intro.texi \
>>    ${srcdir}/doc/lispref/elisp.texi \
>> -  $(addprefix ${srcdir}/doc/misc/,${texi_misc})
>> +  $(addprefix ${srcdir}/doc/misc/,$(filter %.texi %.org,${texi_misc}))
>
> This only works if the other output is interspersed "at word level",
> i.e. you don't have characters from one Make mixed up with those of
> another inside a single word.  Right?

Right.  (Though in practice it WFM™.)

> Why do we need to use $(shell) at all?

Ideally we shouldn't.  Even capturing the output of a sub-make recipe
e.g. with $(eval ...) would be better, since that would play better with
the jobserver.

> Can't we use $(wildcard) to
> the same effect without starting another process?  If the problem is
> that some *.texi files are generated, and we don't want them in the
> list, how about generating them in a subdirectory of doc/misc/?

Either sounds fine to me, but I don't understand well enough Glenn's
changes or how these recipes should work to be of much help with that.

Thanks,

-- 
Basil



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 15:31             ` Basil L. Contovounesios
  2021-03-06 15:51               ` Eli Zaretskii
@ 2021-03-06 17:23               ` Andreas Schwab
  2021-03-06 17:37                 ` Basil L. Contovounesios
  1 sibling, 1 reply; 22+ messages in thread
From: Andreas Schwab @ 2021-03-06 17:23 UTC (permalink / raw)
  To: Basil L. Contovounesios
  Cc: Mattias Engdegård, Eli Zaretskii, rgm, emacs-devel

On Mär 06 2021, Basil L. Contovounesios wrote:

> diff --git a/Makefile.in b/Makefile.in
> index 856c29a453..fc5381bc3e 100644
> --- a/Makefile.in
> +++ b/Makefile.in
> @@ -1008,13 +1008,17 @@ misc-dvi misc-html misc-pdf misc-ps:
>  
>  info-dir: ${srcdir}/info/dir
>  
> +# FIXME: This subshell output can be interspersed with parallel Make
> +# output.  The current workaround is to filter only words that look
> +# like the file names we expect.  An alternative workaround is to pass
> +# the -O option, but that is not supported by older Make versions.
>  texi_misc = $(shell ${MAKE} --no-print-directory -s -C doc/misc echo-sources)

Does it help to add -j1?

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 11:51       ` Basil L. Contovounesios
  2021-03-06 13:49         ` Lars Ingebrigtsen
  2021-03-06 14:16         ` Mattias Engdegård
@ 2021-03-06 17:28         ` Glenn Morris
  2021-03-06 17:41           ` Basil L. Contovounesios
  2 siblings, 1 reply; 22+ messages in thread
From: Glenn Morris @ 2021-03-06 17:28 UTC (permalink / raw)
  To: Basil L. Contovounesios; +Cc: emacs-devel

"Basil L. Contovounesios" wrote:

>   ./build-aux/make-info-dir ./build-aux/dir_top ./doc/emacs/emacs.texi
>   ./doc/lispintro/emacs-lisp-intro.texi ./doc/lispref/elisp.texi
>   ./doc/misc/make[2]: ./doc/misc/Entering ./doc/misc/directory
>   ./doc/misc/'/home/blc/.local/src/emacs' ./doc/misc/auth.texi

So there's a:

   make[2]: Entering directory '/home/blc/.local/src/emacs'

in there? I did not know that $(shell ...) could get polluted in this way.

Does using ':=' for the assignment of texi_misc help? Ie

  texi_misc := $(shell ...)



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 17:23               ` Andreas Schwab
@ 2021-03-06 17:37                 ` Basil L. Contovounesios
  2021-03-06 18:10                   ` Andreas Schwab
  0 siblings, 1 reply; 22+ messages in thread
From: Basil L. Contovounesios @ 2021-03-06 17:37 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Mattias Engdegård, Eli Zaretskii, rgm, emacs-devel

Andreas Schwab <schwab@linux-m68k.org> writes:

> On Mär 06 2021, Basil L. Contovounesios wrote:
>
>> diff --git a/Makefile.in b/Makefile.in
>> index 856c29a453..fc5381bc3e 100644
>> --- a/Makefile.in
>> +++ b/Makefile.in
>> @@ -1008,13 +1008,17 @@ misc-dvi misc-html misc-pdf misc-ps:
>>  
>>  info-dir: ${srcdir}/info/dir
>>  
>> +# FIXME: This subshell output can be interspersed with parallel Make
>> +# output.  The current workaround is to filter only words that look
>> +# like the file names we expect.  An alternative workaround is to pass
>> +# the -O option, but that is not supported by older Make versions.
>>  texi_misc = $(shell ${MAKE} --no-print-directory -s -C doc/misc echo-sources)
>
> Does it help to add -j1?

To this shell command?  Sadly no, because I think the interspersed
output is coming from the parent jobs, not the subshell.

  texi_misc = $(shell ${MAKE} --no-print-directory -j1 -s -C doc/misc echo-sources)
  $(info ${texi_misc})

gives the following output with 'make -j16 bootstrap':

  config.status: executing src/epaths.h commands
  make[2]: Entering directory '/home/blc/.local/src/emacs'
  make[2]: warning: -j1 forced in submake: resetting jobserver mode.
  make[2]: Entering directory '/home/blc/.local/src/emacs' auth.texi
  autotype.texi bovine.texi calc.texi cc-mode.texi cl.texi dbus.texi
  dired-x.texi ebrowse.texi ede.texi ediff.texi edt.texi efaq.texi
  eieio.texi emacs-gnutls.texi emacs-mime.texi epa.texi erc.texi
  ert.texi eshell.texi eudc.texi eww.texi flymake.texi forms.texi
  gnus.texi htmlfontify.texi idlwave.texi ido.texi info.texi
  mairix-el.texi message.texi mh-e.texi modus-themes.org newsticker.texi
  nxml-mode.texi octave-mode.texi org.org pcl-cvs.texi pgg.texi
  rcirc.texi reftex.texi remember.texi sasl.texi sc.texi semantic.texi
  ses.texi sieve.texi smtpmail.texi speedbar.texi srecode.texi
  todo-mode.texi tramp.texi url.texi vhdl-mode.texi vip.texi viper.texi
  widget.texi wisent.texi woman.texi make[2]: Leaving directory
  '/home/blc/.local/src/emacs/doc/misc'
  make[2]: warning: -j1 forced in submake: resetting jobserver mode.
  Makefile:1033: *** multiple target patterns.  Stop.
  make[2]: Leaving directory '/home/blc/.local/src/emacs'
  config.status: error: 'src/epaths.h' could not be made.
  make[1]: *** [Makefile:446: force-Makefile] Error 2
  make[1]: Leaving directory '/home/blc/.local/src/emacs'
  make: *** [Makefile:1141: bootstrap] Error 2

-- 
Basil



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 17:28         ` Glenn Morris
@ 2021-03-06 17:41           ` Basil L. Contovounesios
  2021-03-06 17:47             ` Glenn Morris
  0 siblings, 1 reply; 22+ messages in thread
From: Basil L. Contovounesios @ 2021-03-06 17:41 UTC (permalink / raw)
  To: Glenn Morris; +Cc: emacs-devel

Glenn Morris <rgm@gnu.org> writes:

> Does using ':=' for the assignment of texi_misc help? Ie
>
>   texi_misc := $(shell ...)

Already tried that, but no dice :(.

-- 
Basil



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 17:41           ` Basil L. Contovounesios
@ 2021-03-06 17:47             ` Glenn Morris
  2021-03-06 19:12               ` Glenn Morris
  0 siblings, 1 reply; 22+ messages in thread
From: Glenn Morris @ 2021-03-06 17:47 UTC (permalink / raw)
  To: Basil L. Contovounesios; +Cc: emacs-devel


I'll ask the help-make list...




^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 17:37                 ` Basil L. Contovounesios
@ 2021-03-06 18:10                   ` Andreas Schwab
  2021-03-06 18:34                     ` Basil L. Contovounesios
  0 siblings, 1 reply; 22+ messages in thread
From: Andreas Schwab @ 2021-03-06 18:10 UTC (permalink / raw)
  To: Basil L. Contovounesios
  Cc: Mattias Engdegård, Eli Zaretskii, rgm, emacs-devel

On Mär 06 2021, Basil L. Contovounesios wrote:

> To this shell command?  Sadly no, because I think the interspersed
> output is coming from the parent jobs, not the subshell.

But how can that output then be captured by the subshell?

Andreas.

-- 
Andreas Schwab, schwab@linux-m68k.org
GPG Key fingerprint = 7578 EB47 D4E5 4D69 2510  2552 DF73 E780 A9DA AEC1
"And now for something completely different."



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 18:10                   ` Andreas Schwab
@ 2021-03-06 18:34                     ` Basil L. Contovounesios
  0 siblings, 0 replies; 22+ messages in thread
From: Basil L. Contovounesios @ 2021-03-06 18:34 UTC (permalink / raw)
  To: Andreas Schwab; +Cc: Mattias Engdegård, Eli Zaretskii, rgm, emacs-devel

Andreas Schwab <schwab@linux-m68k.org> writes:

> On Mär 06 2021, Basil L. Contovounesios wrote:
>
>> To this shell command?  Sadly no, because I think the interspersed
>> output is coming from the parent jobs, not the subshell.
>
> But how can that output then be captured by the subshell?

Beats me, maybe a bug in Make?

-- 
Basil



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 17:47             ` Glenn Morris
@ 2021-03-06 19:12               ` Glenn Morris
  2021-03-06 20:15                 ` Basil L. Contovounesios
  2021-03-06 20:40                 ` Eli Zaretskii
  0 siblings, 2 replies; 22+ messages in thread
From: Glenn Morris @ 2021-03-06 19:12 UTC (permalink / raw)
  To: Basil L. Contovounesios; +Cc: emacs-devel

Glenn Morris wrote:

> I'll ask the help-make list...

They suggested something, I applied it in f476e282d2.
Based on what you said previously about -j1, I'm not sure it will make a
difference for you.

(BTW, FWIW I've never seen this problem myself with my usual make -j8,
with make 4.2.1.)




^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 19:12               ` Glenn Morris
@ 2021-03-06 20:15                 ` Basil L. Contovounesios
  2022-01-05 16:58                   ` Philipp Stephani
  2021-03-06 20:40                 ` Eli Zaretskii
  1 sibling, 1 reply; 22+ messages in thread
From: Basil L. Contovounesios @ 2021-03-06 20:15 UTC (permalink / raw)
  To: Glenn Morris; +Cc: emacs-devel

Glenn Morris <rgm@gnu.org> writes:

> Glenn Morris wrote:
>
>> I'll ask the help-make list...
>
> They suggested something, I applied it in f476e282d2.
> Based on what you said previously about -j1, I'm not sure it will make a
> difference for you.

And yet it works fine with -j8 and -j16 here, thanks!

> (BTW, FWIW I've never seen this problem myself with my usual make -j8,
> with make 4.2.1.)

GNU Make 4.3 here, and I usually alternate between -j8 and -j16
depending on how responsive I want other programs to be.

-- 
Basil



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 19:12               ` Glenn Morris
  2021-03-06 20:15                 ` Basil L. Contovounesios
@ 2021-03-06 20:40                 ` Eli Zaretskii
  1 sibling, 0 replies; 22+ messages in thread
From: Eli Zaretskii @ 2021-03-06 20:40 UTC (permalink / raw)
  To: Glenn Morris; +Cc: contovob, emacs-devel

> From: Glenn Morris <rgm@gnu.org>
> Date: Sat, 06 Mar 2021 14:12:55 -0500
> Cc: emacs-devel@gnu.org
> 
> Glenn Morris wrote:
> 
> > I'll ask the help-make list...
> 
> They suggested something, I applied it in f476e282d2.
> Based on what you said previously about -j1, I'm not sure it will make a
> difference for you.

WFM, although I didn't have the original problem that Basil did.

Thanks.



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2021-03-06 20:15                 ` Basil L. Contovounesios
@ 2022-01-05 16:58                   ` Philipp Stephani
  2022-01-05 17:09                     ` Eli Zaretskii
  0 siblings, 1 reply; 22+ messages in thread
From: Philipp Stephani @ 2022-01-05 16:58 UTC (permalink / raw)
  To: Basil L. Contovounesios; +Cc: Glenn Morris, Emacs developers

Am Sa., 6. März 2021 um 21:16 Uhr schrieb Basil L. Contovounesios
<contovob@tcd.ie>:
>
> Glenn Morris <rgm@gnu.org> writes:
>
> > Glenn Morris wrote:
> >
> >> I'll ask the help-make list...
> >
> > They suggested something, I applied it in f476e282d2.
> > Based on what you said previously about -j1, I'm not sure it will make a
> > difference for you.
>
> And yet it works fine with -j8 and -j16 here, thanks!
>

The "multiple target patterns" issue still occasionally happens for me
(on the emacs-28 branch) even with f476e282d2. It's very difficult to
reproduce and only seems to happen occasionally with 'make
bootstrap-clean' under specific circumstances. Does anybody have a
recipe for a more robust fix? Maybe "export MAKEFLAGS=-O" before
running anything else?



^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: master 9e94509 3/3: Generate info/dir directly from any org sources
  2022-01-05 16:58                   ` Philipp Stephani
@ 2022-01-05 17:09                     ` Eli Zaretskii
  0 siblings, 0 replies; 22+ messages in thread
From: Eli Zaretskii @ 2022-01-05 17:09 UTC (permalink / raw)
  To: Philipp Stephani; +Cc: contovob, rgm, emacs-devel

> From: Philipp Stephani <p.stephani2@gmail.com>
> Date: Wed, 5 Jan 2022 17:58:47 +0100
> Cc: Glenn Morris <rgm@gnu.org>, Emacs developers <emacs-devel@gnu.org>
> 
> Am Sa., 6. März 2021 um 21:16 Uhr schrieb Basil L. Contovounesios
> <contovob@tcd.ie>:
> >
> > Glenn Morris <rgm@gnu.org> writes:
> >
> > > Glenn Morris wrote:
> > >
> > >> I'll ask the help-make list...
> > >
> > > They suggested something, I applied it in f476e282d2.
> > > Based on what you said previously about -j1, I'm not sure it will make a
> > > difference for you.
> >
> > And yet it works fine with -j8 and -j16 here, thanks!
> >
> 
> The "multiple target patterns" issue still occasionally happens for me
> (on the emacs-28 branch) even with f476e282d2. It's very difficult to
> reproduce and only seems to happen occasionally with 'make
> bootstrap-clean' under specific circumstances. Does anybody have a
> recipe for a more robust fix? Maybe "export MAKEFLAGS=-O" before
> running anything else?

As mentioned back then, using -O is a non-starter.



^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2022-01-05 17:09 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20210304184723.8249.29253@vcs0.savannah.gnu.org>
     [not found] ` <20210304184725.15B2320E1B@vcs0.savannah.gnu.org>
2021-03-05 12:03   ` master 9e94509 3/3: Generate info/dir directly from any org sources Basil L. Contovounesios
2021-03-05 19:17     ` Glenn Morris
2021-03-06 11:51       ` Basil L. Contovounesios
2021-03-06 13:49         ` Lars Ingebrigtsen
2021-03-06 14:09           ` Basil L. Contovounesios
2021-03-06 14:16         ` Mattias Engdegård
2021-03-06 14:51           ` Eli Zaretskii
2021-03-06 15:31             ` Basil L. Contovounesios
2021-03-06 15:51               ` Eli Zaretskii
2021-03-06 17:21                 ` Basil L. Contovounesios
2021-03-06 17:23               ` Andreas Schwab
2021-03-06 17:37                 ` Basil L. Contovounesios
2021-03-06 18:10                   ` Andreas Schwab
2021-03-06 18:34                     ` Basil L. Contovounesios
2021-03-06 17:28         ` Glenn Morris
2021-03-06 17:41           ` Basil L. Contovounesios
2021-03-06 17:47             ` Glenn Morris
2021-03-06 19:12               ` Glenn Morris
2021-03-06 20:15                 ` Basil L. Contovounesios
2022-01-05 16:58                   ` Philipp Stephani
2022-01-05 17:09                     ` Eli Zaretskii
2021-03-06 20:40                 ` Eli Zaretskii

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).