From owner-freebsd-questions Sat Jan 20 12: 3:52 2001 Delivered-To: freebsd-questions@freebsd.org Received: from cx344940-a.meta1.la.home.com (cx344940-a.meta1.la.home.com [24.6.21.74]) by hub.freebsd.org (Postfix) with ESMTP id 99C8537B400 for ; Sat, 20 Jan 2001 12:03:34 -0800 (PST) Received: (from cjsabatier@localhost) by cx344940-a.meta1.la.home.com (8.11.1/8.11.1) id f0KK5Qw06577; Sat, 20 Jan 2001 14:05:26 -0600 (CST) (envelope-from cjsabatier) Date: Sat, 20 Jan 2001 14:05:26 -0600 From: Conrad Sabatier To: Christopher Farley Cc: FreeBSD-questions@FreeBSD.ORG Subject: Re: cannot build ports - too old for bsd.port.mk? Message-ID: <20010120140526.A6526@home.com> References: <001001c0830c$4fa78a00$0c00a8c0@amgroupadmin.com> <20010120123236.A3485@northernbrewer.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <20010120123236.A3485@northernbrewer.com>; from chris@northernbrewer.com on Sat, Jan 20, 2001 at 12:32:36PM -0600 Sender: owner-freebsd-questions@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Sat, Jan 20, 2001 at 12:32:36PM -0600, Christopher Farley wrote: > Chris Smith (chris@amgroupadmin.com) wrote: > > > Hi all, after the last 4.2-STABLE (Jan 17) buildworld I get the following > > whenever I try to build a port. > > > > ===> ntop-1.1 : Your system is too old to use this bsd.port.mk. You need a > > fresh make world or an upgrade kit. Please go to > > http://www.FreeBSD.org/ports/ or a mirror site and follow the instructions. > > This is a pretty common error that occurs the first time you use > cvsup to update your ports tree. (Should a solution for this be in > the handbook?) > > The problem is that cvsup will not delete files unknown to the cvsup > server. (If you place a file in the ports tree and run cvsup, it should > not delete your file in an effort to synchronize the trees.) > > /usr/local/bin/bash: }fmt: command not found /usr/ports /usr/ports.old > (just in case) and then I run cvsup to get a fresh ports tree. I ran into the same thing recently after reformatting my system and reinstalling (to get rid of Windows). A little probing in /usr/ports/Mk (grep "too old" *) turned up an easy solution: (In bsd.port.mk) # Don't build a port if the system is too old. ################################################################ .if ${OSVERSION} >= 300000 # You need an upgrade kit or make world newer than this BSDPORTMKVERSION= 20001103 .if exists(/var/db/port.mkversion) VERSIONFILE= /var/db/port.mkversion .else VERSIONFILE= ${PKG_DBDIR}/.mkversion .endif .if exists(${VERSIONFILE}) .if !defined(SYSTEMVERSION) SYSTEMVERSION!= cat ${VERSIONFILE} .endif .else SYSTEMVERSION= 0 .endif .if ${BSDPORTMKVERSION} > ${SYSTEMVERSION} IGNORE= ": Your system is too old to use this bsd.port.mk. You need a fresh mak e world or an upgrade kit. Please go to http://www.FreeBSD.org/ports/ or a mirror site and follow the instructions" .endif .endif A simple "echo 20001103 > /var/db/.mkversion" and "echo 20001103 > /var/db/pkg/port.mkversion" did the trick. Perhaps the "make update" target in /usr/ports/Makefile should take care of this automatically? -- Conrad Sabatier cjsabatier@home.com To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message