Skip to content

Commit

Permalink
Adding android nuspec
Browse files Browse the repository at this point in the history
  • Loading branch information
ras0219-msft committed Nov 21, 2014
1 parent 1681627 commit ef603e3
Show file tree
Hide file tree
Showing 2 changed files with 98 additions and 0 deletions.
44 changes: 44 additions & 0 deletions Release/nuget/cpprestsdk.android.nuspec
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
<?xml version="1.0" encoding="utf-8"?>
<package>
<metadata>
<id>cpprestsdk.android</id>
<version>2.3.0.0</version>
<title>C++ REST SDK</title>
<authors>casablancacore</authors>
<owners>Microsoft, Visual C++</owners>
<licenseUrl>http://www.apache.org/licenses/LICENSE-2.0</licenseUrl>
<projectUrl>https://casablanca.codeplex.com/</projectUrl>
<iconUrl>https://download-codeplex.sec.s-msft.com/Download?ProjectName=casablanca&amp;DownloadId=630102&amp;Build=20425</iconUrl>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<summary>The C++ REST SDK is a cross-platform, modern, and asynchronous library that enables developers to access and author connected applications</summary>
<description>This library is a Microsoft effort to support cloud-based client-server communication in native code using a modern asynchronous C++ API design. The C++ REST SDK (codename "Casablanca") is a project to start exploring how to best support C++ developers who want to take advantage of the radical shift in software architecture that cloud computing represents.</description>
<releaseNotes>Release of C++ Rest SDK 2.3.0 libraries for android.</releaseNotes>
<copyright>Copyright 2014</copyright>
<tags>REST, native, C++, JSON, Casablanca, Http, Uri, WebSockets, android</tags>
<dependencies>
<dependency id="boost" version="[1.55, 1.56)" />
<dependency id="boost_atomic-android" version="[1.55, 1.56)" />
<dependency id="boost_chrono-android" version="[1.55, 1.56)" />
<dependency id="boost_date_time-android" version="[1.55, 1.56)" />
<dependency id="boost_filesystem-android" version="[1.55, 1.56)" />
<dependency id="boost_locale-android" version="[1.55, 1.56)" />
<dependency id="boost_system-android" version="[1.55, 1.56)" />
<dependency id="boost_thread-android" version="[1.55, 1.56)" />
<dependency id="openssl-android" version="[1.0.1, 1.0.2)" />
</dependencies>
</metadata>
<files>
<!-- Include header files-->
<file src="..\include\**\*" target="\build\native\include\" />

<!-- clang-3.4 -->
<file src="..\..\Binaries\ARM\Release\cpprest140_android_2_3.a" target="\build\native\lib\arm\libcpprest-clang_3_4-gnustl-2_3.a" />
<file src="..\..\Binaries\ARM\Debug\cpprest140d_android_2_3.a" target="\build\native\lib\arm\libcpprest-clang_3_4-d-gnustl-2_3.a" />

<!-- Including license for WebSocket++ -->
<file src="..\libs\websocketpp\COPYING" target="\license\websocketpp\COPYING" />

<!-- vs targets file -->
<file src="cpprestsdk.android.targets" target="\build\native\cpprestsdk.android.targets"/>
</files>
</package>
54 changes: 54 additions & 0 deletions Release/nuget/cpprestsdk.android.targets
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<CppRestSDKVersionMajor>2</CppRestSDKVersionMajor>
<CppRestSDKVersionMinor>3</CppRestSDKVersionMinor>
<CppRestSDKVersionRevision>0</CppRestSDKVersionRevision>
<CppRestSDKVersionFileSuffix>$(CppRestSDKVersionMajor)_$(CppRestSDKVersionMinor)</CppRestSDKVersionFileSuffix>
</PropertyGroup>

<ItemDefinitionGroup>
<ClCompile>
<PreprocessorDefinitions>HAS_CPPRESTSDK;%(PreprocessorDefinitions)</PreprocessorDefinitions>
<AdditionalIncludeDirectories>$(MSBuildThisFileDirectory)include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<LibraryDependencies>m;%(LibraryDependencies)</LibraryDependencies>
</Link>
</ItemDefinitionGroup>

<ItemGroup>
<CppRestSDKTargetDependencies Include="boost_atomic_android_PreLink" />
<CppRestSDKTargetDependencies Include="boost_chrono_android_PreLink" />
<CppRestSDKTargetDependencies Include="boost_date_time_android_PreLink" />
<CppRestSDKTargetDependencies Include="boost_filesystem_android_PreLink" />
<CppRestSDKTargetDependencies Include="boost_locale_android_PreLink" />
<CppRestSDKTargetDependencies Include="boost_system_android_PreLink" />
<CppRestSDKTargetDependencies Include="boost_thread_android_PreLink" />
<CppRestSDKTargetDependencies Include="openssl_android_PreLink" />
</ItemGroup>

<Target Name="cpprestsdk_android_PreLink" BeforeTargets="@(CppRestSDKTargetDependencies);Link" DependsOnTargets="$(ComputeLinkInputsTargets)">
<!-- ARM and Clang and GNUSTL and Debug -->
<ItemGroup Condition="'$(Platform)' == 'ARM' And '$(PlatformToolset)' == 'Clang_3_4' And ('$(UseOfStl)' == 'gnustl_shared' Or '$(UseOfStl)' == 'gnustl_static') And '$(UseDebugLibraries)' == 'true'">
<Link Include="$(MSBuildThisFileDirectory)lib\arm\libcpprest-clang_3_4-d-gnustl-$(CppRestSDKVersionFileSuffix).a" />
</ItemGroup>
<!-- ARM and Clang and GNUSTL and Release -->
<ItemGroup Condition="'$(Platform)' == 'ARM' And '$(PlatformToolset)' == 'Clang_3_4' And ('$(UseOfStl)' == 'gnustl_shared' Or '$(UseOfStl)' == 'gnustl_static') And '$(UseDebugLibraries)' != 'true'">
<Link Include="$(MSBuildThisFileDirectory)lib\arm\libcpprest-clang_3_4-gnustl-$(CppRestSDKVersionFileSuffix).a" />
</ItemGroup>

<Error
Condition="'$(PlatformToolset)' != 'Clang_3_4'"
Text="The cpprestsdk.android NuGet package only contains binaries for Clang 3.4."
/>
<Error
Condition="'$(UseOfStl)' != 'gnustl_shared' And '$(UseOfStl)' != 'gnustl_static'"
Text="cpprestsdk requires linking against the gnustl. Please set Project Properties -> Configuration Properties -> General -> Use of STL to be 'gnustl_static'."
/>
<Error
Condition="'$(Platform)' != 'ARM'"
Text="The cpprestsdk.android NuGet package only contains binaries for the ARM architecture."
/>
</Target>
</Project>

0 comments on commit ef603e3

Please sign in to comment.