From owner-freebsd-ports Sun Aug 9 15:11:43 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id PAA29505 for freebsd-ports-outgoing; Sun, 9 Aug 1998 15:11:43 -0700 (PDT) (envelope-from owner-freebsd-ports@FreeBSD.ORG) Received: from vader.cs.berkeley.edu (vader.CS.Berkeley.EDU [128.32.38.234]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id PAA29470; Sun, 9 Aug 1998 15:10:34 -0700 (PDT) (envelope-from asami@vader.cs.berkeley.edu) Received: from silvia.hip.berkeley.edu (sji-ca9-112.ix.netcom.com [209.109.236.112]) by vader.cs.berkeley.edu (8.8.7/8.7.3) with ESMTP id PAA22220; Sun, 9 Aug 1998 15:10:10 -0700 (PDT) Received: (from asami@localhost) by silvia.hip.berkeley.edu (8.8.8/8.6.9) id PAA20972; Sun, 9 Aug 1998 15:10:07 -0700 (PDT) Date: Sun, 9 Aug 1998 15:10:07 -0700 (PDT) Message-Id: <199808092210.PAA20972@silvia.hip.berkeley.edu> To: ports@FreeBSD.ORG, markm@FreeBSD.ORG Subject: perl and other fixes to bsd.port.mk From: asami@cs.berkeley.edu (Satoshi Asami) Sender: owner-freebsd-ports@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org How about this one? It defines new variables ${PERL_VERSION} (5.00501) and ${PERL_VER} (5.005), which are substituted for %%PERL_VERSION%% and %%PERL_VERS%% in the PLIST. I also made the manpages be attached to the temporary PLIST automatically. This means, for ports that define MAN?, the manpages can/should be deleted from pkg/PLIST entirely. -- * Which brings up the point, I tried a couple of p5- ports and noticed that %%PERL_VERSION%% is only used in manpages, which don't have to be in pkg/PLIST anymore (see * above). Should we substitute only one variable in PLIST? By the way, while I was there, I fixed the typo in definition of OSREL (it said "FreeBSD", duh!), changed USE_X11 to USE_XLIB and made %%OSREL%% be substituted in PLIST too. (Which will help, for instance, the lang/egcs port tremendously.) Comments welcome. I also welcome volunteers to actually carry out the * above. :) Satoshi ------- Index: bsd.port.mk =================================================================== RCS file: /usr/cvs/src/share/mk/bsd.port.mk,v retrieving revision 1.227.2.42 diff -u -r1.227.2.42 bsd.port.mk --- bsd.port.mk 1998/08/06 10:45:22 1.227.2.42 +++ bsd.port.mk 1998/08/09 22:03:33 @@ -105,7 +105,7 @@ # NO_MTREE - If set, will not invoke mtree from bsd.port.mk from # the "install" target. # MTREE_FILE - The name of the mtree file (default: /etc/mtree/BSD.x11.dist -# if USE_IMAKE or USE_X11 is set, /etc/mtree/BSD.local.dist +# if USE_X_PREFIX is set, /etc/mtree/BSD.local.dist # otherwise.) # # NO_BUILD - Use a dummy (do-nothing) build target. @@ -128,8 +128,8 @@ # USE_AUTOCONF - Says that the port uses autoconf. Implies GNU_CONFIGURE. # USE_PERL5 - Says that the port uses perl5 for building and running. # USE_IMAKE - Says that the port uses imake. Implies USE_X_PREFIX. -# USE_X_PREFIX - Says that the port installs in ${X11BASE}. Implies USE_X11. -# USE_X11 - Says that the port uses X libraries. +# USE_X_PREFIX - Says that the port installs in ${X11BASE}. Implies USE_XLIB. +# USE_XLIB - Says that the port uses X libraries. # NO_INSTALL_MANPAGES - For imake ports that don't like the install.man # target. # HAS_CONFIGURE - Says that the port has its own configure script. @@ -272,7 +272,7 @@ OPSYS!= uname -s # Get the operating system revision -OSREL!= uname -s | sed -e 's/[-(].*//' +OSREL!= uname -r | sed -e 's/[-(].*//' .if exists(${.CURDIR}/../Makefile.inc) .include "${.CURDIR}/../Makefile.inc" @@ -355,7 +355,7 @@ USE_X_PREFIX= yes .endif .if defined(USE_X_PREFIX) -USE_X11= yes +USE_XLIB= yes .endif .if defined(USE_X_PREFIX) PREFIX?= ${X11BASE} @@ -370,11 +370,15 @@ GNU_CONFIGURE= yes BUILD_DEPENDS+= autoconf:${PORTSDIR}/devel/autoconf .endif + +PERL_VERSION= 5.00501 +PERL_VER= 5.005 + .if defined(USE_PERL5) -BUILD_DEPENDS+= perl5.00501:${PORTSDIR}/lang/perl5 -RUN_DEPENDS+= perl5.00501:${PORTSDIR}/lang/perl5 +BUILD_DEPENDS+= perl${PERL_VERSION}:${PORTSDIR}/lang/perl5 +RUN_DEPENDS+= perl${PERL_VERSION}:${PORTSDIR}/lang/perl5 .endif -.if defined(USE_X11) +.if defined(USE_XLIB) LIB_DEPENDS+= X11\\.6:${PORTSDIR}/x11/XFree86 .endif @@ -495,10 +499,11 @@ COMMENT?= ${PKGDIR}/COMMENT DESCR?= ${PKGDIR}/DESCR PLIST?= ${PKGDIR}/PLIST +TMPPLIST?= ${WRKDIR}/PLIST.mktmp PKG_CMD?= /usr/sbin/pkg_create .if !defined(PKG_ARGS) -PKG_ARGS= -v -c ${COMMENT} -d ${DESCR} -f ${PLIST} -p ${PREFIX} -P "`${MAKE} package-depends|sort -u`" +PKG_ARGS= -v -c ${COMMENT} -d ${DESCR} -f ${TMPPLIST} -p ${PREFIX} -P "`${MAKE} package-depends|sort -u`" .if exists(${PKGDIR}/INSTALL) PKG_ARGS+= -i ${PKGDIR}/INSTALL .endif @@ -742,6 +747,10 @@ .endfor +.if defined(_MANPAGES) +__MANPAGES:= ${_MANPAGES:S^${PREFIX}/^^:S/""//:S^//^/^g:S/$/.gz/} +.endif + .if defined(_MANPAGES) && defined(MANCOMPRESSED) _MANPAGES:= ${_MANPAGES:S/$/.gz/} .endif @@ -1204,6 +1213,18 @@ fi .endif .endif +.if make(real-install) || make(real-package) + if [ -e ${PLIST} ]; then \ + >${TMPPLIST}; \ + for man in ${__MANPAGES}; do \ + ${ECHO} $$man >> ${TMPPLIST}; \ + done; \ + ${SED} -e 's/%%PERL_VERSION%%/${PERL_VERSION}/' \ + -e 's/%%PERL_VER%%/${PERL_VER}/' \ + -e 's/%%OSREL%%/${OSREL}/' \ + ${PLIST} >> ${TMPPLIST}; \ + fi +.endif @cd ${.CURDIR} && ${MAKE} ${.MAKEFLAGS} ${.TARGET:S/^real-/pre-/} @if [ -f ${SCRIPTDIR}/${.TARGET:S/^real-/pre-/} ]; then \ cd ${.CURDIR} && ${SETENV} ${SCRIPTS_ENV} ${SH} \ @@ -1376,7 +1397,7 @@ fi; \ fi .else - @${RM} -f ${WRKDIR}/.*_done + @${RM} -f ${WRKDIR}/.*_done ${TMPPLIST} .endif .endif @@ -1762,7 +1783,7 @@ .if !target(fake-pkg) fake-pkg: - @if [ ! -f ${PLIST} -o ! -f ${COMMENT} -o ! -f ${DESCR} ]; then ${ECHO} "** Missing package files for ${PKGNAME} - installation not recorded."; exit 1; fi + @if [ ! -f ${TMPPLIST} -o ! -f ${COMMENT} -o ! -f ${DESCR} ]; then ${ECHO} "** Missing package files for ${PKGNAME} - installation not recorded."; exit 1; fi @if [ ! -d ${PKG_DBDIR} ]; then ${RM} -f ${PKG_DBDIR}; ${MKDIR} ${PKG_DBDIR}; fi .if defined(FORCE_PKG_REGISTER) @${RM} -rf ${PKG_DBDIR}/${PKGNAME} To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-ports" in the body of the message