Subject: Is the Solaris /bin/sh still considered supported by pkgsrc?
To: <>
From: Roland Illig <>
List: tech-pkg
Date: 11/23/2007 12:32:14
This is a multi-part message in MIME format.
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit


on Solaris, the current pkgsrc bootstrap uses a reasonable shell for 
bmake. We have a lot of code in pkgsrc that looks very ugly just because 
we support the Solaris /bin/sh. I would like to clean that up. But 
before, we must be sure that no-one is using the Solaris /bin/sh 
anymore. The appended patch does exactly this.

Any objections?

When the patch gets committed, we must make sure that bootstrapping 
works over an already installed pkgsrc installation. Currently it doesn't:

===> Installing for bootstrap-mk-files-20071104
ERROR: bootstrap-mk-files-20070810 is already installed - perhaps an 
older version?


Content-Type: text/x-patch;
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;

RCS file: /cvsroot/pkgsrc/mk/misc/,v
retrieving revision 1.3
diff -u -p -r1.3
---	13 Oct 2007 11:04:19 -0000	1.3
+++	23 Nov 2007 11:06:52 -0000
@@ -43,6 +43,15 @@ _PKG_DEBUG_SCRIPT=	${SH} -x
 RUN=			${_PKG_SILENT}${_PKG_DEBUG} set -e;
+# get rid of any remaining /bin/sh users
+.if ${OPSYS} == "SunOS"
+_SOLARIS_BIN_SH!=	(eval "f=prefixok; echo \$${f\#prefix}" 2>/dev/null) || echo "fail"
+.  if ${_SOLARIS_BIN_SH} == "fail"
+PKG_FAIL_REASON+=	"[] The Solaris /bin/sh is not supported anymore."
+PKG_FAIL_REASON+=	"[] Please bootstrap pkgsrc again."
+.  endif
 .if make(help)
 .include "../help/"