File: Makefile.global.in

package info (click to toggle)
inn2 2.5.4-3
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 11,720 kB
  • ctags: 8,983
  • sloc: ansic: 92,499; sh: 13,509; perl: 12,921; makefile: 2,985; yacc: 842; python: 342; lex: 255
file content (332 lines) | stat: -rw-r--r-- 11,991 bytes parent folder | download
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
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
##  $Id: Makefile.global.in 9433 2012-06-30 22:39:51Z iulius $
##
##  This file is meant to be the central Makefile that configure works with
##  and that all other Makefiles include.  No Makefile other than this one
##  should have to be a configure substitution target.
##
##  For installation paths, see the bottom of this file.

##  This version information is used to generate include/inn/version.h and is
##  used by INN for banner and local version identification.  The version
##  identification string will be "$VERSION ($VERSION_EXTRA)", with the
##  parentheses omitted if $VERSION_EXTRA is empty (as it is for major
##  releases).	If you make extensive local modifications to INN, you can
##  put your own version information in $VERSION_EXTRA.  If it's set to
##  "prerelease", the build time will be automatically included.
##      If you modify these two strings, you must encode them in UTF-8
##      (using only US-ASCII characters is consequently also fine) and
##      keep their length reasonable; otherwise, your news server will not
##      be complying with the NNTP protocol.

VERSION		= 2.5.4
VERSION_EXTRA	=

##  If you want to install INN relative to a root directory other than /,
##  set DESTDIR to the path to the root directory of the file system.  This
##  won't affect any of the paths compiled into INN; it's used primarily
##  when building a software distribution, where software has to be
##  installed into some file system that will later be mounted as / on the
##  final system.  DESTDIR should have a trailing slash, as the trailing
##  slash is not added automatically (in case someone wants to add a prefix
##  that isn't just a parent directory).

DESTDIR		=
D		= $(DESTDIR)

##  The absolute path to the top of the build directory, used to find the
##  libraries built as part of INN.  Using relative paths confuses libtool
##  when linking the test suite.

abs_builddir	= @abs_builddir@

##  Basic compiler settings.  COPT is the variable to override on the make
##  command line to change the optimization or add warning flags (such as
##  -Wall).  LFS_* is for large file support.  All of INN is built with the
##  large file support flags if provided.

CC		= @CC@
COPT		= @CFLAGS@
GCFLAGS		= $(COPT) -I$(top)/include @CPPFLAGS@

LDFLAGS		= @LDFLAGS@
LIBS		= @LIBS@

PROF		= -pg
PROFSUFFIX	= _p
MAKEPROFILING	= $(MAKE) COPT="$(COPT) $(PROF)" \
			  LDFLAGS="$(LDFLAGS) $(PROF)" \
			  LIBSUFFIX=$(PROFSUFFIX)

##  Used to support non-recursive make.	 This variable is set to the necessary
##  options to the compiler to create an object file in a subdirectory.	 It
##  should be used instead of -c -o $@ $< and may be replaced with code that
##  calls mv, if the compiler doesn't support -c with -o.

CCOUTPUT	= @CCOUTPUT@

##  Warnings to use with gcc.  Default to including all of the generally
##  useful warnings unless there's something that makes them unsuitable.  In
##  particular, the following warnings are *not* included:
##
##    -ansi		Requires messing with feature test macros.
##    -pedantic		Too much noise from embedded Perl.
##    -Wtraditional	We assume ANSI C, so these aren't interesting.
##    -Wshadow		Names like log or index are too convenient.
##    -Wcast-qual	Used for a while, but some casts are unavoidable.
##    -Wconversion	Too much unsigned to signed noise.
##    -Wredundant-decls Too much noise from system headers.
##
##  Some may be worth looking at again once a released version of gcc doesn't
##  warn on system headers.  The warnings below are in the same order as
##  they're listed in the gcc manual.
##
##  Add -g because when building with warnings one generally also wants the
##  debugging information, and add -O2 because gcc won't find some warnings
##  without optimization turned on.  Add -DDEBUG=1 so that we'll also
##  compile all debugging code and check it as well.

