ports/70516: New port: sysutils/graft: symlink manager for multiple packages under a single hierarchy

Michael Handler handler at grendel.net
Mon Aug 16 06:40:23 UTC 2004


>Number:         70516
>Category:       ports
>Synopsis:       New port: sysutils/graft: symlink manager for multiple packages under a single hierarchy
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Mon Aug 16 06:40:21 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Michael Handler
>Release:        FreeBSD 4.10-STABLE i386
>Organization:
my own bad self
>Environment:
System: FreeBSD lair.grendel.net 4.10-STABLE FreeBSD 4.10-STABLE #1: Fri Aug 13 18:21:55 EDT 2004 root at lair.grendel.net:/usr/obj/usr/src/sys/LAIR i386
>Description:
Symlink manager for installing multiple versions of software packages
under a common hierarchy. Simplifies installation/deinstallation and
PATH management.

WWW: http://www.gormand.com.au/peters/tools/graft/graft.html
>How-To-Repeat:
LET'S GO TO MY ROOM, PIG
>Fix:

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	graft
#	graft/files
#	graft/files/patch-Makefile.dist
#	graft/distinfo
#	graft/pkg-descr
#	graft/Makefile
#
echo c - graft
mkdir -p graft > /dev/null 2>&1
echo c - graft/files
mkdir -p graft/files > /dev/null 2>&1
echo x - graft/files/patch-Makefile.dist
sed 's/^X//' >graft/files/patch-Makefile.dist << 'END-of-graft/files/patch-Makefile.dist'
X--- Makefile.dist.orig	Sun Aug 15 15:54:30 2004
X+++ Makefile.dist	Sun Aug 15 16:09:04 2004
X@@ -30,8 +30,8 @@
X # number of ways. See the man page and the documentation in
X # doc/graft.{html,pdf,ps,txt}.
X 
X-PACKAGEDIR	= /pkgs
X-TARGETDIR	= /pkgs
X+PACKAGEDIR	= %%GRAFT_PACKAGEDIR%%
X+TARGETDIR	= %%GRAFT_TARGETDIR%%
X 
X # You should only need to change the value of TOP to reflect the
X # installation directory for graft if it is different from your default
X@@ -40,10 +40,10 @@
X # these values, you may be confused about what graft is for. Please
X # re-read the documentation in doc/graft.{html,pdf,ps,txt}.
X 
X-TOP		= $(PACKAGEDIR)/graft-$(VERSION)
X+TOP		= %%PREFIX%%
X BIN		= $(TOP)/bin
X-MAN		= $(TOP)/man
X-DOC		= $(TOP)/doc
X+MAN		= %%MANPREFIX%%/man
X+DOC		= %%DOCSDIR%%
X 
X # The final grafted location of perl. See the bootstrap section in
X # the documentation in doc/graft.{html,pdf,ps,txt}. This value will be
X@@ -55,7 +55,7 @@
X #
X #	#!/usr/bin/perl -w
X 
X-PERL		= /pkgs/bin/perl
X+PERL		= %%PERL%%
X 
X # The location of the perl executable used to build the graft
X # executable. You'll need to change this only if you do not have a fixed
X@@ -68,7 +68,7 @@
X # The graft log file. All of graft's actions will be logged in this file.
X # If you don't want any logging, set this to /dev/null.
X 
X-LOGFILE		= /var/log/graft
X+LOGFILE		= %%GRAFT_LOGFILE%%
X 
X # The names of the special graft control files. GRAFT-IGNORE controls
X # the exclusion of subdirectories, GRAFT-EXCLUDE controls the exclusion
X@@ -206,7 +206,6 @@
X 		    mkdir -p $(DOC);			\
X 		    cp doc/$$i $(DOC);			\
X 		    chmod 644 $(DOC)/$$i;		\
X-		    touch $(DOC)/$(GRAFT-IGNORE);	\
X 		done
X 
X bin:		all
END-of-graft/files/patch-Makefile.dist
echo x - graft/distinfo
sed 's/^X//' >graft/distinfo << 'END-of-graft/distinfo'
XMD5 (graft-2.4.tar.gz) = d91677b273ab812aeaac1a79037e097b
XSIZE (graft-2.4.tar.gz) = 148709
END-of-graft/distinfo
echo x - graft/pkg-descr
sed 's/^X//' >graft/pkg-descr << 'END-of-graft/pkg-descr'
XSymlink manager for installing multiple versions of software packages
Xunder a common hierarchy. Simplifies installation/deinstallation and
XPATH management.
X
XWWW: http://www.gormand.com.au/peters/tools/graft/graft.html
END-of-graft/pkg-descr
echo x - graft/Makefile
sed 's/^X//' >graft/Makefile << 'END-of-graft/Makefile'
X# Ports collection makefile for:	graft
X# Date created:				2004-08-15
X# Whom:					Michael Handler <handler at grendel.net>
X#
X# $FreeBSD$
X#
X
XPORTNAME=		graft
XPORTVERSION=		2.4
XCATEGORIES=		sysutils
XMASTER_SITES=		http://www.gormand.com.au/peters/tools/graft/
X
XMAINTAINER=		handler at grendel.net
XCOMMENT=		Manage symlinks to multiple software packages under a single hierarchy
X
XUSE_PERL5_RUN=		true
X
XPLIST_FILES=		bin/graft
X
XINSTALL_TARGET=		bin
X
X.if !defined(NO_INSTALL_MANPAGES)
XINSTALL_TARGET+=	manuals
XMAN1=			graft.1
X.endif
X
X.if !defined(NOPORTDOCS)
XEXTRAPORTDOCS=		CHANGES README THOUGHTS
XPORTDOCS=		graft.html graft.pdf graft.ps graft.txt ${EXTRAPORTDOCS}
XINSTALL_TARGET+=	docs
X.endif
X
XGRAFT_PACKAGEDIR?=	/local/pkg
XGRAFT_TARGETDIR?=	/local
XGRAFT_LOGFILE?=		/var/log/graft
X
XMAKEFILE_SUB=		PREFIX=${PREFIX} MANPREFIX=${MANPREFIX} \
X			DOCSDIR=${DOCSDIR} PERL=${PERL} \
X			GRAFT_PACKAGEDIR=${GRAFT_PACKAGEDIR} \
X			GRAFT_TARGETDIR=${GRAFT_TARGETDIR} \
X			GRAFT_LOGFILE=${GRAFT_LOGFILE}
X
X.include <bsd.port.pre.mk>
X
Xpre-everything::
X	@${ECHO_CMD}
X	@${ECHO_CMD} "You may use the following build options:"
X	@${ECHO_CMD}
X	@${ECHO_CMD} "GRAFT_PACKAGEDIR=/directory (default: ${GRAFT_PACKAGEDIR})"
X	@${ECHO_CMD} "GRAFT_TARGETDIR=/directory (default: ${GRAFT_TARGETDIR})"
X	@${ECHO_CMD} "GRAFT_LOGFILE=/directory/file (default: ${GRAFT_LOGFILE})"
X	@${ECHO_CMD}
X
Xpost-patch:
X	@${SED} ${MAKEFILE_SUB:S/$/!g/:S/^/ -e s!%%/:S/=/%%!/} \
X		${WRKSRC}/Makefile.dist > ${WRKSRC}/Makefile
X
Xpost-install:
X.if !defined(NOPORTDOCS)
X.for i in ${EXTRAPORTDOCS}
X	@${INSTALL_DATA} ${WRKSRC}/${i} ${DOCSDIR}/
X.endfor
X.endif
X
X.include <bsd.port.post.mk>
END-of-graft/Makefile
exit

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list