Bug in make setting wrong MAKESYSPATH

From: Thomas Mueller <mueller6722_at_twc.com>
Date: Sun, 21 May 2017 08:54:49 +0000
I tried building ports, starting with ports-mgmt/synth, on HEAD (12-current) and ran into difficulties with syntax error in bsd.compiler.mk .

With PORTSDIR on another partition, mounted as /BETA1, I got these errors, but not when I null-mounted /BETA1/usr/ports as /usr/ports.

I shouldn't have to resort to this kludge, didn't have to in the recent past.

This bug shows in both 11.0-STABLE and 12.0-CURRENT.

I looked into "man make" and found that make got the wrong path for MAKESYSPATH, setting to /BETA1/usr/share/mk instead of what it should be, /usr/share/mk .

Going into /BETA1/usr/ports/archivers/zip (for a short and simple example), 
make all-depends-list   produced

sh: Syntax error: ")" unexpected
make: "/BETA1/usr/share/mk/bsd.compiler.mk" line 52: warning: "echo 4.0.0 4.0.0) | awk -F. '{print $1 * 10000 + $2 * 100 + $3;}'" returned non-zero status
sh: Syntax error: ")" unexpected
make[1]: "/BETA1/usr/share/mk/bsd.compiler.mk" line 52: warning: "echo 4.0.0 4.0.0) | awk -F. '{print $1 * 10000 + $2 * 100 + $3;}'" returned non-zero status
/BETA1/usr/ports/ports-mgmt/pkg

make -m /usr/share/mk all-depends-list produces
/BETA1/usr/ports/ports-mgmt/pkg

This looks like a bug that ought to be fixed, though there is a workaround using "make -m /usr/share/mk ..." every time, or presumably, setting 
MAKESYSPATH=/usr/share/mk
in the environment.

Should I file a bug report?

I could get much more verbose outputs when there are more dependencies, such as in /BETA1/usr/ports/ports-mgmt/synth, or more so, 
/BETA1/usr/ports/www/seamonkey

I also noticed that in newer versions of FreeBSD, /usr/share/mk/bsd.compiler.mk has greatly increased in size (not a bug. except when "make" goes to the wrong MAKESYSPATH.

Maybe add in .cshrc and .profile
MAKESYSPATH=/usr/share/mk
?

Tom
Received on Sun May 21 2017 - 06:54:57 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:11 UTC