[tests] Don't package/execute legacy mac tests if legacy hasn't been enabled. (#16051)

This commit is contained in:
Rolf Bjarne Kvinge 2022-09-22 07:13:24 +02:00 коммит произвёл GitHub
Родитель a9c8efa893
Коммит 421dad0fed
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
2 изменённых файлов: 59 добавлений и 12 удалений

Просмотреть файл

@ -16,6 +16,7 @@ mkdir -p "$DIR"
make test.config
cat test.config
INCLUDE_XAMARIN_LEGACY=$(grep ^INCLUDE_XAMARIN_LEGACY= test.config | sed 's/.*=//')
XCODE_DEVELOPER_ROOT=$(grep ^XCODE_DEVELOPER_ROOT= test.config | sed 's/.*=//')
MAC_DESTDIR=$(grep ^MAC_DESTDIR= test.config | sed 's/.*=//')
export MD_APPLE_SDK_ROOT="$(dirname "$(dirname "$XCODE_DEVELOPER_ROOT")")"
@ -26,27 +27,39 @@ export MSBuildExtensionsPathFallbackPathsOverride=$MAC_DESTDIR/Library/Framework
make
make .stamp-xharness-configure
../tools/xibuild/xibuild -- /r ../external/Touch.Unit/Touch.Client/macOS/mobile/Touch.Client-macOS-mobile.csproj
../tools/xibuild/xibuild -- /r ../external/Touch.Unit/Touch.Client/macOS/full/Touch.Client-macOS-full.csproj
../tools/xibuild/xibuild -- /r bindings-test/macOS/bindings-test.csproj
if test -n "$INCLUDE_XAMARIN_LEGACY"; then
../tools/xibuild/xibuild -- /r ../external/Touch.Unit/Touch.Client/macOS/mobile/Touch.Client-macOS-mobile.csproj
../tools/xibuild/xibuild -- /r ../external/Touch.Unit/Touch.Client/macOS/full/Touch.Client-macOS-full.csproj
../tools/xibuild/xibuild -- /r bindings-test/macOS/bindings-test.csproj
fi
make -C bindings-test/dotnet/macOS build
make -C bindings-test/dotnet/MacCatalyst build
TEST_SUITE_DEPENDENCIES+=(bindings-test)
TEST_SUITE_DEPENDENCIES+=(EmbeddedResources)
TEST_SUITE_DEPENDENCIES+=(fsharplibrary)
TEST_SUITE_DEPENDENCIES+=(BundledResources)
for dep in "${TEST_SUITE_DEPENDENCIES[@]}"; do
make -C $dep/dotnet/macOS build
make -C $dep/dotnet/MacCatalyst build
done
TEST_SUITES+=(build-dontlink)
TEST_SUITES+=(build-linksdk)
TEST_SUITES+=(build-linkall)
TEST_SUITES+=(build-introspection)
TEST_SUITES+=(build-xammac_tests)
if test -n "$INCLUDE_XAMARIN_LEGACY"; then
TEST_SUITES+=(build-xammac_tests)
fi
TEST_SUITES+=(build-monotouch-test)
TEST_SUITES+=(build-introspection)
make -f packaged-macos-tests.mk "${TEST_SUITES[@]}" -j
for app in */bin/x86/*/*.app linker/mac/*/bin/x86/*/*.app linker/mac/*/generated-projects/*/bin/x86/*/*.app introspection/Mac/bin/x86/*/*.app; do
mkdir -p "$DIR/tests/$app"
$CP -R "$app" "$DIR/tests/$app/.."
done
if test -n "$INCLUDE_XAMARIN_LEGACY"; then
for app in */bin/x86/*/*.app linker/mac/*/bin/x86/*/*.app linker/mac/*/generated-projects/*/bin/x86/*/*.app introspection/Mac/bin/x86/*/*.app; do
mkdir -p "$DIR/tests/$app"
$CP -R "$app" "$DIR/tests/$app/.."
done
fi
for app in linker/*/*/dotnet/*/bin/*/*/*/*.app */dotnet/*/bin/*/*/*/*.app; do
mkdir -p "$DIR/tests/$app"
@ -59,8 +72,8 @@ $CP -p ../Make.config "$DIR"
$CP -p ../Make.versions "$DIR"
$CP -p test-dependencies.sh "$DIR"
$CP -p ../system-dependencies.sh "$DIR"
$CP -p ../configure.inc "$DIR"
mkdir -p "$DIR/mk"
$CP -p ../Make.config "$DIR"
$CP -p ../mk/subdirs.mk "$DIR/mk"
$CP -p ../mk/rules.mk "$DIR/mk"
$CP -p ../mk/quiet.mk "$DIR/mk"

Просмотреть файл

@ -34,9 +34,15 @@ RUN_WITH_TIMEOUT_LONGER=./run-with-timeout.sh 600
$(Q) touch $@
PACKAGES_CONFIG:=$(shell git ls-files -- '*.csproj' '*/packages.config' | sed 's/ /\\ /g')
ifdef INCLUDE_XAMARIN_LEGACY
.stamp-nuget-restore-mac: tests-mac.sln $(PACKAGES_CONFIG)
$(Q_XBUILD) $(SYSTEM_XIBUILD) -t -- /Library/Frameworks/Mono.framework/Versions/Current/lib/mono/nuget/NuGet.exe restore tests-mac.sln
$(Q) touch $@
else
.stamp-nuget-restore-mac:
$(Q) echo "Legacy Xamarin is disabled, so nothing to restore"
$(Q) touch $@
endif
#
# dont link
@ -186,7 +192,9 @@ endif
build-$(1): .stamp-nuget-restore-mac
$$(Q) rm -f ".$$@-failure.stamp"
ifdef INCLUDE_XAMARIN_LEGACY
$$(Q) $$(MAKE) -f packaged-macos-tests.mk build-legacy-$(1) || echo "build-legacy-$(1) failed" >> ".$$@-failure.stamp"
endif
$$(Q) $$(MAKE) -f packaged-macos-tests.mk build-mac-dotnet-x64-$(1) || echo "build-mac-dotnet-x64-$(1) failed" >> ".$$@-failure.stamp"
$$(Q) $$(MAKE) -f packaged-macos-tests.mk build-mac-dotnet-arm64-$(1) || echo "build-mac-dotnet-arm64-$(1) failed" >> ".$$@-failure.stamp"
$$(Q) $$(MAKE) -f packaged-macos-tests.mk build-maccatalyst-dotnet-x64-$(1) || echo "build-maccatalyst-dotnet-x64-$(1) failed" >> ".$$@-failure.stamp"
@ -195,7 +203,9 @@ build-$(1): .stamp-nuget-restore-mac
exec-$(1):
$$(Q) rm -f ".$$@-failure.stamp"
ifdef INCLUDE_XAMARIN_LEGACY
$$(Q) $$(MAKE) -f packaged-macos-tests.mk exec-legacy-$(1) || echo "exec-legacy-$(1) failed" >> ".$$@-failure.stamp"
endif
$$(Q) $$(MAKE) -f packaged-macos-tests.mk exec-mac-dotnet-x64-$(1) || echo "exec-mac-dotnet-x64-$(1) failed" >> ".$$@-failure.stamp"
$$(Q) $$(MAKE) -f packaged-macos-tests.mk exec-mac-dotnet-arm64-$(1) || echo "exec-mac-dotnet-arm64-$(1) failed" >> ".$$@-failure.stamp"
$$(Q) $$(MAKE) -f packaged-macos-tests.mk exec-maccatalyst-dotnet-x64-$(1) || echo "exec-maccatalyst-dotnet-x64-$(1) failed" >> ".$$@-failure.stamp"
@ -255,7 +265,9 @@ endif
build-$(1): .stamp-nuget-restore-mac
$$(Q) rm -f ".$$@-failure.stamp"
ifdef INCLUDE_XAMARIN_LEGACY
$$(Q) $$(MAKE) -f packaged-macos-tests.mk build-legacy-$(1) || echo "build-legacy-$(1) failed" >> ".$$@-failure.stamp"
endif
$$(Q) $$(MAKE) -f packaged-macos-tests.mk build-mac-dotnet-x64-$(1) || echo "build-mac-dotnet-x64-$(1) failed" >> ".$$@-failure.stamp"
$$(Q) $$(MAKE) -f packaged-macos-tests.mk build-mac-dotnet-arm64-$(1) || echo "build-mac-dotnet-arm64-$(1) failed" >> ".$$@-failure.stamp"
$$(Q) $$(MAKE) -f packaged-macos-tests.mk build-maccatalyst-dotnet-x64-$(1) || echo "build-maccatalyst-dotnet-x64-$(1) failed" >> ".$$@-failure.stamp"
@ -264,7 +276,9 @@ build-$(1): .stamp-nuget-restore-mac
exec-$(1):
$$(Q) rm -f ".$$@-failure.stamp"
ifdef INCLUDE_XAMARIN_LEGACY
$$(Q) $$(MAKE) -f packaged-macos-tests.mk exec-legacy-$(1) || echo "exec-legacy-$(1) failed" >> ".$$@-failure.stamp"
endif
$$(Q) $$(MAKE) -f packaged-macos-tests.mk exec-mac-dotnet-x64-$(1) || echo "exec-mac-dotnet-x64-$(1) failed" >> ".$$@-failure.stamp"
$$(Q) $$(MAKE) -f packaged-macos-tests.mk exec-mac-dotnet-arm64-$(1) || echo "exec-mac-dotnet-arm64-$(1) failed" >> ".$$@-failure.stamp"
$$(Q) $$(MAKE) -f packaged-macos-tests.mk exec-maccatalyst-dotnet-x64-$(1) || echo "exec-maccatalyst-dotnet-x64-$(1) failed" >> ".$$@-failure.stamp"
@ -313,31 +327,51 @@ build-legacy-linksdk: .stamp-nuget-restore-mac
# execution targets
exec-legacy-dontlink:
ifdef INCLUDE_XAMARIN_LEGACY
$(Q) rm -f ".$@-failure.stamp"
$(Q) $(MAKE) -f packaged-macos-tests.mk exec-mac-modern-dontlink || echo "exec-mac-modern-dont link failed" >> ".$@-failure.stamp"
$(Q) $(MAKE) -f packaged-macos-tests.mk exec-mac-full-dontlink || echo "exec-mac-full-dont link failed" >> ".$@-failure.stamp"
$(Q) $(MAKE) -f packaged-macos-tests.mk exec-mac-system-dontlink || echo "exec-mac-system-dont link failed" >> ".$@-failure.stamp"
$(Q) if test -e ".$@-failure.stamp"; then cat ".$@-failure.stamp"; rm ".$@-failure.stamp"; exit 1; fi
else
$(Q) echo "Not executing $@, because legacy Xamarin is not enabled"
endif
exec-legacy-introspection:
ifdef INCLUDE_XAMARIN_LEGACY
$(Q) rm -f ".$@-failure.stamp"
$(Q) $(MAKE) -f packaged-macos-tests.mk exec-mac-modern-introspection || echo "exec-mac-modern-introspection failed" >> ".$@-failure.stamp"
$(Q) if test -e ".$@-failure.stamp"; then cat ".$@-failure.stamp"; rm ".$@-failure.stamp"; exit 1; fi
else
$(Q) echo "Not executing $@, because legacy Xamarin is not enabled"
endif
exec-xammac_tests:
ifdef INCLUDE_XAMARIN_LEGACY
$(Q) rm -f ".$@-failure.stamp"
$(Q) $(MAKE) -f packaged-macos-tests.mk exec-mac-modern-xammac_tests || echo "exec-mac-modern-xammac_tests failed" >> ".$@-failure.stamp"
$(Q) if test -e ".$@-failure.stamp"; then cat ".$@-failure.stamp"; rm ".$@-failure.stamp"; exit 1; fi
else
$(Q) echo "Not executing $@, because legacy Xamarin is not enabled"
endif
exec-legacy-monotouch-test: ;
# nothing to do here
exec-legacy-linkall:
ifdef INCLUDE_XAMARIN_LEGACY
$(Q) rm -f ".$@-failure.stamp"
$(Q) $(MAKE) -f packaged-macos-tests.mk exec-mac-modern-linkall || echo "exec-mac-modern-linkall failed" >> ".$@-failure.stamp"
$(Q) if test -e ".$@-failure.stamp"; then cat ".$@-failure.stamp"; rm ".$@-failure.stamp"; exit 1; fi
else
$(Q) echo "Not executing $@, because legacy Xamarin is not enabled"
endif
exec-legacy-linksdk:
ifdef INCLUDE_XAMARIN_LEGACY
$(Q) rm -f ".$@-failure.stamp"
$(Q) $(MAKE) -f packaged-macos-tests.mk exec-mac-modern-linksdk || echo "exec-mac-modern-link sdk failed" >> ".$@-failure.stamp"
$(Q) if test -e ".$@-failure.stamp"; then cat ".$@-failure.stamp"; rm ".$@-failure.stamp"; exit 1; fi
else
$(Q) echo "Not executing $@, because legacy Xamarin is not enabled"
endif