make-w32
[Top][All Lists]
Advanced

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

GNU make 4.2 (and 4.2.1) failing due to length of command-line


From: Adrian Muresan
Subject: GNU make 4.2 (and 4.2.1) failing due to length of command-line
Date: Tue, 21 Jun 2016 22:53:50 +0000

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.


reply via email to

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