xamarin-macios/tools/common/Make.common

79 строки
5.4 KiB
Plaintext

# We check in SdkVersions.cs so that it's easier to use this file when building tests on Windows.
../common/SdkVersions.cs: ../common/SdkVersions.in.cs Makefile $(TOP)/Make.config
$(Q_GEN) sed \
-e 's/@IOS_SDK_VERSION@/$(IOS_SDK_VERSION)/g' -e 's/@WATCHOS_SDK_VERSION@/$(WATCH_SDK_VERSION)/' -e 's/@TVOS_SDK_VERSION@/$(TVOS_SDK_VERSION)/' -e 's/@MACOS_SDK_VERSION@/$(MACOS_SDK_VERSION)/' \
-e 's/@MACCATALYST_SDK_VERSION@/$(MACCATALYST_SDK_VERSION)/g' \
\
-e 's/@MIN_IOS_SDK_VERSION@/$(MIN_IOS_SDK_VERSION)/g' \
-e 's/@MIN_WATCHOS_SDK_VERSION@/$(MIN_WATCHOS_SDK_VERSION)/' \
-e 's/@MIN_TVOS_SDK_VERSION@/$(MIN_TVOS_SDK_VERSION)/' \
-e 's/@MIN_MACOS_SDK_VERSION@/$(MIN_MACOS_SDK_VERSION)/' \
-e 's/@MIN_MACCATALYST_SDK_VERSION@/$(MIN_MACCATALYST_SDK_VERSION)/g' \
\
-e 's/@DOTNET_MIN_IOS_SDK_VERSION@/$(DOTNET_MIN_IOS_SDK_VERSION)/g' \
-e 's/@DOTNET_MIN_TVOS_SDK_VERSION@/$(DOTNET_MIN_TVOS_SDK_VERSION)/' \
-e 's/@DOTNET_MIN_MACOS_SDK_VERSION@/$(DOTNET_MIN_MACOS_SDK_VERSION)/' \
-e 's/@DOTNET_MIN_MACCATALYST_SDK_VERSION@/$(DOTNET_MIN_MACCATALYST_SDK_VERSION)/g' \
\
-e 's/@XCODE_VERSION@/$(XCODE_VERSION)/g' \
-e 's/@MIN_XM_MONO_VERSION@/$(MIN_XM_MONO_VERSION)/g' \
-e 's/@MIN_IOS_SIMULATOR_VERSION@/$(MIN_IOS_SIMULATOR_VERSION)/g' \
-e 's/@MIN_WATCHOS_SIMULATOR_VERSION@/$(MIN_WATCHOS_SIMULATOR_VERSION)/' \
-e 's/@MIN_WATCHOS_COMPANION_SIMULATOR_VERSION@/$(MIN_WATCHOS_COMPANION_SIMULATOR_VERSION)/' \
-e 's/@MIN_TVOS_SIMULATOR_VERSION@/$(MIN_TVOS_SIMULATOR_VERSION)/' \
-e "s/@MAX_IOS_SIMULATOR_VERSION@/$(MAX_IOS_SIMULATOR_VERSION)/g" \
-e "s/@MAX_MACOS_VERSION@/$(MAX_MACOS_VERSION)/g" \
-e "s/@MAX_WATCH_SIMULATOR_VERSION@/$(MAX_WATCH_SIMULATOR_VERSION)/g" \
-e "s/@MAX_TVOS_SIMULATOR_VERSION@/$(MAX_TVOS_SIMULATOR_VERSION)/g" \
-e "s/@MAX_IOS_DEPLOYMENT_TARGET@/$(MAX_IOS_DEPLOYMENT_TARGET)/g" \
-e "s/@MAX_WATCH_DEPLOYMENT_TARGET@/$(MAX_WATCH_DEPLOYMENT_TARGET)/g" \
-e "s/@MAX_TVOS_DEPLOYMENT_TARGET@/$(MAX_TVOS_DEPLOYMENT_TARGET)/g" \
\
-e "s/@IOS_VERSION@/$(IOS_PACKAGE_VERSION_MAJOR).$(IOS_PACKAGE_VERSION_MINOR).$(IOS_PACKAGE_VERSION_REV)/g" \
-e 's/@IOS_REVISION@/$(IOS_COMMIT_DISTANCE) ($(CURRENT_BRANCH_SED_ESCAPED): $(CURRENT_HASH))/g' \
-e "s/@IOS_NUGET_VERSION@/$(IOS_NUGET_VERSION)/g" \
-e "s/@IOS_NUGET_REVISION@/$(NUGET_PRERELEASE_IDENTIFIER)$(IOS_NUGET_COMMIT_DISTANCE)+$(NUGET_BUILD_METADATA)/g" \
\
-e "s/@TVOS_VERSION@/$(IOS_PACKAGE_VERSION_MAJOR).$(IOS_PACKAGE_VERSION_MINOR).$(IOS_PACKAGE_VERSION_REV)/g" \
-e 's/@TVOS_REVISION@/$(IOS_COMMIT_DISTANCE) ($(CURRENT_BRANCH_SED_ESCAPED): $(CURRENT_HASH))/g' \
-e "s/@TVOS_NUGET_VERSION@/$(TVOS_NUGET_VERSION)/g" \
-e "s/@TVOS_NUGET_REVISION@/$(NUGET_PRERELEASE_IDENTIFIER)$(TVOS_NUGET_COMMIT_DISTANCE)+$(NUGET_BUILD_METADATA)/g" \
\
-e "s/@WATCHOS_VERSION@/$(IOS_PACKAGE_VERSION_MAJOR).$(IOS_PACKAGE_VERSION_MINOR).$(IOS_PACKAGE_VERSION_REV)/g" \
-e 's/@WATCHOS_REVISION@/$(IOS_COMMIT_DISTANCE) ($(CURRENT_BRANCH_SED_ESCAPED): $(CURRENT_HASH))/g' \
-e "s/@WATCHOS_NUGET_VERSION@/$(WATCHOS_NUGET_VERSION)/g" \
-e "s/@WATCHOS_NUGET_REVISION@/$(NUGET_PRERELEASE_IDENTIFIER)$(WATCHOS_NUGET_COMMIT_DISTANCE)+$(NUGET_BUILD_METADATA)/g" \
\
-e "s/@MACOS_VERSION@/$(MAC_PACKAGE_VERSION_MAJOR).$(MAC_PACKAGE_VERSION_MINOR).$(MAC_PACKAGE_VERSION_REV)/g" \
-e 's/@MACOS_REVISION@/$(MAC_COMMIT_DISTANCE) ($(CURRENT_BRANCH_SED_ESCAPED): $(CURRENT_HASH))/g' \
-e "s/@MACOS_NUGET_VERSION@/$(MACOS_NUGET_VERSION)/g" \
-e "s/@MACOS_NUGET_REVISION@/$(NUGET_PRERELEASE_IDENTIFIER)$(MACOS_NUGET_COMMIT_DISTANCE)+$(NUGET_BUILD_METADATA)/g" \
\
-e "s/@DEFAULT_TARGET_PLATFORM_VERSION_IOS@/$(DEFAULT_TARGET_PLATFORM_VERSION_IOS)/g" \
-e "s/@DEFAULT_TARGET_PLATFORM_VERSION_TVOS@/$(DEFAULT_TARGET_PLATFORM_VERSION_TVOS)/g" \
-e "s/@DEFAULT_TARGET_PLATFORM_VERSION_MACOS@/$(DEFAULT_TARGET_PLATFORM_VERSION_MACOS)/g" \
-e "s/@DEFAULT_TARGET_PLATFORM_VERSION_MACCATALYST@/$(DEFAULT_TARGET_PLATFORM_VERSION_MACCATALYST)/g" \
\
-e "s/@PRODUCT_HASH@/$(CURRENT_HASH_LONG)/g" \
\
-e "s/@DOTNET_TFM@/$(DOTNET_TFM)/g" \
-e "s/@DOTNET_VERSION@/$(subst net,,$(DOTNET_TFM))/g" \
$< > $@.tmp
$(Q) if ! diff $@ $@.tmp >/dev/null; then $(CP) $@.tmp $@; git diff "$@"; echo "The file $(TOP)/tools/common/SdkVersions.cs has been automatically re-generated; please commit the changes."; exit 1; fi
$(Q) touch $@
../common/ProductConstants.cs: ../common/ProductConstants.in.cs Makefile $(TOP)/Make.config $(GIT_DIRECTORY)/index
$(Q_GEN) sed \
-e "s/@IOS_VERSION@/$(IOS_PACKAGE_VERSION_MAJOR).$(IOS_PACKAGE_VERSION_MINOR).$(IOS_PACKAGE_VERSION_REV)/g" \
-e "s/@TVOS_VERSION@/$(IOS_PACKAGE_VERSION_MAJOR).$(IOS_PACKAGE_VERSION_MINOR).$(IOS_PACKAGE_VERSION_REV)/g" \
-e "s/@WATCHOS_VERSION@/$(IOS_PACKAGE_VERSION_MAJOR).$(IOS_PACKAGE_VERSION_MINOR).$(IOS_PACKAGE_VERSION_REV)/g" \
-e "s/@MACOS_VERSION@/$(MAC_PACKAGE_VERSION_MAJOR).$(MAC_PACKAGE_VERSION_MINOR).$(MAC_PACKAGE_VERSION_REV)/g" \
\
$(foreach platform,$(DOTNET_PLATFORMS_UPPERCASE),-e 's/@$(platform)_REVISION@/$($(platform)_COMMIT_DISTANCE) ($(CURRENT_BRANCH_SED_ESCAPED): $(CURRENT_HASH))/g') \
$(foreach platform,$(DOTNET_PLATFORMS_UPPERCASE),-e 's/@$(platform)_NUGET_VERSION@/$($(platform)_NUGET_VERSION)/g') \
$(foreach platform,$(DOTNET_PLATFORMS_UPPERCASE),-e "s/@$(platform)_NUGET_REVISION@/$(NUGET_PRERELEASE_IDENTIFIER)$($(platform)_NUGET_COMMIT_DISTANCE)+$(NUGET_BUILD_METADATA)/g") \
\
-e "s/@PRODUCT_HASH@/$(CURRENT_HASH_LONG)/g" \
$< > $@