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  -  AEDE-POLICY (1)

NAME

aede[hy]policy - check change set is ready for aede

CONTENTS

Synopsis
Description
     Policies
Options
Exit Status
Environment Variables
See Also
Copyright
Author

SYNOPSIS

aede[hy]policy [ option... ][ I]policy... ]
aede[hy]policy -Help
aede[hy]policy -VERSion
aede[hy]policy -List

DESCRIPTION

The aede[hy]policy command is used to verify that a change set is ready to end development. This is intended to be used by the I]develop_ end_ policy_ command field of the project configuration file.
develop_end_policy_command =
"aede[hy]policy -p $project -c $change all";
If any of the policies should fail, the aede[hy]policy command will fail with an exit status of 1. This, in turn, will cause the I]aede(1) command to leave the change in the I]being developed state.

Note that the I]aede(1) command sets the appropriate environment variables, so the -Project and -Change options are rarely necessary.

If no policies appear on the command line, the I]aede[hy]policy project specific attribute will be checked. If it exists, it contains a list of space separated policy names.

The I]aede[hy]policy(1) command expects to be invoked on changes in the CW]being_ developed state. If invoked for a change in the CW]being_ integrated state (common if invoked as part of the build) it will silently do nothing. All other change states will result in a fatal error message.

    POLICIES

There are a range of policies that can be selected.
all Check all of the I]copyright, I]crlf, I]description and I]printable policies.
comments This policy checks for C comments in C++ files, or C++ comments in C files. The forms of the comments give sublimial hints to the reader as to what language is being read. Mismatched comments make the code subtly harder to read and thus harder to maintain.
copyright
  This policy checks that each file in the change set contains a copyright notice of the form
  Copyright (C) B]year I]something
where B]year is the current year (you can have a range of years, too). Binary files are ignored. The I]something part is either the project specific I]copyright[hy]owner attribute, or the executing users full name.
foreign[hy]copyright
  Change sets marked with a I]foreign[hy]copyright=true attribute are ignored, as are files similarly marked.
crlf This policy checks that all files are using UNIX line termination (NL), not DOS line termination (CRLF). Binary files are ignored.
description
  This policy checks that the change set I]brief_description and I]description attributes have been updated to something other than the defaults.
escape[hy]hyphen
  This policy checks that hypen in roff sources (such as I]man(1) pages) that contain unescaped minus or hyphen characters. This is one of the more annoying warnings produced by I]lintian(1) when building Debian packages.
aede[hy]policy[hy]escape[hy]hyphen
  This check is not applied to files carrying a I]aede[hy]policy[hy]escape[hy]hyphen=false attribute.
fsf[hy]address
  This policy checks that the FSF address, if present in source files, is up[hy]to[hy]date. This is useful for Free Software projects.
gpl[hy]version
gpl[hy]version=I]nn
  This policy checks files that cite the GNU GPL in their file headers, to be sure they contain the correct version of the GNU GPL. Defaults to version 3 if no version number specified.
line[hy]length
line[hy]length=I]nn
  This policy checks that files have this maximum line length. Defaults to 80 if no width is specified. It understands I]vim(1) mode lines, particularly for the [lq]tabsize[rq] setting.
aede[hy]policy[hy]line[hy]length
  Can be overridden per file using the I]aede[hy]policy[hy]line[hy]length file attribute.
man[hy]pages
  This policy requires that each installable program be accompanied by a I]man(1) manual page.
merge[hy]fhist
  This policy requires that there be no I]fmerge(1) conflict lines present in any source files. The name comes from the name of the package containing this tool: I]fhist.
merge[hy]rcs
  This policy requires that there be no I]merge(1) conflict lines present in any source files. The name comes from the name of the package containing this tool: I]rcs.
no[hy]tabs This policy checks that files have no tabs characters in them. This is useful when a team of developers all use different editors and different tab stops. By only using spaces, the code is presented to all developers the same way.
foreign[hy]copyright
  This check is not applied to change sets with a I]foreign[hy]copyright=true attribute, because you have little control over them (change the tabs in a later change set, if at all).
aede[hy]policy[hy]tabs[hy]allowed
  This check is not applied to files which are called CW]Makefile or similar, and it is not applied to files carrying a I]aede[hy]policy[hy]tabs[hy]allowed=true attribute.
printable
  This policy checks that each file in the change set contains only printable text characters and white space.
content[hy]type
  The I]content[hy]type file attribute is taken into account; if there is no I]content[hy]type file attribute, or there is no charset specified by the I]content[hy]type file attribute, plain 7[hy]bit ASCII text is assumed.
reserved This policy checks that C and C++ identifiers reserved by the ANSI C and C++ Standards are used. See section 2.10 of both standards. Only C and C++ source files are checked.
text This policy checks that each file in the change set contains only text, although international character sets are acceptable. This is basically a test for NUL characters, because everything else could be part of a valid character encoding of some international character set.
version[hy]info
  This policy checks the version[hy]info rules for shared libraries, as laid out by the I]libtool(1) manual, and required by the Debian Policy Manual. This is done by examining the actual shared libraries, the one being built, and the one in the ancestor baseline (I]i.e. the one to be replaced) to confirm that the version[hy]info strings conform. By examining the actual shared libraries, an objective view of what has been added, modified and removed can be obtained.

The shared library to examine is obtained from a CW]project_specific attribute:
aede[hy]policy:version[hy]info:library
  This is set to the baseline[hy]relative name of the shared library file. You don’t have to add the secret I]libtool(1) [lq].libs[rq] directory, this policy can work that out for itself.
aemakegen:version[hy]info
  This is the string which I]aemakegen(1) would use if it were invoked. This is also checked. If you aren’t using I]aemakegen(1), it is a good idea to set this attribute anyway and access it via I]aesub(1) from within your build system.
This policy requires I]nm(1)’s B]--dynamic option to work correctly on the CW].so file (it is part of the GNU binutils package).

vim[hy]mode
  This policy checks that each file in the change set contains contains a I]vim(1) mode line. Binary files are ignored.
aede[hy]policy[hy]vim[hy]mode[hy]required
  Set this attribute to false on files for which this is not to be checked.
white[hy]space
  This policy checks that there is no white space on the ends of lines, that there are no blank lines at the ends of files.
If no policy is specified, only the I]description policy will be checked.

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.
-Help This option may be used to obtain more information about how to use the aede[hy]policy program.
-List List all of the available validations.
-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.
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 aede[hy]policy are long, this means ignoring the extra leading ’-’. The [lq]--option=value[rq] convention is also understood.

EXIT STATUS

The aede[hy]policy command will exit with a status of 1 on any error. The aede[hy]policy 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.

SEE ALSO

aede(1) end development of a change
aepconf(5)
  project configuration file

COPYRIGHT

aede[hy]policy 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 aede[hy]policy program comes with ABSOLUTELY NO WARRANTY; for details use the ’aede[hy]policy -VERSion License’ command. This is free software and you are welcome to redistribute it under certain conditions; for details use the ’aede[hy]policy -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 AEDE[HY]POLICY (1) *(N)

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