Fix build error in r2r_checker on 64 bit (#358)
BIT64(for coreclr 3.1.3) and HOST_64BIT(for .NET6) should be defined for ULONG_PTR on 64 bit.
change dll/so searching path for app (#356)
Change the path "/proc/self/fd/bin" used to find dll/so for the candidate process to "/proc/[pid]/fd/bin"
When debugging, the library loaded in the location of "/proc/self/fd/bin" cannot be accessed by the debugger, so symbol loading fails.
To avoid this failure, change finding path to "/proc/[pid]/fd/bin".
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Mon, 27 Dec 2021 08:13:25 +0000 (17:13 +0900)]
Fixed build error in r2r_checker (#357)
Change-Id: Ib79facf6ff87e8c6edc17d1acc300c1775236bb7
Add r2r checker (#355)
* Add r2r checker
Implement a function to Identify a file is R2R image or not.
```isR2RImage(std::stringfileName)```
* Add missed endian conversion
* Add some error print codes
* Update error logs and a function name
* Update checked based on CLR headers
Co-authored-by: Dong-Heon Jung <clamp03@gmail.com>
j-h.choi [Tue, 26 Oct 2021 06:57:10 +0000 (15:57 +0900)]
Add chmod to change the permission of the file
Change-Id: I56efe62379496138d2d197d24e8b061f8ea2f91a
Woongsuk Cho [Wed, 6 Oct 2021 05:48:28 +0000 (14:48 +0900)]
use corerun for crossgen2
Modified to support crossgen2 (#330)
* support crossgen2
add --crossgen2 and --inputbubble option
By vconf setting, crossgen2 can be used from prefer_dotnet_aot_plugin.
* support crossgen2
add --crossgen2 and --inputbubble option
By vconf setting, crossgen2 can be used from prefer_dotnet_aot_plugin.
Disable config cache to set environment (#350)
To set environment after coreclr_initialize, disable config cache
Woongsuk Cho [Mon, 6 Sep 2021 00:47:49 +0000 (09:47 +0900)]
Add SetSwitch API to Tizen.Runtime
MS decided not to show ILOffset info as default in exception info.
To enable that feature, "Switch.System.Diagnostics.StackTrace.ShowILOffsets" switch should be set true.
An internal API for setting app context switch in dotnet-launcher has been added.
And, "Switch.System.Diagnostics.StackTrace.ShowILOffsets" is enabled defaultly.
Woongsuk Cho [Thu, 19 Aug 2021 03:59:36 +0000 (12:59 +0900)]
remove app profile data when app is updated
- change implementation to remove profile data for all UIDs
- remove app profile data when app is updated
- add "--rm-all-app-profile" option to dotnettool
- change plugin name from delete_unsed_library_plugin to dotnet_apptype_plugin
Woongsuk Cho [Thu, 12 Aug 2021 01:01:16 +0000 (10:01 +0900)]
Add a function to stop profiling after period
CLR environment "MultiCoreJitProfileWriteDelay" doesnot work on Linux.
In some specific cases, application is terminated without calling coreclr_shutdown() function.
As a result, MCJ profiling data is not written.
Added a function to generate profiling data after delay so that MCJ can be used even in this case.
It works by adding delay to the environment variable as follows:
- CLR_MCJ_PROFILE_WRITE_DELAY={delay}
(The unit of delay is second)
If you want to stop profiling after 10 seconds, add environment variable like below:
- CLR_MCJ_PROFILE_WRITE_DELAY=10
j-h.choi [Mon, 5 Jul 2021 04:26:23 +0000 (13:26 +0900)]
Fix build warning. Replace strncpy with memcpy
Change-Id: Ic9f239132fd1a2793176cd85ba00b8c553bd056a
Skip app ni regeneration if app ni already exist (#344)
To avoid multiple NI file generation for --ni-pkg, skip app ni regeneration if app ni already exist
Add plugin api to add native dll searching path (#343)
There are some cases to add dll and native library searching path through plugin API.
The adding dll searching path was already supported, but the adding native library searching part is missing, so this part is added.
The added searching path by plugin has the highest priority. (VD requirement)
Additionally, an environment for building simple libdotnet_plugin.so for testing was also added.
Gleb Balykov [Tue, 6 Jul 2021 12:32:47 +0000 (15:32 +0300)]
Update MulticoreJit setup: disable profile gathering if profile already exists
j-h.choi [Tue, 29 Jun 2021 03:55:32 +0000 (12:55 +0900)]
Upgrade 'launcher' version(6.0.0) in spec
Change-Id: I7a1257423fe308bc8c28e18d6fb25d79c87e92ef
Woongsuk Cho [Mon, 28 Jun 2021 23:05:37 +0000 (08:05 +0900)]
Expand array size for null terminate character
To avoid svace defect, expand array size.
And copy string include null terminate character
Woongsuk Cho [Mon, 28 Jun 2021 01:03:43 +0000 (10:03 +0900)]
Fix for svace issue
- change strcpy/strcat to strncpy/strncat
- use remove function insteadof system() call
j-h.choi [Thu, 10 Jun 2021 06:10:02 +0000 (15:10 +0900)]
Added missing exception handling for boost_filesystem
Change-Id: Ief5956ffa9683c5f4047f3abfcb0ba44513c401b
j-h.choi [Mon, 5 Apr 2021 08:35:40 +0000 (17:35 +0900)]
Add new TFM name scheme(net{dotnetVersion}-tizen{platformVersion})
Change-Id: I66b0204e7685ba1dae4bb0870d6f173de1ef7990
Woongsuk Cho [Mon, 21 Jun 2021 07:58:40 +0000 (16:58 +0900)]
Remove --ni-ro-pkg / --ni-regen-all-ro-app options
When creating a target image or developing platform, "/usr/apps" which is the RO area, is mounted as RW.
In this case, if we perform AOTC for apps installed under /usr/apps,
NI files should be created under /usr/apps/, not "/opt/usr/dotnet".
So, combine options into one, and create NI files under /opt/usr/dotnet only if package directory is mounted as RO.
Gleb Balykov [Mon, 7 Jun 2021 19:07:40 +0000 (22:07 +0300)]
Update MulticoreJit setup
- COMPlus_MultiCoreJitNoProfileGather is not needed, because it gives no effect on updated MulticoreJit
- COMPlus_MultiCoreJitMinNumCpus is needed to enable MulticoreJit on arm with cpu hotplug
Timur [Fri, 30 Apr 2021 15:06:59 +0000 (18:06 +0300)]
dotnettool: Add --rm-app-profile <app_id> option
Signed-off-by: Timur <t.mustafin@partner.samsung.com>
Timur Mustafin [Thu, 22 Apr 2021 22:56:28 +0000 (01:56 +0300)]
Collect/use multicorejit app profile
Turn off --profile mode for default build
Signed-off-by: Timur Mustafin <t.mustafin@partner.samsung.com>
Woongsuk Cho [Wed, 9 Jun 2021 06:24:29 +0000 (15:24 +0900)]
change fprintf to _SERR and _SOUT
j-h.choi [Wed, 9 Jun 2021 01:24:38 +0000 (10:24 +0900)]
Change the extension of a path or file
Change-Id: I2b0f5d2c00d2f84b5e2af25102ba50d29b7bee74
j-h.choi [Wed, 9 Jun 2021 05:00:44 +0000 (14:00 +0900)]
Fixed typo in launcher_TC
Change-Id: Ic44ca7c3af9ab5503809127c7c6501086806c293
Hyungju Lee [Mon, 5 Apr 2021 21:49:30 +0000 (06:49 +0900)]
Remove log_manager (dlog redirects stdout and stderr by itself)
j-h.choi [Wed, 24 Feb 2021 07:07:54 +0000 (16:07 +0900)]
[Tool] Added option to directly enter the log string
Change-Id: I7d73d17dfd7eb283675d639b7079e5d685d86196
j-h.choi [Wed, 10 Feb 2021 02:06:54 +0000 (11:06 +0900)]
Add line number to extractor tool
Change-Id: I5da17e91d8d5bc59a5e59e5385ae413ef93ac178
j-h.choi [Fri, 22 Jan 2021 07:10:39 +0000 (16:10 +0900)]
Add dotnet-stack tool
Change-Id: I38574798f50bbe1a288d55fe9a04ff203a1f1c97
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Fri, 22 Jan 2021 04:44:40 +0000 (13:44 +0900)]
[TC Fixed] Added 'NONE' value to test result (#319)
Change-Id: Id8cf0dac0e413c571dacf7daadede10dae78d886
Co-authored-by: 조웅석/Common Platform Lab(SR)/Principal Engineer/삼성전자 <ws77.cho@samsung.com>
j-h.choi [Wed, 13 Jan 2021 08:31:49 +0000 (17:31 +0900)]
[TC Fixed] Modify the log when the tc fails
Change-Id: I0a3a663e7d3865a92468509f842af400e4dbb941
j-h.choi [Wed, 13 Jan 2021 04:49:01 +0000 (13:49 +0900)]
[TC Fixed] Delete the .tpk file used for the test
Change-Id: I9ff999bb3b21b702f7bfcb1179cab73074e3850c
j-h.choi [Wed, 13 Jan 2021 08:38:06 +0000 (17:38 +0900)]
Add null check in preload
Change-Id: I51fa05c104c40d3a539ed07ff87912857ea3d4f8
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Tue, 12 Jan 2021 01:28:36 +0000 (10:28 +0900)]
[TC Fixed] Changed the key value to get device type (#317)
Change-Id: I2ea128f2bd9608cdfe221597bab8960a1c4b3f8f
j-h.choi [Wed, 6 Jan 2021 06:56:47 +0000 (15:56 +0900)]
[TC Added] dotnettool option(--ni-ro-pkg) test in TOOL
Change-Id: Id0f2dfe654e54c5d8f726d0485db594ecc1b3af3
j-h.choi [Wed, 6 Jan 2021 09:22:36 +0000 (18:22 +0900)]
Apply ownership to the newly created tac folder
Change-Id: Icf9c8ff08fb98a55c6ce6eaef5438896450d48c4
j-h.choi [Wed, 6 Jan 2021 00:51:56 +0000 (09:51 +0900)]
Add '--ni-ro-pkg' option to dotnettool
Change-Id: I0eea9ca9ef583374d9c8195360a6add733c7581d
j-h.choi [Tue, 5 Jan 2021 04:50:42 +0000 (13:50 +0900)]
[TC Fixed] Exclude TC not supported by specific platform
Change-Id: I845ebe415eec352e899732751e43012149ad1e26
j-h.choi [Mon, 4 Jan 2021 05:51:18 +0000 (14:51 +0900)]
[TC Fixed] XSF.dll does not exist in specific target(RPI)
Change-Id: Idadafa7619d58986696b0e057d62c81d1d84013d
j-h.choi [Mon, 4 Jan 2021 01:35:24 +0000 (10:35 +0900)]
[TC Fixed] Change the logical operator of the if statement
Change-Id: Ibfea439c2c72e9783ef4bb6ebb46aed2adbad557
j-h.choi [Wed, 30 Dec 2020 05:07:54 +0000 (14:07 +0900)]
[TC Added] dotnettool option(--ni-regen-all-ro-app) test in TOOL
Change-Id: Ibad71585e1fdabada656ccaac8630bd33d77af3e
j-h.choi [Tue, 29 Dec 2020 05:47:20 +0000 (14:47 +0900)]
[TC Fixed] Change the 'find' command
Change-Id: I2e5dee3f79ef4ba012ed741057f004b4319c8a57
j-h.choi [Wed, 30 Dec 2020 23:41:16 +0000 (08:41 +0900)]
[TC Fixed] Modify clean method in LAUNCH test
Change-Id: Ia1d1e9bf906903af35d97c92f35b1b6ff70439ae
j-h.choi [Mon, 28 Dec 2020 08:33:21 +0000 (17:33 +0900)]
[TC Added] dotnettool option(--ibc-dir) test in TOOL
Change-Id: I0e4c4f72bc5f33492b929869109133e7cacf9492
j-h.choi [Mon, 4 Jan 2021 01:15:59 +0000 (10:15 +0900)]
[TC Added] dotnettool option(--verbose) test in TOOL
Change-Id: I4ea2cece6457750953816e2399bc2d3cacd8cc3a
j-h.choi [Thu, 24 Dec 2020 04:22:42 +0000 (13:22 +0900)]
[TC Fixed] Index out of range
Change-Id: I8737f068f8bb59f00278f13be2dd31cd783cd2f9
j-h.choi [Thu, 24 Dec 2020 02:20:27 +0000 (11:20 +0900)]
[Fixed] TC_TLC_03 app crash
Change-Id: I1a4a934d4d7f11b9d3181093dafc8231f4f737f7
Support regen-app-ni for read-only app (#301)
When a partial update of tizenfx occurs, native image files of application created with FNV option must be regenerated.
However, it is not possible with the current implementation to replace the native-image files of the app installed in the read-only area like the preload app.
To solve this problem, add a functionality that creates new native images under /opt/usr/dotnet/apps, when creating a new native image files of read-only app.
j-h.choi [Wed, 2 Dec 2020 08:25:52 +0000 (17:25 +0900)]
Add dotnet-launcher test case - Apps
Change-Id: If85502bb88b3f72274b0a618c3f82aad9c67f3d7
j-h.choi [Tue, 1 Dec 2020 07:40:12 +0000 (16:40 +0900)]
Add dotnet-launcher test case - Script
Change-Id: Ief02095307e51f8237c34e818bc7697cdecf5319
Woongsuk Cho [Tue, 22 Dec 2020 04:16:52 +0000 (13:16 +0900)]
Add "--resolve-all-app" option to dotnettool
A patch that resolves the "bin/runtimes" directory to support multi-targeting at the app installation time was added after Tizen 6.0.
After applying this patch, it has been changed to no longer refer to the "bin/runtimes" directory of the application.
However, if the target is upgraded by FOTA, installed applications may have "bin/runtimes" directory.
To solve this problem, "--resolve-all-app" option is added to dotnettool and the FOTA script is also updated.
When you run below command, all installed .net application's platform specific files are resolved.
j-h.choi [Tue, 6 Oct 2020 05:31:35 +0000 (14:31 +0900)]
Modify the ownership of TAC and Remove unnecessary logs
Change-Id: Ie50d7d54069d4ae160ab444a8bae5260ccb9449f
j-h.choi [Thu, 5 Nov 2020 06:45:07 +0000 (15:45 +0900)]
Change the logic to check the native image with ildasm
Change-Id: Ie6bfcf378ea4bd3edd4708ea7f6bfd2fd5d8a104
Woongsuk Cho [Wed, 21 Oct 2020 05:12:26 +0000 (14:12 +0900)]
Resolve platform specific path at install time
If you publish .NET Application without RID designation, it is generated to cross-platform type.
If the .NET application uses a NuGet package that has platform-specific implementations,
all platforms' dependencies are copied to the publish folder along with the app.
(refer to https://docs.microsoft.com/en-us/dotnet/core/deploying)
Libraries and assemblies used for each platform are stored in different locations according to RID and TFM as follows.
(refer to https://natemcmaster.com/blog/2016/05/19/nuget3-rid-graph)
.NET Runtime finds the most suitable paths for its execution environment and uses it by setting APP_PATH and NATIVE_LIBRARY_SEASRCHING_PATH.
These path is set in the coreclr_initializae() function.
Unfortunately, in the case of the candidate process, we cannot specify these kind of paths because a application has not been fixed yet.
So, in the current implementation, all possible combinations of paths are added in priority order.
For this reason, unnecessarily long path settings are being transferred to runtime.
To solve this problem, at the time of installation, I try to change it as if the application was published with the RID setting.
In detail, find the best matched RID and TFM path in the application, and move all contents in them to the "bin" folder.
After then, we can remove runtimes foldr.
The results after resolving are the same as those performed by specifying RID during publish.
j-h.choi [Mon, 19 Oct 2020 08:18:52 +0000 (17:18 +0900)]
Enable generation of .pdb file in release mode
Change-Id: If76917e66fd15cad0c6b9478c7814538b0a62a42
Add PATH setting at rw update script (#300)
Security Test return "FAIL" if shell script doesnot contain PATH setting,
even though all command line tool is executed as absolute path.
So, to avoid unnecessary failure, add PATH setting at shell script
Regenerate native image for TAC at FOTA (#298)
Woongsuk Cho [Mon, 30 Nov 2020 04:46:50 +0000 (13:46 +0900)]
Use _tmpfilesdir macro
Location of conf file to create temporary files is changed
from /etc/tmpfiles.d to /usr/lib/tmpfiles.d.
So, use macro insteadof real path.
fix typo : path --> patch (#295)
add rw update script to support FOTA (#294)
regenerate application's native image when FOTA done
Woongsuk Cho [Tue, 6 Oct 2020 00:56:54 +0000 (09:56 +0900)]
Use multi-user support pkgmgrinfo API
pkgmgrinfo API provides an API set that considers multi-user.
This patch is for clean-up multi-user related API.
Add missing smack label setting for preloaded app (#286)
In the case of preload app installation, the smack label may not be changed automatically.
This patch add that kind of missing smack label setting
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 24 Sep 2020 21:16:55 +0000 (06:16 +0900)]
Modify ln option in spec (#285)
Change-Id: Idaa6b3c655b579579010f964cd773a2aa2663169
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 24 Sep 2020 07:53:02 +0000 (16:53 +0900)]
Support for architecture-specific assemblies in a folder named runtimes (#276)
Change-Id: I55399888f14f37e4c82c9ad2713918b05a0e87fb
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 24 Sep 2020 07:52:07 +0000 (16:52 +0900)]
Fixed build warning in i586, x86_64 (#283)
Change-Id: Ib243a6e405fae7bd5b278c286935b05a486c071d
Remove unnecessary command name changing code (#284)
Because executable name for nui loader is changed to dotnet-nui-loader,
there is no need to change command name for candidate process.
Additionally, add apptype to extra for dotnet-nui loader.
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 24 Sep 2020 07:51:49 +0000 (16:51 +0900)]
Add ibcdata for aarch64 (#282)
Change-Id: Ie631305a700966591cdc4593b4b79800ca9228eb
Hyungju Lee [Wed, 16 Sep 2020 04:19:44 +0000 (13:19 +0900)]
Add symlink to distinguish candidate process
Change-Id: I1e8071313b5576904d7a5c569102288f166fb819
j-h.choi [Fri, 11 Sep 2020 06:09:50 +0000 (15:09 +0900)]
Added smack permissions for the .tac_symlink folder in preload install
Change-Id: Idb91cea264c7b6802b6723eca2d686c12efc865d
j-h.choi [Wed, 9 Sep 2020 08:15:11 +0000 (17:15 +0900)]
Modified to check the exists of the preload directory
Change-Id: I76bf379c055b807642d6ec824dec502830a0ab73
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 3 Sep 2020 22:30:31 +0000 (07:30 +0900)]
Modify the bf::exists function to check error.value (#275)
Change-Id: I2dc642bfd18c8d3ddb476fcb086f6e6519d8bc7c
Woongsuk Cho [Fri, 28 Aug 2020 05:12:57 +0000 (14:12 +0900)]
Support PBA on aarch64
Enable PBA on aarch64 architecture,
and change formmater to support both 32bit and 64bit.
j-h.choi [Tue, 1 Sep 2020 03:36:56 +0000 (12:36 +0900)]
Add missing header
Change-Id: I827bf7d54b3d415b365968961bdde9a28ba4891e
j-h.choi [Fri, 21 Aug 2020 01:54:41 +0000 (10:54 +0900)]
Wrap bf::exists() to check for exception
Change-Id: I0facee498025112514ea16416052d148eaccb04c
Wrap bf::exists() to check for exception. (#270)
bf::exists() can throw exception. To avoid crash by exception, exist() which wrap bf::exists() is added.
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Tue, 18 Aug 2020 07:53:27 +0000 (16:53 +0900)]
Added error handling for failures during the TAC (#262)
Change-Id: I723505929933af4132666f42db27d4dac16b6d9a
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Tue, 18 Aug 2020 07:46:43 +0000 (16:46 +0900)]
Delete unused libraries when installing the application (#269)
Change-Id: I984b1ba19f2190504b912ee9a70a501e978c0d71
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Fri, 14 Aug 2020 00:55:09 +0000 (09:55 +0900)]
Modified function name for readability (#263)
Change-Id: Ia573149eb300989156a941427f8007c17514627b
Fixed the wrong base addr being used (#267)
A pointer of a temporally created string object is put into a vector in
the "if" statement. So, wrong value is set for /BaseAddress option.
Woongsuk Cho [Mon, 10 Aug 2020 07:15:00 +0000 (16:15 +0900)]
Remove debug pipe for candidate process
The debug pipe created in the candidate process has a "User" label.
As a result, smack deny occurs when app process try to access the debug pipe.
Also, since debugging is performed only in standalone mode, the debug pipe does not be used in the candidate process
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Fri, 7 Aug 2020 07:58:43 +0000 (16:58 +0900)]
Change to execute SQL commands simply (#265)
Change-Id: I34f793661b41700a9ebf2cb1b75334434a5cdc3f
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Wed, 5 Aug 2020 05:53:19 +0000 (14:53 +0900)]
Support for TLC(Tizen Library cache) (#260)
Change-Id: I4f65011e89af4b3d4fcd4b9890c2d83ea3b983f1
[SVACE] remove unnecessary check code. (#259)
SVACE request us to change strerror to strerror_r for thread safety.
But, there is no need to call access() and strerror() function for error case.
So, remove unnecessary check code.
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Wed, 8 Jul 2020 08:55:37 +0000 (17:55 +0900)]
Modification of lchown for ni file in .tac_symlink (#258)
Change-Id: I09594fae53d991f49161da4b96e8b3b7ee2f598e
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Wed, 8 Jul 2020 08:55:26 +0000 (17:55 +0900)]
Code cleanup and Add missing flag (#257)
Change-Id: I9e882fd196edb192c61641c7394fb18531293401
Woongsuk Cho [Mon, 29 Jun 2020 03:50:55 +0000 (12:50 +0900)]
Refactoring path manager
The existing path manager provided only the function to create and provide TPA with some directories (runtime/tizenfx/etc).
As a result, a lot of path related duplicate code was used in launcher internal code,
To modify this, the PathManager was refactored as follows:
1. The paths required for app execution and native image creation are obtained through path manager.
2. The path manager is created as an object so that it can be maintained and managed where it is needed.
3. The dependency between path manager and the plugin manager has been removed.
4. Platform assembly searching path can be updated. (To support dotnet-plugin, system library upgrade)
5. The nitool doesnot supported any more
6. --ni-pkg-dll option is removed from dotnettool
7. TPA related code is moved out from PathManager
Interface change
1. The parameter of initNICommon() function is removed.
2. Some functions in ni_common.h, tac_common.h are removed or changed
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Tue, 7 Jul 2020 01:06:48 +0000 (10:06 +0900)]
Fixed build warning (#256)
Change-Id: I2f7f6f63651086b3106b966e10a2d4cbc80149ab
Create separated candidate process to preload NUI (#245)
NUI cannot be preloaded with ElmSharp because those two UI related
module create window while preloading.
When multiple windows are created, it not only increases the memory usage,
but also affects the launching effect and splash screen.
So, create new candidate process for NUI
Assumption
NUI app has their own apptype "dotnet-nui"
There are two candidate process. One is for "ElmSharp" and The other is for "NUI"
XSF is related to "ElmSharp"
Basic Operation
Set extra value "TIZEN_UIFW" to bundle by loader script. (ElmSharp and NUI)
Get extra value from bundle in the *__loader_create_cb function and set that to environment.
Get environment in the preload() method in the Tizen.Runtime.cs
Skip "ElmSharp" or "NUI" preloading by TIZEN_UIFW
Refactoring CoreRuntime and plugin (#247)
* Pass apptype to plugin insteadof mode
The meaning of the mode that is delivered during plugin initialization is not clear.
And, VD plugin use mode to distinguish app-type.
So, change the parameter of plugin_initialize from mode to apptype.
Also, the script was modified to obtain the apptype in the candidate process.
The parameter of the CoreRuntime constructor was also unnecessary and deleted.
* Change CoreRuntime to static class
CoreRuntime is a wrapper class of .NET Runtime (coreclr),
So, that cannot be created with multiple instance, and cannot be called
multiple times.
So, I changed CoreRuntime to static class which contains only static functions.
Also, it was changed to explicitly call what was called as a destructor.
Additionally, some function name and file name have been changed.
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Mon, 29 Jun 2020 21:52:29 +0000 (06:52 +0900)]
Seperate the pluginDir and extraDir from the path manager (#252)
Change-Id: If710a702feaaa4e1e9047c346c9a656920dcb921
Check ascii casing in the candidate process (#254)
If current culture's casing for ASCII is the same as invariant, it can take a fast path than calling out to the OS for culture-aware casing.
However, in certain languages, the "ascii casing check function" may be significantly slowed down.
To avoid that kind situation, call it in advance on the candidate process.
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 18 Jun 2020 09:49:01 +0000 (18:49 +0900)]
Support for aarch64(arm64) build (#250)
Change-Id: Iabaf37988ddbd44388f51defbe1e2e3642937c47
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 18 Jun 2020 04:11:11 +0000 (13:11 +0900)]
Code cleanup (#251)
Change-Id: Ibf9d8fe72f68384ab2f2431d926251e88f2ea9ff
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 18 Jun 2020 04:10:33 +0000 (13:10 +0900)]
Check the native image with ildasm when using --ni* option of dotnettool (#167)
Change-Id: I351c1c1978c6daa24a7cb2378ed3206df43c11eb
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 18 Jun 2020 04:10:13 +0000 (13:10 +0900)]
Remove unused file(#241-dotnet.preload.list) (#246)
Change-Id: I85e211b411514fae4d760e6401f77e50f589753b
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 11 Jun 2020 01:12:20 +0000 (10:12 +0900)]
Update package version to 3.1.3 (#243)
Change-Id: I3f84c804e3d384aeb2f9b12a80cc0c414ee470f9
최종헌/Common Platform Lab(SR)/Engineer/삼성전자 [Thu, 11 Jun 2020 01:11:57 +0000 (10:11 +0900)]
Modified to pass the argument by constant reference (#242)
Change-Id: I32016827498c178c7e29224cecb465a605731804
이형주/Common Platform Lab(SR)/Staff Engineer/삼성전자 [Thu, 11 Jun 2020 01:11:35 +0000 (10:11 +0900)]
Minor readability fix (#244)
Change-Id: I5fcf45f8a9809e832bc0ebf622c8167eb83f0ba1