Date: Fri, 12 Jun 2009 00:17:02 +0300 From: Giorgos Keramidas <keramida@ceid.upatras.gr> To: Peter Clark <clarkp@mtmary.edu> Cc: freebsd-questions@freebsd.org Subject: Re: Make Question Message-ID: <87fxe6sc6p.fsf@kobe.laptop> In-Reply-To: <4A3159B3.5090009@mtmary.edu> (Peter Clark's message of "Thu, 11 Jun 2009 14:23:31 -0500") References: <4A3159B3.5090009@mtmary.edu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Thu, 11 Jun 2009 14:23:31 -0500, Peter Clark <clarkp@mtmary.edu> wrote: > Hello, > I have inherited an old FreeBSD 5.1 machine(5.1-RELEASE-p18). I realize > that the short answer to my question is more than likely to upgrade the > OS to a current release and I would if I had that option right now, but I > do not. I needed to upgrade the perl/openssh/openssl implementation on > this box. My first thought was to use the port on the machine that was > from that era but make fails. So then I thought to csup the ports tree > and try with a new version, that fails as well. The error is as follows: > > make config > "/usr/ports/Mk/bsd.port.mk", line 1780: warning: String comparison > operator should be either == or != > "/usr/ports/Mk/bsd.port.mk", line 1780: Malformed conditional > ((${OSVERSION} >= 700007 || ${OSVERSION} < 700000)) > "/usr/ports/Mk/bsd.port.mk", line 1780: Missing dependency operator > "/usr/ports/Mk/bsd.port.mk", line 6276: if-less endif > "/usr/ports/Mk/bsd.port.mk", line 6276: Need an operator > make: fatal errors encountered -- cannot continue This is because bsd.port.mk now uses constructs that are not supported by the `/usr/bin/make' binary of 5.X. If you *really* have to stick with 5.1-RELEASE-p18, it may be worth trying to compile a newer snapshot of `src/usr.bin/make' from 7-STABLE and install it as say `/usr/bin/make-7.x'. Then you can try building ports from a more recent `/usr/ports' tree with *that* make binary: # cd /usr/ports/CATEGORY/APP # make-7.x config Most of the `ports/' makefile glue should use ${MAKE} to invoke child instances of the make utility, and with a custom `make-7.x' binary this should default to the correct version of `/usr/bin/make-7.x'. This is a bit of a "hack" though, so if it fails in other ways, you will have to weigh the two options: (1) staying with 5.1 and trying to build ports with a custom `make-7.x' binary, possibly investing a lot of time to fix `ports/Mk/bsd.*.mk' problems as they come up, and (2) updating the base system to a more recent FreeBSD release.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?87fxe6sc6p.fsf>