Only cross-test 32bit on Linux (#658)

This doesn't work on at least FreeBSD and Darwin. It does work on Linux,
only try it there.
This commit is contained in:
Matthias Rampke 2017-08-24 07:13:17 +00:00 committed by Ben Kochie
parent 2ed98fd5a5
commit d3e3a9c181

View file

@ -41,10 +41,12 @@ endif
# 64bit -> 32bit mapping for cross-checking. At least for amd64/386, the 64bit CPU can execute 32bit code but not the other way around, so we don't support cross-testing upwards.
cross-test = skip-test-32bit
define goarch_pair
ifeq ($$(GOARCH),$1)
GOARCH_CROSS = $2
cross-test = test-32bit
endif
ifeq ($$(OS_detected),Linux)
ifeq ($$(GOARCH),$1)
GOARCH_CROSS = $2
cross-test = test-32bit
endif
endif
endef
# By default, "cross" test with ourselves to cover unknown pairings.
@ -68,7 +70,7 @@ test-32bit: collector/fixtures/sys/.unpacked
@env GOARCH=$(GOARCH_CROSS) $(GO) test $(pkgs)
skip-test-32bit:
@echo ">> SKIP running tests in 32-bit mode: not supported on $(GOARCH)"
@echo ">> SKIP running tests in 32-bit mode: not supported on $(OS_detected)/$(GOARCH)"
collector/fixtures/sys/.unpacked: collector/fixtures/sys.ttar
./ttar -C collector/fixtures -x -f collector/fixtures/sys.ttar