WARNINGS	= -g -O2 -DDEBUG=1 -Wall -W -Wendif-labels -Wpointer-arith \
		  -Wbad-function-cast -Wcast-align -Wwrite-strings \
		  -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs \
		  -Werror

##  Some warnings have to be suppressed for Perl, since there's no way to work
##  around the Perl header problems in INN code.

PERL_WARNINGS	= @PERL_WARNINGS@

##  libtool support.  Note that INN does not use Automake (and that
##  retrofitting Automake is likely more work than it's worth), so
##  libtool-aware rules have to be written by hand.

LIBTOOL		= @LIBTOOL@
LIBTOOLCC	= @LIBTOOLCC@
LIBTOOLINST	= @LIBTOOLINST@
LIBTOOLLD	= @LIBTOOLLD@
EXTOBJ		= @EXTOBJ@
EXTLIB		= @EXTLIB@

LIBCC		= $(LIBTOOLCC) $(CC)
LIBLD		= $(LIBTOOLLD) $(CC)

##  Berkeley DB support.  If this support is configured, anything linking
##  against libstorage also needs to link against DB_LDFLAGS and DB_LIBS.

DB_CPPFLAGS	= @DB_CPPFLAGS@ @ZLIB_CPPFLAGS@
DB_LDFLAGS	= @DB_LDFLAGS@ @ZLIB_LDFLAGS@
DB_LIBS		= @DB_LIBS@ @ZLIB_LIBS@

##  INN libraries.  Nearly all INN programs are linked with libinn, and any
##  INN program that reads from or writes to article storage or overview is
##  linked against libstorage.	STORAGE_LIBS is for external libraries
##  needed by libstorage.

LIBINN		= $(abs_builddir)/lib/libinn$(LIBSUFFIX).$(EXTLIB)
LIBHIST		= $(abs_builddir)/history/libinnhist$(LIBSUFFIX).$(EXTLIB)
LIBSTORAGE	= $(abs_builddir)/storage/libstorage$(LIBSUFFIX).$(EXTLIB)
STORAGE_LIBS	= $(DB_LDFLAGS) $(DB_LIBS)

DBM_CPPFLAGS	= @DBM_CPPFLAGS@
DBM_LIBS	= @DBM_LIBS@

CRYPT_LIBS	= @CRYPT_LIBS@
PAM_LIBS	= @PAM_LIBS@
REGEX_LIBS	= @REGEX_LIBS@
SHADOW_LIBS	= @SHADOW_LIBS@

##  Embedding support.	Additional flags and libraries used when compiling
##  or linking portions of INN that support embedded interpreters, set by
##  configure based on what interpreter embeddings are selected.

PERL_CPPFLAGS	= @PERL_CPPFLAGS@ $(PERL_WARNINGS)
PERL_LIBS	= $(abs_builddir)/lib/perl$(LIBSUFFIX).o @PERL_LIBS@

PYTHON_CPPFLAGS = @PYTHON_CPPFLAGS@
PYTHON_LIBS	= @PYTHON_LIBS@

##  OpenSSL support.  Additional flags and libraries used when compiling or
##  linking code that contains OpenSSL support, and the path to the OpenSSL
##  binaries.

SSL_CPPFLAGS	= @SSL_CPPFLAGS@
SSL_LDFLAGS	= @SSL_LDFLAGS@
SSL_LIBS	= @SSL_LIBS@

SSLBIN		= @SSLBIN@

##  SASL support.  Additional flags and libraries used when compiling or
##  linking code that contains SASL support.

SASL_CPPFLAGS	= @SASL_CPPFLAGS@
SASL_LDFLAGS	= @SASL_LDFLAGS@
SASL_LIBS	= @SASL_LIBS@

