bug-gnulib
[Top][All Lists]
Advanced

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

Re: Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".


From: Simon Josefsson
Subject: Re: Use "$(MKDIR_P) sys", not race-prone "test -d sys || mkdir sys".
Date: Sun, 21 Jan 2007 21:45:57 +0100
User-agent: Gnus/5.110006 (No Gnus v0.6) Emacs/22.0.92 (gnu/linux)

Jim Meyering <address@hidden> writes:

> When building coreutils from scratch using "make -j3" on a uniprocessor
> system, I encountered this failure:
>
>   ...
>   mv configmake.h-t configmake.h
>   mv stdint.h-t stdint.h
>   test -d sys || mkdir sys
>   test -d sys || mkdir sys
>   rm -f sys/stat.h-t sys/stat.h
>   { echo '/* DO NOT EDIT! GENERATED AUTOMATICALLY! */'; \
>             sed -e 
> 's|@''ABSOLUTE_SYS_STAT_H''@|"///usr/include/sys/stat.h"|g' \
>                 < ./stat_.h; \
>           } > sys/stat.h-t
>   mv sys/stat.h-t sys/stat.h
>   mkdir: cannot create directory `sys': File exists
>   make[1]: *** [sys/time.h] Error 1
>   make[1]: *** Waiting for unfinished jobs....
>   make[1]: Leaving directory `/f/w/cu/lib'
>   make: *** [all-recursive] Error 1
>
> So I checked in this fix:

This patch seem to cause plenty of build failures like this:

Making all in gllib
make[3]: Entering directory `/data/gnulib/build/gettime/dummy-0/_build/gllib'
sys
make[3]: sys: Command not found
make[3]: *** [sys/time.h] Error 127

E.g.:

http://autobuild.josefsson.org/gnulib/log-200701211146617069000.txt

It seems like $(MKDIR_P) is empty.  The configure.ac does contain:

AC_PROG_MKDIR_P

However, it doesn't seem like it is getting substituted into the
Makefile:

dopio:/data/gnulib/build/gettime# grep MKDIR gllib/*
gllib/Makefile: $(MKDIR_P) sys
gllib/Makefile.am:      $(MKDIR_P) sys
gllib/Makefile.in:      $(MKDIR_P) sys
dopio:/data/gnulib/build/gettime#

Any ideas?

/Simon




reply via email to

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