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 as.exe on windows #10

Merged
merged 27 commits into from
Mar 4, 2024
Merged

Build as.exe on windows #10

merged 27 commits into from
Mar 4, 2024

Conversation

grendello
Copy link
Contributor

No description provided.

@grendello grendello changed the title Dev/grendel/as on windows Build as.exe on windows Feb 23, 2024
@@ -171,126 +198,47 @@ int Gas::run (int argc, char **argv)
return 0;
}

std::vector<option> Gas::common_options {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why rewrite the command-line handler? Did the previous code not compile under MSVC?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The previous code was built entirely on Unix, and mingw contains getopt and all the rest (it has a POSIX compatibility layer for Windows built into distribution)

@grendello grendello merged commit 9d342d5 into main Mar 4, 2024
7 checks passed
@grendello grendello deleted the dev/grendel/as-on-windows branch March 4, 2024 09:16
grendello added a commit to dotnet/android that referenced this pull request Mar 13, 2024
Context: https://github.com/xamarin/xamarin-android-binutils/releases/tag/L_17.0.6-7.1.1
Changes: dotnet/android-native-tools@L_17.0.6-7.1.0...L_17.0.6-7.1.1

This release is identical to the previous one, version wise, with the
difference being a handful of new build and link flags, as required by
API Scan.

* [ci] Build and sign in a DevDiv pipeline by @pjcollins in dotnet/android-native-tools#7
* [ci] Migrate to the 1ES template by @pjcollins in dotnet/android-native-tools#8
* [ci] Improve binskim scan performance by @pjcollins in dotnet/android-native-tools#11
* [ci] Improve triggers and support test signing by @pjcollins in dotnet/android-native-tools#12
* [ci] Fix unsigned artifact uploading by @pjcollins in dotnet/android-native-tools#13
* [ci] Disable automatic GitHub action trigger by @pjcollins in dotnet/android-native-tools#16
* [ci] Build on performance build pools by @pjcollins in dotnet/android-native-tools#15
* Build `as.exe` on windows by @grendello in dotnet/android-native-tools#10
* [ci] Add API Scan job by @pjcollins in dotnet/android-native-tools#9
grendello added a commit that referenced this pull request Mar 14, 2024
Context: #10
Context: 9d342d5
Context: dotnet/android#8806 (comment)

Revert the portion of 9d342d5 which modified the way command-line
arguments are parsed.  The `cxxopt` C++ library that was used turns out
not to support some GNU-style options (e.g. `-mfpu=vpf3`) which breaks
the MonoAOT compiler that uses them.

Instead, copy `getopt.c` (BSD 2-clause + MIT/X11 licenses) and
`getopt.h` (Public Domain license) implementations from the MinGW
project and use `getopt` across all platforms.

Additionally, fix generation of the artifact package by making sure that
all the executable files are, in fact, executable by setting the correct
permissions.
jonpryor pushed a commit that referenced this pull request Mar 14, 2024
Context: #10
Context: 9d342d5
Context: dotnet/android#8806 (comment)

Revert the portion of 9d342d5 which modified the way command-line
arguments are parsed.  The `cxxopt` C++ library that was used turns out
not to support some GNU-style options (e.g. `-mfpu=vpf3`) which breaks
the MonoAOT compiler that uses them.

Instead, copy `getopt.c` (BSD 2-clause + MIT/X11 licenses) and
`getopt.h` (Public Domain license) implementations from the MinGW
project and use `getopt` across all platforms.

Additionally, fix generation of the artifact package by making sure that
all the executable files are, in fact, executable by setting the correct
permissions.
grendello added a commit to dotnet/android that referenced this pull request Apr 2, 2024
Context: https://github.com/xamarin/xamarin-android-binutils/releases/tag/L_17.0.6-7.1.1
Context: https://github.com/xamarin/xamarin-android-binutils/releases/tag/L_17.0.6-7.1.2
Context: https://github.com/xamarin/xamarin-android-binutils/releases/tag/L_17.0.6-7.2.1
Changes: dotnet/android-native-tools@L_17.0.6-7.1.0...L_17.0.6-7.1.1
Changes: dotnet/android-native-tools@L_17.0.6-7.1.1...L_17.0.6-7.1.2
Changes: dotnet/android-native-tools@L_17.0.6-7.1.2...L_17.0.6-7.2.0
Changes: dotnet/android-native-tools@L_17.0.6-7.2.0...L_17.0.6-7.2.1

This release makes changes to how we build and run the `as.exe` wrapper, so that it can be
verified by API Scan without any issues.  Otherwise it is identical to the previous release, using
the same version of LLVM.

* [ci] Build and sign in a DevDiv pipeline by @pjcollins in dotnet/android-native-tools#7
* [ci] Migrate to the 1ES template by @pjcollins in dotnet/android-native-tools#8
* [ci] Improve binskim scan performance by @pjcollins in dotnet/android-native-tools#11
* [ci] Improve triggers and support test signing by @pjcollins in dotnet/android-native-tools#12
* [ci] Fix unsigned artifact uploading by @pjcollins in dotnet/android-native-tools#13
* [ci] Disable automatic GitHub action trigger by @pjcollins in dotnet/android-native-tools#16
* [ci] Build on performance build pools by @pjcollins in dotnet/android-native-tools#15
* Build `as.exe` on windows by @grendello in dotnet/android-native-tools#10
* [ci] Add API Scan job by @pjcollins in dotnet/android-native-tools#9
*  Fix `as.exe` crash on Windows by @grendello in dotnet/android-native-tools#20
* [ci] Use managed identity for API Scan by @pjcollins in dotnet/android-native-tools#21
* Back to wide strings on Windows + magic encantations by @grendello in dotnet/android-native-tools#22
grendello added a commit to dotnet/android that referenced this pull request Apr 11, 2024
Context: https://github.com/xamarin/xamarin-android-binutils/releases/tag/L_17.0.6-7.1.1
Context: https://github.com/xamarin/xamarin-android-binutils/releases/tag/L_17.0.6-7.1.2
Context: https://github.com/xamarin/xamarin-android-binutils/releases/tag/L_17.0.6-7.2.1
Changes: dotnet/android-native-tools@L_17.0.6-7.1.0...L_17.0.6-7.1.1
Changes: dotnet/android-native-tools@L_17.0.6-7.1.1...L_17.0.6-7.1.2
Changes: dotnet/android-native-tools@L_17.0.6-7.1.2...L_17.0.6-7.2.0
Changes: dotnet/android-native-tools@L_17.0.6-7.2.0...L_17.0.6-7.2.1

This release makes changes to how we build and run the `as.exe` wrapper, so that it can be
verified by API Scan without any issues.  Otherwise it is identical to the previous release, using
the same version of LLVM.

* [ci] Build and sign in a DevDiv pipeline by @pjcollins in dotnet/android-native-tools#7
* [ci] Migrate to the 1ES template by @pjcollins in dotnet/android-native-tools#8
* [ci] Improve binskim scan performance by @pjcollins in dotnet/android-native-tools#11
* [ci] Improve triggers and support test signing by @pjcollins in dotnet/android-native-tools#12
* [ci] Fix unsigned artifact uploading by @pjcollins in dotnet/android-native-tools#13
* [ci] Disable automatic GitHub action trigger by @pjcollins in dotnet/android-native-tools#16
* [ci] Build on performance build pools by @pjcollins in dotnet/android-native-tools#15
* Build `as.exe` on windows by @grendello in dotnet/android-native-tools#10
* [ci] Add API Scan job by @pjcollins in dotnet/android-native-tools#9
*  Fix `as.exe` crash on Windows by @grendello in dotnet/android-native-tools#20
* [ci] Use managed identity for API Scan by @pjcollins in dotnet/android-native-tools#21
* Back to wide strings on Windows + magic encantations by @grendello in dotnet/android-native-tools#22
jonathanpeppers pushed a commit to dotnet/android that referenced this pull request May 8, 2024
Context: https://github.com/xamarin/xamarin-android-binutils/releases/tag/L_17.0.6-7.1.1
Context: https://github.com/xamarin/xamarin-android-binutils/releases/tag/L_17.0.6-7.1.2
Context: https://github.com/xamarin/xamarin-android-binutils/releases/tag/L_17.0.6-7.2.1
Context: https://github.com/xamarin/xamarin-android-binutils/releases/tag/L_17.0.6-7.2.2
Changes: dotnet/android-native-tools@L_17.0.6-7.1.0...L_17.0.6-7.1.1
Changes: dotnet/android-native-tools@L_17.0.6-7.1.1...L_17.0.6-7.1.2
Changes: dotnet/android-native-tools@L_17.0.6-7.1.2...L_17.0.6-7.2.0
Changes: dotnet/android-native-tools@L_17.0.6-7.2.0...L_17.0.6-7.2.1
Changes: dotnet/android-native-tools@L_17.0.6-7.2.1...L_17.0.6-7.2.2

This release makes changes to how we build and run the `as.exe` wrapper, so that it can be verified by API Scan without any issues.  Otherwise it is identical to the previous release, using the same version of LLVM.

* [ci] Build and sign in a DevDiv pipeline by @pjcollins in dotnet/android-native-tools#7
* [ci] Migrate to the 1ES template by @pjcollins in dotnet/android-native-tools#8
* [ci] Improve binskim scan performance by @pjcollins in dotnet/android-native-tools#11
* [ci] Improve triggers and support test signing by @pjcollins in dotnet/android-native-tools#12
* [ci] Fix unsigned artifact uploading by @pjcollins in dotnet/android-native-tools#13
* [ci] Disable automatic GitHub action trigger by @pjcollins in dotnet/android-native-tools#16
* [ci] Build on performance build pools by @pjcollins in dotnet/android-native-tools#15
* Build `as.exe` on windows by @grendello in dotnet/android-native-tools#10
* [ci] Add API Scan job by @pjcollins in dotnet/android-native-tools#9
*  Fix `as.exe` crash on Windows by @grendello in dotnet/android-native-tools#20
* [ci] Use managed identity for API Scan by @pjcollins in dotnet/android-native-tools#21
* Back to wide strings on Windows + magic encantations by @grendello in dotnet/android-native-tools#22
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

Successfully merging this pull request may close these issues.

3 participants