diff options
author | Cyd Haselton <chaselton@gmail.com> | 2017-06-08 17:34:04 -0500 |
---|---|---|
committer | Gaurav Khanna <gkhanna@microsoft.com> | 2017-06-08 15:34:04 -0700 |
commit | b4cbd9dbdc9f1850e5953bc785d2abb6cf0f69c3 (patch) | |
tree | b5cb2fa3c8c09423dc3cfff4dda8b5cfa14d4ec8 /src/.nuget | |
parent | 0060a37d80d8164a2454557213832348c7bd85ec (diff) | |
download | coreclr-b4cbd9dbdc9f1850e5953bc785d2abb6cf0f69c3.tar.gz coreclr-b4cbd9dbdc9f1850e5953bc785d2abb6cf0f69c3.tar.bz2 coreclr-b4cbd9dbdc9f1850e5953bc785d2abb6cf0f69c3.zip |
First steps for generating nuget packages for ARM64/Android. (#10286)
* First steps for generating nuget packages for ARM64/Android. Adds Android RIDS and related conditionals to appropriate files
* Additional changes for Android package build
* Revert addition of Android to supported packages
* Allow Android .nuget package build
Adding runtime.Android files for package generation
Adding TODO for reliable generation of __DistroRid for Android
* Added/corrected logic for detecting __DistroRid at commandline
Removed hack and TODO
* Removed newline
* Revert unintentional change to osx rid
* Removed commenting of __DistroRid initialization
* Latest fixes for __DistroRid cmdline detection
Removed __DistroRid initialization (clobbers value set at cmdline)
Removed echo test of __DistroRid in generate nuget pkg function
(Hopefully) fixed cross-build os-release detection
* Removed android.21-arm from supported RIDs
Removed arm32 from supported RIDs until test build can be done or CI for arm32 added (?)
* Fixes for package generation for android
Modified build-android-rootfs.sh so it would generate file w/platform info
Reverted all prior changes to initTargetDistroRid, added new android platform detection
* Fixed conditional for Android
* Added platform generation for Android portable build, if ever needed
* Added information about android_platform
Added help info about android_platform file
Added TODO for dynamic generation of RID based on $__ApiLevel and $__BuildArch
* Syntax cleanup for build.sh
Removed extra space in initTargetDistroRid() logic
* Recommended review changes
removed Android-specific runtime files for packaging
added conditional to have Android use Linux runtime files
* Updated topic branch from master, resolving SPC.ni.dll file nuget pkg issue
* ericstj review changes
Fixed accidental fedora version change
Fixed indenting
* Removed TODO comment; logic already in place, added in earlier commit
* Removed Android OfficialBuildRID
Diffstat (limited to 'src/.nuget')
-rw-r--r-- | src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/runtime.Linux.Microsoft.NETCore.Runtime.CoreCLR.props | 4 | ||||
-rw-r--r-- | src/.nuget/dir.props | 22 |
2 files changed, 22 insertions, 4 deletions
diff --git a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/runtime.Linux.Microsoft.NETCore.Runtime.CoreCLR.props b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/runtime.Linux.Microsoft.NETCore.Runtime.CoreCLR.props index 5f244a911b..d62f4d645c 100644 --- a/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/runtime.Linux.Microsoft.NETCore.Runtime.CoreCLR.props +++ b/src/.nuget/Microsoft.NETCore.Runtime.CoreCLR/runtime.Linux.Microsoft.NETCore.Runtime.CoreCLR.props @@ -6,7 +6,9 @@ <_PlatformDoesNotSupportCreatedump Condition="'$(Platform)' == 'x86'">true</_PlatformDoesNotSupportCreatedump> <_PlatformDoesNotSupportCreatedump Condition="'$(_runtimeOSFamily)' == 'tizen'">true</_PlatformDoesNotSupportCreatedump> <_PlatformDoesNotSupportEventTrace Condition="'$(_runtimeOSFamily)' == 'tizen'">true</_PlatformDoesNotSupportEventTrace> + <_PlatformDoesNotSupportEventTrace Condition="'$(Platform)' == 'arm64'">true</_PlatformDoesNotSupportEventTrace> <_PlatformDoesNotSupportEventTrace Condition="'$(Platform)' == 'x86'">true</_PlatformDoesNotSupportEventTrace> + <_PlatformDoesNotSupportSosPlugin Condition="'$(_runtimeOSFamily)' == 'android'">true</_PlatformDoesNotSupportSosPlugin> </PropertyGroup> <ItemGroup> <NativeBinary Include="$(BinDir)libcoreclr.so" /> @@ -15,7 +17,7 @@ <NativeBinary Include="$(BinDir)libmscordaccore.so" /> <NativeBinary Include="$(BinDir)libmscordbi.so" /> <NativeBinary Include="$(BinDir)libsos.so" /> - <NativeBinary Include="$(BinDir)libsosplugin.so" /> + <NativeBinary Condition="'$(_PlatformDoesNotSupportSosPlugin)' != 'true'" Include="$(BinDir)libsosplugin.so" /> <NativeBinary Include="$(BinDir)System.Globalization.Native.so" /> <NativeBinary Include="$(BinDir)sosdocsunix.txt" /> <NativeBinary Include="$(BinDir)System.Private.CoreLib.dll" /> diff --git a/src/.nuget/dir.props b/src/.nuget/dir.props index 2ff88d9bcf..52e94365dc 100644 --- a/src/.nuget/dir.props +++ b/src/.nuget/dir.props @@ -23,7 +23,7 @@ <RuntimeOS Condition="'$(RuntimeOS)' == ''">$(OSRid)</RuntimeOS> - <SupportedPackageOSGroups Condition="'$(SupportedPackageOSGroups)' == ''">Windows_NT;OSX;Linux</SupportedPackageOSGroups> + <SupportedPackageOSGroups Condition="'$(SupportedPackageOSGroups)' == ''">Windows_NT;OSX;Android;Linux</SupportedPackageOSGroups> <SupportedPackageOSGroups>;$(SupportedPackageOSGroups);</SupportedPackageOSGroups> <!-- Identify OS family based upon the RuntimeOS, which could be distro specific (e.g. osx.10.12) or @@ -38,6 +38,7 @@ <!-- derive an OS Group based on the OS Family --> <PropertyGroup> <_derivedPackageTargetOSGroup Condition="'$(_derivedPackageTargetOSGroup)' == '' and '$(_runtimeOSFamily)' == 'osx'">OSX</_derivedPackageTargetOSGroup> + <_derivedPackageTargetOSGroup Condition="'$(_derivedPackageTargetOSGroup)' == '' and '$(_runtimeOSFamily)' == 'android'">Android</_derivedPackageTargetOSGroup> <_derivedPackageTargetOSGroup Condition="'$(_derivedPackageTargetOSGroup)' == '' and '$(_runtimeOSFamily)' == 'win'">Windows_NT</_derivedPackageTargetOSGroup> <_derivedPackageTargetOSGroup Condition="'$(_derivedPackageTargetOSGroup)' == '' and '$(__BuildOS)' != ''">$(__BuildOS)</_derivedPackageTargetOSGroup> <_derivedPackageTargetOSGroup Condition="'$(_derivedPackageTargetOSGroup)' == ''">Linux</_derivedPackageTargetOSGroup> @@ -48,9 +49,10 @@ <!-- _packageTargetOSGroup is used to control the runtime package imports, don't import runtime package targets for an unsupported OS Group --> <PropertyGroup Condition="'$(PackageTargetRuntime)' != '' and '$(_isSupportedOSGroup)' == 'true'"> + <!-- Android will use Linux package definitions --> <_packageTargetOSGroup>$(_derivedPackageTargetOSGroup)</_packageTargetOSGroup> + <_packageTargetOSGroup Condition="'$(_derivedPackageTargetOSGroup)' == 'Android'">Linux</_packageTargetOSGroup> </PropertyGroup> - <PropertyGroup> <SkipPackageFileCheck>true</SkipPackageFileCheck> <OutputPath>$(PackageOutputPath)</OutputPath> @@ -81,6 +83,13 @@ <PackageRID Condition="'$(PortableBuild)' == 'true'">osx-$(ArchGroup)</PackageRID> </PropertyGroup> </When> + <When Condition="'$(_runtimeOSFamily)' == 'android'"> + <PropertyGroup> + <PackageRID>android.21-$(ArchGroup)</PackageRID> + <!-- Set the platform part of the RID if we are doing a portable build --> + <PackageRID Condition="'$(PortableBuild)' == '1'">android-$(ArchGroup)</PackageRID> + </PropertyGroup> + </When> <When Condition="'$(_runtimeOSFamily)' == 'rhel'"> <PropertyGroup> <PackageRID>rhel.7-$(ArchGroup)</PackageRID> @@ -106,6 +115,13 @@ <SymbolFileExtension>.dwarf</SymbolFileExtension> </PropertyGroup> </When> + <When Condition="'$(_runtimeOSFamily)' == 'android'"> + <PropertyGroup> + <LibraryFileExtension>.so</LibraryFileExtension> + <!--symbols included in .so, like Linux, but can be generated externally and if so, uses .debug ext--> + <SymbolFileExtension>.debug</SymbolFileExtension> + </PropertyGroup> + </When> <Otherwise> <PropertyGroup> <LibraryFileExtension>.so</LibraryFileExtension> @@ -165,4 +181,4 @@ <!-- Include project references for a lineup package to generate the runtime.json file --> <ProjectReference Include="@(_buildRidProjects)" /> </ItemGroup> -</Project>
\ No newline at end of file +</Project> |