OS4Depot.net 20130227_1013
  Home Search Mirrors Contact Info Credits

 Readme data for Root » Development » Utility » id-utils.lha

Description: Language-independent identifier database tool
Install: id-utils.lha
Size: 694kb 5
Version: 3.2
Date: 30 Nov 05
Author: Greg McGary <gkm@gnu.ai.mit.edu>, Amiga port by Olaf Barthel <olsen@sourcery.han.de>
Submitter: Steven Solie
Email: olsen/sourcery han de
Category: development/utility
License: GPL
Distribute: yes
Min OS Version: 4.0
Amiga port of GNU id-utils 3.2
==============================

1. Introduction

This is a modest port of the GNU id-utils for AmigaOS 2.x/3.x/4.x using GCC
and the clib2 'C' runtime library. Its purpose is to maintain and access a
database of identifiers which can be created with the "mkid" command and
accessed with the "lid" command, etc.

This is a very useful package if you are about to maintain an unfamiliar source
code package. With "lid" you can quickly look up where a variable, function or
data structure is being used. I have been using the original "mkid" package
which was later overhauled and turned into GNU id-utils for years in my own
projects. If you haven't used it yet, you're missing something!


2. Installation

Copy the "fid", "fnid", "lid", "mkid" and "xtokid" commands from the "bin"
directory to wherever you like them best (the "bin.68k" directory contains
the AmigaOS 2.x/3.x compatible version and the "bin.os4" directory contains
the AmigaOS 4.x compatible version). There is a configuration file by the
name of "id-lang.map" in the "id-utils" directory. Copy this to a directory of
your own choice and bind assignment to it, e.g.:

   copy id-utils S:id-utils all
   assign id-utils: S:id-utils

Alternatively, you can do without the assignment and use the following
instead:

   copy id-utils S:id-utils all
   setenv save ID-LANG.MAP S:id-utils/id-lang.map

You might want to add the following to your S:Shell-Startup as shortcuts for
various features; the original "mkid" package used to implement this in
separate shell commands, but you can also take care of this via aliases:

   alias aid lid -ils []
   alias eid lid -R edit "[]"
   alias gid lid -R grep "[]"

But you can use links instead, too, e.g.:

   copy bin/(fid|fnid|lid|mkid|xtokid) c:
   cd c:
   makelink link=aid to=lid
   makelink link=eid to=lid
   makelink link=gid to=lid


3. Changes for the Amiga

I have modified the commands for the Amiga. Some of the specific changes
include:

   - You can configure a default stack size used by the commands through an
     environment variable, like this:
        
        setenv save IDUTILS_STACK_SIZE 1000000

     All commands should be happy around a maximum of 50K of default
     stack space, which is what they were built with.

   - You can use AmigaDOS wildcard patterns to select the files to scan.
     For example, the following will scan all 'C' source files:

        mkid #?.c

   - AmigaDOS path names syntax is used when printing file and path names.

   - AmigaDOS wildcard patterns are used when printing file lists.

   - All commands bear the Amiga-typical version information, i.e. you
     can query their release version numbers with the "Version" shell
     command.

   - You can use links or make copies of the "lid" command to yield
     working "aid", "eid" and "gid" shell commands. The "lid" command
     keys off the name the command is started with and then sets up
     its default options.

   - The "id-utils.info" documentation has been converted into an
     AmigaGuide format "id-utils.guide" file.

4. Source code

This Amiga port is based upon GNU id-utils 3.2. The modified source code files
are included in the "source" directory. Just download the original source
code from, for example <http://ftp.gnu.org/gnu/id-utils/id-utils-3.2.tar.gz>,
unpack it and then copy the contents of the "source" directory on top of it.
To build it you will need a GCC installation and the clib2 'C' runtime library
which you can find at <http://sf.net/projects/clib2>. Enter "make -f
GNUmakefile.68k" for the AmigaOS 2.x/3.x build and "make -f GNUmakefile.os4"
for the AmigaOS 4.x build.


5. Contact

This Amiga port was created by Olaf Barthel. Here is my postal address:

   Olaf Barthel
   Gneisenaustr. 43
   D-31275 Lehrte
   Federal Republic of Germany

But you can also reach me via e-mail:

   olsen()sourcery.han.de


6. History


Amiga port 1.2 (2005-11-28)

- Greatly reduced stack size usage by switching over the use of the
  built-in GCC alloca() function to the clib2-supplied version. While
  this alloca() implementation will require a lot less stack space, it
  will still need as much main memory as the 1.1 port used to when it
  was still allocating that memory from the stack.


Amiga port 1.1 (2005-11-25)

- Initial port using clib2.




Copyright (c) 2004-2013 Björn Hagström. All rights reserved.
OS4 and its logos are registered trademarks of Hyperion Entertainment