Broken Ports Collection

Hello Everyone,

I seem to have somehow completely screwed up my ports collection. Let's say I try and build mg (a non-installed port on my system):

Code:
/usr/ports/editors/mg # make
"/usr/ports/Mk/bsd.port.mk", line 1444: warning: String comparison operator should be either == or !=
"/usr/ports/Mk/bsd.port.mk", line 1444: Malformed conditional (${perl_minor} >= 100)
"/usr/ports/Mk/bsd.port.mk", line 1458: warning: String comparison operator should be either == or !=
"/usr/ports/Mk/bsd.port.mk", line 1458: Malformed conditional (${PERL_LEVEL} >= 501200)
"/usr/ports/Mk/bsd.port.mk", line 1460: warning: String comparison operator should be either == or !=
"/usr/ports/Mk/bsd.port.mk", line 1460: Malformed conditional (${PERL_LEVEL} >= 501000)
"/usr/ports/Mk/bsd.port.mk", line 1591: if-less endif
"/usr/ports/Mk/bsd.port.mk", line 6351: if-less endif
make: fatal errors encountered -- cannot continue
/usr/ports/editors/mg #


I get similar errors trying to build other ports, or do "make index" for the ports collection. The only way I can think of that I could've messed the collection up is that I did a csup to grab the base system sources using this supfile:

Code:
# $FreeBSD: supfile to sync source tree w/ current RELENG release
#
# invoke csup:
# csup -g -L 2 /etc/src-supfile
#
# Defaults that apply to all the collections
#

# mirrors listed at http://www.freebsd.org/doc/handbook/mirrors.html.
*default host=cvsup3.us.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=RELENG_8_1
*default delete use-rel-suffix
*default compress

## Main Source Tree.
#
# The easiest way to get the main source tree is to use the "src-all"
# mega-collection.  It includes all of the individual "src-*" collections.
src-all

then I did a "make buildworld" and "make buildkernel" to get a build for use in setting up some jails to play around with. (I didn't do "make installworld" for the host, I just left the base system alone)

At this point, I would really care if I had to completely ax my whole ports collection, in fact I've tried (after backing up the files) doing "rm -rf /usr/ports/*" and then grabbing a new collection via portsnap, but I still get the same kinds of errors, which makes me wonder if I've actually broke something else on my box. Any ideas?

Thanks in advance.
 
pseudonomous said:
Hello Everyone,

I seem to have somehow completely screwed up my ports collection. Let's say I try and build mg (a non-installed port on my system):

Code:
/usr/ports/editors/mg # make
"/usr/ports/Mk/bsd.port.mk", line 1444: warning: String comparison operator should be either == or !=
"/usr/ports/Mk/bsd.port.mk", line 1444: Malformed conditional (${perl_minor} >= 100)
"/usr/ports/Mk/bsd.port.mk", line 1458: warning: String comparison operator should be either == or !=
"/usr/ports/Mk/bsd.port.mk", line 1458: Malformed conditional (${PERL_LEVEL} >= 501200)
"/usr/ports/Mk/bsd.port.mk", line 1460: warning: String comparison operator should be either == or !=
"/usr/ports/Mk/bsd.port.mk", line 1460: Malformed conditional (${PERL_LEVEL} >= 501000)
"/usr/ports/Mk/bsd.port.mk", line 1591: if-less endif
"/usr/ports/Mk/bsd.port.mk", line 6351: if-less endif
make: fatal errors encountered -- cannot continue
/usr/ports/editors/mg #

Do this, as root:
# which make
My guess is that you are somehow running gmake instead of make.
 
I checked "make.conf", I encounter the errors with file empty except for:
Code:
PERL_VERSION="5.8.9"
this is the version number that perl returns, but is it possible I've screwed something up and this is NOT the version of perl I should be running? (On 8.1-RELEASE)

Also, make is "/usr/bin/make", and since it won't parse the "--version" option, I don't think it can be gnu-make.
 
Yes, indeed, I installed a newer version of perl from one of the ftp mirrors and now I can at least build "mg". Thanks for the help!
 
Back
Top