GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  AEMAKEGEN (1)

NAME

aemakegen - generate a Makefile.in from file manifest

CONTENTS

Synopsis
Description
     Project Structure
     Project Attributes
     Change Set Attributes
     File Attributes
Options
Exit Status
Environment Variables
Copyright
Author

SYNOPSIS

B]aemakegen [ I]option... ][ I]filename... ]
aemakegen -Help
aemakegen -VERSion

DESCRIPTION

The I]aemakegen command is used to generate a CW]Makefile.in file from a file manifest. The search path and file manifest is derived from Aegis meta[hy]data. File names on the command line are considered to be additional files, and will be added to the manifest.

    Project Structure

The I]aemakegen command assumes a particular project structure. This is as follows:
CW]lib/ The I]lib directory contains C++ files to be compiled, and placed into the CW]lib/lib.a file, to be linked with the other executables. (You can override this with the CW]aemakegen:library[hy]directory project specific attribute.)
CW]libI]project/
  An alternative name to I]lib, above.

If there is a CW]libI]projectCW]/libI]projectCW].h file, this is installed as CW]$(prefix)/include/libI]projectCW]/ libI]projectCW].h and any project file it includes in turn are also installed below CW]$(prefix)/include/libI]projectCW]/

I]progCW]/
  The source for each executable is contained in its own directory. Which directories contain programs are determined by the presence of a CW]main.c or CW]main.cc file.

As a special case, files named CW]test/I]nameCW]/* will be linked as an executable CW]bin/test_I]name

CW]bin/ Each program is compiled and linked, with the executable placed in the I]bin directory.
CW]datadir/
  These files will be installed into the CW]$(DATADIR)/I]project[hy]nameCW]/ directory.
CW]datarootdir/
  These files will be installed into the CW]$(DATAROOTDIR)/ directory. This is usually meta[hy]data to tell other packages about this package’s existence.
CW]libdir/
  These files will be installed into $(LIBDIR)/
CW]test_*/
  These commands are expected to be in support of the CW]check target and are compiled but not installed. (Can use a minus rather than an underscore, if you prefer.)
CW]noinst_*/
  These commands are expected to be in support of the build, or the CW]check target, and are compiled but not installed. (Can use a minus rather than an underscore, if you prefer.)

    configure.ac

If the I]configure.ac file contains certain lines, additional features will be added to the file. These include:
AC_CHECK_PROGS(GROFF,
  The project uses the I]groff(1) and the GNU Groff documentation suite.
AC_CHECK_PROGS(LIBTOOL, ...
  This will cause the library to be built as a shared library, and installed so as to make it accessible to the programs linked against it. Note that you can set the project_specific attribute CW]aemakegen:libtool to true for the same effect.
AC_CHECK_PROGS(SOELIM,
  One of the programs in the GNU Groff documentation suite.
AC_EXEEXT
  The makefile defines the $(EXEEXT) macro, for executable file extensions.
AC_LANG([C])
  The source files are all assumed to be in C.
AC_LANG([C++])
  The source files are all assumed to be in C++.
AC_LANG_C
  The source files are all assumed to be in C.
AC_LANG_CPLUSPLUS
  The source files are all assumed to be in C++.
AC_LIBEXT
  The makefile defines the $(LIBEXT) macro, for library file extensions.
AC_OBJEXT
  The makefile defines the $(OBJEXT) macro, for object file extensions.
AC_PROG_LIBTOOL
  Synonym for the longer libtool form, above.
AC_PATH_XTRA
  The project uses the X11 window system.

    Project Attributes

The following CW]project_specific attributes are known:
aemakegen:debian:brief[mi]description:I]package
  Used by the debian target to set the first line of the Description field of each package.
aemakegen:debian:build[hy]depends
  Used by the debian target to set the Build[hy]Depends.
aemakegen:debian:conflicts:I]package
  Used by the debian target to set the Conflicts field of each package.
aemakegen:debian:description:I]package
  Used by the debian target to set the Description field of each package.
aemakegen:debian:dm[hy]upload[hy]allowed
  Used by the debian target. If true, the DM[hy]Upload[hy]Allowed field will be set to yes.
aemakegen:debian:homepage
  Used by the debian target to set the homepage. Omitted of not set.
aemakegen:debian:priority
  Used by the debian target to set the priority. Defaults to "extra" if not set.
aemakegen:debian:maintainer
  Used by the debian target to set the maintainer.
aemakegen:debian:provides:I]package
  Used by the debian target to set the Provides field of each package.
aemakegen:debian:recommends:I]package
  Used by the debian target to set the Recommends field of each package.
aemakegen:debian:replaces:I]package
  Used by the debian target to set the Replaces field of each package.
aemakegen:debian:section
  Used by the debian target to set the section. Defaults to "unknown" if not set.
aemakegen:debian:suggests:I]package
  Used by the debian target to set the Suggests field of each package.
aemakegen:libtool
  Boolean, whether or not to use I]libtool(1) to build the project’s libraries. This is of most interest to projects which build shared libraries.
aemakegen:rpm[hy]spec:build[hy]requires
  Additional packages required to build the project.
aemakegen:rpm[hy]spec:description
  A description of the project.
aemakegen:version[hy]info
  String; the shared library’s version number (completely different and separate to the project version, see I]libtool(1) for discussion). Three colon[hy]separated decimal numbers. Defaults to 0:0:0 if not set.

    Change Set Attributes

The following change set attributes are known:
aemakegen:debian:accepted
  Normally, when the [lq]debian/changelog[rq] file is written, it gathers up all of the Debian [lq]Changed[rq] information, and places it into the change[hy]log entry for the first (I]i.e. most recent) change in the changelog. This ensures it will be transferred into the [lq]*.changes[rq] files. If a change set is marked with CW]aemakegen:debian:accepted=true, it drops all of the [lq]Closed[rq] information, as this has already been processed by the Debian bug tracking system.

    File Attributes

The following file attributes are known:
aemakegen:noinst
  boolean. If true, I]aemakegen(1) will not cause the program to be installed. Usually attached to the source file containing the I]main function, or to script files. Defaults to false if not defined (I]i.e. do install program).

OPTIONS

The following options are understood:
-Change I]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 I]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 CW]script/ or CW]scripts/ directories will be installed. Scripts with a basename starting with CW]test_ will be build to support the [lq]make check[rq] target.
-TArget I]name
  The option may be used to select the desired output format by name. The known names are:
automake Generate I]automake(1) input, suitable for use as a top[hy]level CW]Makefile.am file.
makefile Generate I]make(1) input, suitable for as as a top[hy]level CW]Makefile.in file. This is the default.
debian Generate the CW]debian/ directory contents, which will exactly match the Makefile generated by the above two.
pkg[hy]config
  Generate a I]pkg[hy]config(1) configuration (CW].pc) file. It will exactly match the above targets, provided they expect to see this output in a CR].pc file in the manifest, or are given on on the command line.
rpm[hy]spec
  Generate an RPM .spec file, for use with I]rpm[hy]build(1).
-Help This option may be used to obtain more information about how to use the aemakegen program.
See also aegis(1) for options common to all aegis commands.

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 [lq]-project[rq], [lq]-PROJ[rq] and [lq]-p[rq] are all interpreted to mean the -Project option. The argument [lq]-prj[rq] 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 [lq]--option=value[rq] 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.25.D510
Copyright © 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012 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 MillerE[hy]Mail:pmiller@opensource.org.au
/\/\*WWW:http://miller.emu.id.au/pmiller/
Search for    or go to Top of page |  Section 1 |  Main Index


Reference Manual AEMAKEGEN (1) *(N)

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.