[bug #52330] make check fails in functions/file because of translated messages

2017-11-02 Thread Simon Sobisch
URL:
  

 Summary: make check fails in functions/file because of
translated messages
 Project: make
Submitted by: mensch
Submitted on: Thu 02 Nov 2017 10:12:53 AM CET
Severity: 3 - Normal
  Item Group: Build/Install
  Status: None
 Privacy: Public
 Assigned to: None
 Open/Closed: Open
 Discussion Lock: Any
   Component Version: 4.2.1
Operating System: None
   Fixed Release: None
   Triage Status: None

___

Details:

`make check -j4` failed in one point:

~~~
*** work/functions/file.base.4  Thu Nov  2 09:59:41 2017
--- work/functions/file.log.4   Thu Nov  2 09:59:41 2017
***
*** 1 
! work/functions/file.mk.4:6: *** open: file.out: Keine Berechtigung.  Stop.
--- 1 
! work/functions/file.mk.4:6: *** open: file.out: Permission denied.  Stop.
~~~

`LANG=C make check -j4` passes




___

Reply to this item at:

  

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
Bug-make mailing list
Bug-make@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-make


undefined reference to `__alloca'

2017-11-02 Thread Earnestly
Hi,

For reference my system has the following versions and environs:

* gcc 7.2.0
* glibc 2.26.9000 (commit 2fac6a6cd5)
* make 4.2.90 (commit baa57d2) [patched, see below]

* CPPFLAGS -D_FORTIFY_SOURCE=2
* CFLAGS -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong 
-fno-plt
* LDFLAGS -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now

For awhile now I've been having an issue when building make from master
(currently 0c5a9f9) which results in the following error:

...
gcc -isystem /usr/include/guile/2.2 -pthread -Wall -Wextra -Werror 
-Wwrite-strings -Wshadow -Wpointer-arith -Wdeclaration-after-statement 
-Wbad-function-cast -Wformat-security -Wtype-limits -Wunused-but-set-parameter 
-Wlogical-op -Wignored-qualifiers -Wformat-signedness -Wduplicated-cond 
-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong -fno-plt 
-Wl,--export-dynamic -Wl,-O1,--sort-common,--as-needed,-z,relro,-z,now -o make 
ar.o arscan.o commands.o default.o dir.o expand.o file.o function.o getopt.o 
getopt1.o guile.o implicit.o job.o load.o loadapi.o main.o misc.o posixos.o 
output.o read.o remake.o rule.o signame.o strcache.o variable.o version.o 
vpath.o hash.o remote-stub.o glob/libglob.a -lguile-2.2 -lgc   -ldl
glob/libglob.a(glob.o): In function `glob_in_dir':
glob.c:(.text+0x2d4): undefined reference to `__alloca'
glob.c:(.text+0x450): undefined reference to `__alloca'
glob.c:(.text+0x609): undefined reference to `__alloca'
glob.c:(.text+0x66a): undefined reference to `__alloca'
glob/libglob.a(glob.o): In function `glob':
glob.c:(.text+0x985): undefined reference to `__alloca'
glob/libglob.a(glob.o):glob.c:(.text+0x103c): more undefined references to 
`__alloca' follow
collect2: error: ld returned 1 exit status

I've worked around this with a quick diff but I'm unsure why this is
necessary or if it breaks any other platforms so I'm not creating it as
a patch:

diff --git a/glob/glob.c b/glob/glob.c
index f3911bc..e4d551e 100644
--- a/glob/glob.c
+++ b/glob/glob.c
@@ -208,8 +208,6 @@ my_realloc (p, n)
 #endif /* __GNU_LIBRARY__ || __DJGPP__ */


-#if !defined __alloca && !defined __GNU_LIBRARY__
-
 # ifdef__GNUC__
 #  undef alloca
 #  define alloca(n)__builtin_alloca (n)
@@ -229,8 +227,6 @@ extern char *alloca ();

 # define __alloca  alloca

-#endif
-
 #ifndef __GNU_LIBRARY__
 # define __stat stat
 # ifdef STAT_MACROS_BROKEN

Thanks

___
Bug-make mailing list
Bug-make@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-make


output-sync test failure

2017-11-02 Thread Earnestly
Hi,

Commit 0c5a9f9b92af1634dc60fa21e9ac86ed50e5d595 has caused the
output-sync test to fail with the following diff:

*** work/features/output-sync.base.2Thu Nov  2 11:19:14 2017
--- work/features/output-sync.log.2 Thu Nov  2 11:18:45 2017
***
*** 2,8 
  sleep 1 ; /home/earnest/build/pkgbuilds/make-git/src/make/tests/../make 
-C bar
  bar: start
  bar: end
- foo: start
- foo: end
- baz: start
- baz: end
--- 2,4 

Reverting the following change allows the test to pass:

* tests/scripts/features/output-sync: Remove useless rm command.

diff --git a/tests/scripts/features/output-sync 
b/tests/scripts/features/output-sync
index 1407e81..0ecc919 100644
--- a/tests/scripts/features/output-sync
+++ b/tests/scripts/features/output-sync
@@ -45,7 +45,7 @@ sub output_sync_clean {
 # reliable.  If things are too fast, then sometimes a different job will 
steal
 # the output sync lock and the output is mis-ordered from what we expect.
 sub output_sync_wait {
-return "while [ ! -f ../mksync.$_[0] ]; do :; done; $CMD_rmfile 
../mksync.$_[0].wait; $sleep_command 1";
+return "while [ ! -f ../mksync.$_[0] ]; do :; done; $sleep_command 1";
 }
 sub output_sync_set {
 return "date > ../mksync.$_[0]"

Is this a genuine test failure or was this unintended?

Thanks

___
Bug-make mailing list
Bug-make@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-make


[bug #28456] Expansion of $$< is incorrect

2017-11-02 Thread Robert Bogomip
Follow-up Comment #6, bug #28456 (project make):

The handling of *$<* under *SECONDEXPANSION* seems well broken as of 4.2.1.

With an implicit rule:


$ cat Makefile
.SECONDEXPANSION:
%.2: %.1 $$(info [$$<] [$$@]) ; : $@ Success

$ ls
foo.1 Makefile

$ make foo.2
[foo.2] [foo.2]
: foo.2 Success


Notice that $< expands to the target rather than a pre-requisite (!).

The situation for explicit rules is arguably worse:


$ cat Makefile
.SECONDEXPANSION:
foo.2: %.2: %.1 $$(info [$$<] [$$@]) ; : $@ Success

$ ls
foo.1 Makefile

$ make foo.2
[] [foo.2]
: foo.2 Success


$< is now empty. Can't find any syntax to change this.

Current cygwin make BTW


$ make --version
GNU Make 4.2.1
Built for x86_64-unknown-cygwin
Copyright (C) 1988-2016 Free Software Foundation, Inc.


___

Reply to this item at:

  

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
Bug-make mailing list
Bug-make@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-make


Re: Regression caused by Commit: 5bd7ad2b225b ("Preserve the real value of -jN in MAKEFLAGS using jobserver.")

2017-11-02 Thread NeilBrown
On Wed, Nov 01 2017, NeilBrown wrote:

> On Tue, Oct 31 2017, Paul Smith wrote:
>
>> On Thu, 2017-09-28 at 20:41 +1000, NeilBrown wrote:
>>> I dug into this a bit.
>>> The regression is caused because the 'j' flag now causes
>>> arg_job_slots to be set, rather than setting job_slots directly.
>>
>> I pushed a fix for this.
>
> Thanks.  Your fix appear to work as expected for my use-case.
>
> NeilBrown

Actually...
A few times when building the linux kernel I've received the message

make[1]: warning: jobserver unavailable: using -j1.  Add '+' to parent make 
rule.

This isn't consistent so it is presumably only when some particular
target needs building. If I make a clean start, I always get the
message.
It seems to throw the whole build into -j1 mode.
In this case I pass '-j8' on the command line.

Any idea what could be causing this?

Thanks,
NeilBrown


signature.asc
Description: PGP signature
___
Bug-make mailing list
Bug-make@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-make