82785 packages online


No screenshot available
Short:Language-independent identifier database tool
Author:Greg McGary <gkm at>, Amiga port by Olaf Barthel <olsen at>
Uploader:Olaf Barthel <olsen sourcery han de>
Version:3.2; Amiga port version 1.2
Architecture:m68k-amigaos; ppc-amigaos
Download: - View contents
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 "" 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

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

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

   - 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

   - 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 "" documentation has been converted into an
     AmigaGuide format "" 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 <>,
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 <>. 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 at

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.

Contents of dev/misc/id-utils-3.2.lha
---------- ----------- ------- ------- ------ ---------- ------------ -------------
[generic]                39572   82280  48.1% -lh5- 1d73 Nov 28 11:00 id-utils-3.2/bin.68k/fid
[generic]                40054   83576  47.9% -lh5- 8375 Nov 28 11:00 id-utils-3.2/bin.68k/fnid
[generic]                66609  137320  48.5% -lh5- ddd2 Nov 28 11:00 id-utils-3.2/bin.68k/lid
[generic]                42563   87936  48.4% -lh5- b924 Nov 28 11:00 id-utils-3.2/bin.68k/mkid
[generic]                37688   78160  48.2% -lh5- 42cc Nov 28 11:00 id-utils-3.2/bin.68k/xtokid
[generic]                73532  164076  44.8% -lh5- d7d6 Nov 28 11:25 id-utils-3.2/bin.os4/fid
[generic]                73210  163328  44.8% -lh5- ce4b Nov 28 11:25 id-utils-3.2/bin.os4/fnid
[generic]               123368  271644  45.4% -lh5- 7328 Nov 28 11:25 id-utils-3.2/bin.os4/lid
[generic]                80589  178500  45.1% -lh5- 14cb Nov 28 11:25 id-utils-3.2/bin.os4/mkid
[generic]                68587  153212  44.8% -lh5- 484a Nov 28 11:25 id-utils-3.2/bin.os4/xtokid
[generic]                 6993   17982  38.9% -lh5- dc3e Feb  8  1995 id-utils-3.2/COPYING
[generic]                15463   55887  27.7% -lh5- 310e Nov 25 17:22 id-utils-3.2/
[generic]                  771    1612  47.8% -lh5- ccc4 Nov 25 17:16 id-utils-3.2/id-utils/
[generic]                 1942    4336  44.8% -lh5- fdb6 Nov 28 11:27 id-utils-3.2/README.AMIGA
[generic]                 2221    7880  28.2% -lh5- f149 Nov 28 10:58 id-utils-3.2/source/config.h
[generic]                  671    1979  33.9% -lh5- c0d2 Nov 28 10:58 id-utils-3.2/source/GNUmakefile.68k
[generic]                  637    1902  33.5% -lh5- 7595 Nov 28 10:58 id-utils-3.2/source/GNUmakefile.os4
[generic]                 1705    5097  33.5% -lh5- 7baf Nov 25 17:40 id-utils-3.2/source/libidu/fnprint.c
[generic]                 7065   30362  23.3% -lh5- bcc4 Nov 25 15:21 id-utils-3.2/source/libidu/scanners.c
[generic]                 2998    8204  36.5% -lh5- b709 Nov 28 10:38 id-utils-3.2/source/src/fid.c
[generic]                 2425    6181  39.2% -lh5- 9beb Nov 28 10:38 id-utils-3.2/source/src/fnid.c
[generic]                11192   40218  27.8% -lh5- 755f Nov 28 10:35 id-utils-3.2/source/src/lid.c
[generic]                 6745   23832  28.3% -lh5- 3f7d Nov 28 10:38 id-utils-3.2/source/src/mkid.c
[generic]                 2589    6899  37.5% -lh5- bc53 Nov 28 10:39 id-utils-3.2/source/src/xtokid.c
---------- ----------- ------- ------- ------ ---------- ------------ -------------
 Total        24 files  709189 1612403  44.0%            Nov 28 15:14

Aminet © 1992-2019 Urban Müller and the Aminet team. Aminet contact address: <aminetaminet net>