use ibc file for generate NI 48/235848/2
authorj-h.choi <j-h.choi@samsung.com>
Wed, 10 Jun 2020 08:13:53 +0000 (17:13 +0900)
committerj-h.choi <j-h.choi@samsung.com>
Mon, 15 Jun 2020 08:31:43 +0000 (17:31 +0900)
 - Added the '--ibc-dir' option in dotnettool

Change-Id: I26846383f6d141a31979c813560763e101a2ad77

scripts/mobile-dotnet-generate-ni.post

index 3ad983e..75c32a0 100755 (executable)
@@ -1,36 +1,54 @@
 #!/bin/sh
 echo "############### mobile-dotnet-generate-ni.post ################"
 
-# Generate NI for System
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/SOS.NETCore.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Collections.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Collections.Concurrent.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Console.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Diagnostics.Debug.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.IO.FileSystem.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Linq.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Linq.Expressions.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.ObjectModel.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Private.DataContractSerialization.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Private.Uri.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Private.Xml.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Reflection.Extensions.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Reflection.Metadata.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Runtime.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Runtime.Extensions.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Runtime.InteropServices.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Security.Cryptography.Algorithms.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Security.Cryptography.Primitives.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Text.RegularExpressions.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Threading.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Threading.Tasks.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Threading.Thread.dll
-nitool --dll /usr/share/dotnet.tizen/netcoreapp/System.Threading.Timer.dll
-# Generate NI for Xamarin and Device API
-nitool --dll /usr/share/dotnet.tizen/framework/ElmSharp.dll
-nitool --dll /usr/share/dotnet.tizen/framework/Tizen.dll
-nitool --dll /usr/share/dotnet.tizen/framework/Tizen.Applications.Common.dll
-nitool --dll /usr/share/dotnet.tizen/framework/Tizen.Applications.UI.dll
-nitool --dll /usr/share/dotnet.tizen/framework/Tizen.Applications.Service.dll
-nitool --dll /usr/share/dotnet.tizen/framework/Tizen.System.Information.dll
+DLL_LIST="
+        /usr/share/dotnet.tizen/netcoreapp/System.Private.CoreLib.dll
+        /usr/share/dotnet.tizen/netcoreapp/SOS.NETCore.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Collections.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Collections.Concurrent.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Console.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Diagnostics.Debug.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.IO.FileSystem.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Linq.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Linq.Expressions.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.ObjectModel.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Private.DataContractSerialization.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Private.Uri.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Private.Xml.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Reflection.Extensions.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Reflection.Metadata.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Runtime.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Runtime.Extensions.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Runtime.InteropServices.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Security.Cryptography.Algorithms.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Security.Cryptography.Primitives.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Text.RegularExpressions.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Threading.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Threading.Tasks.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Threading.Thread.dll
+        /usr/share/dotnet.tizen/netcoreapp/System.Threading.Timer.dll
+        /usr/share/dotnet.tizen/framework/ElmSharp.dll
+        /usr/share/dotnet.tizen/framework/Tizen.dll
+        /usr/share/dotnet.tizen/framework/Tizen.Applications.Common.dll
+        /usr/share/dotnet.tizen/framework/Tizen.Applications.UI.dll
+        /usr/share/dotnet.tizen/framework/Tizen.Applications.Service.dll
+        /usr/share/dotnet.tizen/framework/Tizen.System.Information.dll
+"
+
+export IBCDATA_DIR=/usr/share/dotnet.tizen/ibcdata
+
+# remove previous native image
+dotnettool --ni-reset-system
+
+# generate native image
+for target in $DLL_LIST;
+do
+        dotnettool --ibc-dir $IBCDATA_DIR --ni-dll $target;
+done;
+
+# remove ibc data files
+if [ -d $IBCDATA_DIR ]
+then
+    rm -rf $IBCDATA_DIR
+fi