You've already forked linux-packaging-mono
Imported Upstream version 4.8.0.309
Former-commit-id: 5f9c6ae75f295e057a7d2971f3a6df4656fa8850
This commit is contained in:
parent
ee1447783b
commit
94b2861243
@@ -15,7 +15,7 @@ monotouch_watch_runtime_SUBDIRS := build class
|
||||
monotouch_tv_runtime_SUBDIRS := build class
|
||||
xammac_SUBDIRS := build class
|
||||
mobile_SUBDIRS := build class
|
||||
mobile_static_SUBDIRS := build class
|
||||
mobile_static_SUBDIRS := build class ilasm
|
||||
binary_reference_assemblies_SUBDIRS := build class
|
||||
net_4_x_SUBDIRS := build mcs class nunit24 ilasm tools tests errors docs
|
||||
xammac_net_4_5_SUBDIRS := build class
|
||||
|
||||
@@ -15,8 +15,6 @@ build system needs to let us do, specifically:
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
** Makefile structure
|
||||
|
||||
A general makefile looks like this:
|
||||
@@ -438,7 +436,15 @@ To give it flags, set $(LOCAL_CFLAGS). As with compiling C#, the
|
||||
variable $(CFLAGS) will automatically be included on the command line.
|
||||
|
||||
|
||||
* Compiling resources with resgen
|
||||
|
||||
If you have a resource that should be compiled with resgen and
|
||||
included in your assembly, you can use the RESOURCES_DEFS variable.
|
||||
This variable can contain lists of pairs that are separated by comma
|
||||
to represent the resource ID as embedded in the assembly followed by
|
||||
the file name, like this:
|
||||
|
||||
RESOURCE_DEFS = Messages,TextResources.resx Errors,ErrorList.txt
|
||||
|
||||
|
||||
* Documentation-related needs? Use $(MDOC)
|
||||
|
||||
@@ -5,7 +5,7 @@ static class AssemblyRef
|
||||
internal const string System = "System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35";
|
||||
|
||||
public const string EcmaPublicKey = "b77a5c561934e089";
|
||||
#if NET_2_1
|
||||
#if MOBILE
|
||||
public const string FrameworkPublicKeyFull = "0024000004800000940000000602000000240000525341310004000001000100B5FC90E7027F67871E773A8FDE8938C81DD402BA65B9201D60593E96C492651E889CC13F1415EBB53FAC1131AE0BD333C5EE6021672D9718EA31A8AEBD0DA0072F25D87DBA6FC90FFD598ED4DA35E44C398C454307E8E33B8426143DAEC9F596836F97C8F74750E5975C64E2189F45DEF46B2A2B1247ADC3652BF5C308055DA9";
|
||||
public const string FrameworkPublicKeyFull2 = "00240000048000009400000006020000002400005253413100040000010001008D56C76F9E8649383049F383C44BE0EC204181822A6C31CF5EB7EF486944D032188EA1D3920763712CCB12D75FB77E9811149E6148E5D32FBAAB37611C1878DDC19E20EF135D0CB2CFF2BFEC3D115810C3D9069638FE4BE215DBF795861920E5AB6F7DB2E2CEEF136AC23D5DD2BF031700AEC232F6C6B1C785B4305C123B37AB";
|
||||
#else
|
||||
|
||||
@@ -34,12 +34,12 @@ static class Consts
|
||||
// Use these assembly version constants to make code more maintainable.
|
||||
//
|
||||
|
||||
public const string MonoVersion = "4.6.2.0";
|
||||
public const string MonoVersion = "4.8.0.0";
|
||||
public const string MonoCompany = "Mono development team";
|
||||
public const string MonoProduct = "Mono Common Language Infrastructure";
|
||||
public const string MonoCopyright = "(c) Various Mono authors";
|
||||
|
||||
#if NET_2_1
|
||||
#if MOBILE
|
||||
// Versions of .NET Framework for Silverlight 4.0
|
||||
public const string FxVersion = "2.0.5.0";
|
||||
public const string VsVersion = "9.0.0.0"; // unused, but needed for compilation
|
||||
@@ -118,7 +118,7 @@ static class Consts
|
||||
public const string AssemblyPresentationCore_4_0 = "PresentationCore, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35";
|
||||
public const string AssemblyPresentationFramework_3_5 = "PresentationFramework, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35";
|
||||
public const string AssemblySystemServiceModel_3_0 = "System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089";
|
||||
#elif NET_2_1
|
||||
#elif MOBILE
|
||||
public const string AssemblySystem_Core = "System.Core, Version=" + FxVersion + ", Culture=neutral, PublicKeyToken=b77a5c561934e089";
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@ static class Consts
|
||||
public const string MonoProduct = "Mono Common Language Infrastructure";
|
||||
public const string MonoCopyright = "(c) Various Mono authors";
|
||||
|
||||
#if NET_2_1
|
||||
#if MOBILE
|
||||
// Versions of .NET Framework for Silverlight 4.0
|
||||
public const string FxVersion = "2.0.5.0";
|
||||
public const string VsVersion = "9.0.0.0"; // unused, but needed for compilation
|
||||
@@ -118,7 +118,7 @@ static class Consts
|
||||
public const string AssemblyPresentationCore_4_0 = "PresentationCore, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35";
|
||||
public const string AssemblyPresentationFramework_3_5 = "PresentationFramework, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35";
|
||||
public const string AssemblySystemServiceModel_3_0 = "System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089";
|
||||
#elif NET_2_1
|
||||
#elif MOBILE
|
||||
public const string AssemblySystem_Core = "System.Core, Version=" + FxVersion + ", Culture=neutral, PublicKeyToken=b77a5c561934e089";
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -42,7 +42,9 @@ executable_CLEAN_FILES += $(build_lib) $(build_lib).so $(build_lib).mdb $(build_
|
||||
|
||||
makefrag = $(depsdir)/$(PROFILE)_$(base_prog).makefrag
|
||||
|
||||
ifndef NO_BUILD
|
||||
all-local: $(the_lib) $(PROGRAM_config)
|
||||
endif
|
||||
|
||||
install-local: all-local
|
||||
test-local: all-local
|
||||
@@ -173,6 +175,7 @@ csproj-local:
|
||||
echo $(build_lib); \
|
||||
echo $(FRAMEWORK_VERSION); \
|
||||
echo $(PROFILE); \
|
||||
echo $(RESOURCE_DEFS); \
|
||||
echo $(response)) > $(topdir)/../msvc/scripts/inputs/$$config_file
|
||||
|
||||
|
||||
|
||||
@@ -145,6 +145,7 @@ csproj-library:
|
||||
echo $(build_lib); \
|
||||
echo $(FRAMEWORK_VERSION); \
|
||||
echo $(PROFILE); \
|
||||
echo $(RESOURCE_DEFS); \
|
||||
echo $(response)) > $(topdir)/../msvc/scripts/inputs/$$config_file
|
||||
|
||||
csproj-test:
|
||||
@@ -216,7 +217,28 @@ clean-local:
|
||||
test-local run-test-local run-test-ondotnet-local:
|
||||
@:
|
||||
|
||||
DISTFILES = $(wildcard *$(LIBRARY)*.sources) $(EXTRA_DISTFILES)
|
||||
#
|
||||
# RESOURCES_DEFS is a list of ID,FILE pairs separated by spaces
|
||||
# for each of those, generate a rule that produces ID.resource from
|
||||
# FILE using the resgen tool, adds the generated file to CLENA_FILES and
|
||||
# passes the resource to the compiler
|
||||
#
|
||||
ccomma = ,
|
||||
define RESOURCE_template
|
||||
$(1).resources: $(2)
|
||||
$(RESGEN) "$$<" "$$@"
|
||||
|
||||
GEN_RESOURCE_DEPS += $(1).resources
|
||||
GEN_RESOURCE_FLAGS += -resource:$(1).resources
|
||||
CLEAN_FILES += $(1).resources
|
||||
DIST_LISTED_RESOURCES += $(2)
|
||||
endef
|
||||
|
||||
ifdef RESOURCE_DEFS
|
||||
$(foreach pair,$(RESOURCE_DEFS), $(eval $(call RESOURCE_template,$(word 1, $(subst $(ccomma), ,$(pair))), $(word 2, $(subst $(ccomma), ,$(pair))))))
|
||||
endif
|
||||
|
||||
DISTFILES = $(wildcard *$(LIBRARY)*.sources) $(EXTRA_DISTFILES) $(DIST_LISTED_RESOURCES)
|
||||
|
||||
ASSEMBLY = $(LIBRARY)
|
||||
ASSEMBLY_EXT = .dll
|
||||
@@ -236,6 +258,7 @@ csproj-test:
|
||||
echo $(test_lib); \
|
||||
echo $(FRAMEWORK_VERSION); \
|
||||
echo $(PROFILE); \
|
||||
echo ""; \
|
||||
echo $(test_response)) > $(topdir)/../msvc/scripts/inputs/$$config_file
|
||||
|
||||
endif
|
||||
@@ -275,12 +298,12 @@ endif
|
||||
|
||||
$(the_lib): $(the_libdir)/.stamp
|
||||
|
||||
$(build_lib): $(response) $(sn) $(BUILT_SOURCES) $(build_libdir:=/.stamp)
|
||||
$(LIBRARY_COMPILE) $(LIBRARY_FLAGS) $(LIB_MCS_FLAGS) -target:library -out:$@ $(BUILT_SOURCES_cmdline) @$(response)
|
||||
$(Q) $(SN) -R $@ $(LIBRARY_SNK)
|
||||
$(build_lib): $(response) $(sn) $(BUILT_SOURCES) $(build_libdir:=/.stamp) $(GEN_RESOURCE_DEPS)
|
||||
$(LIBRARY_COMPILE) $(LIBRARY_FLAGS) $(LIB_MCS_FLAGS) $(GEN_RESOURCE_FLAGS) -target:library -out:$@ $(BUILT_SOURCES_cmdline) @$(response)
|
||||
ifdef RESOURCE_STRINGS_FILES
|
||||
$(Q) $(STRING_REPLACER) $(RESOURCE_STRINGS_FILES) $@
|
||||
endif
|
||||
$(Q) $(SN) -R $@ $(LIBRARY_SNK)
|
||||
|
||||
ifdef LIBRARY_USE_INTERMEDIATE_FILE
|
||||
$(the_lib): $(build_lib)
|
||||
|
||||
@@ -23,8 +23,6 @@ PLATFORM_PATH_SEPARATOR = :
|
||||
# This is for changing / to \ on windows
|
||||
PLATFORM_CHANGE_SEPARATOR_CMD = cat
|
||||
|
||||
PLATFORM_AOT_SUFFIX = .dylib
|
||||
|
||||
hidden_prefix = .
|
||||
hidden_suffix =
|
||||
|
||||
|
||||
@@ -23,8 +23,6 @@ PLATFORM_PATH_SEPARATOR = :
|
||||
# This is for changing / to \ on windows
|
||||
PLATFORM_CHANGE_SEPARATOR_CMD = cat
|
||||
|
||||
PLATFORM_AOT_SUFFIX = .so
|
||||
|
||||
hidden_prefix = .
|
||||
hidden_suffix =
|
||||
|
||||
|
||||
@@ -26,9 +26,6 @@ PLATFORM_PATH_SEPARATOR = ;
|
||||
|
||||
override CURDIR:=$(shell cygpath -m $(CURDIR))
|
||||
|
||||
## not so simple :-)
|
||||
#PLATFORM_AOT_SUFFIX = .dll
|
||||
|
||||
hidden_prefix =
|
||||
hidden_suffix = .tmp
|
||||
|
||||
|
||||
@@ -132,29 +132,6 @@ endif
|
||||
# Make sure propagates
|
||||
export TEST_HARNESS
|
||||
|
||||
# start aot config
|
||||
|
||||
# We set the prefix of the aot build flags
|
||||
# in the profile. This determines the aot type,
|
||||
# whether it be llvmonly or full. To this we append the
|
||||
# options which do not change between them, the INVARIANT_AOT_OPTIONS
|
||||
ifndef AOT_BUILD_FLAGS_PREFIX
|
||||
AOT_BUILD_FLAGS_PREFIX = --aot=
|
||||
endif
|
||||
|
||||
# Set the options for building and running AOT
|
||||
# The trampoline numbers are provisional, they are what is required
|
||||
# to run the corlib test suite. They should be considered a lower bound.
|
||||
INVARIANT_AOT_OPTIONS=nimt-trampolines=900,ntrampolines=8000
|
||||
|
||||
ifndef MONO_DISABLE_GSHAREDVT
|
||||
INVARIANT_AOT_OPTIONS:=$(INVARIANT_AOT_OPTIONS),ngsharedvt-trampolines=900
|
||||
endif
|
||||
|
||||
AOT_BUILD_FLAGS = $(AOT_BUILD_FLAGS_PREFIX)$(INVARIANT_AOT_OPTIONS)
|
||||
|
||||
# end AOT config
|
||||
|
||||
ifdef BCL_OPTIMIZE
|
||||
PROFILE_MCS_FLAGS += -optimize
|
||||
endif
|
||||
@@ -202,17 +179,33 @@ STD_TARGETS = test run-test run-test-ondotnet clean install uninstall doc-update
|
||||
$(STD_TARGETS): %: do-%
|
||||
|
||||
ifdef PLATFORM_AOT_SUFFIX
|
||||
Q_AOT=$(if $(V),,@echo "AOT [$(PROFILE)] AOT All Assemblies";)
|
||||
LIST_ALL_PROFILE_ASSEMBLIES = find . | grep -E '(dll|exe)$$' | grep -v -E 'bare|plaincore|secxml|Facades'
|
||||
COMPILE_ALL_PROFILE_ASSEMBLIES = $(LIST_ALL_PROFILE_ASSEMBLIES) | MONO_PATH="./" xargs -I '{}' $(RUNTIME) $(RUNTIME_FLAGS) $(AOT_BUILD_FLAGS) '{}'
|
||||
AOT_PROFILE_ASSEMBLIES = $(shell cd $(topdir)/class/lib/$(PROFILE)/ && find . | grep -E '(dll|exe)$$' | grep -v -E 'bare|plaincore|secxml|Facades' | sed 's:\./::g' | tr '\n' ' ')
|
||||
|
||||
do-all-aot:
|
||||
$(MAKE) do-all TOP_LEVEL_DO=do-all
|
||||
$(MAKE) aot-all-profile
|
||||
|
||||
aot-all-profile:
|
||||
$(Q_AOT) cd $(topdir)/class/lib/$(PROFILE)/ && $(COMPILE_ALL_PROFILE_ASSEMBLIES) &> $(PROFILE)-aot.log
|
||||
endif
|
||||
# When we recursively call $(MAKE) aot-all-profile
|
||||
# we will have created this directory, and so will
|
||||
# be able to evaluate the .dylibs to make
|
||||
ifneq ("$(wildcard $(topdir)/class/lib/$(PROFILE))","")
|
||||
|
||||
AOT_PROFILE_ASSEMBLIES_CMD = cd $(topdir)/class/lib/$(PROFILE)/ && find . | grep -E '(dll|exe)$$' | grep -v -E 'bare|plaincore|secxml|Facades|ilasm' | sed 's:\./::g' | tr '\n' ' '
|
||||
AOT_PROFILE_ASSEMBLIES_CMD_SAFE = $(AOT_PROFILE_ASSEMBLIES_CMD) || true
|
||||
AOT_PROFILE_ASSEMBLIES = $(shell $(AOT_PROFILE_ASSEMBLIES_CMD_SAFE))
|
||||
|
||||
# This can run in parallel
|
||||
.PHONY: aot-all-profile
|
||||
aot-all-profile: $(patsubst %,$(topdir)/class/lib/$(PROFILE)/%$(PLATFORM_AOT_SUFFIX),$(AOT_PROFILE_ASSEMBLIES))
|
||||
|
||||
$(topdir)/class/lib/$(PROFILE)/%$(PLATFORM_AOT_SUFFIX): $(topdir)/class/lib/$(PROFILE)/%
|
||||
@ mkdir -p $(topdir)/class/lib/$(PROFILE)/$*_bitcode_tmp
|
||||
@echo "AOT [$(PROFILE)] AOT $* " && cd $(topdir)/class/lib/$(PROFILE)/ && MONO_PATH="." $(RUNTIME) $(RUNTIME_FLAGS) $(AOT_BUILD_FLAGS),temp-path=$*_bitcode_tmp $* >> $(PROFILE)-aot.log
|
||||
@ rm -rf $(topdir)/class/lib/$(PROFILE)/$*_bitcode_tmp
|
||||
|
||||
endif #ifneq ("$(wildcard $(topdir)/class/lib/$(PROFILE))","")
|
||||
|
||||
endif # PLATFORM_AOT_SUFFIX
|
||||
|
||||
do-run-test:
|
||||
ok=:; $(MAKE) run-test-recursive || ok=false; $(MAKE) run-test-local || ok=false; $$ok
|
||||
|
||||
@@ -123,12 +123,20 @@ TEST_HARNESS_POSTPROC_ONDOTNET = (echo ''; cat TestResult-ondotnet-$(PROFILE).lo
|
||||
endif
|
||||
|
||||
ifdef FIXTURE
|
||||
ifdef NUNIT_LITE
|
||||
FIXTURE_ARG = -test=MonoTests.$(FIXTURE)
|
||||
else
|
||||
FIXTURE_ARG = -fixture=MonoTests.$(FIXTURE)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifdef TESTNAME
|
||||
ifdef NUNIT_LITE
|
||||
TESTNAME_ARG = -test=MonoTests.$(TESTNAME)
|
||||
else
|
||||
TESTNAME_ARG = -run=MonoTests.$(TESTNAME)
|
||||
endif
|
||||
endif
|
||||
|
||||
ifdef ALWAYS_AOT
|
||||
test-local-aot-compile: $(topdir)/build/deps/nunit-$(PROFILE).stamp
|
||||
|
||||
@@ -14,8 +14,6 @@ SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
|
||||
LIB_REFS = System
|
||||
LIB_MCS_FLAGS = $(SIGN_FLAGS)
|
||||
|
||||
PLATFORM_DEBUG_FLAGS =
|
||||
|
||||
NO_TEST = yes
|
||||
|
||||
include $(MCS_BUILD_DIR)/library.make
|
||||
|
||||
@@ -14,8 +14,6 @@ SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
|
||||
LIB_REFS = System System.Data System.Xml
|
||||
LIB_MCS_FLAGS = $(SIGN_FLAGS)
|
||||
|
||||
PLATFORM_DEBUG_FLAGS =
|
||||
|
||||
NO_TEST = yes
|
||||
|
||||
include $(MCS_BUILD_DIR)/library.make
|
||||
|
||||
@@ -14,8 +14,6 @@ SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
|
||||
LIB_REFS = System
|
||||
LIB_MCS_FLAGS = $(SIGN_FLAGS)
|
||||
|
||||
PLATFORM_DEBUG_FLAGS =
|
||||
|
||||
NO_TEST = yes
|
||||
|
||||
include $(MCS_BUILD_DIR)/library.make
|
||||
|
||||
@@ -13,8 +13,6 @@ KEY_FILE = ../../msfinal.pub
|
||||
SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
|
||||
LIB_MCS_FLAGS = $(SIGN_FLAGS)
|
||||
|
||||
PLATFORM_DEBUG_FLAGS =
|
||||
|
||||
NO_TEST = yes
|
||||
|
||||
include $(MCS_BUILD_DIR)/library.make
|
||||
|
||||
@@ -1,3 +1,2 @@
|
||||
TypeForwarders.cs
|
||||
AssemblyInfo.cs
|
||||
EventCounter.cs
|
||||
|
||||
@@ -44,3 +44,7 @@
|
||||
[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Tracing.EventTask))]
|
||||
[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Tracing.EventWrittenEventArgs))]
|
||||
[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Tracing.NonEventAttribute))]
|
||||
|
||||
#if NETSTANDARD
|
||||
[assembly: System.Runtime.CompilerServices.TypeForwardedToAttribute(typeof(System.Diagnostics.Tracing.EventCounter))]
|
||||
#endif
|
||||
|
||||
@@ -14,8 +14,6 @@ SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
|
||||
LIB_REFS = System
|
||||
LIB_MCS_FLAGS = $(SIGN_FLAGS)
|
||||
|
||||
PLATFORM_DEBUG_FLAGS =
|
||||
|
||||
NO_TEST = yes
|
||||
|
||||
include $(MCS_BUILD_DIR)/library.make
|
||||
|
||||
@@ -14,8 +14,6 @@ SIGN_FLAGS = /delaysign /keyfile:$(KEY_FILE) /nowarn:1616,1699
|
||||
LIB_REFS = System
|
||||
LIB_MCS_FLAGS = $(SIGN_FLAGS)
|
||||
|
||||
PLATFORM_DEBUG_FLAGS =
|
||||
|
||||
NO_TEST = yes
|
||||
|
||||
include $(MCS_BUILD_DIR)/library.make
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user