bug-global
[Top][All Lists]
Advanced

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

Re: Global for 'cygwin'


From: Shigio Yamaguchi
Subject: Re: Global for 'cygwin'
Date: Fri, 09 Aug 2002 23:17:52 +0900

> Hello,
Hello,

Plain text would be better.

> As a programmer, I need to trace many source codes in my work, it's so nice 
> to have 'global', thank you !!
It's great. Thanks.

> I've try to build 'global' on cygwin, basically every thing works fine except 
> for the following two problems :
> 
> 1. uppercase/lowercase problem, take an example, if I apply 'gtags' on the 
> source of 'global', since it
>     contain a directory named 'gtags', so the uppercased 'GTAGS' database 
> file cannot be created, due to
>     Win32 platform ignore the case. So I have to use 'dbpath' to specify 
> another directory.

I understand.
But it is hard to rename the directory name in GLOBAL package or tag name.

There is a workaround.

        prompt> rename gtags gtagz
        prompt> gtags

Anyway, you had better not to use 'gtags' as a directory name
for your project. :-)

> 2. htags fail : In the perl source code of 'htags', here it fails :
> 
> open(FIND, "$'findcom |") || &'error("cannot fork.");
> while (<FIND>) {
>       chop;
> #     if ($gtags_ctime < (stat($_))[10]) {
> #             &'error("GTAGS is not the latest one. Please remake it.");    
> <<--- Failure
> #     }
> }
> 
> Since I'm not acquainted with perl, so I just comment the three lines out and 
> everything works perfectly.
> 
> This is my brief testing, I havn't test everything yet, so if I shall find 
> any more problem, I'll report it to you.

OK. I have changed above code like follows:

if (!$'w32) {
        # This test is not done for Windows32 environment because many
        # Cygwin users reported this code didn't work well.
        # I don't know why, but anyway, program works without this code.
        print STDERR "[", &'date, "] ", "(#) checking tag files ...\n" if 
($'vflag);
        $gtags_ctime = (stat("$dbpath/GTAGS"))[10];
        open(FIND, "$'findcom |") || &'error("cannot fork.");
        while (<FIND>) {
                chop;
                if ($gtags_ctime < (stat($_))[10]) {
                        &'error("GTAGS is not the latest one. Please remake 
it.");
                }
        }
        close(FIND);
        if ($?) { &'error("cannot traverse directory."); }
}

The next version of GLOBAL will include above code.

Thank you for your report!
--
Shigio Yamaguchi - Tama Communications Corporation




reply via email to

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