-
Notifications
You must be signed in to change notification settings - Fork 538
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] Include zip basename directory in build artifacts #156
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Commit 1eebbe3 introduces generation of `oss-xamarin-android*.zip` files when using the `make jenkins` target. There's one "problem" with this file: a common convention for .zip files is that they will contain a single directory named as the basename of the .zip file itself: $ unzip -l foo-1.zip ... foo-1/ ... foo-1/file1 ... foo-1/file2 ... The benefit to this scheme is that if you have multiple "versions" of the file, you can extract them without fear of file conflicts: # extracts into foo-1 $ unzip foo-1.zip # extracts into foo-2 $ unzip foo-2.zip The `oss-xamarin-android*.zip` packages *didn't* follow this scheme: instead, they contained the `bin` directory as it's top directory: $ unzip -l oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676.zip | head -10 Archive: /Users/jon/Downloads/oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676.zip Length Date Time Name -------- ---- ---- ---- 0 08-10-16 21:46 bin/ 0 08-10-16 23:40 bin/BuildDebug/ 43008 08-10-16 20:10 bin/BuildDebug/api-merge.exe This means you can't download and extract both `oss-xamarin.android_v7.0.99.1*.zip` and `oss-xamarin.android_v7.0.99.2*.zip` into the same directory -- not without extra work -- which is counter to convention. Fix the `make package-oss` target so that the zip's basename is included in the directory structure: $ unzip -l oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676.zip | head -10 Archive: /Users/jon/Downloads/oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676.zip Length Date Time Name -------- ---- ---- ---- 0 08-10-16 21:46 oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676/bin/ 0 08-10-16 23:40 oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676/bin/BuildDebug/ 43008 08-10-16 20:10 oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676/bin/BuildDebug/api-merge.exe
radekdoulik
pushed a commit
to radekdoulik/xamarin-android
that referenced
this pull request
Aug 12, 2016
Commit 1eebbe3 introduces generation of `oss-xamarin-android*.zip` files when using the `make jenkins` target. There's one "problem" with this file: a common convention for .zip files is that they will contain a single directory named as the basename of the .zip file itself: $ unzip -l foo-1.zip ... foo-1/ ... foo-1/file1 ... foo-1/file2 ... The benefit to this scheme is that if you have multiple "versions" of the file, you can extract them without fear of file conflicts: # extracts into foo-1 $ unzip foo-1.zip # extracts into foo-2 $ unzip foo-2.zip The `oss-xamarin-android*.zip` packages *didn't* follow this scheme: instead, they contained the `bin` directory as it's top directory: $ unzip -l oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676.zip | head -10 Archive: /Users/jon/Downloads/oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676.zip Length Date Time Name -------- ---- ---- ---- 0 08-10-16 21:46 bin/ 0 08-10-16 23:40 bin/BuildDebug/ 43008 08-10-16 20:10 bin/BuildDebug/api-merge.exe This means you can't download and extract both `oss-xamarin.android_v7.0.99.1*.zip` and `oss-xamarin.android_v7.0.99.2*.zip` into the same directory -- not without extra work -- which is counter to convention. Fix the `make package-oss` target so that the zip's basename is included in the directory structure: $ unzip -l oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676.zip | head -10 Archive: /Users/jon/Downloads/oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676.zip Length Date Time Name -------- ---- ---- ---- 0 08-10-16 21:46 oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676/bin/ 0 08-10-16 23:40 oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676/bin/BuildDebug/ 43008 08-10-16 20:10 oss-xamarin.android_v7.0.99.2_Darwin-x86_64_HEAD_fbfd676/bin/BuildDebug/api-merge.exe
radical
pushed a commit
that referenced
this pull request
May 8, 2018
Java.Interop native code is built with `-std=c99` which, on Linux, makes the **strdup**(3) and **realpath**(3) functions undeclared (they're not part of the C99 standard). This poses a problem since both of them return pointers and the assumed return value for an undeclared function is an `int` - when running on a 64-bit system the "integer" is cast to a pointer so that the high 32-bits of the resulting value are set to 1 thus creating an invalid pointer. This commit makes sure both functions are declared. The commit also removes call to `gettid()` which does not have a wrapper in glibc and should be called directly using `syscall(2)`.
jonpryor
added a commit
to jonpryor/xamarin-android
that referenced
this pull request
Feb 24, 2022
Changes: xamarin/monodroid@2c3e786...5e2b25e * xamarin/monodroid@5e2b25ea1: Bump to xamarin/androidtools@01d05424 (dotnet#1241) Changes: dotnet/android-tools@bbe85df...f0b3abd * dotnet/android-tools@f0b3abd: Revert "[Xamarin.Android.Tools.AndroidSdk] Update SDK component for API-32 (dotnet#156)" We do not yet have all of our proverbial ducks in a row to bump these Android SDK versions. Revert until we're fully ready to bump.
jonpryor
added a commit
that referenced
this pull request
Feb 24, 2022
Changes: xamarin/monodroid@2c3e786...5e2b25e * xamarin/monodroid@5e2b25ea1: Bump to xamarin/androidtools@01d05424 (#1241) Changes: dotnet/android-tools@bbe85df...f0b3abd * dotnet/android-tools@f0b3abd: Revert "[Xamarin.Android.Tools.AndroidSdk] Update SDK component for API-32 (#156)" We do not yet have all of our proverbial ducks in a row to bump these Android SDK versions. Revert until we're fully ready to bump.
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Commit 1eebbe3 introduces generation of
oss-xamarin-android*.zip
files when using the
make jenkins
target.There's one "problem" with this file: a common convention for .zip
files is that they will contain a single directory named as the
basename of the .zip file itself:
The benefit to this scheme is that if you have multiple "versions" of
the file, you can extract them without fear of file conflicts:
The
oss-xamarin-android*.zip
packages didn't follow this scheme:instead, they contained the
bin
directory as it's top directory:This means you can't download and extract both
oss-xamarin.android_v7.0.99.1*.zip
andoss-xamarin.android_v7.0.99.2*.zip
into the same directory -- notwithout extra work -- which is counter to convention.
Fix the
make package-oss
target so that the zip's basename isincluded in the directory structure: