]>
&title; &firstname; &surname; Code and documentation.
&email;
These are the documentation notes for &package;. The &package; project generates and maintain software build systems, suitable for use with the most common implementations of the make command. It uses project description files to provide simple Makefiles. It is intended to keep the code generated as simple and portable as possible.
Overview
What is &package; &package; generates Makefiles needed in an entire project. Instead of trying every little trick to let it work in a number of potential uses, it sticks to the simplest possible code generation. Although primarily dedicated to the generation of build systems through Makefiles, primarily to compile source code in the C/C++ and assembly languages, &package; can be extended for integration with external software and processes such as translations, documentation generation, dynamic bindings...
Who should use &package; Some software developers could gain using &package;. However, due to its intentional simplicity, it may also be limiting in some cases; this can be expected when building large projects in particular. Advanced users willing to modify the build process of projects using &package; may have to learn about &package; as well.
Who should not use &package; &package; was primarily designed for projects using the C or C++ languages. Although possibly extended through the help of shell scripts, &package; may not be appropriate for other languages or complex build processes.
Why use &package; &package; was created to be efficient at writing simple and compliant Makefiles for software development projects of all sizes. It should be useful: for people learning software development using Makefiles; for developers of C/C++ software projects; for developers concerned by the readability, efficiency, portability or maintenance of their Makefiles.
Using &package;
&name; usage The &name; utility may be invoked from the command line this way: &name; -n -v -S options directory The "-n" option just parses the project definition files, without actually re-generating the Makefiles. The "-v" option gives information about the progress of the operation. The "-S" option warns about potential security risks. It then processes the current directory, or the ones given at the command line, according to the project configuration files encountered.
Migrating to &package; You may first create all necessary "project.conf" files with the subdirectories definitions. Then for every binary or library built, specify the adequate target along with its section. When migrating from automake/autoconf, the existing subdirectories are defined in the "Makefile.am" files, in the "SUBDIRS" variable. The binary targets are defined in the same file, as the "bin_PROGRAMS" variable, each declined to "program_SOURCES" for their respective source files.
Getting further
Additional resources More information can be found on the project page at .