##  Kerberos support.  Additional flags and libraries used when compiling or
##  linking code that contains Kerberos support.  If Kerberos libraries were
##  compiled, KRB5_AUTH is also set to the name of the Kerberos v5
##  authenticator that should be compiled and installed.

KRB5_AUTH	= @KRB5_AUTH@
KRB5_CPPFLAGS	= @KRB5_CPPFLAGS@
KRB5_LDFLAGS	= @KRB5_LDFLAGS@
KRB5_LIBS	= @KRB5_LIBS@

##  Missing functions.	If non-empty, configure detected that your system
##  was missing some standard functions, and INN will be providing its own
##  replacements from the lib directory.

ALLOCA		= @ALLOCA@
LIBOBJS		= @LIBOBJS@

##  Paths to various standard programs used during the build process.
##  Changes to this file will *not* be reflected in the paths compiled into
##  programs; these paths are only used during the build process and for
##  some autogenerated scripts.  To change the compiled paths, see
##  include/inn/paths.h.  You may also need to modify scripts/innshellvars*.

AWK		= @AWK@
BZIP2		= @BZIP2@
COMPRESS	= @COMPRESS@
CTAGS		= ctags -t -w
GZIP		= @GZIP@
LEX		= @LEX@
LN_S		= @LN_S@
MKDIR_P		= @MKDIR_P@
PERL		= @PERL@
RANLIB		= @RANLIB@
SED		= @SED@
UNCOMPRESS	= @UNCOMPRESS@
YACC		= @YACC@

FIXCONFIG	= $(top)/support/fixconfig
FIXSCRIPT	= $(top)/support/fixscript

PERLWHOAMI	= $(PERL) -e 'print scalar getpwuid($$>), "\n"'
WHOAMI		= (whoami || /usr/ucb/whoami || $(PERLWHOAMI)) 2> /dev/null

##  Paths and command lines for programs used only by the maintainers to
##  regenerate dependencies, documentation, and the like.

MAKEDEPEND	= $(top)/support/makedepend

POD2MAN		= pod2man -c 'InterNetNews Documentation' -r 'INN $(VERSION)'
POD2TEXT	= pod2text -s -l

##  Installation directories.  If any of the below are incorrect, don't just
##  edit this file; these directories are substituted in all over the source
##  tree by configure.	Instead, re-run configure with the correct
##  command-line flags to set the directories.	Run configure --help for a
##  list of supported flags.

prefix		= @prefix@
exec_prefix	= @exec_prefix@
datarootdir	= @datarootdir@
bindir		= @bindir@
docdir		= @docdir@
includedir	= @includedir@
libdir		= @libdir@
mandir		= @mandir@
sysconfdir	= @sysconfdir@
tmpdir		= @tmpdir@

PATHNEWS	= $(prefix)
PATHBIN		= $(bindir)
PATHDATASHARE	= $(datarootdir)
PATHDOC		= $(docdir)
PATHETC		= $(sysconfdir)
PATHMAN		= $(mandir)
PATHINCLUDE	= $(includedir)
PATHLIB		= $(libdir)
PATHLIBPERL	= @LIBPERLDIR@
PATHCONTROL	= @CONTROLDIR@
PATHFILTER	= @FILTERDIR@
PATHRUN		= @RUNDIR@
PATHHTTP	= @HTTPDIR@
PATHLOG		= @LOGDIR@
PATHLOGOLD	= $(PATHLOG)/OLD
PATHDB		= @DBDIR@
PATHSPOOL	= @SPOOLDIR@
PATHTMP		= $(tmpdir)
PATHAUTH	= $(PATHBIN)/auth
PATHAUTHRESOLV	= $(PATHAUTH)/resolv
PATHAUTHPASSWD	= $(PATHAUTH)/passwd
PATHRNEWS	= $(PATHBIN)/rnews.libexec
PATHARCHIVE	= $(PATHSPOOL)/archive
PATHARTICLES	= $(PATHSPOOL)/articles
PATHINCOMING	= $(PATHSPOOL)/incoming
PATHTAPE	= $(PATHSPOOL)/innfeed
PATHINBAD	= $(PATHINCOMING)/bad
PATHOVERVIEW	= $(PATHSPOOL)/overview
PATHOUTGOING	= $(PATHSPOOL)/outgoing

