= autodafe

This project collects resources for converting an autotools
build recipe to a bare makefile that can be read and modified
by humans.

The "De-Autoconfiscation HOWTO" describes the conversion procedure.

The deconfig tool walks the code tree of a project with an autotools
build recipe looking for conditional-configuration symbols that can
be removed because they gate C11 or POSIX facilities.  It generates a
diff that can be inspected and fed to patch(1) to remove the unneeded
code. It also generates environment-discovery directives that can be
used by autodafe configure.

The makemake tool reduces a generated Makefile to an equivalent form
suitable for human modification and with internal automake cruft
removed. It is intended to be used with deconfig to enable completely
severing a project from its autotools build recipe, leaving a bare
Makefile in place.

The configure tool replaces autotools configure, but is fast and
comparatively tiny, small enough to be realistically audited. It
interprets directives generated by deconfig and appended to your
makefile to do discovery about the build environment.

Useful links if you are viewing this file as HTML:

link:de-autoconfiscation.adoc[De-Autoconfiscation HOWTO] .

link:makemake.adoc[makemake manual page]

link:deconfig.adoc[deconfig manual page]

link:configure.adoc[configure manual page]

link:hacking.adoc[Hacker's Guide to Autodafe]

The latter contains information about the prerequisites of this
software and how to contribute to it.

Autotools delenda est!
