[TUHS] Version 256 of systemd boasts '42% less Unix philosophy' The Register

Larry McVoy lm at mcvoy.com
Fri Jun 21 08:11:24 AEST 2024


On Thu, Jun 20, 2024 at 03:00:52PM -0700, ron minnich wrote:
> You're right. It's not that autoconf never works, it's that it fails so
> frequently that I can't trust it to work. Case in point, I just had a bunch
> of trouble this morning with it, with the most trivial command, and had to
> reset the repo to ground state to get it to build again.
> 
> but compared to my experience with Go, autoconf does not compare well.

This is BitKeeper's build shell.  Not a lot to it.

#!/bin/sh

orig_args="$@"

ms_env()
{
	unset JOBS
	test "$MSYSBUILDENV" || {
		echo running in wrong environment, respawning...
		rm -f conf*.mk
		bk get -S ./update_buildenv
		BK_USEMSYS=1 bk sh ./update_buildenv
		export HOME=`bk pwd`
		test -d R:/build/buildenv/bin &&
		    exec R:/build/buildenv/bin/sh --login $0 $orig_args
		exec C:/build/buildenv/bin/sh --login $0 $orig_args
	}

	gcc --version | grep -q cyg && {
		echo No Mingw GCC found, I quit.
		exit 1
	}
}

JOBS=-j4
while getopts j: opt
do
       case "$opt" in
               j) JOBS=-j$OPTARG;;
       esac
done
shift `expr $OPTIND - 1`

# ccache stuff
CCLINKS=/build/cclinks
CCACHEBIN=`which ccache 2>/dev/null`
if [ $? = 0 -a "X$BK_NO_CCACHE" = X ]
then
	test -d $CCLINKS || {
		mkdir -p $CCLINKS
		ln -s "$CCACHEBIN" $CCLINKS/cc
		ln -s "$CCACHEBIN" $CCLINKS/gcc
	}
	CCACHE_DIR=/build/.ccache
	# Seems like a good idea but if cache and
	# source are on different filesystems, setting
	# CCACHE_HARDLINK seems to have the same
	# effect as disabling the cache altogether
	#CCACHE_HARDLINK=1
	CCACHE_UMASK=002
	export CCACHE_DIR CCACHE_HARDLINK CCACHE_UMASK
	export PATH=$CCLINKS:$PATH
else
	CCACHE_DISABLE=1
	export CCACHE_DISABLE
fi

case "X`uname -s`" in
	XCYGWIN*|XMINGW*)
		ms_env;
		;;
esac

test "$MAKE" || MAKE=`which gmake 2>/dev/null`
test "$MAKE" || MAKE=make
test "x$BK_VERBOSE_BUILD" != "x" && { V="V=1"; }

"$MAKE" --no-print-directory $JOBS $V "$@"


More information about the TUHS mailing list