[BACK]Return to Makefile CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / textproc / groff

File: [cvs.NetBSD.org] / pkgsrc / textproc / groff / Makefile (download)

Revision 1.80, Fri Oct 2 11:33:14 2015 UTC (8 years, 5 months ago) by richard
Branch: MAIN
Changes since 1.79: +26 -7 lines

gnu updates for groff with special fixup for chem.1 manpage not g' prefixed
add dependency to gtexinfo when building docs
remove special SunOS processing which seems unnecessary now.

TODO: there are still some apparent fonts issues indicated in the build logs

# $NetBSD: Makefile,v 1.80 2015/10/02 11:33:14 richard Exp $

DISTNAME=	groff-1.22.3
PKGREVISION=	2
CATEGORIES=	textproc
MASTER_SITES=	${MASTER_SITE_GNU:=groff/}

MAINTAINER=	pkgsrc-users@NetBSD.org
HOMEPAGE=	http://www.gnu.org/software/groff/groff.html
COMMENT=	GNU roff text processing suite
LICENSE=	gnu-gpl-v3

CONFLICTS=		mdocml<1.12.0nb3 ja-groff-[0-9]*

CHECK_PERMS=		NO
MAKE_JOBS_SAFE=		NO
OVERRIDE_DIRDEPTH=	4

INSTALLATION_DIRS=	share/groff/site-tmac

USE_LANGUAGES=		c c++
GNU_CONFIGURE=		YES
CONFIGURE_ENV+=		PERLPATH=${PERL5:Q}
USE_TOOLS+=		perl:run sed:run awk:run gmake
EXTRACT_USING=		bsdtar
USE_FEATURES=		getopt_long

INFO_FILES=		YES

REPLACE_AWK+=		font/devlj4/generate/special.awk
REPLACE_PERL+=		contrib/*/*.pl
REPLACE_PERL+=		src/roff/grog/grog.pl
REPLACE_PERL+=		src/roff/grog/subs.pl

REPLACE_INTERPRETER+=	sed
REPLACE.sed.old=	.*/sed
REPLACE.sed.new=	${SED}
REPLACE_FILES.sed+=	font/devps/generate/symbol.sed

.include "options.mk"

PLIST_SRC+=		${WRKDIR}/PLIST-local
PLIST_SRC+=		PLIST

.include "../../mk/bsd.prefs.mk"

BUILD_DEFS+=	PAPERSIZE
.if defined(PAPERSIZE)
CONFIGURE_ENV+=	PAGE=${PAPERSIZE:Q}
.endif

post-extract:
	${CP} -p ${FILESDIR}/*.c ${WRKSRC}

# Usually the mdoc.local "volume-operating-system" definition is for
# the operating system name often displayed on top of man pages. And
# "operating-system" is for the default .Os value (operating system
# and version/release) and is usually displayed at bottom of man page.
# XXX Use "pkgsrc" as default .Os value.
post-patch:
	${SED}	-e "s,@@VOLUME_OPERATING_SYSTEM@@,${OPSYS},g"	\
		-e "s,@@OPERATING_SYSTEM@@,pkgsrc,g"	\
		${FILESDIR}/mdoc.local > ${WRKDIR}/mdoc.local

# Groff installs its own man and ms macros as mgan and mgs if the
# configure script thinks replacing the system ones is not safe. Since
# this depends heavily on exactly what the system macros are, each
# vendor OS is likely to be different and possibly differ by version.
#
# It also installs wrappers around the system macros for a variety of
# other traditional macro packages, if those macros don't have an FSF
# copyright.
SYMLINK_FILES=	chem diffmk eqn grn indxbib lookbib neqn nroff pic refer \
		soelim tbl troff
SYMLINK_MANFILES=	chem.1 eqn.1 grn.1 indxbib.1 lookbib.1 neqn.1 nroff.1 \
		pic.1 refer.1 soelim.1 tbl.1 troff.1

INSTALLATION_DIRS=	${PKGGNUDIR}bin ${PKGGNUDIR}${PKGMANDIR}/man1

post-install:
	${INSTALL_DATA} ${WRKDIR}/mdoc.local \
		${DESTDIR}${PREFIX}/share/groff/site-tmac
	${FIND} ${DESTDIR}${PREFIX}/lib/groff/site-tmac -type f -print | \
		${SED} 's;${DESTDIR}${PREFIX}/;;g' > ${WRKDIR}/PLIST-local
	${RUN}set -e; for f in an.tmac m.tmac mm.tmac mmse.tmac		\
	  mse.tmac s.tmac; do						\
	  for p in "" g; do						\
	    line="share/groff/${PKGVERSION_NOREV}/tmac/$$p$$f";		\
	    if [ -e "${DESTDIR}${PREFIX}/$$line" ]; then		\
	      break;							\
	    fi;								\
	  done;								\
	  ${ECHO} "$$line" >> ${WRKDIR}/PLIST-local;			\
	done
.for f in ${SYMLINK_FILES}
	if [ -f ${DESTDIR}${PREFIX}/bin/g${f} ]; then			\
	    ${LN} -sf ../../bin/g${f}					\
		${DESTDIR}${PREFIX}/${PKGGNUDIR}bin/${f};		\
	fi
.endfor
# fixup where necessary and symlink man pages
.for f in ${SYMLINK_MANFILES}
	if [ -f ${DESTDIR}${PREFIX}/man/man1/g${f} ]; then		\
	    ${LN} -sf ../../../man/man1/g${f}				\
		${DESTDIR}${PREFIX}/${PKGGNUDIR}man/man1/${f};		\
	elif [ -f ${DESTDIR}${PREFIX}/man/man1/${f} ]; then		\
	    ${MV} -f ${DESTDIR}${PREFIX}/man/man1/${f}			\
		${DESTDIR}${PREFIX}/man/man1/g${f};			\
	    ${LN} -sf ../../../man/man1/g${f}				\
		${DESTDIR}${PREFIX}/${PKGGNUDIR}man/man1/${f};		\
	fi
.endfor

# we only want the charset.alias file, so no buildlinkery for libiconv
DEPENDS+=	libiconv-[0-9]*:../../converters/libiconv
.include "../../mk/bsd.pkg.mk"