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] Include zip basename directory in build artifacts #156

Merged
merged 1 commit into from
Aug 11, 2016

Conversation

jonpryor
Copy link
Member

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

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
@grendello grendello merged commit b847e8f into dotnet:master Aug 11, 2016
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.
@github-actions github-actions bot locked and limited conversation to collaborators Feb 6, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants