summaryrefslogtreecommitdiffabout
path: root/doc/GRECS_SETUP.3
blob: 43e0e32be199d8f4af11b7675f319c218df320cd (plain)
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
.\" This file is part of grecs -*- nroff -*-
.\" Copyright (C) 2007, 2009-2012, 2015 Sergey Poznyakoff
.\"
.\" Grecs 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 3, or (at your option)
.\" any later version.
.\"
.\" Grecs 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
.\" along with Grecs.  If not, see <http://www.gnu.org/licenses/>.
.\"
.TH GRECS_SETUP 3 "August 13, 2012" "GRECS" "Grecs User Reference"
.SH NAME
GRECS_SETUP \- Initialize \fBgrecs\fR submodule.
.SH SYNOPSIS
.BI "GRECS_SETUP(" "dir" ", " "options" ", " "pp-setup-file" )
.SH DESCRIPTION
The \fBGRECS_SETUP\fR macro is invoked from the host project's
\fBconfigure.ac\fR. It initializes the \fBgrecs\fR submodule
variables for compilation within that project.
.PP
All arguments are optional.
.PP
The 
.I dir
argument specifies the directory, relative to the source tree top,
where \fBgrecs\fR has been cloned. If omitted, \fBgrecs\fR is assumed.
.sp
For example, if \fBgrecs\fR was cloned using the following command:
.sp
.nf
    git clone ssh://git.gnu.org.ua/gitroot/grecs.git lib/grecs
.fi
.sp
then the \fIdir\fR argument must be \fBlib/grecs\fR.
.PP
The
.I options
argument is a space-separated list of options. The following options
are understood:
.TP
.B all-parsers
Compile all available parsers.
.TP
.B parser-bind
Build the parser for BIND configuration files.
.TP
.B parser-dhcpd
Build the parser for DHCPD configuration files.
.TP
.B parser-git
Build the parser for GIT-style configuration files.
.TP
.B parser-meta1
Build the parser for MeTA1 configuration files.
.TP
.B no-preproc
Disable the use of preprocessor.
.TP
.B install
Create and install shared library \fBlibgrecs.so\fR. Install the
documentation as well.
.TP
.B shared
Create a shared convenience library. By default, a static library is
created. Use this option if you want to incorporate grecs into another
shared library.
.TP
.B install-header
Install header files. This option is valid only when used together
with \fBshared\fR. Header files will be installed in
\fBpkgincludedir\fR. To select another installation directory, define
the variable \fBGRECS_INCLUDE_DIR\fR to the name of that directory.
.TP
.B std-pp-setup
Install the standard \fBpp-setup\fR file.
.TP
.B pp-setup-option
Add the
.B --with-pp-setup-file
option to the produced configuration file. This option allows user to
control whether to install the \fBpp-setup\fR file.
.TP
.B tests
Build tests.
.TP
.B getopt
Add \fBgetopt.m4\fR to the distributed tarball. The file is located
in \fIdir\fR/build-aux.
.TP
.B git2chg
Add \fBgit2chg.awk\fR to the distributed tarball. The file is located
in \fIdir\fR/build-aux.
.TP
.B syntax-doc
Add \fBdoc/grecs-syntax.texi\fR file to the distributed tarball. Use this
if your texinfo documentation includes that file.
.PP
The
.I pp-setup-file
argument supplies the pathname of the alternative preprocessor
setup file.  It is ignored if
.B std-pp-setup option
is given.
.PP
If neither
.B std-pp-setup
option, nor
.I pp-setup-file
parameter are supplied, no preprocessor setup file is installed.
.SH EXAMPLE
.SS "Default setup"
.RS 4
.nf
GRECS_SETUP
.fi
.RE
.SS "Complex setup"
The library sources are in \fBlib/grecs\fR.  Configure the testsuite
and add the \fBgetopt.m4\fR file to the distribution.  Install
preprocessor setup file from \fBsrc/pp-setup\fR:
.sp
.RS 4
.nf
GRECS_SETUP(lib/grecs, [tests getopt], [$(top_srcdir)/src/pp-setup])
.RE
.SH "SEE ALSO"
.BR getopt.m4 (5),
.BR pp-setup (5).
.SH AUTHORS
Sergey Poznyakoff
.SH "BUG REPORTS"
Report bugs to <gray+grecs@gnu.org.ua>.
.SH COLOPHON
The \fBGrecs\fR library is constantly changing, so this manual page
may be incorrect or out-of-date.  For the latest copy of \fBGrecs\fR
documentation, visit <http://www.gnu.org.ua/software/grecs>.
.SH COPYRIGHT
Copyright \(co 2011 Sergey Poznyakoff
.br
.na
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
.br
.ad
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
.\" Local variables:
.\" eval: (add-hook 'write-file-hooks 'time-stamp)
.\" time-stamp-start: ".TH [A-Z_][A-Z0-9_]* [0-9] \""
.\" time-stamp-format: "%:B %:d, %:y"
.\" time-stamp-end: "\""
.\" time-stamp-line-limit: 20
.\" end:

Return to:

Send suggestions and report system problems to the System administrator.