From dd0867bb17da2ba0f37be7c09830ca5baa72b61f Mon Sep 17 00:00:00 2001 From: AnonymousRandomPerson Date: Mon, 28 Aug 2023 00:09:02 -0400 Subject: [PATCH] Ported WSL2 fix from HeartGold --- platform.mk | 58 ++++++++++++++++++++++++++++++----------------------- 1 file changed, 33 insertions(+), 25 deletions(-) diff --git a/platform.mk b/platform.mk index dc45cf02..5493e631 100644 --- a/platform.mk +++ b/platform.mk @@ -1,38 +1,46 @@ WSLENV ?= no ifeq ($(WSLENV),no) -NOWINE = 0 + NOWINE = 0 else -NOWINE = 1 + # As of build 17063, WSLENV is defined in both WSL1 and WSL2 + # so we need to use the kernel release to detect between + # the two. + UNAME_R := $(shell uname -r) + ifeq ($(findstring WSL2,$(UNAME_R)),) + NOWINE = 1 + else + NOWINE = 0 + endif endif ifeq ($(OS),Windows_NT) -EXE := .exe -WINE := -GREP := grep -P -SED := sed -r -SHA1SUM := sha1sum -MKTEMP := mktemp + EXE := .exe + WINE := + GREP := grep -P + SED := sed -r + SHA1SUM := sha1sum + MKTEMP := mktemp else -EXE := -WINE := wine -UNAME_S := $(shell uname -s) -ifeq ($(UNAME_S),Darwin) -GREP := grep -E -SED := gsed -r -SHA1SUM := shasum -MKTEMP := gmktemp -else -GREP := grep -P -SED := sed -r -SHA1SUM := sha1sum -MKTEMP := mktemp -endif + EXE := + WINE := wine + UNAME_S := $(shell uname -s) + ifeq ($(UNAME_S),Darwin) + GREP := grep -E + SED := gsed -r + SHA1SUM := shasum + MKTEMP := gmktemp + else + GREP := grep -P + SED := sed -r + SHA1SUM := sha1sum + MKTEMP := mktemp + endif endif ifeq ($(NOWINE),1) -WINE := -WINPATH := wslpath + WINE := + WINPATH := wslpath else -WINPATH := winepath + WINPATH := winepath endif