* release of groffer 0.9.15
[s-roff.git] / Makefile.in
blob5ec1b160c17848421fb6631d5a25af32dec103b1
1 # Copyright (C) 1989-2000, 2001, 2002, 2003, 2004, 2005
2 # Free Software Foundation, Inc.
3 # Written by James Clark (jjc@jclark.com)
4 #
5 # This file is part of groff.
6 #
7 # groff is free software; you can redistribute it and/or modify it under
8 # the terms of the GNU General Public License as published by the Free
9 # Software Foundation; either version 2, or (at your option) any later
10 # version.
12 # groff is distributed in the hope that it will be useful, but WITHOUT ANY
13 # WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
15 # for more details.
17 # You should have received a copy of the GNU General Public License along
18 # with groff; see the file COPYING. If not, write to the Free Software
19 # Foundation, 51 Franklin St - Fifth Floor, Boston, MA 02110-1301, USA.
21 SHELL=@SHELL@
23 srcdir=@srcdir@
24 top_srcdir=@abs_top_srcdir@
25 VPATH=@srcdir@
26 top_builddir=@abs_top_builddir@
28 # `RT_SEP' is the operating system's native PATH SEPARATOR CHAR, which
29 # is to be used in runtime PATHs compiled into groff executables.
30 RT_SEP=@GROFF_PATH_SEPARATOR@
32 # `SH_SEP' is a alternative PATH SEPARATOR CHAR, to be used in shell
33 # scripts and makefile rules; it may be the same as `RT_SEP', but,
34 # particularly in some Microsoft environments, it may differ.
35 SH_SEP=@PATH_SEPARATOR@
37 version=`cat $(top_srcdir)/VERSION`
38 # No additional number if revision is zero.
39 revision=`sed -e 's/^0$$//' -e 's/^[1-9].*$$/.&/' $(top_srcdir)/REVISION`
41 # Define `page' to be letter if your PostScript printer uses 8.5x11
42 # paper (USA) and define it to be A4, if it uses A4 paper (rest of the
43 # world).
44 PAGE=@PAGE@
46 # The name of the ghostscript program. Normally, gs, on GNU/Linux
47 # but it might be different on MS-DOS/MS-WIN32 systems.
48 GHOSTSCRIPT=@GHOSTSCRIPT@
50 # `ALT_GHOSTSCRIPT_PROGS' specifies a list alternative names,
51 # which can be tried if `GHOSTSCRIPT' cannot be found at run time.
52 ALT_GHOSTSCRIPT_PROGS=@ALT_GHOSTSCRIPT_PROGS@
54 # Similarly, `ALT_AWK_PROGS' specifies a list of alternative names,
55 # which can be tried at run time, to identify the awk program.
56 ALT_AWK_PROGS=@ALT_AWK_PROGS@
58 # Normally the Postscript driver, grops, produces output that conforms
59 # to version 3.0 of the Adobe Document Structuring Conventions.
60 # Unfortunately some spoolers and previewers can't handle such output.
61 # The BROKEN_SPOOLER_FLAGS variable tells grops what it should do to
62 # make its output acceptable to such programs. This variable controls
63 # only the default behaviour of grops; the behaviour can be changed at
64 # runtime by the grops -b option (and so by groff -P-b).
65 # Use a value of 0 if your spoolers and previewers are able to handle
66 # conforming PostScript correctly.
67 # Add 1 if no %%{Begin,End}DocumentSetup comments should be generated;
68 # this is needed for early versions of TranScript that get confused by
69 # anything between the %%EndProlog line and the first %%Page: comment.
70 # Add 2 if lines in included files beginning with %! should be
71 # stripped out; this is needed for the OpenWindows 2.0 pageview previewer.
72 # Add 4 if %%Page, %%Trailer and %%EndProlog comments should be
73 # stripped out of included files; this is needed for spoolers that
74 # don't understand the %%{Begin,End}Document comments. I suspect this
75 # includes early versions of TranScript.
76 # Add 8 if the first line of the PostScript output should be %!PS-Adobe-2.0
77 # rather than %!PS-Adobe-3.0; this is needed when using Sun's Newsprint
78 # with a printer that requires page reversal.
79 BROKEN_SPOOLER_FLAGS=@BROKEN_SPOOLER_FLAGS@
81 # `DEVICE' is the default device.
82 DEVICE=ps
84 # `XDEVDIRS' is either `font/devX{75,100}{,-12}' or empty.
85 XDEVDIRS=@XDEVDIRS@
87 # `XPROGDIRS' is either `src/devices/xditview src/utils/xtotroff' or empty.
88 XPROGDIRS=@XPROGDIRS@
90 # `XLIBDIRS' is either `src/libs/libxutil' or empty.
91 XLIBDIRS=@XLIBDIRS@
93 # `TTYDEVDIRS' is either `font/devascii font/devlatin1' (for
94 # ASCII) or `font/devcp1047' (for EBCDIC) plus font/devutf8.
95 TTYDEVDIRS=@TTYDEVDIRS@ font/devutf8
97 # `OTHERDEVDIRS' is either `font/devlj4 font/devlbp' (for ASCII) or
98 # empty (for EBCDIC).
99 OTHERDEVDIRS=@OTHERDEVDIRS@
101 # `PSPRINT' is the command to use for printing a PostScript file,
102 # for example `lpr'.
103 PSPRINT=@PSPRINT@
105 # `DVIPRINT' is the command to use for printing a TeX dvi file,
106 # for example `lpr -d'.
107 DVIPRINT=@DVIPRINT@
109 # Prefix for names of programs that have Unix counterparts.
110 # For example, if `g' is `g' then troff will be installed as
111 # gtroff. This doesn't affect programs like grops or groff that have
112 # no Unix counterparts. Note that the groff versions of eqn and tbl
113 # will not work with Unix troff.
114 g=@g@
116 # Common prefix for installation directories.
117 # Used in definitions of exec_prefix, datasubdir, fontpath, manroot.
118 # This must already exist when you do make install.
119 prefix=@prefix@
120 exec_prefix=@exec_prefix@
122 # `bindir' says where to install executables.
123 bindir=@bindir@
125 # `libdir' says where to install platform-dependent data.
126 libdir=@libdir@
127 libprogramdir=$(libdir)/groff
129 # `datasubdir' says where to install platform-independent data files.
130 datadir=@datadir@
131 dataprogramdir=$(datadir)/groff
132 datasubdir=$(dataprogramdir)/$(version)$(revision)
134 # `infodir' says where to install info files.
135 infodir=@infodir@
137 # `docdir' says where to install documentation files.
138 docdir=$(datadir)/doc/groff/$(version)$(revision)
140 # `exampledir' says where to install example files.
141 exampledir=$(docdir)/examples
143 # `htmldocdir' says where to install documentation in HTML format.
144 htmldocdir=$(docdir)/html
146 # `pdfdocdir' says where to install documentation in PDF format.
147 pdfdocdir=$(docdir)/pdf
149 # `fontdir' says where to install dev*/*.
150 fontdir=$(datasubdir)/font
152 # `localfontdir' says where local fonts will be installed (as dev*/*).
153 localfontdir=$(dataprogramdir)/site-font
155 # `legacyfontdir' is for compatibility with non-GNU troff.
156 legacyfontdir=/usr/lib/font
158 # `fontpath' says where to look for dev*/*.
159 fontpath=$(localfontdir)$(RT_SEP)$(fontdir)$(RT_SEP)$(legacyfontdir)
161 # `tmacdir' says where to install macros.
162 tmacdir=$(datasubdir)/tmac
164 # `systemtmacdir' says where to install platform-dependent macros.
165 systemtmacdir=$(libprogramdir)/site-tmac
167 # `localtmacdir' says where local files will be installed.
168 localtmacdir=$(dataprogramdir)/site-tmac
170 # `appresdir' says where to install the application resource file for
171 # gxditview.
172 appresdir=@appresdir@
174 # `tmacpath' says where to look for macro files.
175 # The current directory will be prepended in unsafe mode only; the home
176 # directory will be always added.
177 # `troffrc' and `troffrc-end' (and `eqnrc') are searched neither in the
178 # current nor in the home directory.
179 tmacpath=$(systemtmacdir)$(RT_SEP)$(localtmacdir)$(RT_SEP)$(tmacdir)
181 # `sys_tmac_prefix' is prefix (if any) for system macro packages.
182 sys_tmac_prefix=@sys_tmac_prefix@
184 # `pnmtops_nosetpage' is the command to be run to generate an eps
185 # file. Some versions of pnmtops provide the -nosetpage option.
186 # We detect this and use it if present.
187 pnmtops_nosetpage=@pnmtops_nosetpage@
189 # `tmac_wrap' is list of system macro packages that should be made
190 # available to groff by creating a corresponding macro package
191 # in the groff macro directory that references the system macro
192 # package.
193 tmac_wrap=@tmac_wrap@
195 # If there is a groff version of a macro package listed in $(tmac_wrap),
196 # then the groff version will be installed with a prefix of this.
197 # Don't make this empty.
198 tmac_prefix=g
200 # The groff -mm macros will be available as -m$(tmac_m_prefix)m.
201 tmac_m_prefix=\
202 `for i in $(tmac_wrap) ""; do case "$$i" in m) echo $(tmac_prefix);; esac; done`
203 # The groff -ms macros will be available as -m$(tmac_s_prefix)s.
204 tmac_s_prefix=\
205 `for i in $(tmac_wrap) ""; do case "$$i" in s) echo $(tmac_prefix);; esac; done`
206 # The groff -man macros will be available as -m$(tmac_an_prefix)an.
207 tmac_an_prefix=\
208 `for i in $(tmac_wrap) ""; do case "$$i" in an) echo $(tmac_prefix);; esac; done`
210 # Extension to be used for refer index files. Index files are not
211 # sharable between different architectures, so you might want to use
212 # different suffixes for different architectures. Choose an extension
213 # that doesn't conflict with refer or any other indexing program.
214 indexext=.i
216 # Directory containing the default index for refer.
217 indexdir=/usr/dict/papers
219 # The filename (without suffix) of the default index for refer.
220 indexname=Ind
222 # common_words_file is a file containing a list of common words.
223 # If your system provides /usr/lib/eign it will be copied onto this,
224 # otherwise the supplied eign file will be used.
225 common_words_file=$(datasubdir)/eign
227 # `manroot' is the root of the man page directory tree.
228 mandir=@mandir@
229 manroot=$(mandir)
231 # `man1ext' is the man section for user commands.
232 man1ext=1
233 man1dir=$(manroot)/man$(man1ext)
235 # `man5ext' is the man section for file formats.
236 man5ext=5
237 man5dir=$(manroot)/man$(man5ext)
239 # `man7ext' is the man section for macros.
240 man7ext=7
241 man7dir=$(manroot)/man$(man7ext)
243 # The configure script checks whether all necessary utility programs for
244 # grohtml are available -- only then we can build the HTML documentation.
245 make_html=@make_html@
246 make_install_html=@make_install_html@
248 # The configure script also checks whether all necessary utility programs
249 # for pdfroff are available -- only then we can build PDF documentation.
250 make_pdfdoc=@make_pdfdoc@
251 make_install_pdfdoc=@make_install_pdfdoc@
253 # DEFINES should include the following:
254 # -DHAVE_MMAP if you have mmap() and <sys/mman.h>
255 # -DARRAY_DELETE_NEEDS_SIZE if your C++ doesn't understand `delete []'
256 # -DSYS_SIGLIST_DECLARED if you have sys_siglist[]
257 # -DWCOREFLAG=0200 if the 0200 bit of the status returned by
258 # wait() indicates whether a core image was
259 # produced for a process that was terminated
260 # by a signal
262 # -DHAVE_DIRENT_H if you have <dirent.h>
263 # -DHAVE_LIMITS_H if you have <limits.h>
264 # -DHAVE_CC_LIMITS_H if you have a C++ <limits.h>
265 # -DHAVE_MATH_H if you have <math.h>
266 # -DHAVE_CC_OSFCN_H if you have a C++ <osfcn.h>
267 # -DHAVE_CC_INTTYPES_H if you have a C++ <inttypes.h>
268 # -DHAVE_STDLIB_H if you have <stdlib.h>
269 # -DHAVE_STRING_H if you have <string.h>
270 # -DHAVE_STRINGS_H if you have <strings.h>
271 # -DHAVE_SYS_DIR_H if you have <sys/dir.h>
272 # -DHAVE_SYS_TIME_H if you have <sys/time.h>
273 # -DHAVE_UNISTD_H if you have <unistd.h>
275 # -DHAVE_FMOD if you have fmod()
276 # -DHAVE_GETCWD if you have getcwd()
277 # -DHAVE_GETTIMEOFDAY if you have gettimeofday()
278 # -DHAVE_ISATTY if you have isatty()
279 # -DHAVE_KILL if you have kill()
280 # -DHAVE_MKSTEMP if you have mkstemp()
281 # -DHAVE_MMAP if you have mmap()
282 # -DHAVE_PUTENV if you have putenv()
283 # -DHAVE_RENAME if you have rename()
284 # -DHAVE_SETLOCALE if you have setlocale()
285 # -DHAVE_SNPRINTF if you have snprintf()
286 # -DHAVE_STRCASECMP if you have strcasecmp()
287 # -DHAVE_STRNCASECMP if you have strncasecmp()
288 # -DHAVE_STRERROR if you have strerror()
289 # -DHAVE_STRSEP if you have strsep()
290 # -DHAVE_STRTOL if you have strtol()
291 # -DHAVE_VSNPRINTF if you have vsnprintf()
293 # -DNEED_DECLARATION_GETTIMEOFTODAY
294 # if your C++ <sys/time.h> doesn't declare
295 # gettimeofday()
296 # -DNEED_DECLARATION_HYPOT if your C++ <math.h> doesn't declare hypot()
297 # -DNEED_DECLARATION_PCLOSE if your C++ <stdio.h> doesn't declare pclose()
298 # -DNEED_DECLARATION_POPEN if your C++ <stdio.h> doesn't declare popen()
299 # -DNEED_DECLARATION_PUTENV if your C++ <stdlib.h> doesn't declare
300 # putenv()
301 # -DNEED_DECLARATION_RAND if your C++ <stdlib.h> doesn't declare rand()
302 # -DNEED_DECLARATION_SNPRINTF if your C++ <stdio.h> doesn't declare
303 # snprintf()
304 # -DNEED_DECLARATION_SRAND if your C++ <stdlib.h> doesn't declare srand()
305 # -DNEED_DECLARATION_STRCASECMP if your C++ <string.h> doesn't declare
306 # strcasecmp()
307 # -DNEED_DECLARATION_STRNCASECMP
308 # if your C++ <string.h> doesn't declare
309 # strncasecmp()
310 # -DNEED_DECLARATION_VFPRINTF if your C++ <stdio.h> doesn't declare
311 # vfprintf()
312 # -DNEED_DECLARATION_VSNPRINTF if your C++ <stdio.h> doesn't declare
313 # vsnprintf()
315 # -DRET_TYPE_SRAND_IS_VOID if srand() returns void not int
316 # -DHAVE_SYS_NERR if you have sysnerr in <errno.h> or <stdio.h>
317 # -DHAVE_SYS_ERRLIST if you have sys_errlist in <errno.h> or
318 # <stdio.h>
319 # -DTRADITIONAL_CPP if your C++ compiler uses a traditional
320 # (Reiser) preprocessor
321 # -DLONG_FOR_TIME_T if localtime() takes a long * not a time_t *
322 # -DHAVE_STRUCT_EXCEPTION if <math.h> defines struct exception
323 # -DRETSIGTYPE=int if signal handlers return int not void
324 # -DIS_EBCDIC_HOST if the host's encoding is EBCDIC
325 # -DPAGE=A4 if the the printer's page size is A4
326 # -DGHOSTSCRIPT=gs the name (and directory if required) of the
327 # ghostscript program
328 DEFINES=@DEFS@
330 # Include
332 # {fmod,getcwd,mkstemp,putenv,snprintf,strcasecmp,
333 # strerror,strncasecmp,strtol}.$(OBJEXT)
335 # in LIBOBJS if your C library is missing the corresponding function.
336 # vsnprintf is defined in the snprintf.$(OBJEXT) module.
337 LIBOBJS=@LIBOBJS@
339 # `CCC' is the compiler for C++ (.cpp) files.
340 CCC=@CXX@
341 CC=@CC@
342 # CCDEFINES are definitions for C++ compilations.
343 CCDEFINES=$(DEFINES)
344 # CDEFINES are definitions for C compilations.
345 CDEFINES=$(DEFINES)
347 CCFLAGS=@CXXFLAGS@
348 CFLAGS=@CFLAGS@
349 CPPFLAGS=@CPPFLAGS@
350 LDFLAGS=@LDFLAGS@
352 X_CFLAGS=@X_CFLAGS@
353 X_LIBS=@X_LIBS@
354 X_EXTRA_LIBS=@X_EXTRA_LIBS@
355 X_PRE_LIBS=@X_PRE_LIBS@
357 YACC=@YACC@
358 YACCFLAGS=-v
360 EXEEXT=@EXEEXT@
361 OBJEXT=@OBJEXT@
362 # a simple heuristic assumption
363 LIBEXT=`case $(OBJEXT) in obj) echo lib;; *) echo a;; esac`
364 LIBS=@LIBS@
365 LIBM=@LIBM@
366 RANLIB=@RANLIB@
367 INSTALL=@INSTALL@
368 INSTALL_PROGRAM=@INSTALL_PROGRAM@
369 INSTALL_SCRIPT=@INSTALL_SCRIPT@
370 INSTALL_DATA=@INSTALL_DATA@
371 INSTALL_INFO=@INSTALL_INFO@
372 LN_S=@LN_S@
373 AR=ar
374 ETAGS=etags
375 ETAGSFLAGS=
376 # Flag that tells etags to assume C++.
377 ETAGSCCFLAG=-C
378 # Full path to perl.
379 PERLPATH=@PERLPATH@
380 # Sed command with which to edit sh scripts.
381 SH_SCRIPT_SED_CMD=@SH_SCRIPT_SED_CMD@
382 # Sed script to deal with OS dependencies in sh scripts.
383 SH_DEPS_SED_SCRIPT=$(top_builddir)/arch/misc/shdeps.sed
385 # The program to create directory hierarchies.
386 mkinstalldirs= $(SHELL) $(top_srcdir)/mkinstalldirs
388 PURIFY=purify
389 PURIFYCCFLAGS=
390 #PURIFYCCFLAGS=-g++=yes \
391 # -collector=`dirname \`$(CCC) -print-libgcc-file-name\``/ld
393 # Passing down MAKEOVERRIDES prevents $(MAKE) from containing a second
394 # copy of $(MDEFINES) when making individual directories; this could
395 # cause the argument list to become too long on some systems.
396 MDEFINES= \
397 "ALT_AWK_PROGS=$(ALT_AWK_PROGS)" \
398 "ALT_GHOSTSCRIPT_PROGS=$(ALT_GHOSTSCRIPT_PROGS)" \
399 "AR=$(AR)" \
400 "BROKEN_SPOOLER_FLAGS=$(BROKEN_SPOOLER_FLAGS)" \
401 "CC=$(CC)" \
402 "CCC=$(CCC)" \
403 "CCDEFINES=$(CCDEFINES)" \
404 "CCFLAGS=$(CCFLAGS)" \
405 "CDEFINES=$(CDEFINES)" \
406 "CFLAGS=$(CFLAGS)" \
407 "CPPFLAGS=$(CPPFLAGS)" \
408 "DEVICE=$(DEVICE)" \
409 "DVIPRINT=$(DVIPRINT)" \
410 "ETAGS=$(ETAGS)" \
411 "ETAGSCCFLAG=$(ETAGSCCFLAG)" \
412 "ETAGSFLAGS=$(ETAGSFLAGS)" \
413 "EXEEXT=$(EXEEXT)" \
414 "INSTALL_DATA=$(INSTALL_DATA)" \
415 "INSTALL_INFO=$(INSTALL_INFO)" \
416 "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
417 "INSTALL_SCRIPT=$(INSTALL_SCRIPT)" \
418 "LDFLAGS=$(LDFLAGS)" \
419 "LIBEXT=$(LIBEXT)" \
420 "LIBM=$(LIBM)" \
421 "LIBOBJS=$(LIBOBJS)" \
422 "LIBS=$(LIBS)" \
423 "MAKEOVERRIDES=$(MAKEOVERRIDES)" \
424 "OBJEXT=$(OBJEXT)" \
425 "OTHERDEVDIRS=$(OTHERDEVDIRS)" \
426 "PAGE=$(PAGE)" \
427 "GHOSTSCRIPT=$(GHOSTSCRIPT)" \
428 "PERLPATH=$(PERLPATH)" \
429 "PSPRINT=$(PSPRINT)" \
430 "PURIFY=$(PURIFY)" \
431 "PURIFYCCFLAGS=$(PURIFYCCFLAGS)" \
432 "RANLIB=$(RANLIB)" \
433 "RT_SEP=$(RT_SEP)" \
434 "SH_SEP=$(SH_SEP)" \
435 "SHELL=$(SHELL)" \
436 "SH_SCRIPT_SED_CMD=$(SH_SCRIPT_SED_CMD)" \
437 "SH_DEPS_SED_SCRIPT=$(SH_DEPS_SED_SCRIPT)" \
438 "TTYDEVDIRS=$(TTYDEVDIRS)" \
439 "XDEVDIRS=$(XDEVDIRS)" \
440 "XLIBDIRS=$(XLIBDIRS)" \
441 "XPROGDIRS=$(XPROGDIRS)" \
442 "X_CFLAGS=$(X_CFLAGS)" \
443 "X_LIBS=$(X_LIBS)" \
444 "X_EXTRA_LIBS=$(X_EXTRA_LIBS)" \
445 "X_PRE_LIBS=$(X_PRE_LIBS)" \
446 "YACC=$(YACC)" \
447 "YACCFLAGS=$(YACCFLAGS)" \
448 "appresdir=$(appresdir)" \
449 "bindir=$(bindir)" \
450 "common_words_file=$(common_words_file)" \
451 "datadir=$(datadir)" \
452 "dataprogramdir=$(dataprogramdir)" \
453 "datasubdir=$(datasubdir)" \
454 "docdir=$(docdir)" \
455 "exampledir=$(exampledir)" \
456 "exec_prefix=$(exec_prefix)" \
457 "fontdir=$(fontdir)" \
458 "fontpath=$(fontpath)" \
459 "g=$(g)" \
460 "htmldocdir=$(htmldocdir)" \
461 "pdfdocdir=$(pdfdocdir)" \
462 "indexdir=$(indexdir)" \
463 "indexext=$(indexext)" \
464 "indexname=$(indexname)" \
465 "infodir=$(infodir)" \
466 "legacyfontdir=$(legacyfontdir)" \
467 "libdir=$(libdir)" \
468 "libprogramdir=$(libprogramdir)" \
469 "localfontdir=$(localfontdir)" \
470 "localtmacdir=$(localtmacdir)" \
471 "make_html=$(make_html)" \
472 "make_install_html=$(make_install_html)" \
473 "make_pdfdoc=$(make_pdfdoc)" \
474 "make_install_pdfdoc=$(make_install_pdfdoc)" \
475 "man1dir=$(man1dir)" \
476 "man1ext=$(man1ext)" \
477 "man5dir=$(man5dir)" \
478 "man5ext=$(man5ext)" \
479 "man7dir=$(man7dir)" \
480 "man7ext=$(man7ext)" \
481 "manroot=$(manroot)" \
482 "mkinstalldirs=$(mkinstalldirs)" \
483 "prefix=$(prefix)" \
484 "revision=$(revision)" \
485 "sys_tmac_prefix=$(sys_tmac_prefix)" \
486 "pnmtops_nosetpage=$(pnmtops_nosetpage)" \
487 "systemtmacdir=$(systemtmacdir)" \
488 "tmac_an_prefix=$(tmac_an_prefix)" \
489 "tmac_m_prefix=$(tmac_m_prefix)" \
490 "tmac_s_prefix=$(tmac_s_prefix)" \
491 "tmac_wrap=$(tmac_wrap)" \
492 "tmacdir=$(tmacdir)" \
493 "tmacpath=$(tmacpath)" \
494 "top_builddir=$(top_builddir)" \
495 "top_srcdir=$(top_srcdir)" \
496 "version=$(version)"
498 INCDIRS=src/include
499 LIBDIRS=\
500 src/libs/libgroff \
501 src/libs/libdriver \
502 src/libs/libbib \
503 $(XLIBDIRS)
504 CCPROGDIRS=\
505 src/roff/groff \
506 src/roff/troff \
507 src/preproc/tbl \
508 src/preproc/pic \
509 src/preproc/eqn \
510 src/preproc/grn \
511 src/preproc/refer \
512 src/preproc/soelim \
513 src/preproc/html \
514 src/devices/grops \
515 src/devices/grotty \
516 src/devices/grodvi \
517 src/devices/grolj4 \
518 src/devices/grohtml \
519 src/devices/grolbp \
520 src/utils/tfmtodit \
521 src/utils/hpftodit \
522 src/utils/lookbib \
523 src/utils/indxbib \
524 src/utils/lkbib \
525 src/utils/addftinfo
526 CPROGDIRS=\
527 src/utils/pfbtops \
528 $(XPROGDIRS)
529 PROGDEPDIRS=arch/misc
530 PROGDIRS=$(PROGDEPDIRS) $(CCPROGDIRS) $(CPROGDIRS)
531 DEVDIRS=\
532 font/devps \
533 font/devdvi \
534 font/devhtml
535 ALLTTYDEVDIRS=\
536 font/devascii \
537 font/devlatin1 \
538 font/devutf8 \
539 font/devcp1047
540 # `doc' must be processed before `contrib/pdfmark'.
541 OTHERDIRS=\
542 man \
543 tmac \
544 src/utils/afmtodit \
545 src/roff/grog \
546 src/roff/nroff \
547 doc \
548 contrib/mm \
549 contrib/pic2graph \
550 contrib/eqn2graph \
551 contrib/grap2graph \
552 contrib/groffer \
553 contrib/mom \
554 contrib/pdfmark \
555 contrib/gdiffmk
556 ALLDIRS=$(INCDIRS) $(LIBDIRS) $(PROGDIRS) \
557 $(DEVDIRS) $(XDEVDIRS) $(OTHERDEVDIRS) $(TTYDEVDIRS) $(OTHERDIRS)
558 EXTRADIRS=\
559 font/devps/generate \
560 font/devdvi/generate \
561 font/devlj4/generate \
563 NOMAKEDIRS=\
564 arch/djgpp \
565 contrib/mm/examples \
566 contrib/mm/mm \
567 contrib/mom/examples \
568 contrib/mom/momdoc \
569 contrib/gdiffmk/tests \
570 src/libs/snprintf
571 DISTDIRS=\
572 $(INCDIRS) $(LIBDIRS) $(PROGDIRS) $(DEVDIRS) $(XDEVDIRS) $(OTHERDEVDIRS) \
573 $(ALLTTYDEVDIRS) $(OTHERDIRS) $(EXTRADIRS) $(NOMAKEDIRS)
574 TARGETS=all install install_bin install_data clean distclean mostlyclean \
575 realclean extraclean distfiles TAGS depend uninstall_sub
577 # This ENVSETUP gork is required by the DJGPP build on Windows 9X,
578 # where Make needs to be case-sensitive to find files like BI and VERSION.
579 ENVSETUP=\
580 if test -f $(srcdir)/makefile.ccpg* && \
581 test -f $(srcdir)/Makefile.ccpg*; then \
582 FNCASE=y; export FNCASE; \
583 else :; \
586 do=all
587 dodirs=$(ALLDIRS) dot
588 # Default target for subdir_Makefile
589 subdir=src/roff/troff
592 $(TARGETS):
593 @$(ENVSETUP); $(MAKE) $(MDEFINES) do=$@ $(dodirs)
595 dot: FORCE
596 @$(ENVSETUP); \
597 $(MAKE) $(MDEFINES) srcdir=$(srcdir) VPATH=$(srcdir) \
598 -f $(top_srcdir)/Makefile.comm \
599 -f $(top_srcdir)/Makefile.sub $(do)
601 $(LIBDIRS): FORCE
602 @$(ENVSETUP); \
603 if test $(srcdir) = .; then \
604 srcdir=.; \
605 else \
606 srcdir=`cd $(srcdir); pwd`/$@; \
607 fi; \
608 test -d $@ || $(mkinstalldirs) $@; \
609 cd $@; \
610 test -f Makefile.dep || touch Makefile.dep; \
611 $(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
612 -f $(top_srcdir)/Makefile.comm \
613 -f $$srcdir/Makefile.sub \
614 -f $(top_srcdir)/Makefile.lib \
615 -f Makefile.dep $(do)
617 $(CPROGDIRS): FORCE
618 @$(ENVSETUP); \
619 if test $(srcdir) = .; then \
620 srcdir=.; \
621 else \
622 srcdir=`cd $(srcdir); pwd`/$@; \
623 fi; \
624 test -d $@ || $(mkinstalldirs) $@; \
625 cd $@; \
626 test -f Makefile.dep || touch Makefile.dep; \
627 $(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
628 -f $(top_srcdir)/Makefile.comm \
629 -f $$srcdir/Makefile.sub \
630 -f $(top_srcdir)/Makefile.cpg \
631 -f Makefile.dep $(do)
633 $(CCPROGDIRS): FORCE
634 @$(ENVSETUP); \
635 if test $(srcdir) = .; then \
636 srcdir=.; \
637 else \
638 srcdir=`cd $(srcdir); pwd`/$@; \
639 fi; \
640 test -d $@ || $(mkinstalldirs) $@; \
641 cd $@; \
642 test -f Makefile.dep || touch Makefile.dep; \
643 $(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
644 -f $(top_srcdir)/Makefile.comm \
645 -f $$srcdir/Makefile.sub \
646 -f $(top_srcdir)/Makefile.ccpg \
647 -f Makefile.dep $(do)
649 $(DEVDIRS) $(XDEVDIRS) $(OTHERDEVDIRS) $(TTYDEVDIRS): FORCE
650 @$(ENVSETUP); \
651 if test $(srcdir) = .; then \
652 srcdir=.; \
653 else \
654 srcdir=`cd $(srcdir); pwd`/$@; \
655 fi; \
656 test -d $@ || $(mkinstalldirs) $@; \
657 cd $@; \
658 $(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
659 -f $(top_srcdir)/Makefile.comm \
660 -f $$srcdir/Makefile.sub \
661 -f $(top_srcdir)/Makefile.dev $(do)
663 $(INCDIRS) $(PROGDEPDIRS) $(OTHERDIRS): FORCE
664 @$(ENVSETUP); \
665 if test $(srcdir) = .; then \
666 srcdir=.; \
667 else \
668 srcdir=`cd $(srcdir); pwd`/$@; \
669 fi; \
670 test -d $@ || $(mkinstalldirs) $@; \
671 cd $@; \
672 $(MAKE) $(MDEFINES) srcdir=$$srcdir VPATH=$$srcdir \
673 -f $(top_srcdir)/Makefile.comm \
674 -f $$srcdir/Makefile.sub \
675 -f $(top_srcdir)/Makefile.man $(do)
677 .PHONY: dist
678 dist:
679 -rm -fr tmp
680 rm -f groff-$(version)$(revision).tar.gz
681 mkdir tmp
682 for d in $(DISTDIRS); do \
683 $(mkinstalldirs) tmp/$$d; \
684 done
685 srcdir=`cd $(srcdir); pwd`; \
686 cd tmp; \
687 $(LN_S) ../Makefile .; \
688 $(LN_S) $$srcdir/* . 2>/dev/null || true; \
689 rm -rf CVS; \
690 for d in $(DISTDIRS); do \
691 (cd $$d; \
692 $(LN_S) $$srcdir/$$d/* . 2>/dev/null; \
693 rm -rf CVS || true); \
694 done; \
695 $(MAKE) srcdir=. VPATH=. distfiles; \
696 $(MAKE) srcdir=. VPATH=. extraclean; \
697 for d in $(EXTRADIRS); do \
698 (cd $$d; \
699 if test -f Makefile; then \
700 $(MAKE) extraclean; \
701 else \
702 $(MAKE) -f $(top_builddir)/$$d/Makefile extraclean; \
703 fi); \
704 done; \
705 rm -f Makefile; \
706 $(LN_S) $$srcdir/Makefile.init Makefile
707 mv tmp groff-$(version)$(revision)
708 tar cfh - groff-$(version)$(revision) | \
709 gzip -c >groff-$(version)$(revision).tar.gz
710 rm -fr groff-$(version)$(revision)
712 # $(PROGDIRS): libgroff
713 # grops grotty grodvi: libdriver
714 # refer lookbib indxbib lkbib: libbib
715 # $(LIBDIRS) $(PROGDIRS): include
717 .PHONY: $(ALLDIRS) dot $(TARGETS) FORCE
719 # Create a Makefile in $(subdir). This is useful for development since it
720 # avoids running make recursively.
721 subdir_Makefile: Makefile.cfg
722 $(MAKE) do=Makefile $(subdir)
724 Makefile.cfg: Makefile
725 >Makefile.cfg
726 for var in $(MDEFINES); do \
727 echo "$$var" >>Makefile.cfg; \
728 done
730 Makefile: Makefile.in
731 $(SHELL) config.status
733 .PHONY: uninstall
734 uninstall: uninstall_sub uninstall_dirs
736 .PHONY: uninstall_dirs
737 uninstall_dirs:
738 # Use `rmdir' here so that the directories are only removed if they are empty.
739 -rmdir $(man1dir) $(man5dir) $(man7dir) $(manroot) \
740 $(tmacdir) $(systemtmacdir) $(localtmacdir) \
741 $(fontdir) $(localfontdir) $(bindir) \
742 $(datasubdir) $(dataprogramdir) $(datadir) $(infodir) \
743 $(exampledir) $(htmldocdir) $(pdfdocdir) $(docdir) \
744 $(libprogramdir) $(libdir)
746 .PHONY: check docheck
747 check: site.exp docheck
749 docheck:
750 if $(SHELL) -c "runtest --version" > /dev/null 2>&1; then \
751 runtest; \
752 else \
753 echo "WARNING: could not find \`runtest'" 1>&2; \
756 # This snippet has been taken from the automake package.
758 site.exp:
759 @echo "Making a new site.exp file..."
760 @echo "## these variables are automatically generated by make ##" >site.tmp
761 @echo "# Do not edit here. If you wish to override these values" >>site.tmp
762 @echo "# edit the last section" >>site.tmp
763 @echo "set tool groff" >>site.tmp
764 @echo "set srcdir $(srcdir)/testsuite" >>site.tmp
765 @echo "set objdir `pwd`" >> site.tmp
766 @echo "## All variables above are generated by configure. Do not edit! ##" >> site.tmp
767 @test ! -f site.exp \
768 || sed '1,/^## All variables above are.*##/ d' site.exp >> site.tmp
769 @-rm -f site.bak
770 @test ! -f site.exp || mv site.exp site.bak
771 @mv site.tmp site.exp
773 FORCE:
775 .NOEXPORT: