For more complete info, go to here

http://stackoverflow.com/questions/37932984/gnu-make-4-2-and-4-2-1-on-windows-bug


I am making this target only


deploy_marketProperties:
echo Copying application data... && $(MKDIR) 
"C:/Users/User1/Desktop/A/Proj/src/../lib/armle-v7/release/marketProperties" && 
$(COPY_DIR) $(wildcard 
C:/Users/User1/Desktop/A/Proj/src/subProj/marketProperties/*) 
"C:/Users/User1/Desktop/A/Proj/src/../lib/armle-v7/release/marketProperties"

Using following command
make deploy_marketProperties  --debug=vjm

On GNU make 3.81, it works fine. But on make 4.2 and 4.2.1, I get an error:

cp: target `C' is not a directory

The problem appears to be the length of the command. If I delete some JSON 
files, it works fine.

Here's output of make 3.81. Note: there's actually 264 JSON files but I only 
show a few here.
===============================================================================================================================================
GNU Make 3.81
Copyright (C) 2006  Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.

This program built for Windows32
find_and_set_shell path search set default_shell = 
C:/QNX650/host/win32/x86/usr/bin/sh.exe
Reading makefiles...
Reading makefile `Makefile'...
Updating goal targets....
Considering target file `deploy_marketProperties'.
 File `deploy_marketProperties' does not exist.
 Finished prerequisites of target file `deploy_marketProperties'.
Must remake target `deploy_marketProperties'.
echo Copying application data... && mkdir -p 
"C:/Users/User/Desktop/A/Project/src/../lib/armle-v7/release/marketProperties" 
&& cp -f -R 
C:/Users/User/Desktop/A/Project/src/SubProj/marketProperties/2blank.json 
C:/Users/User/Desktop/A/Project/src/SubProj/marketProperties/3blank.json 
C:/Users/User/Desktop/A/Project/src/SubProj/marketProperties/7_blank.json 
C:/Users/User/Desktop/A/Project/src/SubProj/marketProperties/aa.json  
"C:/Users/User/Desktop/A/Project/src/../lib/armle-v7/release/marketProperties"
Main thread handle = 0x000000ac
Copying application data...
Successfully remade target file `deploy_marketProperties'.
===============================================================================================================================================


Output of make 4.2 (it's the same as 4.2.1).

NOTE: I did not put ALL 264 JSON files.

===============================================================================================================================================

GNU Make 4.2.1
Built for Windows32
Copyright (C) 1988-2016 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.
find_and_set_shell() path search set default_shell = 
C:/QNX650/host/win32/x86/usr/bin/sh.exe
Reading makefiles...
Reading makefile 'Makefile'...
Updating makefiles....
Updating goal targets....
Considering target file 'deploy_marketProperties'.
 File 'deploy_marketProperties' does not exist.
 Finished prerequisites of target file 'deploy_marketProperties'.
Must remake target 'deploy_marketProperties'.
C:/Users/User1/Desktop/A/Project/src/SubProj/marketProperties/2blank.json 
C:/Users/Use1r/Desktop/A/Project/src/SubProj/marketProperties/3blank.json 
C:/Users/User1/Desktop/A/Project/src/SubProj/marketProperties/7_blank.json
Main thread handle = 0000007C
Copying application data...
cp: target `C:/Users/User1/Des' is not a directory
make_msvc.net2003: *** [Makefile:384: deploy_marketProperties] Error 1


===============================================================================================================================================


It's pretty obvious what's happening: the line is "too long" and it's being 
cut-off but this only happens in 4.2/4.2.1 but not 3.81


The shell that's being used is:


C:\Users\User1\Desktop\A\Project\bld\armle-v7\release\subProj>where sh
C:\QNX650\host\win32\x86\usr\bin\sh.exe

C:\Users\User1\Desktop\A\Project\bld\armle-v7\release\subProj>sh --help
GNU bash, version 3.1.17(1)-release-(i686-pc-msys)
Usage:  sh [GNU long option] [option] ...
        sh [GNU long option] [option] script-file ...
GNU long options:
        --debug
        --debugger
        --dump-po-strings
        --dump-strings
        --help
        --init-file
        --login
        --noediting
        --noprofile
        --norc
        --posix
        --protected
        --rcfile
        --restricted
        --verbose
        --version
        --wordexp
Shell options:
        -irsD or -c command or -O shopt_option          (invocation only)
        -abefhkmnptuvxBCHP or -o option
Type `sh -c "help set"' for more information about shell options.
Type `sh -c help' for more information about shell builtin commands.
Use the `bashbug' command to report bugs.

_______________________________________________
Make-w32 mailing list
Make-w32@gnu.org
https://lists.gnu.org/mailman/listinfo/make-w32

Reply via email to