From 33e5877b154f4aba768d8bf5923c55e20277bc1e Mon Sep 17 00:00:00 2001 From: WonYoung Choi Date: Mon, 5 Sep 2016 18:21:05 +0900 Subject: [PATCH] Fix project files to support netstandard 1.6 Change-Id: I4d71046be3d14c34fba669bdf6067f236bbb58ac Signed-off-by: WonYoung Choi --- .gitignore | 7 + packaging/csapi-security.spec | 89 ++++++--- .../CustomDictionary.xml | 9 - .../GlobalSuppressions.cs | Bin 952 -> 0 bytes .../Tizen.Security.SecureRepository.Net45.csproj | 97 +++++++++ ...en.Security.SecureRepository.Net45.project.json | 11 ++ .../Tizen.Security.SecureRepository.csproj | 217 +++++++++++---------- .../Tizen.Security.SecureRepository.nuspec | 12 ++ .../Tizen.Security.SecureRepository.project.json | 12 ++ .../Crypto/SignatureParameters.cs | 12 +- .../Tizen.Security.SecureRepository/Key.cs | 2 +- .../SafeAliasListHandle.cs | 2 +- src/Tizen.Security/CustomDictionary.xml | 9 - src/Tizen.Security/GlobalSuppressions.cs | Bin 952 -> 0 bytes src/Tizen.Security/Tizen.Security.Net45.csproj | 69 +++++++ .../Tizen.Security.Net45.project.json | 11 ++ src/Tizen.Security/Tizen.Security.csproj | 144 +++++++------- src/Tizen.Security/Tizen.Security.nuspec | 12 ++ src/Tizen.Security/Tizen.Security.project.json | 12 ++ 19 files changed, 500 insertions(+), 227 deletions(-) create mode 100755 .gitignore delete mode 100644 src/Tizen.Security.SecureRepository/CustomDictionary.xml delete mode 100644 src/Tizen.Security.SecureRepository/GlobalSuppressions.cs create mode 100644 src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.Net45.csproj create mode 100644 src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.Net45.project.json create mode 100644 src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.nuspec create mode 100644 src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.project.json delete mode 100644 src/Tizen.Security/CustomDictionary.xml delete mode 100644 src/Tizen.Security/GlobalSuppressions.cs create mode 100644 src/Tizen.Security/Tizen.Security.Net45.csproj create mode 100644 src/Tizen.Security/Tizen.Security.Net45.project.json create mode 100644 src/Tizen.Security/Tizen.Security.nuspec create mode 100644 src/Tizen.Security/Tizen.Security.project.json diff --git a/.gitignore b/.gitignore new file mode 100755 index 0000000..46619d5 --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +bin/ +obj/ +*.exe +*.dll +*.csproj.user +*.lock.json +.vs/ diff --git a/packaging/csapi-security.spec b/packaging/csapi-security.spec index 9deeafc..7bc947b 100644 --- a/packaging/csapi-security.spec +++ b/packaging/csapi-security.spec @@ -1,4 +1,5 @@ -%{!?dotnet_assembly_path: %define dotnet_assembly_path %{_datadir}/assembly} +%{!?dotnet_assembly_path: %define dotnet_assembly_path /opt/usr/share/dotnet.tizen/framework} +%{!?dotnet_core_path: %define dotnet_core_path %{_datadir}/tizen.net/ref} %if 0%{?tizen_build_devel_mode} %define BUILDCONF Debug @@ -20,47 +21,91 @@ Source1: %{name}.manifest BuildRequires: mono-compiler BuildRequires: mono-devel -# C# API default dependencies -BuildRequires: csapi-tizen -BuildRequires: pkgconfig(glib-2.0) +# .NETCore +%if 0%{?_with_corefx} +AutoReqProv: no +BuildRequires: corefx-managed-32b-ref +%endif -# privilege-info -BuildRequires: csapi-application -BuildRequires: pkgconfig(privilege-info) +BuildRequires: dotnet-build-tools -# key-manager -BuildRequires: pkgconfig(key-manager) +# C# API Requires +BuildRequires: csapi-tizen-devel +BuildRequires: csapi-application-devel %description Tizen Security API for C# %prep %setup -q - cp %{SOURCE1} . %define Assemblies Tizen.Security Tizen.Security.SecureRepository %build +# Build for Net45 for ASM in %{Assemblies}; do -xbuild $ASM/$ASM.csproj \ - /p:Configuration=%{BUILDCONF} \ - /p:ReferencePath=%{dotnet_assembly_path} +if [ -e $ASM/$ASM.Net45.csproj ]; then + xbuild $ASM/$ASM.Net45.csproj \ + /p:Configuration=%{BUILDCONF} \ + /p:DotnetAssemblyPath=%{dotnet_assembly_path}/devel/net45 \ + /p:OutputPath=bin/net45 +fi + +# Build for Dotnet +%if 0%{?_with_corefx} +if [ -e $ASM/$ASM.csproj ]; then + xbuild $ASM/$ASM.csproj \ + /p:Configuration=%{BUILDCONF} \ + /p:DotnetAssemblyPath=%{dotnet_assembly_path}/devel/netstandard1.6 \ + /p:CoreFxPath=%{dotnet_core_path} \ + /p:OutputPath=bin/netstandard1.6 +fi +%endif + +# Make NuGet package +dotnet-gbs pack $ASM/$ASM.nuspec --PackageVersion=%{version} --PackageFiles=$ASM/bin + done %install -# Assemblies -mkdir -p %{buildroot}%{dotnet_assembly_path} +mkdir -p %{buildroot}%{dotnet_assembly_path}/devel for ASM in %{Assemblies}; do - install -p -m 644 $ASM/bin/%{BUILDCONF}/$ASM.dll %{buildroot}%{dotnet_assembly_path} + cp -fr $ASM/bin/* %{buildroot}%{dotnet_assembly_path}/devel +%if 0%{?_with_corefx} + install -p -m 644 $ASM/bin/netstandard1.6/$ASM.dll %{buildroot}%{dotnet_assembly_path} +%else + install -p -m 644 $ASM/bin/net45/$ASM.dll %{buildroot}%{dotnet_assembly_path} +%endif done -# License -mkdir -p %{buildroot}%{_datadir}/license -cp LICENSE %{buildroot}%{_datadir}/license/%{name} +mkdir -p %{buildroot}/nuget +install -p -m 644 *.nupkg %{buildroot}/nuget %files %manifest %{name}.manifest -%attr(644,root,root) %{dotnet_assembly_path}/Tizen.Security.dll -%attr(644,root,root) %{dotnet_assembly_path}/Tizen.Security.SecureRepository.dll -%attr(644,root,root) %{_datadir}/license/%{name} +%license LICENSE +%attr(644,root,root) %{dotnet_assembly_path}/*.dll + +%package devel +Summary: Development package for %{name} +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} +AutoReqProv: no + +%description devel +Development package for %{name} + +%files devel +%{dotnet_assembly_path}/devel/* + +%package nuget +Summary: NuGet package for %{name} +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} + +%description nuget +NuGet package for %{name} + +%files nuget +/nuget/*.nupkg diff --git a/src/Tizen.Security.SecureRepository/CustomDictionary.xml b/src/Tizen.Security.SecureRepository/CustomDictionary.xml deleted file mode 100644 index 6f47373..0000000 --- a/src/Tizen.Security.SecureRepository/CustomDictionary.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - Tizen - Security - SecureRepository - - - diff --git a/src/Tizen.Security.SecureRepository/GlobalSuppressions.cs b/src/Tizen.Security.SecureRepository/GlobalSuppressions.cs deleted file mode 100644 index 737b2cbabb3f32a8b3c35dbb9dce33d54dde1393..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 952 zcmaKr%}&EG5QO*4Q&>4u`V0sOi31W6z4U0(&<5J1Y7(TrJn+rB?oTREr1)oNXUF69 z&-c`(7HnoKtF2@9&bYRUSy~V5R<>aMW_$h**0NIk-WrQw_aG9sCl+kOZcVH|jKN-Q zur1$?ypHerFh*NC(+wJ=B9haCs;MUBvE-6cOg-beAskINHCE0hD z`Cl&fCw|T^P-{55k;WQ^#_LzGin}5^xEAFEqB^Zkx$|@MtXjupol7!>ZHQzIk$H!D zX{+7s@`@#rA;&u~tz)%Hr&PXt-@qWA2&S@IkMA9;xuP3flxD3fvdg0rSH23;?{jF@ujy3HFPVbeX^fCOImd6`L@*?r)bvlUtguZ8Q|{WQOzyN zQ;%hB#Z{MuQJ)o_nY}$%nl%*m + + + Debug + AnyCPU + {623F22DD-A293-4CDA-9D70-BEF655A59D62} + Library + Properties + Tizen.Security.SecureRepository + 512 + v4.5 + + + true + full + false + bin\Debug\Net45\ + DEBUG;TRACE + prompt + 4 + true + bin\Debug\Tizen.Security.SecureRepository.XML + ExtendedDesignGuidelineRules.ruleset + + + pdbonly + true + bin\Release\Net45\ + TRACE + prompt + 4 + + + true + + + Tizen.Security.SecureRepository.snk + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.Net45.project.json b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.Net45.project.json new file mode 100644 index 0000000..d9af4f0 --- /dev/null +++ b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.Net45.project.json @@ -0,0 +1,11 @@ +{ + "dependencies": { + "Tizen": "1.0.0" + }, + "frameworks": { + "net45": {} + }, + "runtimes": { + "win": {} + } +} diff --git a/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.csproj b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.csproj index dd55ee1..83bf05e 100644 --- a/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.csproj +++ b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.csproj @@ -1,113 +1,116 @@ - - - - - Debug - AnyCPU - Library - Properties - Tizen.Security.SecureRepository - v4.5 - 512 - 10.0.0 - 2.0 - {0EA0E64F-637A-480A-8746-4ACC1B0FE022} - - - true - full - true - bin\Debug\ - DEBUG;TRACE - prompt - 4 - true - bin\Debug\Tizen.Security.SecureRepository.XML - ExtendedDesignGuidelineRules.ruleset - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - true - - - Tizen.Security.SecureRepository.snk - - - - - - - - - - - - ..\..\tizen\Tizen.Internals\bin\Debug\Tizen.Internals.dll - - - ..\..\tizen\Tizen\bin\Debug\Tizen.dll - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + Debug + AnyCPU + {3D811DEE-9FD9-4534-BD3C-A7C31C3B9EF7} + Library + Properties + Tizen.Security.SecureRepository + 512 + + + .NETStandard + v1.6 + .NETStandard,Version=v1.6 + false + true + $(NoWarn);1701;1702 + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + true + bin\Debug\Tizen.Security.SecureRepository.XML + ExtendedDesignGuidelineRules.ruleset + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + true + + + Tizen.Security.SecureRepository.snk + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + --> + + + + <_TargetFrameworkDirectories>$(MSBuildThisFileDirectory) + <_FullFrameworkReferenceAssemblyPaths>$(MSBuildThisFileDirectory) + true + + \ No newline at end of file diff --git a/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.nuspec b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.nuspec new file mode 100644 index 0000000..ab14369 --- /dev/null +++ b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.nuspec @@ -0,0 +1,12 @@ + + + + Tizen.Security.SecureRepository + $version$ + Tizen Developers + SecureRepository API for Tizen.Net + + + + + diff --git a/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.project.json b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.project.json new file mode 100644 index 0000000..beb9e15 --- /dev/null +++ b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository.project.json @@ -0,0 +1,12 @@ +{ + "dependencies": { + "NETStandard.Library": "1.6.0", + "Tizen": "1.0.0" + }, + "frameworks": { + "netstandard1.6": {} + }, + "runtimes": { + "win": {} + } +} diff --git a/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/Crypto/SignatureParameters.cs b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/Crypto/SignatureParameters.cs index 7acc37b..13e54eb 100644 --- a/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/Crypto/SignatureParameters.cs +++ b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/Crypto/SignatureParameters.cs @@ -15,7 +15,7 @@ */ using System; -using System.Collections; +using System.Collections.Generic; namespace Tizen.Security.SecureRepository.Crypto { @@ -24,7 +24,7 @@ namespace Tizen.Security.SecureRepository.Crypto /// abstract public class SignatureParameters { - private Hashtable _parameters; + private Dictionary _parameters; /// /// A constructor with algorithm @@ -32,7 +32,7 @@ namespace Tizen.Security.SecureRepository.Crypto /// An algorithm that this parameters are prepared for. protected SignatureParameters(SignatureAlgorithmType algorithm) { - _parameters = new Hashtable(); + _parameters = new Dictionary(); Add(SignatureParameterName.AlgorithmType, (int)algorithm); } @@ -60,7 +60,7 @@ namespace Tizen.Security.SecureRepository.Crypto /// Parameter value. internal void Add(SignatureParameterName name, int value) { - _parameters.Add((int)name, value); + _parameters.Add(name, value); } /// @@ -69,8 +69,8 @@ namespace Tizen.Security.SecureRepository.Crypto /// Parameter name. internal int Get(SignatureParameterName name) { - if (_parameters.ContainsKey((int)name)) - return (int)_parameters[(int)name]; + if (_parameters.ContainsKey(name)) + return _parameters[name]; else throw new ArgumentException("No parameter for a given SignatureParameterName "); } diff --git a/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/Key.cs b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/Key.cs index 00ae581..6e6ebdf 100644 --- a/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/Key.cs +++ b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/Key.cs @@ -47,7 +47,7 @@ namespace Tizen.Security.SecureRepository Binary = new byte[ckmcKey.size]; Marshal.Copy(ckmcKey.rawKey, Binary, 0, Binary.Length); Type = (KeyType)ckmcKey.keyType; - BinaryPassword = Marshal.PtrToStringAuto(ckmcKey.password); + BinaryPassword = Marshal.PtrToStringAnsi(ckmcKey.password); } /// diff --git a/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/SafeAliasListHandle.cs b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/SafeAliasListHandle.cs index fb57c56..8da2127 100644 --- a/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/SafeAliasListHandle.cs +++ b/src/Tizen.Security.SecureRepository/Tizen.Security.SecureRepository/SafeAliasListHandle.cs @@ -31,7 +31,7 @@ namespace Tizen.Security.SecureRepository while (ptrAliases != IntPtr.Zero) { CkmcAliasList ckmcAliasList = (CkmcAliasList)Marshal.PtrToStructure(ptrAliases, typeof(CkmcAliasList)); - aliases.Add(Marshal.PtrToStringAuto(ckmcAliasList.alias)); + aliases.Add(Marshal.PtrToStringAnsi(ckmcAliasList.alias)); ptrAliases = ckmcAliasList.next; } diff --git a/src/Tizen.Security/CustomDictionary.xml b/src/Tizen.Security/CustomDictionary.xml deleted file mode 100644 index 29be2d0..0000000 --- a/src/Tizen.Security/CustomDictionary.xml +++ /dev/null @@ -1,9 +0,0 @@ - - - - Tizen - Security - Privilege - - - diff --git a/src/Tizen.Security/GlobalSuppressions.cs b/src/Tizen.Security/GlobalSuppressions.cs deleted file mode 100644 index 737b2cbabb3f32a8b3c35dbb9dce33d54dde1393..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 952 zcmaKr%}&EG5QO*4Q&>4u`V0sOi31W6z4U0(&<5J1Y7(TrJn+rB?oTREr1)oNXUF69 z&-c`(7HnoKtF2@9&bYRUSy~V5R<>aMW_$h**0NIk-WrQw_aG9sCl+kOZcVH|jKN-Q zur1$?ypHerFh*NC(+wJ=B9haCs;MUBvE-6cOg-beAskINHCE0hD z`Cl&fCw|T^P-{55k;WQ^#_LzGin}5^xEAFEqB^Zkx$|@MtXjupol7!>ZHQzIk$H!D zX{+7s@`@#rA;&u~tz)%Hr&PXt-@qWA2&S@IkMA9;xuP3flxD3fvdg0rSH23;?{jF@ujy3HFPVbeX^fCOImd6`L@*?r)bvlUtguZ8Q|{WQOzyN zQ;%hB#Z{MuQJ)o_nY}$%nl%*m + + + Debug + AnyCPU + {8C16EA6A-163E-4277-8FA6-11122A9E5CF1} + Library + Properties + Tizen.Security + 512 + v4.5 + + + true + full + false + bin\Debug\Net45\ + DEBUG;TRACE + prompt + 4 + true + bin\Debug\Tizen.Security.XML + ExtendedDesignGuidelineRules.ruleset + + + pdbonly + true + bin\Release\Net45\ + TRACE + prompt + 4 + + + true + + + Tizen.Security.snk + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/Tizen.Security/Tizen.Security.Net45.project.json b/src/Tizen.Security/Tizen.Security.Net45.project.json new file mode 100644 index 0000000..02716e2 --- /dev/null +++ b/src/Tizen.Security/Tizen.Security.Net45.project.json @@ -0,0 +1,11 @@ +{ + "dependencies": { + "Tizen.Applications": "1.0.0" + }, + "frameworks": { + "net45": {} + }, + "runtimes": { + "win": {} + } +} diff --git a/src/Tizen.Security/Tizen.Security.csproj b/src/Tizen.Security/Tizen.Security.csproj index 8cd5c97..0361e31 100644 --- a/src/Tizen.Security/Tizen.Security.csproj +++ b/src/Tizen.Security/Tizen.Security.csproj @@ -1,78 +1,78 @@ - - - - - Debug - AnyCPU - Library - Properties - Tizen.Security - v4.5 - 512 - 10.0.0 - 2.0 - {0EA0E64F-637A-480A-8746-4ACC1B0FE022} - - - true - full - true - bin\Debug\ - DEBUG;TRACE - prompt - 4 - true - bin\Debug\Tizen.Security.XML - ExtendedDesignGuidelineRules.ruleset - - - pdbonly - true - bin\Release\ - TRACE - prompt - 4 - - - true - - - Tizen.Security.snk - - - - - - - - - - - - ..\..\tizen\Tizen.Internals\bin\Debug\Tizen.Internals.dll - - - ..\..\tizen\Tizen\bin\Debug\Tizen.dll - - - ..\..\application\Tizen.Applications\bin\Debug\Tizen.Applications.dll - - - - - - - - - - - - + + + + Debug + AnyCPU + {0EA0E64F-637A-480A-8746-4ACC1B0FE022} + Library + Properties + Tizen.Security + 512 + + + .NETStandard + v1.6 + .NETStandard,Version=v1.6 + false + true + $(NoWarn);1701;1702 + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + true + bin\Debug\Tizen.Security.XML + ExtendedDesignGuidelineRules.ruleset + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + true + + + Tizen.Security.snk + + + + + + + + + + + + + + - + --> + + + + <_TargetFrameworkDirectories>$(MSBuildThisFileDirectory) + <_FullFrameworkReferenceAssemblyPaths>$(MSBuildThisFileDirectory) + true + + \ No newline at end of file diff --git a/src/Tizen.Security/Tizen.Security.nuspec b/src/Tizen.Security/Tizen.Security.nuspec new file mode 100644 index 0000000..dedaa93 --- /dev/null +++ b/src/Tizen.Security/Tizen.Security.nuspec @@ -0,0 +1,12 @@ + + + + Tizen.Security + $version$ + Tizen Developers + Security API for Tizen.Net + + + + + diff --git a/src/Tizen.Security/Tizen.Security.project.json b/src/Tizen.Security/Tizen.Security.project.json new file mode 100644 index 0000000..2b4b410 --- /dev/null +++ b/src/Tizen.Security/Tizen.Security.project.json @@ -0,0 +1,12 @@ +{ + "dependencies": { + "NETStandard.Library": "1.6.0", + "Tizen.Applications": "1.0.0" + }, + "frameworks": { + "netstandard1.6": {} + }, + "runtimes": { + "win": {} + } +} -- 2.7.4