3 include ../../build/rules.make
5 sn = $(topdir)/class/lib/net_1_1_bootstrap/sn.exe
6 SN = MONO_PATH="$(topdir)/class/lib/net_1_1_bootstrap$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(RUNTIME) $(RUNTIME_FLAGS) $(sn)
9 LINKER = ../linker/monolinker.exe
12 Mono.Tuner/TunerAnnotations.cs \
13 Mono.Tuner/PrintStatus.cs \
14 Mono.Tuner/RemoveSerialization.cs \
15 Mono.Tuner/AdjustVisibility.cs \
16 Mono.Tuner/CheckVisibility.cs \
17 Mono.Tuner/InjectAttributes.cs \
20 Descriptors/mscorlib.xml \
21 Descriptors/smcs.xml \
22 Descriptors/System.xml \
25 masterinfos/silverlight/mscorlib.info \
26 masterinfos/silverlight/System.info \
27 masterinfos/silverlight/System.Net.info \
28 masterinfos/silverlight/System.Core.info \
29 masterinfos/silverlight/System.Xml.info \
30 masterinfos/silverlight/System.Runtime.Serialization.info
32 LOCAL_MCS_FLAGS = -r:$(LINKER) -r:Mono.Cecil.dll
34 DISTFILES = README $(TUNER_SOURCES) $(TUNER_DESCS) $(TUNER_MASTERS)
36 WORKING_DIR = $(topdir)/class/lib/net_2_1_raw
37 OUTPUT_DIR = $(topdir)/class/lib/net_2_1
39 DLLFILES = mscorlib.dll System.dll System.Net.dll System.Xml.dll System.Core.dll System.Runtime.Serialization.dll
40 FILES = smcs.exe $(DLLFILES)
41 WORKING_FILES = $(FILES:%=$(WORKING_DIR)/%)
42 OUTPUT_FILES = $(FILES:%=$(OUTPUT_DIR)/%)
44 ifneq (net_2_1, $(PROFILE))
45 all-local: Mono.Tuner.dll
50 rm -f *.dll *.mdb *.pdb
53 all-local: $(OUTPUT_FILES)
55 install-local: end-install
58 rm -f $(OUTPUT_FILES) tune.stamp tune.stampt
64 dist-local: dist-default
66 test-local run-test-local run-test-ondotnet-local:
68 TUNER_FLAGS = -d $(WORKING_DIR) -o $(OUTPUT_DIR) \
73 -m display_internalized false \
76 Mono.Tuner.InjectAttributes,Mono.Tuner:OutputStep \
77 Mono.Tuner.AdjustVisibility,Mono.Tuner:OutputStep \
78 Mono.Tuner.PrintStatus,Mono.Tuner:OutputStep \
79 Mono.Tuner.RemoveSerialization,Mono.Tuner:OutputStep \
80 Mono.Tuner.CheckVisibility,Mono.Tuner \
82 $(OUTPUT_FILES): tune.stamp
83 test -f $@ || { rm -f $<; $(MAKE) $<; }
85 tune.stamp: $(WORKING_FILES) $(OUTPUT_DIR)/.stamp
87 MONO_PATH=".$(PLATFORM_PATH_SEPARATOR)$(topdir)/class/lib/default$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(RUNTIME) $(RUNTIME_FLAGS) --debug $(LINKER) $(TUNER_FLAGS) $(TUNER_DESCS:%=-x %) $(TUNER_STEPS:%=-s %) $(TUNER_MASTERS:%=-i %)
88 for i in $(DLLFILES); do $(SN) $(SNFLAGS) $(OUTPUT_DIR)/$$i $(topdir)/class/mono.snk; done
91 gacutil = $(topdir)/class/lib/net_1_1_bootstrap/gacutil.exe
92 GACUTIL = MONO_PATH="$(topdir)/class/lib/net_1_1_bootstrap$(PLATFORM_PATH_SEPARATOR)$$MONO_PATH" $(RUNTIME) $(RUNTIME_FLAGS) $(gacutil) -bootstrap
94 TUNER_INSTALL_DIR = $(DESTDIR)$(mono_libdir)/mono/2.1
96 end-install: inst-mscorlib.dll inst-smcs.exe gac-System gac-System.Net gac-System.Xml gac-System.Core gac-System.Runtime.Serialization
98 inst-%: $(OUTPUT_DIR)/%
99 $(MKINSTALLDIRS) $(TUNER_INSTALL_DIR)
100 $(INSTALL_LIB) $(OUTPUT_DIR)/$* $(TUNER_INSTALL_DIR)/$*
101 test ! -f $(OUTPUT_DIR)/$*.mdb || $(INSTALL_LIB) $(OUTPUT_DIR)/$*.mdb $(TUNER_INSTALL_DIR)/$*.mdb
103 gac-%: $(OUTPUT_DIR)/%.dll
104 $(GACUTIL) /i $(OUTPUT_DIR)/$*.dll /f /root $(DESTDIR)$(mono_libdir) /package 2.1
106 Mono.Tuner.dll: $(TUNER_SOURCES)
107 $(CSCOMPILE) /out:Mono.Tuner.dll /t:library $(TUNER_SOURCES)
110 rm -f tune.stamp && $(MAKE) tune.stamp