aemakegen(1)

NAME
aemakegen - generate a Makefile.in from file manifest

SYNOPSIS
aemakegen [ option... ][ filename... ]
aemakegen -Help
aemakegen -VERSion

DESCRIPTION
The aemakegen command is used to generate a Makefile.in file from a file manifest. The file manifest is the set of file specified on the command line.

If a project or change number is mentioned on the command line, the search path and file manifest is derived from Aegis meta-data. File names on the command line are considered to be additional files, and will be added to the manifest.

If no project or change number is mentioned on the command line, it is assumed that the files named on the command line are all the files the makefile is to be generated from.

  Project Structure
The aemakegen command assumes a particular project structure. This is as follows:

lib/
    The lib directory contains C++ files to be compiled, and placed into the lib/lib.a file, to be linked with the other executables.

prog/
    Each executable is contained in its own directory. Which directories contain programs are determined by the presence of a main.cc file.

bin/
    Each program is compiled and linked, with the executable placed in the bin directory.

OPTIONS
The following options are understood:

-Change number
    This option may be used to specify a particular change within a project. See aegis(1) for a complete description of this option.

-Output filename
    This option may be used to specify the output file. The output is sent to the standard output by default.

-Project name
    This option may be used to select the project of interest. When no -Project option is specified, the AEGIS_PROJECT environment variable is consulted. If that does not exist, the user's $HOME/.aegisrc file is examined for a default project field (see aeuconf(5) for more information). If that does not exist, when the user is only working on changes within a single project, the project name defaults to that project. Otherwise, it is an error.

-SCRipt pattern
    This option may be used to nominate file which are scripts. The patterns are normal shell file name globbing patterns, so you may need to quote it. You may use this option more than once. Scripts in the script/ or scripts/ directories will be installed. Scripts with a basename starting with test_ will be build to support the “make check” target.

-Search_Path directory
    The search path option may be used to specify the search path. This option may be given more than once.

-TArget name
    The option may be used to select the desired output format by name. The known names are:

    automake
        Generate automake(1) input, suitable for use as a top-level Makefile.am file.

    makefile
        Generate make(1) input, suitable for as as a top-level Makefile.in file. This is the default.

-Help
    This option may be used to obtain more information about how to use the aemakegen program.

All options may be abbreviated; the abbreviation is documented as the upper case letters, all lower case letters and underscores (_) are optional. You must use consecutive sequences of optional letters.

All options are case insensitive, you may type them in upper case or lower case or a combination of both, case is not important.

For example: the arguments "-project, "-PROJ" and "-p" are all interpreted to mean the -Project option. The argument "-prj" will not be understood, because consecutive optional characters were not supplied.

Options and other command line arguments may be mixed arbitrarily on the command line, after the function selectors.

The GNU long option names are understood. Since all option names for aemakegen are long, this means ignoring the extra leading '-'. The "--option=value" convention is also understood.

EXIT STATUS
The aemakegen command will exit with a status of 1 on any error. The aemakegen command will only exit with a status of 0 if there are no errors.

ENVIRONMENT VARIABLES
See aegis(1) for a list of environment variables which may affect this command. See aepconf(5) for the project configuration file's project_specific field for how to set environment variables for all commands executed by Aegis.

COPYRIGHT
aemakegen version 4.24.2.D001
Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 20 Peter Miller

The aemakegen program comes with ABSOLUTELY NO WARRANTY; for details use the 'aemakegen -VERSion License' command. This is free software and you are welcome to redistribute it under certain conditions; for details use the 'aemakegen -VERSion License' command.

AUTHOR
Peter Miller | E-Mail: | millerp@canb.auug.org.au
/\/\* | WWW: | http://www.canb.auug.org.au/~millerp/