Skip to content

Commit 1ed1688

Browse files
authored
Remove .csproj files from mcs/ build, they were never used (mono#20883)
This allows us to remove a lot of cruft and simplifies our CI build.
1 parent 6910cd1 commit 1ed1688

File tree

399 files changed

+12
-91872
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

399 files changed

+12
-91872
lines changed

.github/CODEOWNERS

-1
Original file line numberDiff line numberDiff line change
@@ -128,7 +128,6 @@
128128
/mono/utils/*-win* @lateralusX @lambdageek
129129

130130
/msvc @lateralusX @kg @akoeplinger
131-
/msvc/scripts @akoeplinger @kg
132131

133132
/netcore @marek-safar @akoeplinger @egorbo @vargaz @steveisok
134133

.gitignore

-1
Original file line numberDiff line numberDiff line change
@@ -131,7 +131,6 @@ mono.h
131131
mono-*.tar.*
132132
mono_crash*
133133
tmpinst-dir.stamp
134-
msvc/scripts/inputs/
135134
extensions-config.h
136135
*.dylib.dSYM
137136
*.mlpd

Makefile.am

-38
Original file line numberDiff line numberDiff line change
@@ -96,47 +96,9 @@ install:
9696
(cd $${mydir} && ${MAKE} install) \
9797
done
9898

99-
update-csproj:
100-
-rm msvc/scripts/order
101-
-rm msvc/scripts/order.xml
102-
-rm -rf msvc/scripts/inputs
103-
-mkdir msvc/scripts/inputs
104-
(cd runtime; $(MAKE) V=1 extra_targets=csproj-local)
105-
106-
package-inputs:
107-
echo '<?xml version="1.0" encoding="utf-8"?>' > msvc/scripts/order.xml
108-
echo '<root>' >> msvc/scripts/order.xml
109-
for i in `cat msvc/scripts/order`; do \
110-
set `echo $$i | sed -e 's/:/ /' -e 's/.input//'`; \
111-
cat msvc/scripts/inputs/$$2.input | sed -e 's/\\\\/\\/g' -e 's/\\/\\\\/g' | \
112-
(echo " <project dir=\"$$1\" library=\"$$2\">"; \
113-
read boot; echo " <boot>$$boot</boot>"; \
114-
read flags; echo " <flags>$$flags</flags>"; \
115-
read sources;echo " <sources>$$sources</sources>"; \
116-
read output; echo " <output>$$output</output>"; \
117-
read built; echo " <built_sources>`echo $$built | sed 's/\\\/\\\\/g'`</built_sources>"; \
118-
read libou; echo " <library_output>$$libou</library_output>"; \
119-
read fx_ver; echo " <fx_version>$$fx_ver</fx_version>"; \
120-
read profile; echo " <profile>$$profile</profile>"; \
121-
read resxt; echo " <resources>$$resxt</resources>"; \
122-
read resp; echo " <response>$$resp</response>"; \
123-
echo " </project>") >> msvc/scripts/order.xml; \
124-
done
125-
echo "</root>" >> msvc/scripts/order.xml
126-
12799
# Update llvm version in configure.ac to the output of $LLVM_DIR/bin/llvm-config --version
128100
update-llvm-version:
129101
if test "x$$LLVM_DIR" = "x"; then echo "Set the make variable LLVM_DIR to the directory containing the LLVM installation."; exit 1; fi
130102
REV=`$(LLVM_DIR)/bin/llvm-config --version` && sed -e "s,expected_llvm_version=.*,expected_llvm_version=\"$$REV\"," < configure.ac > tmp && mv tmp configure.ac && echo "Version set to $$REV."
131103

132-
133-
update-solution-files:
134-
cd msvc/scripts && $(MAKE) genproj.exe || exit $$?;
135-
$(MAKE) update-csproj
136-
$(MAKE) package-inputs
137-
(cd msvc/scripts; mono --debug genproj.exe $(GENPROJ_ARGS))
138-
139-
update-solution-files-with-tests:
140-
$(MAKE) "GENPROJ_ARGS=2012 true true" update-solution-files
141-
142104
endif

README.md

-18
Original file line numberDiff line numberDiff line change
@@ -586,21 +586,3 @@ Mono Trademark Use Policy
586586
=========================
587587

588588
The use of trademarks and logos for Mono can be found [here](https://www.dotnetfoundation.org/legal/mono-tm).
589-
590-
Maintaining the Class Library Solution Files
591-
============================================
592-
593-
Mono now ships with a solution file that can be used to build the
594-
assemblies from an IDE. Either by opening the topmost `net_4_x.sln`
595-
file, or to by loading one of the individual `csproj` files located in
596-
each directory.
597-
598-
These are maintained by extracting the configuration information from
599-
our Makefiles, which as of May 2016 remain the canonical location for
600-
configuration information.
601-
602-
When changes are made to the Makefiles, a user would need to run the
603-
following command to re-generate the solution files at the top level:
604-
605-
$ make update-solution-files
606-

bcl.sln

-11,183
This file was deleted.

build-libs.bat

-7
This file was deleted.

build-libs.sh

-4
This file was deleted.

mcs/.gitignore

-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ TestResult-*.xml
1212
TestResult*.xml
1313
.dep_dirs-*
1414
apidiff/*
15-
csprojdiff/*
1615
errors/*.log
1716
errors/dummy.xml
1817
class/RabbitMQ.Client/docs/specs/autogenerated-api-0-8.cs

mcs/Makefile

-10
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,6 @@ DISTFILES = \
114114

115115
dist-local: dist-default
116116

117-
csproj-local:
118-
119117
dist-pre:
120118
rm -rf $(package)
121119
mkdir $(package)
@@ -188,11 +186,3 @@ mono-api-diff:
188186
@mkdir -p apidiff
189187
$(Q) sed -e "/@diffdata@/r temp.patch" -e "/@diffdata@/d" -e "s/@title@/Public API Diff/g" -e "s/@description@/If the changes are intentional, run <code>make -C mcs mono-api-diff<\/code> locally and commit changes in external\/api-snapshot./g" diff.html.in > apidiff/index.html
190188
$(Q) if [ -s temp.patch ]; then echo "Error: Found public API differences, see mcs/apidiff/index.html. If the changes are intentional, please go to external/api-snapshot and commit them."; rm -f temp.patch; exit 1; else echo "No differences found."; rm -f temp.patch; fi
191-
192-
mono-csproj-diff:
193-
@echo "Generating csproj diff..."
194-
$(Q) git add -A "*.csproj" $(topdir)../bcl.sln
195-
$(Q) git diff --no-renames HEAD "*.csproj" $(topdir)../bcl.sln > $(abspath $(topdir))/temp.patch
196-
@mkdir -p csprojdiff
197-
$(Q) sed -e "/@diffdata@/r temp.patch" -e "/@diffdata@/d" -e "s/@title@/Project Files Diff/g" -e "s/@description@/Use <code>@monojenkins commit csproj<\/code> to commit them./g" diff.html.in > csprojdiff/index.html
198-
$(Q) if [ -s temp.patch ]; then echo "Error: Found csproj differences, see mcs/csprojdiff/index.html. If the changes are intentional, please commit them."; rm -f temp.patch; exit 1; else echo "No differences found."; rm -f temp.patch; fi

mcs/build/Makefile

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ include ../build/rules.make
44

55
BUILT_FILES = common/Consts.cs $(topdir)/class/lib/$(PROFILE_DIRECTORY)/Consts.cs common/sourcelink.json
66

7-
all-local install-local test-local run-test-local csproj-local run-test-ondotnet-local uninstall-local doc-update-local: $(BUILT_FILES)
7+
all-local install-local test-local run-test-local run-test-ondotnet-local uninstall-local doc-update-local: $(BUILT_FILES)
88
@:
99

1010
clean-local:

mcs/build/executable.make

-15
Original file line numberDiff line numberDiff line change
@@ -186,21 +186,6 @@ BUILT_SOURCES_cmdline = `echo $(BUILT_SOURCES) | $(PLATFORM_CHANGE_SEPARATOR_CMD
186186
endif
187187
endif
188188

189-
csproj-local:
190-
config_file=`basename $(PROGRAM) .exe`-$(PROFILE).input; \
191-
echo $(thisdir):$$config_file >> $(topdir)/../msvc/scripts/order; \
192-
(echo $(is_boot); \
193-
echo $(USE_MCS_FLAGS) $(LIBRARY_FLAGS) $(LIB_MCS_FLAGS) $(patsubst %,-r:%,$(LIB_REFS)); \
194-
echo $(sourcefile); \
195-
echo $(PROGRAM); \
196-
echo $(BUILT_SOURCES_cmdline); \
197-
echo $(build_lib); \
198-
echo $(FRAMEWORK_VERSION); \
199-
echo $(PROFILE); \
200-
echo $(RESOURCE_DEFS); \
201-
echo $(response)) > $(topdir)/../msvc/scripts/inputs/$$config_file
202-
203-
204189
ifneq ($(response),$(sourcefile))
205190
$(response): $(topdir)/build/executable.make $(depsdir)/.stamp
206191
endif

mcs/build/library.make

-35
Original file line numberDiff line numberDiff line change
@@ -118,26 +118,6 @@ else
118118
is_boot=false
119119
endif
120120

121-
csproj-local: csproj-library csproj-test
122-
123-
intermediate_clean=$(subst /,-,$(intermediate))
124-
csproj-library:
125-
config_file=`basename $(LIBRARY) .dll`-$(intermediate_clean)$(PROFILE).input; \
126-
case "$(thisdir)" in *"Facades"*) config_file=Facades_$$config_file;; *"legacy"*) config_file=legacy_$$config_file;; esac; \
127-
echo $(thisdir):$$config_file >> $(topdir)/../msvc/scripts/order; \
128-
(echo $(is_boot); \
129-
echo $(USE_MCS_FLAGS) $(LIBRARY_FLAGS) $(LIB_MCS_FLAGS) $(KEYFILE_MCS_FLAGS); \
130-
echo $(LIBRARY); \
131-
echo $(LIBRARY_NAME); \
132-
echo $(BUILT_SOURCES_cmdline); \
133-
echo $(build_lib); \
134-
echo $(FRAMEWORK_VERSION); \
135-
echo $(PROFILE); \
136-
echo $(RESOURCE_DEFS); \
137-
echo $(response)) > $(topdir)/../msvc/scripts/inputs/$$config_file
138-
139-
csproj-test:
140-
141121
install-local: all-local
142122
test-local: all-local
143123
uninstall-local:
@@ -238,21 +218,6 @@ include $(topdir)/build/tests.make
238218

239219
ifdef HAVE_CS_TESTS
240220
DISTFILES += $(test_sourcefile)
241-
242-
csproj-test:
243-
config_file=`basename $(LIBRARY) .dll`-tests-$(PROFILE).input; \
244-
echo $(thisdir):$$config_file >> $(topdir)/../msvc/scripts/order; \
245-
(echo false; \
246-
echo $(USE_MCS_FLAGS) -r:$(the_assembly) $(TEST_MCS_FLAGS); \
247-
echo $(LIBRARY); \
248-
echo $(test_lib); \
249-
echo $(BUILT_SOURCES_cmdline); \
250-
echo $(test_lib); \
251-
echo $(FRAMEWORK_VERSION); \
252-
echo $(PROFILE); \
253-
echo ""; \
254-
echo $(test_response)) > $(topdir)/../msvc/scripts/inputs/$$config_file
255-
256221
endif
257222

258223
# make dist will collect files in .sources files from all profiles

mcs/build/rules.make

-2
Original file line numberDiff line numberDiff line change
@@ -222,8 +222,6 @@ do-%: %-recursive
222222
.PHONY: all-local $(STD_TARGETS:=-local)
223223
all-local $(STD_TARGETS:=-local):
224224

225-
csproj: do-csproj
226-
227225
# The way this is set up, any profile-specific subdirs list should
228226
# be listed _before_ including rules.make. However, the default
229227
# SUBDIRS list can come after, so don't use the eager := syntax when

mcs/class/Accessibility/Accessibility.csproj

-75
This file was deleted.

0 commit comments

Comments
 (0)