<!doctype refentry PUBLIC "-//OASIS//DTD DocBook V4.1//EN" [

<!-- Process this file with docbook-to-man to generate an nroff manual
     page: `docbook-to-man manpage.sgml > manpage.1'.  You may view
     the manual page with: `docbook-to-man manpage.sgml | nroff -man |
     less'.  A typical entry in a Makefile or Makefile.am is:

manpage.1: manpage.sgml
	docbook-to-man $< > $@

    
	The docbook-to-man binary is found in the docbook-to-man package.
	Please remember that if you create the nroff version in one of the
	debian/rules file targets (such as build), you will need to include
	docbook-to-man in your Build-Depends control field.

  -->

  <!-- Fill in your name for FIRSTNAME and SURNAME. -->
  <!ENTITY dhfirstname "<firstname>Antonio</firstname>">
  <!ENTITY dhsurname   "<surname>Terceiro</surname>">
  <!-- Please adjust the date whenever revising the manpage. -->
  <!ENTITY dhdate      "<date>10 February 2005</date>">
  <!-- SECTION should be 1-8, maybe w/ subsection other parameters are
       allowed: see man(7), man(1). -->
  <!ENTITY dhsection   "<manvolnum>1</manvolnum>">
  <!ENTITY dhemail     "<email>asaterceiro@inf.ufrgs.br</email>">
  <!ENTITY dhusername  "Antonio S. de A. Terceiro">
  <!ENTITY dhucpackage "<refentrytitle>AspectC++</refentrytitle>">
  <!ENTITY dhpackage   "aspectc++">

  <!ENTITY debian      "<productname>Debian</productname>">
  <!ENTITY gnu         "<acronym>GNU</acronym>">
  <!ENTITY gpl         "&gnu; <acronym>GPL</acronym>">
]>

<refentry>
  <refentryinfo>
    <address>
      &dhemail;
    </address>
    <author>
      &dhfirstname;
      &dhsurname;
    </author>
    <copyright>
      <year>2005</year>
      <holder>&dhusername;</holder>
    </copyright>
    &dhdate;
  </refentryinfo>
  <refmeta>
    &dhucpackage;

    &dhsection;
  </refmeta>
  <refnamediv>
    <refname>&dhpackage;</refname>
    <refpurpose>aspect weaver for C++</refpurpose>
  </refnamediv>
  <refsynopsisdiv>
    <cmdsynopsis>
      <command>ac++</command>
        <arg choice="req"> -p <replaceable>srcidr</replaceable> -d <replaceable>destdir</replaceable></arg>
    </cmdsynopsis>
    <cmdsynopsis>
      <command>ac++</command>
        <arg choice="req"> -c <replaceable>input</replaceable> -o <replaceable>outputr</replaceable></arg>
    </cmdsynopsis>
  </refsynopsisdiv>
  <refsect1>
    <title>DESCRIPTION</title>

    <para>This manual page documents briefly the
      <command>ac++</command> command.
    </para>

    <para>
      <command>ac++</command> is the AspectC++ weaver. <command>ac++</command>
      does source-to-source translation. This manual page documents the minimum
      needed in order to use <command>ac++</command>. For a better reference,
      see AspectC++ documentation.
    </para>

    <para>The first syntax form above invokes <command>ac++</command> in WPT
    mode, while the second one invokes it in STU mode (see OPERATION MODES
    below)
    </para>

  </refsect1>
  <refsect1>
    <title>OPERATION MODES</title>

    <para>
      <emphasis>WPT</emphasis> (whole program transformation) mode does the
      translation of the entire source tree into another one. This is useful to
      apply all the aspects of one source tree, generating other source tree
      with the aspects woven into the sources.
    </para>
    <para>
To use WPT mode, run <command>ac++</command> with the first syntax form
Specify the original source tree in the <emphasis>srcdir</emphasis>
argument, and a name for the destination source tree in the
<emphasis>destdir</emphasis> argument.
    </para>

    <para>
<emphasis>STU</emphasis> (single translation unit) mode does the
translation of one translation unit, namely a C++ single file, for
exemple. This mode applies to the translation units all aspects that
affect it.
    </para>
    <para>
To use STU mode, run <command>ac++</command> with the second syntax form.
Specify the translation unit in the <emphasis>input</emphasis> argument,
and the output file in the <emphasis>output</emphasis> argument.  The
<option>-c</option> works as in <command>g++</command>: if omitted,
you're telling to <command>ac++</command> to compile the source into an
executable; if present, source will be compiled into an object (.o) file.
    </para>
    
  </refsect1>
  <refsect1>
    <title>OPTIONS</title>

    <para>
    Further options can be seen in AspectC++ documentation.
    </para>

  </refsect1>
  <refsect1>
    <title>SEE ALSO</title>

    <para>ag++ (1), g++ (1).</para>

    <para>
      Again: for full reference on AspectC++ usage, see AspectC++
      documentation. It can be obtained from
      <emphasis>http://www.aspectc.org</emphasis>
    </para>

  </refsect1>
  <refsect1>
    <title>AUTHOR</title>

    <para>
This manual page was written by &dhusername; &lt;&dhemail;&gt; for the &debian;
system (but may be used by others).  Permission is granted to copy,
distribute and/or modify this document under the terms of the &gnu;
General Public License, Version 2 any later version published by the Free
Software Foundation.
    </para>
	<para>
	  On Debian systems, the complete text of the GNU General Public
	  License can be found in /usr/share/common-licenses/GPL.
	</para>

  </refsect1>
</refentry>

<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:2
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->


