c4ev3/ev3duder

"clean" of Makefile fails on Windows because pre-defined Unix RM of make not overwritten

Closed this issue · 3 comments

Problematic line:

RM ?= del /Q

Proposed fix:
RM = del /Q

Detailed output when failing:

Microsoft Windows [Version 6.1.7601]
Copyright (c) 2009 Microsoft Corporation.  All rights reserved.

Z:\>mingw32-make clean
rm -f ev3duder.exe
process_begin: CreateProcess(NULL, rm -f ev3duder.exe, ...) failed.
make (e=2): The system cannot find the file specified.
mingw32-make: *** [clean] Error 2

Z:\>mingw32-make --version
GNU Make 4.0
Built for i686-w64-mingw32
Copyright (C) 1988-2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
a3f commented

I think your build environment is at fault here. If it defines RM, it better be to something that actually exists.

I used the default installation of mingw-w64 for Windows (via Win-Builds) with the unchanged ev3duder Makefile - but yes, sensible defaults are a matter of course.
http://mingw-w64.org/doku.php/download

a3f commented

You can submit a patch to check whether RM works at all, but I wouldn't override RM unconditionally, because mingw32-make defines it inappropriately. This might be something you want to ask them about.