Subject: bug#14503: 24.3.50; MSYS out-of-tree build fails

From: Richard Copley <[email-masked]>
Date: Thu, 30 May 2013 00:48:13 +0100

On 29 May 2013 18:12, Eli Zaretskii <[email-masked]> wrote:
>> Date: Wed, 29 May 2013 14:49:49 +0100
>> From: Richard Copley <[email-masked]>
>>
>> Building Emacs on Windows according to nt/INSTALL.MSYS,
>> outside the source tree as recommended, "make -k bootstrap"
>> fails while processing {build_dir}/lib/Makefile, with the errors:
>>
>> make[2]: Entering directory `/c/emacs/build/lib'
>> make[2]: *** No rule to make target `alloca.in.h', needed by `alloca.h'.
>> make[2]: *** No rule to make target `errno.in.h', needed by `errno.h'.
>> make[2]: *** No rule to make target `execinfo.in.h', needed by `execinfo.h'.
>> make[2]: *** No rule to make target `getopt.in.h', needed by `getopt.h'.
>
> Looks like "make bootstrap" is currently broken on Windows when you do
> that outside of the source tree.  The problem is tricky, I will fix it
> when I have time.  (Btw, the problem I saw does not manifest itself by
> the above error messages, it fails in a different way.)
>
> Anyway, you don't need "make bootstrap" on the first build with the
> MSYS method.  In fact, you shouldn't need "make bootstrap" at all,
> unless there are deep changes in Lisp that break a normal "make"
> build.  And, contrary to what you say, there's no recommendation to
> bootstrap in INSTALL.MSYS, it says to use just "make".
>
> I just tried a build with "make" outside of the source tree, and I
> didn't have the above problems.  (There's a VPATH line in lib/Makefile
> that points to the source directory and allows Make to find the
> prerequisites.)

Thanks. I tried that too after reading your reply and got the same
errors again. Possibly there's an issue with VPATH support in the
default MSYS Make. In any case, I don't get this problem with the
pre-release version of Make mentioned in INSTALL.MSYS.