~tyil/rakudo-star

54a1cb01d3cfd3c6df042a514e03dbfa939a6c5d — Patrick Spek 4 months ago dcc9b10 v2021.02.1-bsd1
Use gmake for nqp and rakudo if its available

NQP and Rakudo generate a different makefile if gmake is available, and
their makefiles require gmake to be used because of that. This change
will check if gmake is available, and use it for those particular core
components instead of regular make.
2 files changed, 15 insertions(+), 4 deletions(-)

M lib/actions/install.bash
M lib/main.bash
M lib/actions/install.bash => lib/actions/install.bash +4 -4
@@ 190,8 190,8 @@ build_nqp() {

	{
		perl Configure.pl --backend="$RSTAR_BACKEND" "$@" \
		&& make \
		&& make install \
		&& ${RSTAR_PLATFORM[make]} \
		&& ${RSTAR_PLATFORM[make]} install \
		|| return
	} > "$logfile" 2>&1
}


@@ 211,8 211,8 @@ build_rakudo() {

	{
		perl Configure.pl --backend="$RSTAR_BACKEND" "$@" \
		&& make \
		&& make install \
		&& ${RSTAR_PLATFORM[make]} \
		&& ${RSTAR_PLATFORM[make]} install \
		|| return
	} > "$logfile" 2>&1
}

M lib/main.bash => lib/main.bash +11 -0
@@ 213,6 213,7 @@ discover_system() {
	RSTAR_PLATFORM["arch"]="$(discover_system_arch)"
	RSTAR_PLATFORM["version"]="$(discover_system_version)"
	RSTAR_PLATFORM["term"]="$TERM"
	RSTAR_PLATFORM["make"]="$(discover_system_make)"

	# When on a Linux-using OS, check for the specific distribution in use.
	if [[ ${RSTAR_PLATFORM[os]} == *"linux"* ]]


@@ 249,6 250,16 @@ discover_system_distro() {
	fi
}

discover_system_make() {
	for m in gmake make
	do
		command -v "$m" > /dev/null || continue

		printf "%s" "$m"
		return
	done
}

discover_system_version() {
	printf "%s" "$(uname -r | awk '{print tolower($0)}')"
}