bug-cvs
[Top][All Lists]
Advanced

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

Re: Problem with Windows 1.12.13 binary


From: Jim Hyslop
Subject: Re: Problem with Windows 1.12.13 binary
Date: Thu, 04 May 2006 16:38:53 -0400
User-agent: Mozilla Thunderbird 1.0.6 (Windows/20050716)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Mark D. Baushke wrote:
> Hi Jim,
> 
> Jim Hyslop <address@hidden> writes:
> 
> 
>>>The 1.12.13 Windows binary I provided a few months back has a problem,
>>>in that 'cvs co' does not check out any files, only directories. 'cvs
>>>update' seems to work OK. Should we remove the binary from the download
>>>site until I get it fixed?
> 
> 
> Is it a problem with the sources or with the way they were built?

Found it. The problem's in the MSVC project for the GNULIB utilities,
specifically in glob.c (well spotted, Kelly!). glob.c has several #ifdef
WINDOWS32, which is never defined. After defining the macro in the MSVC
project file, it compiles and runs properly.

I would suggest naming this binary 1.12.13a, committing the changes
(project file and version #) to a new branch based off the tag
cvs1-12-13. Sound good?

>>>After I fix it, I think I will focus on getting sanity.sh working with
>>>the Windows binary.
> 
> 
> An interesting idea. How will this be accomplished? Using CygWin
> perhaps?

Yes, I'm working on using the existing sanity.sh under a Cygwin shell.
The sanity script passes all the tests for the tools.

At the moment, the big challenge is converting the UNIX path into the
correct Windows path, for example /tmp/cvs-sanity/cvsroot to
c:\cygwin\tmp\cvs-sanity\cvsroot. I suspect the next major hurdle will
be the one Derek mentioned - handling the different slashes.

On a tangent - I'm currently (ahem) `bash`ing my head trying to get some
simple stuff working <Jim ducks to avoid flying objects>. Any
suggestions for getting up to speed with shell programming? What I need
is something that will help me understand subtleties like scope of
variables. For example, in this code snippet:

longest=/tmp/cvsroot/another/and/another

echo $longest | sed 's:\(.*\)/\(.*\):\1 \2:' |
  read -s longer shorter

echo "$longest, $longer, $shorter"

$longer and $shorter do not retain their values outside the read
function. If I make it "echo {etc} | while read longer shorter; do" then
longer and shorter contain the expected values, but any changes I make
to $longest do not remain in effect past the "done" statement. Please
don't tell me the answer - point me at a reference that will explain it,
because I'm sure this will be just one of many subtleties I'll face.

- --
Jim Hyslop
Dreampossible: Better software. Simply.     http://www.dreampossible.ca
                 Consulting * Mentoring * Training in
    C/C++ * OOD * SW Development & Practices * Version Management
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFEWmZdLdDyDwyJw+MRAmb+AKDAWFNpYMEURQznYZ2aSk9H6r8w9gCgs7Sr
DggQxZ3gjsZf0JQj2nqpMiE=
=zCPI
-----END PGP SIGNATURE-----





reply via email to

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