AminetAminet
Search:
84714 packages online
About
Recent
Browse
Search
Upload
Setup
Services

dev/c/makedepend_AmiMod.lha

Mirror:Random
Showing:m68k-amigaosppc-amigaosppc-morphosi386-arosi386-amithlonppc-warpupppc-powerupgeneric
No screenshot available
Short:makedepend bugfixed + modified for smake
Author:Todd Brunhoff, Tektronix, Inc. and MIT Project Athena
Uploader:hagbardcelin gmail com (Hagbard Celine)
Type:dev/c
Version:1.0.8
Architecture:m68k-amigaos
Date:2023-11-05
Download:http://aminet.net/dev/c/makedepend_AmiMod.lha - View contents
Readme:http://aminet.net/dev/c/makedepend_AmiMod.readme
Downloads:262

Re-upload as I forgot the note about stack-usage in readme of original
upload.

This is a port of makedepend 1.0.8 from Xorg with bugfixes and some small
modifications for use with smake. And a little extra.

Not-Amiga-specific fixes:

Applied ifparser.c: divide-by-zero fix by Petre Rodan.
Fixed broken link detection in include.c.
Fixed broken same-file detection in include.c.


Amiga specific changes:

Modified to understand Amiga paths, and not to escape the ":" character.

The default filename for output is changed to smakefile.

And the little extra, a hack to make it support ".o" files as input
parameters. Which works like this:

If the file myprogram.c includes only myprogram.h, the standard output when
you specify "myprogram.c" on command-line is:
myprogram.o: myprogram.h

If you on the other hand specify "myprogram.o" on command-line, it will
output:
myprogram.o: myprogram.c myprogram.h

To make this really useful. Three new command line options are added,
"-Ssrcprefix", "-Pincprefix" and "-Qobjdir".

"-Ssrcprefix" and "-Pincprefix" is for ".c" and ".h" as the original
"-pobjprefix" is for ".o" files. And "-Qobjdir" is needed for makedepend to
find ".c" files, if ".o" files are are used on commandline that reside in a
different directory than the corresponding ".c" files.

Utilizing these lets makedepend work even if the smakefile, source-,
include- and object-files are all in separate directories. And also supports
generating output like this:
$(OBJ)myprogram.o: $(SRC)myprogram.c $(INC)myprogram.h

The "incprefix" will not be applied to files included with a absolute path.
Files included with angle brackets (<>) use absolute paths unless you specify
a relative path with "-I" or "-Y".

This hack only works for ".c" files. And if a ".c" file doesn't have any
#include statements; it will be silently ignored.

DO NOT mix ".c" and ".o" files on the commandline, this is not supported.

This ".o" hack was my reason for doing this. And to get there with minimal
changes to the original source, I used a unholy mix of UNIX-, SAS/C- and
DOS-functions. Plus a little creative misuse of defines, and short-circuiting
of configure/automake and friends. NOT TO BE USED as an example of how to port
any code to AmigaOS.

I also added "-q" for quiet, as the standard "no-verbose" is very chatty in
some combinations of settings. This will disable all messages but faltal
errors.

Special thanks goes to Rainer Koppler who's earlier port made me able to get
this to compile in the first place.
And also to all the nice people at eab.abime.net for answering all my stupid
programming questions.


Known bugs:

This code comes from Linux and has no provision for handling filenames that
are illegal there, but legal on AmigaOS. Also, as far as I understand the
code, this CAN NOT work if you supply filenames that begin with a "-"
character on the commandline. Basically, if you use any special characters in
your filenames:
You are on your own!
Also see known bugs in makedepend.doc.


Not really bugs, but worth noting:

The stack usage is dependent on organization of the files it is parsing. The
binary is compiled without stackcheck/stackextend, and will crash hard if it
runs out of stack.

There is no support for using smake local input files (<< commands <). To get
around issues with line length, you must split the work on multiple lines, and
use the "-a" switch on all but the first line.

The formatting in makedepend.doc is horrible, I blame the lack of updated
tools to convert .man files to Amiga formats.




