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

Where to set build architecture in Arcade? #4209

Closed
omajid opened this issue Oct 27, 2019 · 5 comments
Closed

Where to set build architecture in Arcade? #4209

omajid opened this issue Oct 27, 2019 · 5 comments

Comments

@omajid
Copy link
Member

omajid commented Oct 27, 2019

Over at another issues (dotnet/installer#4102 (comment)) I was told that arcade handles all the build architecture stuff for .NET Core projects:

The 'Architecture' logic is handled in Arcade; defaults, et al - I don't feel that this is the correct place for this, or if it should be included at all.

I tried looking for this code in arcade it, but couldn't find any obvious answer. Anyone know how I can find this code that sets up architecture related stuff for consuming projects in arcade?

Additionally, does that mean projects where they are setting up architecture need fixing? I am looking at code like:

https://github.com/dotnet/corefx/blob/cf28b7896a762f71c990a5896a160a4138d833c9/Directory.Build.props#L59-L62

@markwilkie
Copy link
Member

Is this helpful by any chance? https://github.com/dotnet/arcade/blob/master/Documentation/ArcadeSdk.md

If not, what are you trying to do specifically and we can certainly help.

@dagood
Copy link
Member

dagood commented Oct 28, 2019

I believe it isn't correct that Arcade handles build and target arch. This was a challenge in the Arcade onboarding process for core*, and we decided not to try to standardize it (and I believe this means Arcade has continued not to have a default implementation). This is one of the road bumps that's come up in core* repo consolidation, that everyone has handled it differently.


Another way to look at this is how Core-SDK targets e.g. win-x86. In CI, x86 shows up here in the build matrix:

https://github.com/dotnet/core-sdk/blob/4330dfdf747c0e8e57a43328a1ddcaaac453589e/.vsts-ci.yml#L37

which is passed to build.cmd as -Architecture $(_BuildArchitecture)

https://github.com/dotnet/core-sdk/blob/4330dfdf747c0e8e57a43328a1ddcaaac453589e/eng/build.yml#L64

which is directed to run-build.ps1, which translates it to /p:Architecture=$Architecture:

https://github.com/dotnet/core-sdk/blob/4330dfdf747c0e8e57a43328a1ddcaaac453589e/run-build.ps1#L17

which is used by the build infra (a line your PR touches!):

https://github.com/dotnet/core-sdk/blob/fe0f103694e2eade6a98476ae858de5518669bf8/src/redist/targets/GetRuntimeInformation.targets#L16

Arcade isn't involved at any point if I followed it right.

@omajid
Copy link
Member Author

omajid commented Oct 30, 2019

That makes sense to me. Should I close this issue and continue my efforts to update Architecture in arcade core-sdk?

@dagood
Copy link
Member

dagood commented Oct 30, 2019

That makes sense to me. Should I close this issue and continue my efforts to update Architecture in arcade core-sdk?

In my opinion, yep. @johnbeisner, do you have any feedback on this issue?

@omajid
Copy link
Member Author

omajid commented Nov 18, 2019

All my concerns have been resolved, so I am going to close this issue now. Please feel free to re-open if anyone has any outstanding questions.

@omajid omajid closed this as completed Nov 18, 2019
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

3 participants