Make our local .NET the default .NET for the build. (#15086)
Make our local .NET the default .NET (in the root's global.json), and then if a directory wants to use the system .NET, then that directory would have to opt-in (using its own global.json). This way we don't have to copy global.json/NuGet.config files around to run tests with the correct .NET setup.
This commit is contained in:
Родитель
dcecc4dbf9
Коммит
a1d0b6eba9
|
@ -31,7 +31,7 @@ tests/bcl-test/Mac\ OS\ X\ BCL\ \tests*.csproj
|
|||
tests/bcl-test/mscorlib*.csproj
|
||||
tests/bcl-test/SystemCoreXunit*.csproj
|
||||
tests/bcl-test/SystemXunit.csproj
|
||||
global6.json
|
||||
global.json
|
||||
.idea
|
||||
device-tests-provisioning.csx
|
||||
build-provisioning.csx
|
||||
|
|
17
Make.config
17
Make.config
|
@ -523,7 +523,7 @@ MAC_PACKAGE_DMG_DIRNAME="$(MAC_PACKAGE_TITLE)"
|
|||
MAC_PACKAGE_UTI=com.$(MAC_PACKAGE_NAME_LOWER).pkg
|
||||
MAC_PACKAGE_INSTALL_LOCATION=$(MAC_FRAMEWORK_VERSIONED_DIR)
|
||||
|
||||
TT = $(SYSTEM_DOTNET) t4
|
||||
TT = $(DOTNET) t4
|
||||
|
||||
PRODUCT_KEY_PATH?=$(TOP)/product.snk
|
||||
|
||||
|
@ -578,22 +578,11 @@ endif
|
|||
|
||||
-include $(TOP)/dotnet.config
|
||||
$(TOP)/dotnet.config: $(TOP)/eng/Versions.props
|
||||
$(Q) grep -A1 \"sdk\": $(TOP)/global.json | sed -e '1d' -e 's/[ \t]*"version": /SYSTEM_DOTNET_VERSION=/' -e 's/"//g' > $@.tmp
|
||||
$(Q) grep MicrosoftDotnetSdkInternalPackageVersion $(TOP)/eng/Versions.props | sed -e 's/<*\/*MicrosoftDotnetSdkInternalPackageVersion>//g' -e 's/[ \t]*/DOTNET_VERSION=/' >> $@.tmp
|
||||
$(Q) grep MicrosoftNETCoreAppRefPackageVersion $(TOP)/eng/Versions.props | sed -e 's/<*\/*MicrosoftNETCoreAppRefPackageVersion>//g' -e 's/[ \t]*/BUNDLED_NETCORE_PLATFORMS_PACKAGE_VERSION=/' >> $@.tmp
|
||||
$(Q) grep MicrosoftNETWorkloadEmscriptenManifest60100PackageVersion $(TOP)/eng/Versions.props | sed -e 's/<*\/*MicrosoftNETWorkloadEmscriptenManifest60100PackageVersion>//g' -e 's/[ \t]*/EMSCRIPTEN_MANIFEST_PACKAGE_VERSION=/' >> $@.tmp
|
||||
$(Q) mv $@.tmp $@
|
||||
|
||||
ifneq ("$(wildcard /usr/local/share/dotnet/dotnet)","")
|
||||
SYSTEM_DOTNET=/usr/local/share/dotnet/dotnet
|
||||
else
|
||||
ifneq ("$(wildcard /usr/local/share/dotnet/x64/dotnet)","")
|
||||
SYSTEM_DOTNET=/usr/local/share/dotnet/x64/dotnet
|
||||
else
|
||||
SYSTEM_DOTNET=/must/install/dotnet
|
||||
endif
|
||||
endif
|
||||
|
||||
DOTNET_DESTDIR ?= $(TOP)/_build
|
||||
DOTNET_NUPKG_DIR ?= $(DOTNET_DESTDIR)/nupkgs
|
||||
DOTNET_PKG_DIR ?= $(DOTNET_DESTDIR)/pkgs
|
||||
|
@ -619,12 +608,12 @@ DOTNET_TARBALL=https://dotnetcli.blob.core.windows.net/dotnet/Sdk/$(DOTNET_VERSI
|
|||
DOTNET_TARBALL_NAME=$(notdir $(DOTNET_TARBALL))
|
||||
DOTNET_DIR=$(abspath $(TOP)/builds/downloads/$(basename $(basename $(DOTNET_TARBALL_NAME))))
|
||||
DOTNET=$(DOTNET_DIR)/dotnet
|
||||
DOTNET_BCL_DIR:=$(abspath $(TOP)/builds/downloads/microsoft.netcore.app.ref/$(DOTNET_BCL_VERSION)/ref/$(DOTNET_TFM))
|
||||
DOTNET_BCL_DIR:=$(abspath $(TOP)/packages/microsoft.netcore.app.ref/$(DOTNET_BCL_VERSION)/ref/$(DOTNET_TFM))
|
||||
|
||||
# Use the System.Runtime.InteropServices.NFloat.Internal package to get the System.Runtime.InteropServices.dll reference assembly for
|
||||
# .NET 6. This is no longer needed for .NET 7, when we can switch back to the usual BCL reference assemblies.
|
||||
ifeq ($(DOTNET_TFM),net6.0)
|
||||
DOTNET_SYSTEM_RUNTIME_INTEROPSERVICES_REF_ASSEMBLY_DIR:=$(abspath $(TOP)/builds/downloads/system.runtime.interopservices.nfloat.internal/6.0.1/ref/net6.0)
|
||||
DOTNET_SYSTEM_RUNTIME_INTEROPSERVICES_REF_ASSEMBLY_DIR:=$(abspath $(TOP)/packages/system.runtime.interopservices.nfloat.internal/6.0.1/ref/net6.0)
|
||||
else
|
||||
DOTNET_SYSTEM_RUNTIME_INTEROPSERVICES_REF_ASSEMBLY_DIR:=$(DOTNET_BCL_DIR)
|
||||
endif
|
||||
|
|
12
Makefile
12
Makefile
|
@ -58,10 +58,10 @@ ifdef INCLUDE_IOS
|
|||
@echo Validated file permissions for Xamarin.iOS.
|
||||
endif
|
||||
|
||||
all-local:: global6.json
|
||||
all-local:: global.json
|
||||
|
||||
# This tells NuGet to use the exact same dotnet version we've configured in Make.config
|
||||
global6.json: $(TOP)/Make.config.inc Makefile $(TOP)/.git/HEAD $(TOP)/.git/index
|
||||
global.json: $(TOP)/Make.config.inc Makefile $(TOP)/.git/HEAD $(TOP)/.git/index
|
||||
$(Q_GEN) \
|
||||
printf "{\n" > $@; \
|
||||
printf "\t\"sdk\": { \"version\": \"$(DOTNET_VERSION)\" }\n" >> $@; \
|
||||
|
@ -149,6 +149,14 @@ fix-xcode-select:
|
|||
fix-xcode-first-run:
|
||||
$(XCODE_DEVELOPER_ROOT)/usr/bin/xcodebuild -runFirstLaunch
|
||||
|
||||
install-dotnet:
|
||||
@echo "Figuring out package link..."
|
||||
@export PKG=$$(make -C builds print-dotnet-pkg-urls); \
|
||||
echo "Downloading $$(basename $$PKG)..."; \
|
||||
curl -LO "$$PKG"; \
|
||||
echo "Installing $$(basename $$PKG)..."; \
|
||||
time sudo installer -pkg "$$(basename $$PKG)" -target / -verbose -dumplog
|
||||
|
||||
git-clean-all:
|
||||
@echo "$(COLOR_RED)Cleaning and resetting all dependencies. This is a destructive operation.$(COLOR_CLEAR)"
|
||||
@echo "$(COLOR_RED)You have 5 seconds to cancel (Ctrl-C) if you wish.$(COLOR_CLEAR)"
|
||||
|
|
|
@ -1,7 +1,10 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<configuration>
|
||||
<config>
|
||||
<!-- use a local package folder because we produce nuget packages which may end up having to be cleaned,
|
||||
and it's much easier to clean a local repository than the global nuget cache (in particular on bots) -->
|
||||
<add key="repositorypath" value="packages" />
|
||||
<add key="globalPackagesFolder" value="packages" />
|
||||
</config>
|
||||
<packageSources>
|
||||
<clear />
|
||||
|
@ -21,6 +24,7 @@
|
|||
<add key="dotnet7" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json" />
|
||||
<add key="macios-dependencies" value="https://pkgs.dev.azure.com/xamarin/public/_packaging/macios-dependencies/nuget/v3/index.json" />
|
||||
<add key="xamarin-impl" value="https://pkgs.dev.azure.com/azure-public/vside/_packaging/xamarin-impl/nuget/v3/index.json" />
|
||||
<add key="local-tests-feed" value="tests/.nuget/packages" />
|
||||
</packageSources>
|
||||
<disabledPackageSources>
|
||||
<clear />
|
||||
|
|
|
@ -28,3 +28,5 @@ mono-ios-sdk-destdir
|
|||
*.dylib
|
||||
*.o
|
||||
x86-64-slice*
|
||||
*.pkg
|
||||
|
||||
|
|
|
@ -126,7 +126,7 @@ DOWNLOAD_DOTNET_VERSION=$(BUNDLED_NETCORE_PLATFORMS_PACKAGE_VERSION)
|
|||
endif
|
||||
endif
|
||||
|
||||
.stamp-download-dotnet-packages: $(TOP)/Make.config downloads/$(basename $(basename $(DOTNET_TARBALL_NAME))) package-download/global.json package-download/NuGet.config
|
||||
.stamp-download-dotnet-packages: $(TOP)/Make.config downloads/$(basename $(basename $(DOTNET_TARBALL_NAME)))
|
||||
$(Q_GEN) cd package-download && $(DOTNET) \
|
||||
build \
|
||||
download-packages.proj \
|
||||
|
@ -139,29 +139,16 @@ endif
|
|||
/p:ToolChainManifestVersionBand="$(TOOLCHAIN_MANIFEST_VERSION_BAND)" \
|
||||
/bl \
|
||||
$(DOTNET_BUILD_VERBOSITY)
|
||||
$(Q) $(CP) ./downloads/microsoft.net.workload.mono.toolchain.manifest-$(TOOLCHAIN_MANIFEST_VERSION_BAND)/$(DOWNLOAD_DOTNET_VERSION)/data/WorkloadManifest.* ./downloads/dotnet-sdk-$(DOTNET_VERSION)-osx-x64/sdk-manifests/$(DOTNET_MANIFEST_VERSION_BAND)/microsoft.net.workload.mono.toolchain/
|
||||
$(Q) $(CP) ./downloads/microsoft.net.workload.emscripten.manifest-$(TOOLCHAIN_MANIFEST_VERSION_BAND)/$(EMSCRIPTEN_MANIFEST_PACKAGE_VERSION)/data/WorkloadManifest.* ./downloads/dotnet-sdk-$(DOTNET_VERSION)-osx-x64/sdk-manifests/$(DOTNET_MANIFEST_VERSION_BAND)/microsoft.net.workload.emscripten/
|
||||
$(Q) $(CP) $(TOP)/packages/microsoft.net.workload.mono.toolchain.manifest-$(TOOLCHAIN_MANIFEST_VERSION_BAND)/$(DOWNLOAD_DOTNET_VERSION)/data/WorkloadManifest.* ./downloads/dotnet-sdk-$(DOTNET_VERSION)-osx-x64/sdk-manifests/$(DOTNET_MANIFEST_VERSION_BAND)/microsoft.net.workload.mono.toolchain/
|
||||
$(Q) $(CP) $(TOP)/packages/microsoft.net.workload.emscripten.manifest-$(TOOLCHAIN_MANIFEST_VERSION_BAND)/$(EMSCRIPTEN_MANIFEST_PACKAGE_VERSION)/data/WorkloadManifest.* ./downloads/dotnet-sdk-$(DOTNET_VERSION)-osx-x64/sdk-manifests/$(DOTNET_MANIFEST_VERSION_BAND)/microsoft.net.workload.emscripten/
|
||||
$(Q) touch $@
|
||||
|
||||
.stamp-install-t4: $(TOP)/.config/dotnet-tools.json
|
||||
$(SYSTEM_DOTNET) tool restore
|
||||
.stamp-install-t4: $(TOP)/.config/dotnet-tools.json .stamp-download-dotnet-packages
|
||||
$(DOTNET) tool restore
|
||||
$(Q) touch $@
|
||||
|
||||
BundledNETCorePlatformsPackageVersion.txt: .stamp-download-dotnet-packages
|
||||
|
||||
package-download/global.json: $(TOP)/global6.json Makefile
|
||||
$(Q) $(CP) $< $@
|
||||
|
||||
# put any downloaded packages in our own directory, not in ~
|
||||
package-download/NuGet.config: $(TOP)/NuGet.config Makefile
|
||||
$(Q) $(CP) $< $@
|
||||
$(Q) $(CP) $< $@.tmp
|
||||
$(Q) nuget config -Set globalPackagesFolder=$(abspath $(CURDIR)/downloads) -Config $@.tmp
|
||||
ifdef CUSTOM_DOTNET
|
||||
$(Q) nuget sources add -Name dev-runtime-feed -Source $(abspath $(DOTNET_RUNTIME_PATH)/artifacts/packages/Release/Shipping) -ConfigFile $@.tmp
|
||||
endif
|
||||
$(Q) mv $@.tmp $@
|
||||
|
||||
DOTNET_DOWNLOADS = \
|
||||
downloads/$(basename $(basename $(DOTNET_TARBALL_NAME))) \
|
||||
.stamp-download-dotnet-packages \
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
NuGet.config
|
||||
global.json
|
||||
|
|
@ -1,4 +1,3 @@
|
|||
global.json
|
||||
tmpdir
|
||||
Workloads/Microsoft.NET.Sdk.*/LICENSE
|
||||
WorkloadManifest.json
|
||||
|
|
|
@ -167,14 +167,14 @@ $(foreach platform,$(DOTNET_PLATFORMS),$(eval $(call NupkgDefinition,$(platform)
|
|||
|
||||
# Create the nuget in a temporary directory (nupkgs/)
|
||||
define CreateNuGetTemplate
|
||||
nupkgs/$(1)$(4).$(2).nupkg: $(TEMPLATED_FILES) $(WORKLOAD_TARGETS) $(3) package/$(1)/package.csproj $(wildcard package/*.csproj) $(wildcard $(DOTNET_DESTDIR)/$(1)/* $(DOTNET_DESTDIR)/$(1)/*/* $(DOTNET_DESTDIR)/$(1)/*/*/* $(DOTNET_DESTDIR)/$(1)/*/*/*/*) global.json .stamp-workaround-for-maccore-issue-2427
|
||||
nupkgs/$(1)$(4).$(2).nupkg: $(TEMPLATED_FILES) $(WORKLOAD_TARGETS) $(3) package/$(1)/package.csproj $(wildcard package/*.csproj) $(wildcard $(DOTNET_DESTDIR)/$(1)/* $(DOTNET_DESTDIR)/$(1)/*/* $(DOTNET_DESTDIR)/$(1)/*/*/* $(DOTNET_DESTDIR)/$(1)/*/*/*/*) .stamp-workaround-for-maccore-issue-2427
|
||||
@# Delete any versions of the nuget we're building
|
||||
$$(Q) rm -f nupkgs/$(1).*.nupkg
|
||||
$$(Q_PACK) $(DOTNET) pack package/$(1)/package.csproj -p:VersionBand=$(5) --output "$$(dir $$@)" $(DOTNET_PACK_VERBOSITY) "/bl:$$@.binlog"
|
||||
endef
|
||||
|
||||
define CreateWindowsNuGetTemplate
|
||||
nupkgs/$(1).$(2).nupkg: $(3) $(WORKLOAD_TARGETS) package/$(1)/package.csproj $(wildcard package/*.csproj) $(wildcard $(DOTNET_DESTDIR)/$(1)/* $(DOTNET_DESTDIR)/$(1)/*/* $(DOTNET_DESTDIR)/$(1)/*/*/* $(DOTNET_DESTDIR)/$(1)/*/*/*/*) global.json .stamp-workaround-for-maccore-issue-2427
|
||||
nupkgs/$(1).$(2).nupkg: $(3) $(WORKLOAD_TARGETS) package/$(1)/package.csproj $(wildcard package/*.csproj) $(wildcard $(DOTNET_DESTDIR)/$(1)/* $(DOTNET_DESTDIR)/$(1)/*/* $(DOTNET_DESTDIR)/$(1)/*/*/* $(DOTNET_DESTDIR)/$(1)/*/*/*/*) .stamp-workaround-for-maccore-issue-2427
|
||||
@# Delete any versions of the nuget we're building
|
||||
$$(Q) rm -f nupkgs/$(1).*.nupkg
|
||||
$$(Q_PACK) $(DOTNET) pack package/$(1)/package.csproj --output "$$(dir $$@)" $(DOTNET_PACK_VERBOSITY) "/bl:$$@.binlog"
|
||||
|
@ -394,18 +394,11 @@ ifdef ENABLE_DOTNET
|
|||
all-local:: $(TARGETS)
|
||||
endif
|
||||
|
||||
# This tells NuGet to use the exact same dotnet version we've configured in Make.config
|
||||
global.json: $(TOP)/global6.json
|
||||
$(CP) $< $@
|
||||
|
||||
$(TOP)/tests/dotnet/NuGet.config:
|
||||
$(Q) $(MAKE) -C $(TOP)/tests/dotnet NuGet.config
|
||||
|
||||
clean-local::
|
||||
$(Q) rm -Rf $(DOTNET_NUPKG_DIR)
|
||||
$(Q) git clean -xfdq
|
||||
|
||||
.stamp-workaround-for-maccore-issue-2427: global.json $(TOP)/eng/Versions.props $(LOCAL_WORKLOAD_TARGETS)
|
||||
.stamp-workaround-for-maccore-issue-2427: $(TOP)/eng/Versions.props $(LOCAL_WORKLOAD_TARGETS)
|
||||
$(Q) $(DOTNET) restore package/workaround-for-maccore-issue-2427/restore.csproj /bl:package/workaround-for-maccore-issue-2427/restore.binlog $(MSBUILD_VERBOSITY)
|
||||
$(Q) touch $@
|
||||
|
||||
|
|
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
"sdk": {
|
||||
"version": "6.0.201"
|
||||
}
|
||||
}
|
|
@ -1,4 +1 @@
|
|||
*.zip
|
||||
NuGet.config
|
||||
global.json
|
||||
|
||||
|
|
|
@ -9,18 +9,10 @@ Xamarin.PreBuilt.iOS.app.zip: .build-stamp
|
|||
$(Q) rm -rf $@
|
||||
$(Q_GEN) cd $(APP_DIR) && zip -9r $(abspath $@) .
|
||||
|
||||
NuGet.config: $(TOP)/tests/dotnet/NuGet.config $(TOP)/NuGet.config
|
||||
$(Q) $(MAKE) $@ -C $(dir $<)
|
||||
$(Q) $(CP) $< $@
|
||||
|
||||
global.json: $(TOP)/tests/dotnet/global.json $(TOP)/global6.json
|
||||
$(Q) $(MAKE) $@ -C $(dir $<)
|
||||
$(Q) $(CP) $< $@
|
||||
|
||||
$(TOP)/tests/dotnet/%:
|
||||
$(Q) $(MAKE) -C $(dir $@) $*
|
||||
|
||||
.build-stamp: $(wildcard Xamarin.PreBuilt.iOS/*) Makefile NuGet.config global.json
|
||||
.build-stamp: $(wildcard Xamarin.PreBuilt.iOS/*) Makefile
|
||||
$(Q_GEN) $(DOTNET) build Xamarin.PreBuilt.iOS/Xamarin.PreBuilt.iOS.csproj "/bl:$(abspath ./msbuild.binlog)" $(MSBUILD_VERBOSITY)
|
||||
$(Q) touch $@
|
||||
|
||||
|
|
|
@ -664,7 +664,7 @@ $(foreach platform,$(DOTNET_PLATFORMS),$(foreach rid,$(DOTNET_$(platform)_RUNTIM
|
|||
|
||||
define DotNetLibXamarinTemplate
|
||||
|
||||
DOTNET$(6)_$(2)_LIBDIR ?= $$(TOP)/builds/downloads/microsoft.netcore.app.runtime$(7).$(2)/$(BUNDLED_NETCORE_PLATFORMS_PACKAGE_VERSION)/runtimes/$(2)/native
|
||||
DOTNET$(6)_$(2)_LIBDIR ?= $$(TOP)/packages/microsoft.netcore.app.runtime$(7).$(2)/$(BUNDLED_NETCORE_PLATFORMS_PACKAGE_VERSION)/runtimes/$(2)/native
|
||||
DOTNET$(6)_$(2)_DYLIB_FLAGS = $(DOTNET_$(1)_DYLIB_FLAGS) -Wl,-install_name,libxamarin$(5).dylib -framework Foundation -framework CFNetwork -lz -L$(abspath $(DOTNET$(6)_$(2)_LIBDIR))
|
||||
|
||||
DOTNET_$(2)_$(3)$(4)_OBJECTS = $$(patsubst %,.libs/$(1)/%$(5).$(3).o, $(MONOTOUCH_SOURCE_STEMS)) $$(patsubst %,.libs/$(1)/%$(5).$(3).o, $(MONOTOUCH_$(shell echo $(3) | tr a-z A-Z)_SOURCE_STEMS))
|
||||
|
|
|
@ -1,4 +1,3 @@
|
|||
global.json
|
||||
build
|
||||
MonoTouch.NUnitLite.csproj
|
||||
MonoTouch.NUnitLite.tvos.csproj
|
||||
|
|
|
@ -1545,7 +1545,7 @@ $(SHARED_PATH)/Delegates.generated.cs: $(SHARED_PATH)/Delegates.cs.t4 $(SHARED_P
|
|||
$(Q) $(MAKE) -C $(SHARED_PATH) Delegates.generated.cs
|
||||
|
||||
$(BUILD_DIR)/common/NativeTypes/%.cs: $(TOP)/src/NativeTypes/%.tt | $(BUILD_DIR)/common/NativeTypes
|
||||
$(Q_GEN) cd $(TOP) && $(TT) $(abspath $<) -o $(abspath $@) 1>/dev/null
|
||||
$(Q_GEN) $(TT) $(abspath $<) -o $(abspath $@) 1>/dev/null
|
||||
|
||||
$(COMMON_TARGET_DIRS):
|
||||
$(Q) mkdir -p $@
|
||||
|
@ -1576,10 +1576,6 @@ $(DOTNET_BUILD_DIR)/Constants.%.generated.cs: Makefile $(DOTNET_GENERATE_FRAMEWO
|
|||
$(Q) mono --debug $(DOTNET_GENERATE_FRAMEWORKS_CONSTANTS) "$*" "$@.tmp"
|
||||
$(Q) mv "$@.tmp" "$@"
|
||||
|
||||
# This tells NuGet to use the exact same dotnet version we've configured in Make.config
|
||||
global.json: $(TOP)/global6.json
|
||||
$(Q) $(CP) $< $@
|
||||
|
||||
install-local:: $(INSTALL_TARGETS)
|
||||
all-local:: $(ALL_TARGETS)
|
||||
|
||||
|
|
|
@ -13,7 +13,7 @@ $(BUILD_DIR)/generator.csproj: generator.csproj | $(BUILD_DIR)
|
|||
$(BUILD_DIR)/common/bgen.exe: $(generator_dependencies) Makefile.generator $(BUILD_DIR)/generator-frameworks.g.cs
|
||||
$(Q_GEN) $(SYSTEM_MSBUILD) "/bl:$@.binlog" $(XBUILD_VERBOSITY) /p:Configuration=Debug generator.csproj /p:IntermediateOutputPath=$(BUILD_DIR)/IDE/obj/common/ /p:OutputPath=$(BUILD_DIR)/common /restore
|
||||
|
||||
$(DOTNET_BUILD_DIR)/bgen/bgen: $(generator_dependencies) Makefile.generator $(BUILD_DIR)/generator-frameworks.g.cs global.json | $(DOTNET_BUILD_DIR)/bgen
|
||||
$(DOTNET_BUILD_DIR)/bgen/bgen: $(generator_dependencies) Makefile.generator $(BUILD_DIR)/generator-frameworks.g.cs | $(DOTNET_BUILD_DIR)/bgen
|
||||
$(Q_DOTNET_BUILD) $(DOTNET) publish bgen/bgen.csproj $(DOTNET_BUILD_VERBOSITY) /p:Configuration=Debug /p:IntermediateOutputPath=$(abspath $(DOTNET_BUILD_DIR)/IDE/obj/common/bgen)/ /p:OutputPath=$(abspath $(DOTNET_BUILD_DIR)/IDE/bin/common/bgen/)/
|
||||
$(Q) $(CP) $(DOTNET_BUILD_DIR)/IDE/bin/common/bgen/publish/* $(dir $@)
|
||||
$(Q) printf 'exec $(DOTNET) "$$(dirname "$$0")"/bgen.dll $$@\n' > $@
|
||||
|
|
|
@ -933,55 +933,6 @@ function check_simulators ()
|
|||
fi
|
||||
}
|
||||
|
||||
function check_dotnet ()
|
||||
{
|
||||
if test -n "$IGNORE_DOTNET"; then return; fi
|
||||
|
||||
local DOTNET_VERSION
|
||||
local DOTNET_FILENAME
|
||||
local URL
|
||||
local INSTALL_DIR
|
||||
local CACHED_FILE
|
||||
local DOWNLOADED_FILE
|
||||
|
||||
DOTNET_VERSION=$(grep "^SYSTEM_DOTNET_VERSION=" dotnet.config | sed 's/.*=//')
|
||||
ARCH=$(arch)
|
||||
if [[ "$ARCH" =~ "arm64" ]]; then
|
||||
URL=https://dotnetcli.azureedge.net/dotnet/Sdk/"$DOTNET_VERSION"/dotnet-sdk-"$DOTNET_VERSION"-osx-arm64.pkg
|
||||
else
|
||||
URL=https://dotnetcli.azureedge.net/dotnet/Sdk/"$DOTNET_VERSION"/dotnet-sdk-"$DOTNET_VERSION"-osx-x64.pkg
|
||||
fi
|
||||
INSTALL_DIR=/usr/local/share/dotnet/sdk/"$DOTNET_VERSION"
|
||||
|
||||
if test -d "$INSTALL_DIR"; then
|
||||
ok "Found dotnet $DOTNET_VERSION in $INSTALL_DIR (exactly $DOTNET_VERSION is required)."
|
||||
return
|
||||
fi
|
||||
if test -z "$PROVISION_DOTNET"; then
|
||||
fail "You must install dotnet $DOTNET_VERSION. You can download it from ${COLOR_BLUE}$URL${COLOR_RESET}."
|
||||
fail "Alternatively you can ${COLOR_MAGENTA}export IGNORE_DOTNET=1${COLOR_RED} to skip this check."
|
||||
return
|
||||
fi
|
||||
|
||||
DOTNET_FILENAME=$(basename "$URL")
|
||||
|
||||
CACHED_FILE=$HOME/Library/Caches/xamarin-macios/$DOTNET_FILENAME
|
||||
if test -f "$CACHED_FILE"; then
|
||||
log "Found cached version in $CACHED_FILE, will install from cache."
|
||||
DOWNLOADED_FILE="$HOME/Library/Caches/xamarin-macios/$DOTNET_FILENAME"
|
||||
else
|
||||
log "Downloading dotnet $DOTNET_VERSION from $URL..."
|
||||
mkdir -p "$PROVISION_DOWNLOAD_DIR"
|
||||
DOWNLOADED_FILE="$PROVISION_DOWNLOAD_DIR/$DOTNET_FILENAME"
|
||||
curl -f -L "$URL" -o "$DOWNLOADED_FILE"
|
||||
fi
|
||||
|
||||
log "Installing dotnet $DOTNET_VERSION into $INSTALL_DIR..."
|
||||
$SUDO installer -pkg "$DOWNLOADED_FILE" -target /
|
||||
|
||||
ok "Installed dotnet $DOTNET_VERSION into $INSTALL_DIR."
|
||||
}
|
||||
|
||||
echo "Checking system..."
|
||||
|
||||
check_osx_version
|
||||
|
@ -995,7 +946,6 @@ check_cmake
|
|||
check_7z
|
||||
check_objective_sharpie
|
||||
check_simulators
|
||||
check_dotnet ""
|
||||
if test -z "$IGNORE_DOTNET"; then
|
||||
ok "Installed .NET SDKs:"
|
||||
(IFS=$'\n'; for i in $(/usr/local/share/dotnet/dotnet --list-sdks); do log "$i"; done)
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
global.json
|
||||
NuGet.config
|
||||
generated-projects
|
||||
*index.html
|
||||
*.log
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
*
|
|
@ -1,3 +0,0 @@
|
|||
global.json
|
||||
NuGet.config
|
||||
|
|
@ -68,7 +68,6 @@ test.config: Makefile $(TOP)/Make.config $(TOP)/mk/mono.mk $(TOP)/eng/Version.De
|
|||
@echo "MONO_IOS_SDK_DESTDIR=$(MONO_IOS_SDK_DESTDIR)" >> $@
|
||||
@echo "MONO_MAC_SDK_DESTDIR=$(MONO_MAC_SDK_DESTDIR)" >> $@
|
||||
@echo "ENABLE_XAMARIN=$(ENABLE_XAMARIN)" >> $@
|
||||
@echo "SYSTEM_DOTNET=$(SYSTEM_DOTNET)" >> $@
|
||||
@echo "DOTNET=$(DOTNET)" >> $@
|
||||
@echo "IOS_SDK_VERSION=$(IOS_SDK_VERSION)" >> $@
|
||||
@echo "TVOS_SDK_VERSION=$(TVOS_SDK_VERSION)" >> $@
|
||||
|
@ -91,7 +90,6 @@ test-system.config: Makefile $(TOP)/Make.config $(TOP)/mk/mono.mk $(TOP)/eng/Ver
|
|||
@echo "INCLUDE_DEVICE=$(INCLUDE_DEVICE)" >> $@
|
||||
@echo "MONO_IOS_SDK_DESTDIR=$(MONO_IOS_SDK_DESTDIR)" >> $@
|
||||
@echo "MONO_MAC_SDK_DESTDIR=$(MONO_MAC_SDK_DESTDIR)" >> $@
|
||||
@echo "SYSTEM_DOTNET=$(SYSTEM_DOTNET)" >> $@
|
||||
@echo "DOTNET=$(DOTNET)" >> $@
|
||||
@echo "IOS_SDK_VERSION=$(IOS_SDK_VERSION)" >> $@
|
||||
@echo "TVOS_SDK_VERSION=$(TVOS_SDK_VERSION)" >> $@
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
global.json
|
||||
NuGet.config
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
global.json
|
||||
NuGet.config
|
||||
|
|
@ -984,25 +984,6 @@ namespace Xamarin.Tests
|
|||
}
|
||||
}
|
||||
|
||||
public static string [] CopyDotNetSupportingFiles (params string[] targetDirectories)
|
||||
{
|
||||
var srcDirectory = Path.Combine (SourceRoot, "tests", "dotnet");
|
||||
var files = new string [] { "global.json", "NuGet.config" };
|
||||
var targets = new List<string> ();
|
||||
for (var i = 0; i < files.Length; i++) {
|
||||
var fn = files [i];
|
||||
var src = Path.Combine (srcDirectory, fn);
|
||||
if (!File.Exists (src))
|
||||
ExecutionHelper.Execute ("make", new [] { "-C", srcDirectory, fn });
|
||||
foreach (var targetDirectory in targetDirectories) {
|
||||
var target = Path.Combine (targetDirectory, fn);
|
||||
File.Copy (src, target, true);
|
||||
targets.Add (target);
|
||||
}
|
||||
}
|
||||
return targets.ToArray ();
|
||||
}
|
||||
|
||||
public static Dictionary<string, string> GetBuildEnvironment (ApplePlatform platform)
|
||||
{
|
||||
Dictionary<string, string> environment = new Dictionary<string, string> ();
|
||||
|
|
|
@ -2,11 +2,7 @@ TOP=../../../..
|
|||
|
||||
include $(TOP)/Make.config
|
||||
|
||||
NuGet%config global%json:
|
||||
$(Q) $(MAKE) -C $(TOP)/tests/dotnet all
|
||||
$(Q) $(CP) $(TOP)/tests/dotnet/global.json $(TOP)/tests/dotnet/NuGet.config .
|
||||
|
||||
.build-stamp.binlog: Makefile $(wildcard *.cs) $(wildcard *.csproj) $(wildcard *.resx) $(wildcard *.config) NuGet.config global.json
|
||||
.build-stamp.binlog: Makefile $(wildcard *.cs) $(wildcard *.csproj) $(wildcard *.resx) $(wildcard *.config)
|
||||
$(Q) $(DOTNET) build *.csproj $(MSBUILD_VERBOSITY) /bl:$@
|
||||
|
||||
all-local:: .build-stamp.binlog
|
||||
|
|
|
@ -11,7 +11,7 @@ TESTNAME:=$(notdir $(shell dirname "$(shell dirname "$(CURDIR)")"))
|
|||
endif
|
||||
|
||||
prepare:
|
||||
$(Q) $(MAKE) -C $(TOP)/tests/dotnet copy-dotnet-config
|
||||
@# nothing to do here right now
|
||||
|
||||
reload:
|
||||
$(Q) $(MAKE) -C $(TOP) -j8 all
|
||||
|
|
|
@ -1,3 +1 @@
|
|||
global.json
|
||||
NuGet.config
|
||||
report.md
|
||||
|
|
|
@ -2,34 +2,7 @@ TOP=../..
|
|||
|
||||
include $(TOP)/Make.config
|
||||
|
||||
# This tells NuGet to use the nupkgs we're building locally,
|
||||
# and to put any extracted packages in the 'packages' directory (to not clutter up ~/.nuget/packages)
|
||||
NuGet.config: $(TOP)/NuGet.config Makefile
|
||||
$(Q) mkdir -p "$(abspath $(NUGET_TEST_FEED))"
|
||||
$(Q) $(CP) $< $@.tmp
|
||||
ifdef CUSTOM_DOTNET
|
||||
$(Q) nuget sources add -Name dev-runtime-feed -Source $(abspath $(DOTNET_RUNTIME_PATH)/artifacts/packages/Release/Shipping) -ConfigFile $@.tmp
|
||||
endif
|
||||
$(Q) nuget sources add -Name local-tests-feed -Source $(abspath $(NUGET_TEST_FEED)) -ConfigFile $@.tmp
|
||||
$(Q) nuget config -Set globalPackagesFolder=$(abspath $(CURDIR)/packages) -Config $@.tmp
|
||||
$(Q) nuget config -Set repositorypath=$(abspath $(CURDIR)/packages) -Config $@.tmp
|
||||
$(Q) mv $@.tmp $@
|
||||
|
||||
# This tells NuGet to use the exact same dotnet version we've configured in Make.config
|
||||
global.json: $(TOP)/global6.json
|
||||
$(CP) $< $@
|
||||
|
||||
../bgen/global.json: global.json
|
||||
$(Q) $(CP) $< $@
|
||||
|
||||
../bgen/NuGet.config: NuGet.config
|
||||
$(Q) $(CP) $< $@
|
||||
|
||||
TARGETS += \
|
||||
NuGet.config \
|
||||
global.json \
|
||||
../bgen/NuGet.config \
|
||||
../bgen/global.json \
|
||||
|
||||
run-unit-tests:
|
||||
$(MAKE) -C UnitTests $@
|
||||
|
@ -58,12 +31,3 @@ run-dotnet: $(TARGETS)
|
|||
|
||||
run-dotnet-sim: $(TARGETS)
|
||||
$(DOTNET) build -t:Run size-comparison/MySingleView/dotnet/MySingleView.csproj /p:Configuration=Release --runtime iossimulator-x64 /p:Platform=iPhoneSimulator /bl:$@.binlog
|
||||
|
||||
# this target will copy NuGet.config and global.json to the directories that need it for their .NET build to work correctly.
|
||||
|
||||
copy-dotnet-config: $(TARGETS)
|
||||
$(Q) for dir in $(abspath $(TOP))/tests/*/dotnet $(abspath $(TOP))/tests/linker/*/*/dotnet; do \
|
||||
rsync -a NuGet.config global.json "$$dir"; \
|
||||
done
|
||||
$(Q) rsync -a NuGet.config global.json $(TOP)/external/Touch.Unit/Touch.Client/dotnet
|
||||
$(Q) rsync -a NuGet.config global.json $(TOP)/external/MonoTouch.Dialog/MonoTouch.Dialog/dotnet
|
||||
|
|
|
@ -26,7 +26,6 @@ namespace Xamarin.Tests {
|
|||
|
||||
var project_path = GetProjectPath (project, platform: platform);
|
||||
Clean (project_path);
|
||||
Configuration.CopyDotNetSupportingFiles (Path.GetDirectoryName (project_path));
|
||||
|
||||
var tmpdir = Cache.CreateTemporaryDirectory ();
|
||||
var outputPath = Path.Combine (tmpdir, "OutputPath");
|
||||
|
@ -57,7 +56,6 @@ namespace Xamarin.Tests {
|
|||
|
||||
var project_path = Path.Combine (Configuration.RootPath, "tests", project, "dotnet", platform.AsString (), $"{project}.csproj");
|
||||
Clean (project_path);
|
||||
Configuration.CopyDotNetSupportingFiles (Path.GetDirectoryName (project_path));
|
||||
|
||||
var tmpdir = Cache.CreateTemporaryDirectory ();
|
||||
var outputPath = Path.Combine (tmpdir, "OutputPath");
|
||||
|
@ -115,7 +113,6 @@ namespace Xamarin.Tests {
|
|||
|
||||
var project_path = Path.Combine (Configuration.RootPath, "tests", project, "dotnet", platform.AsString (), $"{project}.csproj");
|
||||
Clean (project_path);
|
||||
Configuration.CopyDotNetSupportingFiles (Path.GetDirectoryName (project_path));
|
||||
|
||||
var tmpdir = Cache.CreateTemporaryDirectory ();
|
||||
var outputPath = Path.Combine (tmpdir, "OutputPath");
|
||||
|
|
|
@ -124,7 +124,6 @@ namespace Xamarin.Tests {
|
|||
var project_dir = Path.Combine (dotnet_bindings_dir, platform);
|
||||
var project_path = Path.Combine (project_dir, $"{assemblyName}.csproj");
|
||||
Clean (project_path);
|
||||
Configuration.CopyDotNetSupportingFiles (dotnet_bindings_dir);
|
||||
var result = DotNet.AssertBuild (project_path, verbosity);
|
||||
var lines = BinLog.PrintToLines (result.BinLogPath);
|
||||
// Find the resulting binding assembly from the build log
|
||||
|
@ -157,7 +156,6 @@ namespace Xamarin.Tests {
|
|||
var project_dir = Path.Combine (dotnet_bindings_dir, platform);
|
||||
var project_path = Path.Combine (project_dir, $"{assemblyName}.fsproj");
|
||||
Clean (project_path);
|
||||
Configuration.CopyDotNetSupportingFiles (dotnet_bindings_dir);
|
||||
var result = DotNet.AssertBuild (project_path, verbosity);
|
||||
var lines = BinLog.PrintToLines (result.BinLogPath);
|
||||
// Find the resulting binding assembly from the build log
|
||||
|
@ -185,7 +183,6 @@ namespace Xamarin.Tests {
|
|||
var project_path = Path.Combine (project_dir, $"{assemblyName}.csproj");
|
||||
|
||||
Clean (project_path);
|
||||
Configuration.CopyDotNetSupportingFiles (dotnet_bindings_dir);
|
||||
var result = DotNet.AssertBuild (project_path, verbosity);
|
||||
var lines = BinLog.PrintToLines (result.BinLogPath).ToList ();
|
||||
Console.WriteLine (string.Join ("\n", lines));
|
||||
|
@ -217,7 +214,6 @@ namespace Xamarin.Tests {
|
|||
var project_path = Path.Combine (project_dir, $"{assemblyName}.csproj");
|
||||
|
||||
Clean (project_path);
|
||||
Configuration.CopyDotNetSupportingFiles (dotnet_bindings_dir);
|
||||
var result = DotNet.AssertBuild (project_path, verbosity);
|
||||
var lines = BinLog.PrintToLines (result.BinLogPath);
|
||||
// Find the resulting binding assembly from the build log
|
||||
|
@ -248,7 +244,6 @@ namespace Xamarin.Tests {
|
|||
var project_path = Path.Combine (project_dir, $"{assemblyName}.csproj");
|
||||
|
||||
Clean (project_path);
|
||||
Configuration.CopyDotNetSupportingFiles (dotnet_bindings_dir);
|
||||
var result = DotNet.AssertBuild (project_path, verbosity);
|
||||
var lines = BinLog.PrintToLines (result.BinLogPath);
|
||||
// Find the resulting binding assembly from the build log
|
||||
|
@ -281,55 +276,44 @@ namespace Xamarin.Tests {
|
|||
var project_path = Path.Combine (project_dir, $"{assemblyName}.csproj");
|
||||
|
||||
Clean (project_path);
|
||||
Configuration.CopyDotNetSupportingFiles (dotnet_bindings_dir);
|
||||
Configuration.CopyDotNetSupportingFiles (dotnet_bindings_dir.Replace (assemblyName, "bindings-test"));
|
||||
Configuration.CopyDotNetSupportingFiles (dotnet_bindings_dir.Replace (assemblyName, "bindings-test2"));
|
||||
var cleanupSupportFiles = Configuration.CopyDotNetSupportingFiles (
|
||||
Path.Combine (Configuration.SourceRoot, "external", "Touch.Unit", "Touch.Client", "dotnet"),
|
||||
Path.Combine (Configuration.SourceRoot, "external", "MonoTouch.Dialog", "MonoTouch.Dialog", "dotnet")
|
||||
);
|
||||
try {
|
||||
var result = DotNet.AssertBuild (project_path, verbosity);
|
||||
var lines = BinLog.PrintToLines (result.BinLogPath);
|
||||
// Find the resulting binding assembly from the build log
|
||||
var assemblies = lines.
|
||||
Select (v => v.Trim ()).
|
||||
Where (v => {
|
||||
if (v.Length < 10)
|
||||
return false;
|
||||
if (v [0] != '/')
|
||||
return false;
|
||||
if (!v.EndsWith ($"{assemblyName}.dll", StringComparison.Ordinal))
|
||||
return false;
|
||||
if (!v.Contains ("/bin/", StringComparison.Ordinal))
|
||||
return false;
|
||||
if (!v.Contains ($"{assemblyName}.app", StringComparison.Ordinal))
|
||||
return false;
|
||||
return true;
|
||||
});
|
||||
Assert.That (assemblies, Is.Not.Empty, "Assemblies");
|
||||
// Make sure there's no other assembly confusing our logic
|
||||
assemblies = assemblies.Distinct ();
|
||||
Assert.That (assemblies.Count (), Is.EqualTo (1), $"Unique assemblies: {string.Join (", ", assemblies)}");
|
||||
var asm = assemblies.First ();
|
||||
Assert.That (asm, Does.Exist, "Assembly existence");
|
||||
var result = DotNet.AssertBuild (project_path, verbosity);
|
||||
var lines = BinLog.PrintToLines (result.BinLogPath);
|
||||
// Find the resulting binding assembly from the build log
|
||||
var assemblies = lines.
|
||||
Select (v => v.Trim ()).
|
||||
Where (v => {
|
||||
if (v.Length < 10)
|
||||
return false;
|
||||
if (v [0] != '/')
|
||||
return false;
|
||||
if (!v.EndsWith ($"{assemblyName}.dll", StringComparison.Ordinal))
|
||||
return false;
|
||||
if (!v.Contains ("/bin/", StringComparison.Ordinal))
|
||||
return false;
|
||||
if (!v.Contains ($"{assemblyName}.app", StringComparison.Ordinal))
|
||||
return false;
|
||||
return true;
|
||||
});
|
||||
Assert.That (assemblies, Is.Not.Empty, "Assemblies");
|
||||
// Make sure there's no other assembly confusing our logic
|
||||
assemblies = assemblies.Distinct ();
|
||||
Assert.That (assemblies.Count (), Is.EqualTo (1), $"Unique assemblies: {string.Join (", ", assemblies)}");
|
||||
var asm = assemblies.First ();
|
||||
Assert.That (asm, Does.Exist, "Assembly existence");
|
||||
|
||||
// Verify that the resources have been linked away
|
||||
var asmDir = Path.GetDirectoryName (asm)!;
|
||||
var ad = AssemblyDefinition.ReadAssembly (asm, new ReaderParameters { ReadingMode = ReadingMode.Deferred });
|
||||
Assert.That (ad.MainModule.Resources.Count, Is.EqualTo (0), "0 resources for interdependent-binding-projects.dll");
|
||||
// Verify that the resources have been linked away
|
||||
var asmDir = Path.GetDirectoryName (asm)!;
|
||||
var ad = AssemblyDefinition.ReadAssembly (asm, new ReaderParameters { ReadingMode = ReadingMode.Deferred });
|
||||
Assert.That (ad.MainModule.Resources.Count, Is.EqualTo (0), "0 resources for interdependent-binding-projects.dll");
|
||||
|
||||
var ad1 = AssemblyDefinition.ReadAssembly (Path.Combine (asmDir, "bindings-test.dll"), new ReaderParameters { ReadingMode = ReadingMode.Deferred });
|
||||
// The native library is removed from the resources by the linker
|
||||
Assert.That (ad1.MainModule.Resources.Count, Is.EqualTo (0), "0 resources for bindings-test.dll");
|
||||
var ad1 = AssemblyDefinition.ReadAssembly (Path.Combine (asmDir, "bindings-test.dll"), new ReaderParameters { ReadingMode = ReadingMode.Deferred });
|
||||
// The native library is removed from the resources by the linker
|
||||
Assert.That (ad1.MainModule.Resources.Count, Is.EqualTo (0), "0 resources for bindings-test.dll");
|
||||
|
||||
var ad2 = AssemblyDefinition.ReadAssembly (Path.Combine (asmDir, "bindings-test2.dll"), new ReaderParameters { ReadingMode = ReadingMode.Deferred });
|
||||
// The native library is removed from the resources by the linker
|
||||
Assert.That (ad2.MainModule.Resources.Count, Is.EqualTo (0), "0 resources for bindings-test2.dll");
|
||||
|
||||
var ad2 = AssemblyDefinition.ReadAssembly (Path.Combine (asmDir, "bindings-test2.dll"), new ReaderParameters { ReadingMode = ReadingMode.Deferred });
|
||||
// The native library is removed from the resources by the linker
|
||||
Assert.That (ad2.MainModule.Resources.Count, Is.EqualTo (0), "0 resources for bindings-test2.dll");
|
||||
} finally {
|
||||
foreach (var file in cleanupSupportFiles)
|
||||
File.Delete (file);
|
||||
}
|
||||
}
|
||||
|
||||
[Test]
|
||||
|
@ -368,12 +352,6 @@ namespace Xamarin.Tests {
|
|||
Configuration.IgnoreIfIgnoredPlatform (platform);
|
||||
|
||||
var project_path = Path.Combine (Configuration.SourceRoot, "tests", "monotouch-test", "dotnet", platform.AsString (), "monotouch-test.csproj");
|
||||
Configuration.CopyDotNetSupportingFiles (Path.GetDirectoryName (Path.GetDirectoryName (project_path)));
|
||||
Configuration.CopyDotNetSupportingFiles (Path.Combine (Configuration.SourceRoot, "tests", "bindings-test", "dotnet"));
|
||||
Configuration.CopyDotNetSupportingFiles (Path.Combine (Configuration.SourceRoot, "tests", "bindings-test2", "dotnet"));
|
||||
Configuration.CopyDotNetSupportingFiles (Path.Combine (Configuration.SourceRoot, "tests", "EmbeddedResources", "dotnet"));
|
||||
Configuration.CopyDotNetSupportingFiles (Path.Combine (Configuration.SourceRoot, "tests", "fsharplibrary", "dotnet"));
|
||||
Configuration.CopyDotNetSupportingFiles (Path.Combine (Configuration.SourceRoot, "external", "Touch.Unit", "Touch.Client", "dotnet"));
|
||||
Clean (project_path);
|
||||
var properties = GetDefaultProperties (runtimeIdentifiers);
|
||||
if (additionalProperties != null) {
|
||||
|
@ -847,9 +825,6 @@ namespace Xamarin.Tests {
|
|||
Clean (extensionProjectDir);
|
||||
Clean (consumingProjectDir);
|
||||
|
||||
Configuration.CopyDotNetSupportingFiles (Path.GetDirectoryName (extensionProjectDir));
|
||||
Configuration.CopyDotNetSupportingFiles (Path.GetDirectoryName (consumingProjectDir));
|
||||
|
||||
DotNet.AssertBuild (consumingProjectDir, verbosity);
|
||||
|
||||
var extensionPath = Path.Combine (Path.GetDirectoryName (consumingProjectDir)!, "bin", "Debug", platform.ToFramework (), GetDefaultRuntimeIdentifier (platform), "MySimpleApp.app", GetPlugInsRelativePath (platform), "ExtensionProject.appex");
|
||||
|
|
|
@ -53,7 +53,6 @@ class MainClass {
|
|||
</Project>";
|
||||
|
||||
var tmpdir = Cache.CreateTemporaryDirectory ();
|
||||
Configuration.CopyDotNetSupportingFiles (tmpdir);
|
||||
var project_path = Path.Combine (tmpdir, "TestProject.csproj");
|
||||
File.WriteAllText (project_path, csproj);
|
||||
File.WriteAllText (Path.Combine (tmpdir, "Info.plist"), EmptyAppManifest);
|
||||
|
@ -88,7 +87,6 @@ class MainClass {
|
|||
</ItemGroup>
|
||||
</Project>";
|
||||
|
||||
Configuration.CopyDotNetSupportingFiles (tmpdir);
|
||||
var project_path = Path.Combine (tmpdir, "TestProject.csproj");
|
||||
File.WriteAllText (project_path, csproj);
|
||||
File.WriteAllText (Path.Combine (tmpdir, "Info.plist"), EmptyAppManifest);
|
||||
|
@ -161,7 +159,6 @@ $@"<Project Sdk=""Microsoft.NET.Sdk"">
|
|||
var csprojfn = Path.Combine (projdir, Path.GetFileName (projdir) + ".csproj");
|
||||
File.WriteAllText (csprojfn, csproj);
|
||||
|
||||
Configuration.CopyDotNetSupportingFiles (tmpdir);
|
||||
DotNet.AssertBuild (csprojfn);
|
||||
ExecuteProjectWithMagicWordAndAssert (csprojfn, platform);
|
||||
}
|
||||
|
@ -179,7 +176,6 @@ $@"<Project Sdk=""Microsoft.NET.Sdk"">
|
|||
</Project>";
|
||||
|
||||
var tmpdir = Cache.CreateTemporaryDirectory ();
|
||||
Configuration.CopyDotNetSupportingFiles (tmpdir);
|
||||
var project_path = Path.Combine (tmpdir, "TestProject.csproj");
|
||||
File.WriteAllText (project_path, csproj);
|
||||
File.WriteAllText (Path.Combine (tmpdir, "Main.cs"), EmptyMainFile);
|
||||
|
|
|
@ -90,7 +90,6 @@ namespace Xamarin.Tests {
|
|||
|
||||
Configuration.IgnoreIfIgnoredPlatform (info.Platform);
|
||||
var tmpDir = Cache.CreateTemporaryDirectory ();
|
||||
Configuration.CopyDotNetSupportingFiles (tmpDir);
|
||||
var outputDir = Path.Combine (tmpDir, info.Template);
|
||||
DotNet.AssertNew (outputDir, info.Template);
|
||||
var csproj = Path.Combine (outputDir, info.Template + ".csproj");
|
||||
|
|
|
@ -263,8 +263,6 @@ namespace Xamarin.Tests {
|
|||
|
||||
File.WriteAllText (csproj, sb.ToString ());
|
||||
|
||||
Configuration.CopyDotNetSupportingFiles (dir);
|
||||
|
||||
var appPathRuntimeIdentifier = runtimeIdentifiers.IndexOf (';') >= 0 ? "" : runtimeIdentifiers;
|
||||
appPath = Path.Combine (dir, "bin", "Debug", platform.ToFramework (), appPathRuntimeIdentifier, name + ".app");
|
||||
|
||||
|
|
|
@ -3,13 +3,8 @@ TOP=../../../..
|
|||
include $(TOP)/Make.config
|
||||
|
||||
TARGETS += \
|
||||
.config.stamp \
|
||||
.install-workloads.stamp \
|
||||
|
||||
.config.stamp: Makefile
|
||||
$(Q) $(MAKE) -C ../.. NuGet.config global.json
|
||||
$(Q) touch $@
|
||||
|
||||
all-local:: compare
|
||||
|
||||
compare compare-size: $(TARGETS)
|
||||
|
|
|
@ -1,3 +0,0 @@
|
|||
global.json
|
||||
NuGet.config
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
global.json
|
||||
NuGet.config
|
||||
|
|
@ -1,5 +1,2 @@
|
|||
*.air
|
||||
*.metallib
|
||||
global.json
|
||||
NuGet.config
|
||||
|
||||
|
|
|
@ -46,7 +46,6 @@ namespace Xamarin.MacDev.Tasks {
|
|||
</plist>";
|
||||
|
||||
var tmpdir = Cache.CreateTemporaryDirectory ();
|
||||
Configuration.CopyDotNetSupportingFiles (tmpdir);
|
||||
var csprojPath = Path.Combine (tmpdir, "PartialAppManifest.csproj");
|
||||
File.WriteAllText (csprojPath, csproj);
|
||||
|
||||
|
|
|
@ -41,7 +41,6 @@ namespace Xamarin.MacDev.Tasks {
|
|||
</plist>";
|
||||
|
||||
var tmpdir = Cache.CreateTemporaryDirectory ();
|
||||
Configuration.CopyDotNetSupportingFiles (tmpdir);
|
||||
var csprojPath = Path.Combine (tmpdir, "BundleIdentifierInPartialAppManifest.csproj");
|
||||
File.WriteAllText (csprojPath, csproj);
|
||||
|
||||
|
|
|
@ -65,7 +65,6 @@ namespace Xamarin.Tests
|
|||
var rv = Configuration.CloneTestDirectory (Configuration.TestProjectsDirectory);
|
||||
|
||||
if (mode == ExecutionMode.DotNet) {
|
||||
Configuration.CopyDotNetSupportingFiles (rv);
|
||||
Configuration.FixupTestFiles (rv, "dotnet");
|
||||
}
|
||||
|
||||
|
|
|
@ -561,7 +561,6 @@ namespace Xamarin
|
|||
File.WriteAllText (Path.Combine (testDir, appName + ".cs"), CreateCode (code, usings, extraCode));
|
||||
if (hasPlist)
|
||||
File.WriteAllText (Path.Combine (testDir, "Info.plist"), CreatePlist (Profile, appName));
|
||||
Configuration.CopyDotNetSupportingFiles (testDir);
|
||||
} else {
|
||||
AppPath = app;
|
||||
RootAssembly = CompileTestAppExecutable (testDir, code, extraArgs, Profile, appName, extraCode, usings);
|
||||
|
|
|
@ -35,7 +35,7 @@ $CP -p ../mk/quiet.mk $DIR/mk
|
|||
$CP -p ../mk/mono.mk "$DIR/mk"
|
||||
|
||||
# Files to make the unit tests run
|
||||
$CP -p dotnet/global.json $DIR/tests/global.json
|
||||
$CP -p ../global.json $DIR
|
||||
$CP -p ../NuGet.config $DIR
|
||||
$CP -p test.config $DIR/tests
|
||||
|
||||
|
|
|
@ -122,12 +122,9 @@ exec-mac-modern-linksdk:
|
|||
# on eachother. So here we build those library projects first, serialized,
|
||||
# so that when the test projects need them, they're already built.
|
||||
|
||||
.stamp-copy-dotnet-config:
|
||||
$(Q) $(MAKE) -C dotnet copy-dotnet-config
|
||||
$(Q) touch $@
|
||||
|
||||
define DotNetDependentProject
|
||||
.stamp-dotnet-dependency-$(2)-$(1): Makefile .stamp-copy-dotnet-config
|
||||
.stamp-dotnet-dependency-$(2)-$(1): Makefile
|
||||
$$(Q) $$(MAKE) -C "$(1)/dotnet/$(2)" build
|
||||
$$(Q) touch $$@
|
||||
|
||||
|
|
|
@ -2,15 +2,7 @@ TOP=../..
|
|||
|
||||
include $(TOP)/Make.config
|
||||
|
||||
dotnet/global.json: $(TOP)/NuGet.config Makefile
|
||||
$(Q) $(MAKE) -C ../dotnet $(notdir $@)
|
||||
$(Q) $(CP) ../dotnet/$(notdir $@) $@
|
||||
|
||||
dotnet/NuGet.config: $(TOP)/NuGet.config Makefile
|
||||
$(Q) $(MAKE) -C ../dotnet $(notdir $@)
|
||||
$(Q) $(CP) ../dotnet/$(notdir $@) $@
|
||||
|
||||
TARGETS=dotnet/NuGet.config dotnet/global.json
|
||||
TARGETS=
|
||||
|
||||
ifeq ("$(BENCHMARK_OUTPUT_PATH)","")
|
||||
BENCHMARK_OUTPUT_PATH:=$(abspath $(CURDIR)/output/$(shell date +%Y-%m-%d--%H:%M:%S))
|
||||
|
|
|
@ -11,13 +11,7 @@ include $(TOP)/Make.config
|
|||
.libs/macos .libs/dotnet/macos:
|
||||
$(Q) mkdir -p $@
|
||||
|
||||
NuGet.config: $(TOP)/tests/dotnet/NuGet.config
|
||||
$(Q) $(CP) $< $@
|
||||
|
||||
global.json: $(TOP)/tests/dotnet/global.json
|
||||
$(Q) $(CP) $< $@
|
||||
|
||||
bin/Debug/$(DOTNET_TFM)-macos/custom-type-assembly.dll: custom-type-assembly.csproj custom-type-assembly.cs global.json NuGet.config
|
||||
bin/Debug/$(DOTNET_TFM)-macos/custom-type-assembly.dll: custom-type-assembly.csproj custom-type-assembly.cs
|
||||
$(Q) $(DOTNET) build $< "/bl:$@.binlog" $(MSBUILD_VERBOSITY)
|
||||
|
||||
ifdef INCLUDE_XAMARIN_LEGACY
|
||||
|
|
|
@ -3,10 +3,6 @@ include $(TOP)/Make.config
|
|||
|
||||
unexport MSBUILD_EXE_PATH
|
||||
|
||||
NuGet.config global.json:
|
||||
$(Q) $(MAKE) -C $(TOP)/tests/dotnet $@
|
||||
$(Q) $(CP) $(TOP)/tests/dotnet/$@ .
|
||||
|
||||
.libs:
|
||||
$(Q) mkdir -p $@
|
||||
|
||||
|
@ -14,7 +10,7 @@ PACKAGE_ID=$(shell grep PackageId FrameworksInRuntimesNativeDirectory.csproj | s
|
|||
PACKAGE_VERSION=$(shell grep '<PackageVersion>' FrameworksInRuntimesNativeDirectory.csproj | sed 's_.*<PackageVersion>\(.*\)</PackageVersion>.*_\1_')
|
||||
|
||||
# Test case for https://github.com/xamarin/xamarin-macios/issues/12440
|
||||
.libs/FrameworksInRuntimesNativeDirectory.nupkg: FrameworksInRuntimesNativeDirectory.csproj NuGet.config global.json $(wildcard *.cs) | .libs
|
||||
.libs/FrameworksInRuntimesNativeDirectory.nupkg: FrameworksInRuntimesNativeDirectory.csproj $(wildcard *.cs) | .libs
|
||||
$(Q) mkdir -p $(abspath $(NUGET_TEST_FEED))
|
||||
$(Q_GEN) $(DOTNET) pack /bl $(DOTNET_PACK_VERBOSITY) $<
|
||||
$(Q) $(CP) bin/Debug/Xamarin.Tests.FrameworksInRuntimesNativeDirectory.$(PACKAGE_VERSION).nupkg $@
|
||||
|
|
|
@ -20,7 +20,7 @@ namespace Xharness {
|
|||
readonly string systemDotnetPath;
|
||||
readonly string dotnetPath;
|
||||
|
||||
// Gets either the SYSTEM_DOTNET or DOTNET variable, depending on any global.json
|
||||
// Gets either the system .NET or DOTNET variable, depending on any global.json
|
||||
// config file found in the specified directory or any containing directories.
|
||||
readonly Dictionary<string, string> dotnet_executables = new Dictionary<string, string> ();
|
||||
|
||||
|
|
|
@ -209,7 +209,7 @@ namespace Xharness {
|
|||
SdkRoot = config ["XCODE_DEVELOPER_ROOT"] ?? configuration.SdkRoot;
|
||||
|
||||
processManager = new MlaunchProcessManager (XcodeRoot, MlaunchPath);
|
||||
AppBundleLocator = new AppBundleLocator (processManager, () => HarnessLog, XIBuildPath, config ["SYSTEM_DOTNET"], config ["DOTNET"]);
|
||||
AppBundleLocator = new AppBundleLocator (processManager, () => HarnessLog, XIBuildPath, "/usr/local/share/dotnet/dotnet", config ["DOTNET"]);
|
||||
TunnelBore = new TunnelBore (processManager);
|
||||
}
|
||||
|
||||
|
|
|
@ -196,14 +196,6 @@ namespace Xharness {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
// The global.json and NuGet.config files make sure we use the locally built packages.
|
||||
var dotnet_test_dir = System.IO.Path.Combine (test.RootDirectory, "dotnet");
|
||||
var global_json = System.IO.Path.Combine (dotnet_test_dir, "global.json");
|
||||
var nuget_config = System.IO.Path.Combine (dotnet_test_dir, "NuGet.config");
|
||||
var target_directory = directory;
|
||||
File.Copy (global_json, System.IO.Path.Combine (target_directory, System.IO.Path.GetFileName (global_json)), true);
|
||||
File.Copy (nuget_config, System.IO.Path.Combine (target_directory, System.IO.Path.GetFileName (nuget_config)), true);
|
||||
}
|
||||
|
||||
var projectReferences = new List<TestProject> ();
|
||||
|
|
|
@ -16,8 +16,8 @@ MONO_API_INFO = $(API_TOOLS_PATH)/mono-api-info/bin/Debug/net6.0/mono-api-info.d
|
|||
MONO_API_HTML = $(API_TOOLS_PATH)/mono-api-html/bin/Debug/net6.0/mono-api-html.dll
|
||||
MONO_BUILD = $(SYSTEM_MONO)
|
||||
|
||||
MONO_API_INFO_EXEC = $(SYSTEM_DOTNET) $(MONO_API_INFO) --ignore-inherited-interfaces
|
||||
MONO_API_HTML_EXEC = $(SYSTEM_DOTNET) $(MONO_API_HTML)
|
||||
MONO_API_INFO_EXEC = $(DOTNET) $(MONO_API_INFO) --ignore-inherited-interfaces
|
||||
MONO_API_HTML_EXEC = $(DOTNET) $(MONO_API_HTML)
|
||||
|
||||
# I18N are excluded - but otherwise if should be like ../../builds/Makefile + what XI adds
|
||||
# in the order to the api-diff.html merged file
|
||||
|
@ -54,11 +54,11 @@ MAC_ARCH_ASSEMBLIES = native-64/Xamarin.Mac
|
|||
APIDIFF_IGNORE = -i 'INSObjectProtocol'
|
||||
|
||||
$(MONO_API_INFO): $(wildcard $(API_TOOLS_PATH)/mono-api-info/*.cs*)
|
||||
$(Q) $(SYSTEM_DOTNET) build $(API_TOOLS_PATH)/mono-api-info/mono-api-info.csproj /bl:$@.binlog $(MSBUILD_VERBOSITY)
|
||||
$(Q) $(DOTNET) build $(API_TOOLS_PATH)/mono-api-info/mono-api-info.csproj /bl:$@.binlog $(MSBUILD_VERBOSITY)
|
||||
$(Q) touch $@
|
||||
|
||||
$(MONO_API_HTML): $(wildcard $(API_TOOLS_PATH)/mono-api-html/*.cs*)
|
||||
$(Q) $(SYSTEM_DOTNET) build $(API_TOOLS_PATH)/mono-api-html/mono-api-html.csproj /bl:$@.binlog $(MSBUILD_VERBOSITY)
|
||||
$(Q) $(DOTNET) build $(API_TOOLS_PATH)/mono-api-html/mono-api-html.csproj /bl:$@.binlog $(MSBUILD_VERBOSITY)
|
||||
$(Q) touch $@
|
||||
|
||||
# create api info. Directory hierarchy is based on installed hierarchy
|
||||
|
|
|
@ -8,7 +8,6 @@ device-tests-provisioning.csx: device-tests-provisioning.csx.in Makefile $(TOP)/
|
|||
-e 's#@MONO_PACKAGE@#$(MIN_MONO_URL)#g' \
|
||||
-e 's#@VS_PACKAGE@#$(MIN_VISUAL_STUDIO_URL)#g' \
|
||||
-e 's#@MIN_SHARPIE_URL@#$(MIN_SHARPIE_URL)#g' \
|
||||
-e 's#@SYSTEM_DOTNET_VERSION@#$(SYSTEM_DOTNET_VERSION)#g' \
|
||||
$< > $@;
|
||||
|
||||
build-provisioning.csx: build-provisioning.csx.in Makefile $(TOP)/Make.config
|
||||
|
@ -17,7 +16,6 @@ build-provisioning.csx: build-provisioning.csx.in Makefile $(TOP)/Make.config
|
|||
-e 's#@MONO_PACKAGE@#$(MIN_MONO_URL)#g' \
|
||||
-e 's#@VS_PACKAGE@#$(MIN_VISUAL_STUDIO_URL)#g' \
|
||||
-e 's#@MIN_SHARPIE_URL@#$(MIN_SHARPIE_URL)#g' \
|
||||
-e 's#@SYSTEM_DOTNET_VERSION@#$(SYSTEM_DOTNET_VERSION)#g' \
|
||||
$< > $@;
|
||||
|
||||
mac-tests-provisioning.csx: mac-tests-provisioning.csx.in Makefile $(TOP)/Make.config
|
||||
|
@ -25,7 +23,6 @@ mac-tests-provisioning.csx: mac-tests-provisioning.csx.in Makefile $(TOP)/Make.c
|
|||
-e 's#@XM_PACKAGE@#$(XM_PACKAGE)#g' \
|
||||
-e 's#@MONO_PACKAGE@#$(MIN_MONO_URL)#g' \
|
||||
-e 's#@VS_PACKAGE@#$(MIN_VISUAL_STUDIO_URL)#g' \
|
||||
-e 's#@SYSTEM_DOTNET_VERSION@#$(SYSTEM_DOTNET_VERSION)#g' \
|
||||
$< > $@;
|
||||
|
||||
provision-xcode.csx: provision-xcode.csx.in Makefile $(TOP)/Make.config
|
||||
|
|
|
@ -48,7 +48,7 @@ cp -c "$IOS_DESTDIR$MONOTOUCH_PREFIX/bin/mlaunch" "$MLAUNCH_WORK_DIR/mlaunch/bin
|
|||
cp -c -r "$XAM_TOP"/tools/mlaunch/nupkg/* "$MLAUNCH_WORK_DIR"
|
||||
|
||||
# We need to override global.json to use .NET 6.0
|
||||
cp -c "$XAM_TOP/global6.json" "$MLAUNCH_WORK_DIR/global.json"
|
||||
cp -c "$XAM_TOP/global.json" "$MLAUNCH_WORK_DIR/global.json"
|
||||
|
||||
# Version calculation
|
||||
XCODE_VERSION=$(grep XCODE_VERSION= "$XAM_TOP/Make.config" | sed 's/.*=//')
|
||||
|
|
|
@ -60,16 +60,6 @@ steps:
|
|||
displayName: Generate constants files
|
||||
timeoutInMinutes: 15
|
||||
|
||||
- bash: |
|
||||
set -x
|
||||
set -e
|
||||
|
||||
make global6.json
|
||||
make -C tests/dotnet global.json NuGet.config
|
||||
workingDirectory: $(System.DefaultWorkingDirectory)/xamarin-macios
|
||||
displayName: 'Generate global.json'
|
||||
timeoutInMinutes: 5
|
||||
|
||||
- task: DownloadPipelineArtifact@2
|
||||
displayName: Download artifacts
|
||||
inputs:
|
||||
|
@ -80,7 +70,7 @@ steps:
|
|||
set -x
|
||||
set -e
|
||||
|
||||
make global6.json
|
||||
make global.json
|
||||
make -C builds dotnet
|
||||
workingDirectory: $(System.DefaultWorkingDirectory)/xamarin-macios
|
||||
displayName: Bootstrap dotnet
|
||||
|
@ -142,8 +132,6 @@ steps:
|
|||
PLATFORMS="$PLATFORMS $CURRENT"
|
||||
done
|
||||
|
||||
rm global.json
|
||||
cp global6.json global.json
|
||||
$DOTNET workload install --from-rollback-file $ROLLBACK_PATH --source $DOTNET_NUPKG_DIR $SOURCES --verbosity diag $PLATFORMS
|
||||
|
||||
var=$(make -C $(Build.SourcesDirectory)/xamarin-macios/tools/devops print-variable VARIABLE=DOTNET_DIR)
|
||||
|
|
|
@ -13,4 +13,3 @@ Xcode ("@XCODE_XIP_NAME@").XcodeSelect (allowUntrusted: true);
|
|||
Item ("@MONO_PACKAGE@");
|
||||
Item ("@MIN_SHARPIE_URL@");
|
||||
Item ("@VS_PACKAGE@");
|
||||
DotNetCoreSdk ("@SYSTEM_DOTNET_VERSION@");
|
||||
|
|
|
@ -15,6 +15,4 @@ Item ("@VS_PACKAGE@");
|
|||
Item ("@XI_PACKAGE@");
|
||||
Item ("@MIN_SHARPIE_URL@");
|
||||
|
||||
DotNetCoreSdk ("@SYSTEM_DOTNET_VERSION@");
|
||||
|
||||
BrewPackages ("p7zip");
|
||||
|
|
|
@ -10,7 +10,6 @@ using static Xamarin.Provisioning.ProvisioningScript;
|
|||
Item ("@MONO_PACKAGE@");
|
||||
Item ("@VS_PACKAGE@");
|
||||
Item ("@XM_PACKAGE@");
|
||||
DotNetCoreSdk ("@SYSTEM_DOTNET_VERSION@");
|
||||
|
||||
BrewPackages ("p7zip");
|
||||
|
||||
|
|
|
@ -1,3 +1,2 @@
|
|||
global.json
|
||||
*.csproj.inc
|
||||
.vscode/
|
||||
|
|
|
@ -16,10 +16,10 @@ DOTNET_DIRECTORIES += \
|
|||
# dotnet-linker.csproj.inc contains the dotnet_linker_dependencies variable used to determine if mtouch needs to be rebuilt or not.
|
||||
dotnet-linker.csproj.inc: export BUILD_EXECUTABLE=$(DOTNET) build
|
||||
dotnet-linker.csproj.inc: export BUILD_VERBOSITY=$(DOTNET_BUILD_VERBOSITY)
|
||||
dotnet-linker.csproj.inc: global.json
|
||||
dotnet-linker.csproj.inc:
|
||||
-include dotnet-linker.csproj.inc
|
||||
|
||||
$(BUILD_DIR)/dotnet-linker%dll $(BUILD_DIR)/dotnet-linker%pdb: Makefile global.json $(dotnet_linker_dependencies)
|
||||
$(BUILD_DIR)/dotnet-linker%dll $(BUILD_DIR)/dotnet-linker%pdb: Makefile $(dotnet_linker_dependencies)
|
||||
$(Q_DOTNET_BUILD) $(DOTNET) build dotnet-linker.csproj $(DOTNET_BUILD_VERBOSITY)
|
||||
$(Q) touch $(BUILD_DIR)/dotnet-linker.dll $(BUILD_DIR)/dotnet-linker.pdb
|
||||
|
||||
|
@ -32,12 +32,5 @@ $(foreach platform,$(DOTNET_PLATFORMS),$(eval $(call InstallTemplate,$(platform)
|
|||
$(DOTNET_DIRECTORIES):
|
||||
$(Q) mkdir -p $@
|
||||
|
||||
# This tells NuGet to use the exact same dotnet version we've configured in Make.config
|
||||
global.json: $(TOP)/Make.config.inc Makefile $(TOP)/.git/HEAD $(TOP)/.git/index
|
||||
$(Q_GEN) \
|
||||
printf "{\n" > $@; \
|
||||
printf "\t\"sdk\": { \"version\": \"$(DOTNET_VERSION)\" }\n" >> $@; \
|
||||
printf "}\n" >> $@
|
||||
|
||||
all-local:: $(DOTNET_TARGETS)
|
||||
install-local:: $(DOTNET_TARGETS)
|
||||
|
|
|
@ -1,2 +1 @@
|
|||
nupkg/
|
||||
global.json
|
||||
|
|
|
@ -12,17 +12,13 @@ $(IOS_DLL):
|
|||
@echo "Thou shalt run 'make all' in the root directory first"
|
||||
@exit 1
|
||||
|
||||
global.json: $(TOP)/global6.json
|
||||
$(CP) $< $@
|
||||
|
||||
# Example TEST_FILTER:
|
||||
# TEST_FILTER="--filter FullyQualifiedName~BuildMyCocoaApp"
|
||||
# Docs: https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-test#filter-option-details
|
||||
run-tests:: global.json ./nupkg/nnyeah.$(NUPKG_VERSION).nupkg
|
||||
run-tests:: ./nupkg/nnyeah.$(NUPKG_VERSION).nupkg
|
||||
$(DOTNET) test tests/nnyeah-tests.csproj $(TEST_FILTER)
|
||||
|
||||
|
||||
nnyeah/bin/Debug/net6.0/nnyeah.dll: $(IOS_DLL) $(wildcard **/*.cs) $(wildcard **/*.csproj) $(wildcard *.sln) global.json
|
||||
nnyeah/bin/Debug/net6.0/nnyeah.dll: $(IOS_DLL) $(wildcard **/*.cs) $(wildcard **/*.csproj) $(wildcard *.sln)
|
||||
$(Q_BUILD) $(DOTNET) build "/bl:$@.binlog" /restore $(MSBUILD_VERBOSITY) $(wildcard *.sln)
|
||||
|
||||
clean:
|
||||
|
|
Загрузка…
Ссылка в новой задаче