1# $FreeBSD: stable/11/gnu/usr.bin/groff/Makefile.inc 307631 2016-10-19 13:19:45Z emaste $ 2 3BINDIR?= /usr/bin 4SHELL= /bin/sh 5PACKAGE= groff 6 7# Define `page' to be letter if your PostScript printer uses 8.5x11 8# paper (USA) and define it to be A4, if it uses A4 paper (rest of the 9# world). 10PAGE=letter 11 12# Normally the Postscript driver, grops, produces output that conforms 13# to version 3.0 of the Adobe Document Structuring Conventions. 14# Unfortunately some spoolers and previewers can't handle such output. 15# The BROKEN_SPOOLER_FLAGS variable tells grops what it should do to 16# make its output acceptable to such programs. This variable controls 17# only the default behaviour of grops; the behaviour can be changed at 18# runtime by the grops -b option (and so by groff -P-b). 19# Use a value of 0 if your spoolers and previewers are able to handle 20# conforming PostScript correctly. 21# Add 1 if no %%{Begin,End}DocumentSetup comments should be generated; 22# this is needed for early versions of TranScript that get confused by 23# anything between the %%EndProlog line and the first %%Page: comment. 24# Add 2 if lines in included files beginning with %! should be 25# stripped out; this is needed for the OpenWindows 2.0 pageview previewer. 26# Add 4 if %%Page, %%Trailer and %%EndProlog comments should be 27# stripped out of included files; this is needed for spoolers that 28# don't understand the %%{Begin,End}Document comments. I suspect this 29# includes early versions of TranScript. 30# Add 8 if the first line of the PostScript output should be %!PS-Adobe-2.0 31# rather than %!PS-Adobe-3.0; this is needed when using Sun's Newsprint 32# with a printer that requires page reversal. 33BROKEN_SPOOLER_FLAGS=7 34 35# DEVICE is the default device. 36DEVICE=ps 37 38# PSPRINT is the command to use for printing a PostScript file, 39# for example `lpr'. 40PSPRINT=lpr 41 42# DVIPRINT is the command to use for printing a TeX dvi file, 43# for example `lpr -d'. 44DVIPRINT=lpr -d 45######################################################################## 46# Don't touch... 47 48g= 49tmac_s_prefix= 50tmac_m_prefix= 51tmac_an_prefix= 52fontdir=/usr/share/groff_font 53localfontdir=$(fontdir) 54legacyfontdir=$(fontdir) 55tmacdir=/usr/share/tmac 56systemtmacdir=/usr/share/tmac 57localtmacdir=/usr/share/tmac 58docdir=/usr/src/contrib/groff/doc 59exampledir=XXX 60htmldocdir=XXX 61pdfdocdir=XXX 62indexext=.i 63common_words_file=/usr/share/dict/eign 64indexdir=/usr/share/dict/papers 65indexname=Ind 66 67######################################################################## 68# Libraries 69 70LIBGROFF= ${.OBJDIR}/${TOPREL}/src/libs/libgroff/libgroff.a 71LIBDRIVER= ${.OBJDIR}/${TOPREL}/src/libs/libdriver/libdriver.a 72LIBBIB= ${.OBJDIR}/${TOPREL}/src/libs/libbib/libbib.a 73 74CFLAGS+= -DHAVE_CONFIG_H 75CFLAGS+= -I${GROFF_DIST}/src/include -I${.CURDIR}/${TOPREL}/src/include 76CXXFLAGS+= -fno-rtti -fno-exceptions 77 78.y.o: 79 $(YACC) $(YFLAGS) $(.IMPSRC) 80 mv -f y.tab.c $(.PREFIX).cpp 81 mv -f y.tab.h $(.PREFIX)_tab.h 82 ${CXX} ${CXXFLAGS} -c $(.PREFIX).cpp -o ${.TARGET} 83 84.y.cpp: 85 $(YACC) $(YFLAGS) $(.IMPSRC) 86 mv -f y.tab.c $(.PREFIX).cpp 87 mv -f y.tab.h $(.PREFIX)_tab.h 88 89.SUFFIXES: .man .1 .2 .3 .4 .5 .6 .7 .8 90 91version=`cat $(GROFF_DIST)/VERSION` 92revision=`sed -e 's/^0$$//' -e 's/^[1-9].*$$/.&/' $(GROFF_DIST)/REVISION` 93 94.man.8 .man.7 .man.6 .man.5 .man.4 .man.3 .man.2 .man.1: 95 @${ECHO} Making $@ from $< 96 @-rm -f $@ 97 @sed -e "s;@BINDIR@;${BINDIR};g" \ 98 -e "s;@FONTDIR@;$(fontdir);g" \ 99 -e "s;@LOCALFONTDIR@;$(localfontdir);g" \ 100 -e "s;@LEGACYFONTDIR@;$(legacyfontdir);g" \ 101 -e "s;@MACRODIR@;$(tmacdir);g" \ 102 -e "s;@SYSTEMMACRODIR@;$(systemtmacdir);g" \ 103 -e "s;@LOCALMACRODIR@;$(localtmacdir);g" \ 104 -e "s;@DOCDIR@;$(docdir);g" \ 105 -e "s;@EXAMPLEDIR@;$(exampledir);g" \ 106 -e "s;@HTMLDOCDIR@;$(htmldocdir);g" \ 107 -e "s;@PDFDOCDIR@;$(pdfdocdir);g" \ 108 -e "s;@DEVICE@;$(DEVICE);g" \ 109 -e "s;@DEFAULT_INDEX@;$(indexdir)/$(indexname);g" \ 110 -e "s;@DEFAULT_INDEX_NAME@;$(indexname);g" \ 111 -e "s;@INDEX_SUFFIX@;$(indexext);g" \ 112 -e "s;@COMMON_WORDS_FILE@;$(common_words_file);g" \ 113 -e "s;@MAN1EXT@;1;g" \ 114 -e "s;@MAN5EXT@;5;g" \ 115 -e "s;@MAN7EXT@;7;g" \ 116 -e "s;@TMAC_S_PREFIX@;$(tmac_s_prefix);g" \ 117 -e "s;@TMAC_M_PREFIX@;$(tmac_m_prefix);g" \ 118 -e "s;@TMAC_AN_PREFIX@;$(tmac_an_prefix);g" \ 119 -e "s;@TMAC_MDIR@;$(tmacdir)/mm;g" \ 120 -e "s;@BROKEN_SPOOLER_FLAGS@;$(BROKEN_SPOOLER_FLAGS);g" \ 121 -e "s;@VERSION@;$(version)$(revision);g" \ 122 -e "s;@MDATE@;$(MDATE);g" \ 123 -e "s;@g@;$(g);g" \ 124 -e "s;@G@;`echo $(g) | LC_ALL=C tr a-z A-Z`;g" \ 125 $< >$@ 126 127.SUFFIXES: .sh .pl 128 129.sh .pl: 130 @${ECHO} Making ${.TARGET} from ${.IMPSRC} 131 @rm -f ${.TARGET} 132 @sed -e "s|@BINDIR@|${BINDIR}|g" \ 133 -e 's|@GROFF_BIN_PATH_SETUP@|GROFF_RUNTIME="$${GROFF_BIN_PATH=${BINDIR}}:"|g' \ 134 -e "s;@FONTDIR@;$(fontdir);g" \ 135 -e "s|@SEP@|:|g" \ 136 -e "s|@VERSION@|$(version)$(revision)|" \ 137 -e "s|@g@|$(g)|g" \ 138 ${.IMPSRC} >${.TARGET} 139 140TOPREL?= .. 141GROFF_DIST= ${.CURDIR}/${TOPREL}/../../../contrib/groff 142DIST_SUBDIR?= ${.CURDIR:T} 143DIST_DIR= ${GROFF_DIST}/${DIST_SUBDIR} 144MDATE!= sh ${.CURDIR}/${TOPREL}/mdate.sh ${GROFF_DIST}/ChangeLog 145.PATH: ${DIST_DIR} 146