Added `bin/bin/tar-entry.sh` to build a compressed tarball for an entry. The compressed tarball is formed by gnu tar with options so that the same entry file content will always produce the same compressed tarball, byte for byte. As some files are missing from some entries, one should use the `-W` option as in: ```sh bin/tar-entry.sh -v 5 -W 2020/ferguson1 ``` Added `make form_entry_tarball` to the top level `Makefile` to build entry tarballs even when files are still missing. Added `make verify_entry_files` to verify that all entries have all of their files listed in their manifest, plus the top level ioccc.css and var.mk files. As file entry files are still missing (due to HTML files that need to be built), the overall `make quick_www` and `make www` do **NOT** (yet) exit when the `make verify_entry_files` fails. Improved `bin/chk-entry.sh` by removing some variables that were not needed. TODO: Improve `bin/` tool exit codes as the current use is a bit silly. TODO: Clean out some variables used in `bin/` tools as some of then are only set printed in debug statements. TODO: Clean up usage messages, some of the options listed to not match the `getopts(1)` parsing. In some cases the option needs to be parsed but needs to be ignored by the tool because another tool automatically passes along certain options that really have no effect. Such ignored options need to be show as "This option is ignored" in the usage message.
Fifth International Obfuscated C Code Contest
Look at the README.md file for the given winning entry for information on how to compile it and how to run the winning program. Look at the winning source and try to figure how it does what it does! You may then wish to look at the Author's remarks for even more details.
The maximum size of entries was raised from 1024 to 1536 bytes, however smaller entries were encouraged. Due to the "Best Abuse of the Rules" winner of 1987, a limit of 160 chars in the compile line was introduced.
This year, the Grand Prize was given to the most unusual entry and best abuse of the C Preprocessor rather than the most well rounded entry.
Rules and results were posted to comp.lang.c, comp.sources.unix and alt.sources. The 1988 winners will be published in the Micro/Systems Journal.
Winning entries for previous years were repackaged with each year being in its own directory. Makefiles and hints were also provided. The package was posted to the comp.sources.unix newsgroup. They are also available on a wide number of USENET archive sites.
Final Comments
IMPORTANT NOTE: See contact.html for up to date contact details as well as details on how to provide fixes to any of the entries. See also the IOCCC FAQ for addition information on the IOCCC.
Copyright and License
Copyright (c) 1988,2023, Landon Curt Noll and Larry Bassel. All Rights Reserved. This work is licensed under a Creative Commons CC BY-SA 4.0 DEED Attribution-ShareAlike 4.0 International license. If you do use this work in some form, the IOCCC judges would appreciate (but does not require) if you were to send us a note about your use.