Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build CoreFX on Linux #2

Closed
ellismg opened this issue Aug 12, 2016 · 2 comments
Closed

Build CoreFX on Linux #2

ellismg opened this issue Aug 12, 2016 · 2 comments

Comments

@ellismg
Copy link
Contributor

ellismg commented Aug 12, 2016

Everything except for Microsoft.VisualBasic can be built from source on *nix via build.sh. The VisualBasic issues are due to a bug in MSBuild.

@ellismg ellismg added this to the 1.0.X milestone Aug 12, 2016
@ellismg
Copy link
Contributor Author

ellismg commented Aug 12, 2016

dotnet/buildtools#952 provides a workaround to buildtools upstream to address the issue. Once this is merged, we'll need to back port it to the release/1.0.0 branch of build tools, spin a new build tools and start to use that for our projects.

With the above changes and this patch:

diff --git a/src/Microsoft.VisualBasic/pkg/Microsoft.VisualBasic.builds b/src/Microsoft.VisualBasic/pkg/Microsoft.VisualBasic.builds
index 6076718..fb94e73 100644
--- a/src/Microsoft.VisualBasic/pkg/Microsoft.VisualBasic.builds
+++ b/src/Microsoft.VisualBasic/pkg/Microsoft.VisualBasic.builds
@@ -2,8 +2,7 @@
 <Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
   <ItemGroup>
-    <!-- Temporary workaround, VisualBasic projects cannot be built on non-Windows platforms. See issue #5230. -->
-    <Project Include="Microsoft.VisualBasic.pkgproj" Condition="'$(OS)'=='Windows_NT'"/>
+    <Project Include="Microsoft.VisualBasic.pkgproj" />
   </ItemGroup>
   <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.traversal.targets))\dir.traversal.targets" />
 </Project>
diff --git a/src/Microsoft.VisualBasic/src/Microsoft.VisualBasic.builds b/src/Microsoft.VisualBasic/src/Microsoft.VisualBasic.builds
index 5f033d1..54f6ffa 100644
--- a/src/Microsoft.VisualBasic/src/Microsoft.VisualBasic.builds
+++ b/src/Microsoft.VisualBasic/src/Microsoft.VisualBasic.builds
@@ -2,8 +2,7 @@
 <Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
   <ItemGroup>
-    <!-- Temporary workaround, VisualBasic projects cannot be built on non-Windows platforms. See issue #5230. -->
-    <Project Include="Microsoft.VisualBasic.vbproj" Condition="'$(OS)'=='Windows_NT'" />
+    <Project Include="Microsoft.VisualBasic.vbproj" />
   </ItemGroup>
   <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.traversal.targets))\dir.traversal.targets" />
 </Project>
diff --git a/src/Microsoft.VisualBasic/tests/Microsoft.VisualBasic.Tests.builds b/src/Microsoft.VisualBasic/tests/Microsoft.VisualBasic.Tests.builds
index 0cfb81c..014147a 100644
--- a/src/Microsoft.VisualBasic/tests/Microsoft.VisualBasic.Tests.builds
+++ b/src/Microsoft.VisualBasic/tests/Microsoft.VisualBasic.Tests.builds
@@ -2,10 +2,7 @@
 <Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
   <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.props))\dir.props" />
   <ItemGroup>
-    <!-- Temporary workaround, VisualBasic projects cannot be built on non-Windows platforms. See issue #5230. -->
-    <Project Include="Microsoft.VisualBasic.Tests.csproj" Condition="'$(OS)'=='Windows_NT'">
-      <OSGroup>Windows_NT</OSGroup>
-    </Project>
+    <Project Include="Microsoft.VisualBasic.Tests.csproj" />
   </ItemGroup>
   <Import Project="$([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), dir.traversal.targets))\dir.traversal.targets" />
 </Project>

We can build all of CoreFX.

@ellismg ellismg changed the title Build CoreFX on *nix Build CoreFX on Linux Aug 12, 2016
@ellismg
Copy link
Contributor Author

ellismg commented Aug 23, 2016

There were some problems consuming the managed code packages we built in upstream repos, so I'm unmarking this as fixed-locally for now.

One other problem was the packages we produced had source information embedded in them which should only be present in the symbol packages.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant