Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Genproj updates for BCL build in Windows Visual Studio (mono/mono#7755)
This batch of commits makes further updates to our support for building the BCL using msbuild (Visual Studio, to be specific). * Generates a single sln and set of csproj files with support for all of our build profiles (orbis, monodroid, net_4_x, etc) * Project configuration selector (in VS or as parameter to msbuild) can be used to select which profile to build * Includes partial dependency information so that culevel and jay are compiled before the rest of the sln (this keeps pre/post events from from failing on first build) As of this rev things are working pretty good, but a lot of the measures I took here are temporary so I'd appreciate thoughts on how to go about them. The hard-coded System.Web -> Culevel dependency feels gross, for example - I kind of want to go through and build an automatic solution for it but I'm not sure it's necessary. Implements mono/mono#6858 --- * Checkpoint: Generate single .csproj file with conditional item/property groups * Checkpoint: Updates to csproj and sln generation to support building specific profiles * Move targets file in csproj template so that it isn't evaluated before all properties are set * Checkpoint profile fallback (use net_4_x if project does not have appropriate profile) * Use in-process cache for project guids to fix bug where many guids were being generated. Fix profile fallback. * Clean up unnecessary debug writelines * genproj error fixes * Remove duplicate gacutil entry from makefile to fix order.xml corruption. Cleaner project names in msbuild sln. Compile genproj before generating inputs. * Delete genproj.exe at beginning of update-solution-files because otherwise syntax errors will cause an old version to be used silently Cleaner messages from genproj * Hard-code the guid for culevel and add it as a dependency for system.web * Bug fixes * sln files are sensitive to whitespace format * Don't generate pointless solution configurations if we have no information for them * Updates based on PR feedback Commit migrated from mono/mono@954911d
- Loading branch information