Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 Nov 2000 13:57:56 +0100 (CET)
From:      Raymond Wiker <Raymond.Wiker@fast.no>
To:        freebsd-ports@freebsd.org
Subject:   Ports & CVS?
Message-ID:  <14875.49876.733685.319512@raw.grenland.fast.no>

next in thread | raw e-mail | index | archive | help
	Hi. I've been trying to use the FreeBSD ports framework as a
basis for building and installing interdependent software modules at
work. The source code is fetched from a CVS repository, and I would
like to avoid having to manually fetch the source files and create a
distribution file.

	I have been looking at bsd.port.mk, and it seems that I could
modify the do-extract target to fetch the required module(s) from CVS:

(Note: the code below uses the target post-extract instead, but it
should be possible to place it in bsd.port.mk instead.)

	Is this something that would make sense to add to the ports
system? Alternatively, can anybody see a way of achieving this
without modifying bsd.port.mk or "stealing" the post-extract target?
(Actually, I see a way: I could override the do-extract target in a
separate include file.)

# In the port Makefile:
PORTNAME=mystuff
PORTVERSION=1.0.2
# Need to explicitly clear DISTFILES, as the source files will be
# fetched from CVS
DISTFILES=
CVSMODULE=mystuff
CVSTAG=REL_1_0_2

# In a system make include file:

# Note: no default for CVS_RSH
CVSROOT?=myserver.my.domain:/cvs
CVSTAG?=HEAD
CVSCMD?=cvs
CVSDIR?=${PORTNAME}-${PORTVERSION}

post-extract:
	@for mod in ${CVSMODULES}; do \
		if ! (cd ${WRKDIR} && \
		      CVSROOT=${CVSROOT} ${CVSCMD} co -r ${CVSTAG} \
			-d ${CVSDIR} $${mod}) \
		then \
			exit 1; \
		fi \
	done



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?14875.49876.733685.319512>