Contents of dev/c/makedepend_AmiMod.lha
PERMISSION  UID  GID    PACKED    SIZE  RATIO METHOD CRC     STAMP     NAME
---------- ----------- ------- ------- ------ ---------- ------------ ----------
[unknown]                35571  123885  28.7% -lh5- 4b6f Dec 12  2022 makedepend-1.0.8/aclocal.m4
[unknown]                  289     450  64.2% -lh5- 7fd7 Dec 12  2022 makedepend-1.0.8/AUTHORS
[unknown]                  227     356  63.8% -lh5- 11dd Dec 12  2022 makedepend-1.0.8/autogen.sh
[unknown]                12339   35466  34.8% -lh5- 04b1 Dec 12  2022 makedepend-1.0.8/ChangeLog
[unknown]                 3093    7400  41.8% -lh5- 51ff Dec 12  2022 makedepend-1.0.8/compile
[unknown]                15456   49348  31.3% -lh5- d227 Dec 12  2022 makedepend-1.0.8/config.guess
[unknown]                11328   35276  32.1% -lh5- 7b25 Dec 12  2022 makedepend-1.0.8/config.sub
[unknown]                61181  369444  16.6% -lh5- 65fa Dec 12  2022 makedepend-1.0.8/configure
[unknown]                  544     884  61.5% -lh5- 6d03 Dec 12  2022 makedepend-1.0.8/configure.ac
[unknown]                 1051    2615  40.2% -lh5- 4f53 Dec 12  2022 makedepend-1.0.8/COPYING
[unknown]                 1517    3525  43.0% -lh5- d4b4 Oct 11 00:17 makedepend-1.0.8/cppsetup.c
[unknown]                  605     788  76.8% -lh5- c7eb Oct 30 08:36 makedepend-1.0.8/cppsetup.o
[unknown]                 2611    7454  35.0% -lh5- 19e5 Oct 19 11:36 makedepend-1.0.8/def.h
[unknown]                 3641   10407  35.0% -lh5- a866 Oct 12 13:45 makedepend-1.0.8/delete.me.2
[unknown]                 8059   23568  34.2% -lh5- c804 Dec 12  2022 makedepend-1.0.8/depcomp
[unknown]                  133     197  67.5% -lh5- 69a8 Nov  3 18:09 makedepend-1.0.8/etc/project.options
[unknown]                 2943   12254  24.0% -lh5- 0793 Oct 16 17:22 makedepend-1.0.8/ifparser.c
[unknown]                 1205    2545  47.3% -lh5- ef5a Dec 12  2022 makedepend-1.0.8/ifparser.h
[unknown]                 1790    3904  45.9% -lh5- 6f29 Oct 30 08:36 makedepend-1.0.8/ifparser.o
[unknown]                 2347    8390  28.0% -lh5- 146f Dec 12  2022 makedepend-1.0.8/imakemdep.h
[unknown]                 4185   11903  35.2% -lh5- 11b4 Oct 30 08:36 makedepend-1.0.8/include.c
[unknown]                 1862    2812  66.2% -lh5- b0ff Oct 30 08:36 makedepend-1.0.8/include.o
[unknown]                 5785   15358  37.7% -lh5- 5be2 Dec 12  2022 makedepend-1.0.8/install-sh
[unknown]                 6847   21574  31.7% -lh5- 35fe Nov  3 18:09 makedepend-1.0.8/main.c
[unknown]                 4047    6996  57.8% -lh5- 0681 Nov  3 18:09 makedepend-1.0.8/main.o
[unknown]                19641   35768  54.9% -lh5- a111 Nov  3 18:09 makedepend-1.0.8/makedepend
[unknown]                  698    2163  32.3% -lh5- 624a Oct 10 23:37 makedepend-1.0.8/makedepend-config.h
[unknown]                  663    2111  31.4% -lh5- 5f94 Dec 12  2022 makedepend-1.0.8/makedepend-config.h.in
[unknown]                 3968   11538  34.4% -lh5- 7b6f Oct 18 22:49 makedepend-1.0.8/makedepend.doc
[unknown]                 3877    9521  40.7% -lh5- e972 Dec 12  2022 makedepend-1.0.8/makedepend.man
[unknown]                  913    2040  44.8% -lh5- f1ad Dec 12  2022 makedepend-1.0.8/Makefile.am
[unknown]                13826   43960  31.5% -lh5- d465 Dec 12  2022 makedepend-1.0.8/Makefile.in
[unknown]                 2632    6878  38.3% -lh5- 3cde Dec 12  2022 makedepend-1.0.8/missing
[unknown]                 4896   16489  29.7% -lh5- 2e4c Oct 16 15:57 makedepend-1.0.8/parse.c
[unknown]                 2404    3844  62.5% -lh5- a9e7 Oct 30 08:36 makedepend-1.0.8/parse.o
[unknown]                 2103    5637  37.3% -lh5- 22d2 Oct 19 11:38 makedepend-1.0.8/pr.c
[unknown]                  934    1540  60.6% -lh5- bf9c Oct 30 08:36 makedepend-1.0.8/pr.o
[unknown]                 1845    3793  48.6% -lh5- 3492 Nov  5 09:00 makedepend-1.0.8/README.amiga
[unknown]                  310     578  53.6% -lh5- 8d36 Dec 12  2022 makedepend-1.0.8/README.md
[unknown]                  115     164  70.1% -lh5- 3009 Oct 21 21:25 makedepend-1.0.8/SCOPTIONS
[unknown]                  278     619  44.9% -lh5- 1a47 Nov  3 16:53 makedepend-1.0.8/SMakefile
[unknown]                  813    4615  17.6% -lh5- e48a Nov  3 16:53 makedepend-1.0.8/SMakefile.bak
[unknown]                 2168    4879  44.4% -lh5- 4175 Dec 12  2022 makedepend-1.0.8/test-driver
[unknown]                  427     932  45.8% -lh5- db24 Dec 12  2022 makedepend-1.0.8/tests/1/makedep.sh
[unknown]                   17      17 100.0% -lh0- e381 Dec 12  2022 makedepend-1.0.8/tests/1/one.cpp
[unknown]                   17      17 100.0% -lh0- e381 Dec 12  2022 makedepend-1.0.8/tests/1/two.cpp
[unknown]                   16      16 100.0% -lh0- a57c Dec 12  2022 makedepend-1.0.8/tests/28045/foo.cpp
[unknown]                  345     666  51.8% -lh5- 6144 Dec 12  2022 makedepend-1.0.8/tests/28045/makedep.sh
---------- ----------- ------- ------- ------ ---------- ------------ ----------
 Total        48 files  251562  914584  27.5%            Nov  6 04:33

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