MAN1		= $(mandir)/man1
MAN3		= $(mandir)/man3
MAN3PM		= $(mandir)/man3
MAN5		= $(mandir)/man5
MAN8		= $(mandir)/man8

##  Extension used for Perl modules man pages (for instance "INN::Config.3pm"
##  if MAN3PM_EXT is set to "3pm").

MAN3PM_EXT	= 3pm

##  Installation settings.  The file installation modes are determined by
##  configure; inews and rnews are special and have configure flags to
##  control how they're installed.  See INSTALL for more information.

RUNASUSER	= @RUNASUSER@
RUNASGROUP	= @RUNASGROUP@
RNEWSGROUP	= @RNEWSGRP@

INEWSMODE	= @INEWSMODE@
RNEWSMODE	= @RNEWSMODE@
FILEMODE	= @FILEMODE@

OWNER		= -o $(RUNASUSER) -g $(RUNASGROUP)
ROWNER		= -o $(RUNASUSER) -g $(RNEWSGROUP)

INSTALL		= $(top)/support/install-sh -c

##  Installation commands.  These commands are used by the installation rules
##  of each separate subdirectory.  The naming scheme is as follows: the first
##  two characters are CP (indicating a plain copy) or LI (indicating an
##  installation that goes through libtool).  After an underscore is a
##  one-character indicator of the file type (R for a regular file, X for an
##  executable, S for a setuid root executable) and then PUB for a
##  world-readable/world-executable file or PRI for a group-readable/
##  group-executable file (only the news group).
##
##  Man pages should not be backed up with an .OLD extension since it causes man
##  to complain about bogus filenames in MANPATH.
##
##  inews and rnews have their own special installation rules, as do database
##  files like active and newsgroups that should have the same permissions as
##  article files.

BACKUP_OPTION	= -B .OLD

LI_SPRI		= $(LIBTOOLINST) $(INSTALL) -o root -g $(RUNASGROUP) -m 4550 $(BACKUP_OPTION)
LI_XPRI		= $(LIBTOOLINST) $(INSTALL) $(OWNER) -m 0550 $(BACKUP_OPTION)
LI_XPUB		= $(LIBTOOLINST) $(INSTALL) $(OWNER) -m 0555 $(BACKUP_OPTION)

LI_INEWS	= $(LIBTOOLINST) $(INSTALL) $(OWNER) -m $(INEWSMODE) $(BACKUP_OPTION)
LI_RNEWS	= $(LIBTOOLINST) $(INSTALL) $(ROWNER) -m $(RNEWSMODE) $(BACKUP_OPTION)

CP_RPRI		= $(INSTALL) $(OWNER) -m 0640 $(BACKUP_OPTION)
CP_RPUB		= $(INSTALL) $(OWNER) -m 0644 $(BACKUP_OPTION)
CP_XPRI		= $(INSTALL) $(OWNER) -m 0550 $(BACKUP_OPTION)
CP_XPUB		= $(INSTALL) $(OWNER) -m 0555 $(BACKUP_OPTION)

CP_DATA		= $(INSTALL) $(OWNER) -m $(FILEMODE) $(BACKUP_OPTION)
CP_MAN		= $(INSTALL) $(OWNER) -m 0444

##  Some additional definitions needed by some versions of make, to ensure a
##  consistant set of variables are available.

SHELL		= @SHELL@

@SET_MAKE@

##  Local variables:
##  mode: makefile
##  End: