1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129
|
.\" Hey, Emacs! This is an -*- nroff -*- source file.
.\"
.\" Copyright (C) 2007-2009 AdaCore
.\" Copyright (C) 2009 Ludovic Brenta <lbrenta@debian.org>
.\"
.\" This is free software; you can redistribute it and/or modify it under
.\" the terms of the GNU General Public License as published by the Free
.\" Software Foundation; either version 2, or (at your option) any later
.\" version.
.\"
.\" This is distributed in the hope that it will be useful, but WITHOUT
.\" ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
.\" for more details.
.\"
.\" You should have received a copy of the GNU General Public License with
.\" your Debian GNU/Linux system, in /usr/share/common-licenses/GPL, or with the
.\" dpkg source package as the file COPYING. If not, write to the Free
.\" Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
.\"
.TH "GNATSYNC" 1 "November 2009" "GNU Ada Tools" "ASIS Tools"
.SH NAME
gnatsync \- The GNAT global dependency detector
.SH SYNOPSIS
\fBgnatsync\fR [\fIOPTION\fR]... \fIfilename\fR [\fB-cargs\fR \fIgcc_switches\fR]
.PP
\fBgnatsync\fR [\fIOPTION\fR]... -files=\fIfilename\fR [\fB-cargs\fR \fIgcc_switches\fR]
.SH DESCRIPTION
.PP
\fBgnatsync\fR is the GNAT static analysis tool that helps to detect
potential race conditions in multitasking programs, by exposing the
global data that is accessed in unsynchronized manner by independent
threads or Ada tasks.
Input to \fBgnatsync\fR is a set of compilable Ada sources that
constitutes a complete program. As it output, the tool prints out a
list of a data objects for which potential unsynchronized access is
detected, and for each such object the tool provides a list of threads
that access this object. Each access is specified by a full sequence
of subprograms calls when a given thread does not reference the object
directly.
\fBgnatsync\fR is an ASIS-based tool. It compiles the given sources to
create the corresponding tree files. All these compilations take place
in a temporary directory, which is created in the beginning of a
\fBgnatsync\fR run and is deleted when the processing of the argument
sources is completed. If a source file specified as \fBgnatsync\fR
argument does not contain a legal Ada program unit, that is to say if
the program has syntactic of semantic errors, \fBgnatsync\fR cannot
process it. If the specified source contains an Ada unit which depends
on Ada units located in other directories, the user can either specify
the source search path by means of a -I option in '-cargs' section of
\fBgnatsync\fR parameters, in the same way as the source search path
can be specified for GNAT. This is not needed if \fBgnatsync\fR is
called from the GNAT driver with the corresponding project file.
.PP
In the first form, \fBgnatsync\fR examines the specified Ada source
files (wildcards are allowed).
.PP
In the second form, \fBgnatsync\fR examines the Ada source files
listed in the specified file.
.SH OPTIONS
.TP
\fB-a\fR
Process RTL units.
.TP
\fB-cargs\fR \fIgcc_switches\fR
Pass \fIgcc_switches\fR to GCC when producing the tree files.
.TP
\fB-d\fR
Debug mode.
.TP
\fB-dd\fR
Progress indicator mode, for use in the GNAT Programming Studio.
.TP
\fB-main\fR=\fIfilename\fR
Specify file containing main subprogram
.TP
\fB-o(s|m|f)\fR
Output detail level: s=short, m=medium (the default), f=full.
.TP
\fB-out_file\fR=\fIfilename\fR
Send output to \fIfilename\fR.
.TP
\fB-q\fR
Quiet mode: do not report detections on standard output.
.TP
\fB-t\fR
Output execution time.
.TP
\fB-threads\fR=\fIfilename\fR
Specify file describing foreign threads
.TP
\fB-v\fR
Verbose mode.
.TP
\fB-wq\fR
Turn warnings off.
.SH PROJECT FILE SUPPORT
\fBgnasync\fR can be applied to any set of sources, but it can produce
useful and complete results when called to a set of sources that make
up a complete program. The most convenient way to specify such a set
of sources is a project file. \fBgnatsync\fR can be called from the
GNAT driver as other tools, so the most practical way of invoking the
tool is:
.TP
\fBgnat sync -P\fR\fIproj\fR \fB-U\fR [\fIoptions\fR]
.SH AUTHOR
.PP
\fBgnatsync\fR was written by AdaCore (http://www.adacore.com).
.PP
This manual page was written by Ludovic Brenta <lbrenta@debian.org>
for the Debian project, from gnatsync's README file.
.SH COPYRIGHT
\fBgnatsync\fR is Copyright (c) 2007-2009 AdaCore
.PP
This manual page is Copyright (C) 2009 Ludovic Brenta
<lbrenta@debian.org>.
.SH SEE ALSO
.PP
asistant(1), gnat(1), gnatcheck(1), gnatelim(1), gnatmetric(1), gnatpp(1)
.PP
The full documentation for \fBgnatsync\fR in
/usr/share/doc/asis-programs/README.gnatsync.
.TP
\fBinfo asis_ug\fR ASIS-for-GNAT User's Guide
.TP
\fBinfo asis_rm\fR ASIS-for-GNAT Reference Manual
|