[Top][All Lists]

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

[Global-commit] global gtags/gtags.c libutil/ libuti...

From: Shigio YAMAGUCHI
Subject: [Global-commit] global gtags/gtags.c libutil/ libuti...
Date: Mon, 27 Feb 2006 00:48:54 +0000

CVSROOT:        /sources/global
Module name:    global
Changes by:     Shigio YAMAGUCHI <address@hidden>       06/02/27 00:48:54

Modified files:
        gtags          : gtags.c 
        libutil        : format.h gtagsop.c gtagsop.h 
Added files:
        libutil        : gtagsop5.c gtagsop5.h 

Log message:
        Testing code for new tag format (I pray, for GLOBAL-5.0).
        This code should be tested for a while.
        - If there is something problem, it will be fixed.
        - After the test, it will be judged whether this code can be adopted.
        You can make tag files using new format like follows:
        $ gtags -ccc                    <= three 'c' option
        o Allows path name including blanks.
        o Decrease disk space used.
        o Make tag format simpler.
        o Realize stable performance.
        STANDARD5 format (for GTAGS)
        <file id> <tag name> <line number> <line image>
        * Separator is single blank.
        |110 func 10 int func(int a)
        |110 func 30 func(int a1, int a2)
        COMPACT5 format (for GRTAGS, GSYMS)
        <file id> <tag name> <line number>,...
        * Separator is single blank.
        |110 func 10,30
        o STANDARD5 format is applied to GTAGS, and COMPACT5 format is applied
        to GRTAGS and GSYMS by default.
        Because GRTAGS was growing too much, COMPACT5 format might be suitable.
        (The -c (--compact) option might be removed.)
        o Separator is single blank.
        This decrease disk space used a little, and make it easy to parse
        tag record.
        o Use file id instead of path name.
        This decreases disk space used, and allows blanks in path name
        at least in tag files.
        o Put file id at the head of tag record.
        We can access file id without string processing.
        This is advantageous for deleting tag record when incremental updating.
        o Format version of tag file is incremented (4).
        This enables us to keep upper compatibility of tag files.
        (Whether to keep it, a further examination is necessary though.)
        For the detail of 'format version', please see the comment in
        Test data
        Here is a test data when applying to FreeBSD kernel source code.
        Format    Command line   Making time Updating time Total size
        (sec)       (sec)         (bytes)
        standard    gtags        1137        6676           131391488
        compact     gtags -c      330          98            36569088
        pathindex   gtags -cc     948        4254           109953024
        new format  gtags -ccc    392         112            43040768


reply via email to

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