This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

make $(wildcard) not working with samba shares


Hi All,

I'm having a problem with cygwin make and the $(wildcard) function.  I've
attached a Makefile which demonstrates the problem.  The gnu make
documentation indicates that the wildcard function should only return files
or directories that exist, but in certain circumstances it is returning
paths that do not exist.  This appears to be a bug introduced in the base
cygwin package.  Specifically,

using base/cygwin 1.5.19-4:
- fails when building from linux samba share (version 3.0.20)
- fails when building from solaris samba share (version 2.2.8a)
- succeeds when building from local hard drive

using base/cygwin 1.5.18-1:
- succeeds when building from linux samba share (version 3.0.20)
- succeeds when building from solaris samba share (version 2.2.8a)
- succeeds when building from local hard drive

I've tried a number of combinations to try to eliminate the failure when
using 1.5.19-4 and the samba share:
- fails when running directly from the share in a bash shell
  (//machine/path/to/test)
- fails when running from a mounted drive in a bash shell
  (//cygdrive/g/path/to/test)
- fails when running from a mounted drive in a dos cmd shell
  (g:\path\to\test>)

I've pasted below an example run that demonstrates the failure.

Any suggestions on whether I'm doing something wrong or if this is a known
issue?  In searching on google, I saw a few similar reports, but no
resolution.  I've been working around this issue for several months now
using the old cygwin package, but several of my coworkers are seeing it now
also and I'd like to get the real issue fixed.

Thanks,
Ken

$ uname -a
CYGWIN_NT-5.1 R63324-11 1.5.19(0.150/4/2) 2006-01-20 13:28 i686 Cygwin
$ cd //gora/kcecka/projects/cyg_smb_make_bug
$ make
echo "root file1" > file1.txt
mkdir -p sub1
echo "sub1 file2" > sub1/file2.txt
echo "sub1 file3" > sub1/file3.txt
mkdir -p sub2
echo "sub2 file4" > sub2/file4.txt
echo "sub2 file5" > sub2/file5.txt
make print_files
make[1]: Entering directory `//gora/kcecka/projects/cyg_smb_make_bug'
make[1]: *** No rule to make target `sub1/file3.txt/file1.txt', needed by
`print_files'.  Stop.
make[1]: Leaving directory `//gora/kcecka/projects/cyg_smb_make_bug'
make: *** [test] Error 2
$

Attachment: Makefile
Description: Text document

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]