IOCCC image by Matt Zucker

The International Obfuscated C Code Contest

2014/morgan - Most likely to succeed

make clone

Author:

To build:

    make

To use:

    ./prog [arg ..]

Try:

    ./try.sh

Judges’ remarks:

Think of this as a Maker Faire’s make. :-)

It works reasonably well. While not super ultra-featured, it does fair well with the Makefile we supplied. Not only that, it helped uncover a bug we had in our special Makefile rules.

Author’s remarks:

Remarks

This program is a tiny make(1) clone.

It is able to parse a subset of the make(1) syntax and will execute rules for goals given in arguments if they need to (based on timestamp of dependencies of rule targets).

Supported features

It should be able to build programs of previous years with the provided Makefile found in previous contest archives. Simply use this program instead of make. It will recursively use itself for sub-make.

Limitations / Known issues

Compilation warnings

With gcc 4.8.2 on Linux Ubuntu 14.04 64-bit :

    prog.c:22:15: warning: return makes integer from pointer without a cast [enabled by default]
    prog.c:23:72: warning: signed and unsigned type in conditional expression [-Wsign-compare]
    prog.c:12:11: warning: suggest parentheses around ‘&&’ within ‘||’ [-Wparentheses]

Inventory for 2014/morgan

Primary files

Secondary files


Jump to: top