A-A-P does more than make

Bram Moolenaar Bram@moolenaar.net
Mon, 28 Oct 2002 14:43:24 +0100

A-A-P version 0.100 has been released.  This is the first milestone for
the A-A-P project.  The main item in this release is the "aap" program.


The "aap" program is make on steroids.  It does everything that make
does, has a powerful script language build-in and has integrated
internet support.  You can use it to:

- Build a program, on multiple platforms and in several variants
- Maintain a web site  (A-A-P is used for the Vim web site)
- Download and install an application (like FreeBSD ports)
- Obtain a module from CVS, update files in CVS
- Generate and filter files

Most of these things can be done with a recipe of just a few lines.
Have a look at the examples: http://www.a-a-p.org/examples.html .

The A-A-P recipe works better than a Makefile in many ways:

- Uses signatures to avoid trouble with timestamps; restoring an old
  version of a file causes recompiling
- Integrated support for up- and downloading
- Integrated support for CVS (other version control systems can be added)
- Python script can be used for more complicated tasks
- Messages are brief, a log file contains the details
- Reduces the need for shell scripts, improves portability
- Automatically figures out dependencies for C programs
- Simple syntax: mostly like a Makefile but avoids the need for line
  continuation backslashes, spaces in a file name are possible
- Good support for a project with multiple directories

A-A-P is written in Python.  It currently runs on any Unix system with
Python 1.5 or later.  MS-Windows and Mac support is to be added later.


A-A-P makes it easy to locate, download, build and install software. It
also supports browsing source code, developing programs, managing
different versions and distribution of software and documentation. This
means that A-A-P is useful both for users and for developers.

The current release is able to execute recipes.  Further development
will include an IDE framework, which makes it possible for existing
tools to work together.  For example: to use Vim with gdb for debugging,
lookup remote documentation with the cross referencer, preview a TeX
file, etc.

A-A-P is still under development.  Although the current version is
working, not everything has been properly tested.  There might be a few
problems, use with care.

A-A-P is open source under the GNU GPL.  You are welcome to help
improving A-A-P!


Home page:   http://www.a-a-p.org
Manual HTML: http://www.a-a-p.org/exec/index.html
Manual PDF:  http://www.a-a-p.org/exec/exec.pdf
Maillists:   http://www.a-a-p.org/maillist.html
Freshmeat:   http://freshmeat.net/projects/a-a-p/

A poem:                read aloud:

<> !*''#               Waka waka bang splat tick tick hash,
^"`$$-                 Caret quote back-tick dollar dollar dash,
!*=@$_                 Bang splat equal at dollar under-score,
%*<> ~#4               Percent splat waka waka tilde number four,
&[]../                 Ampersand bracket bracket dot dot slash,
|{,,SYSTEM HALTED      Vertical-bar curly-bracket comma comma CRASH.

Fred Bremmer and Steve Kroese (Calvin College & Seminary of Grand Rapids, MI.)

 ///  Bram Moolenaar -- Bram@moolenaar.net -- http://www.moolenaar.net  \\\
///          Creator of Vim - Vi IMproved -- http://www.vim.org          \\\
\\\           Project leader for A-A-P -- http://www.a-a-p.org           ///
 \\\ Lord Of The Rings helps Uganda - http://iccf-holland.org/lotr.html ///