diff options
author | Zoltan Varga <vargaz@gmail.com> | 2020-10-14 17:29:41 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-10-14 17:29:41 +0300 |
commit | e1f4a963eab183691a0bd46ec364c2e0724cbf81 (patch) | |
tree | 4420b50faa07516bd2d2fa4d51f0aca42c6e30e4 /msvc | |
parent | 7e179518a9aa399abb8fadbf6ed9cc136164be51 (diff) |
[runtime] Add an options API. (#18959)
* [runtime] Add an options API.
Add a general options API to the runtime, based on the flags API in Google V8:
```https://chromium.googlesource.com/v8/v8.git/+/refs/heads/master/src/flags/```
Supported features:
* Definition of runtime options in a declarative way.
* Options are mapped to C globals.
* BOOL/INT/STRING data types.
* Generic option parsing code.
* Generic usage code.
* Read-only flags for build-time optimization.
This is designed to replace the many option parsing functions in
the runtime, MONO_DEBUG, the many mono_set_... functions etc.
* Address review comments.
* Fix the c++ build.
* Fix the windows build.
* Fix the windows build.
* Update comments.
* Rename flags->options.
* Fix the windows build.
* Disable example options.
* Rename the option variables to mono_opt_<name>.
* Update mono/utils/options.c
Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
Co-authored-by: Aleksey Kliger (λgeek) <akliger@gmail.com>
Diffstat (limited to 'msvc')
-rw-r--r-- | msvc/libmonoutils-common.targets | 3 | ||||
-rw-r--r-- | msvc/libmonoutils-common.targets.filters | 9 |
2 files changed, 12 insertions, 0 deletions
diff --git a/msvc/libmonoutils-common.targets b/msvc/libmonoutils-common.targets index 28e3d1cf754..d53b74bcf17 100644 --- a/msvc/libmonoutils-common.targets +++ b/msvc/libmonoutils-common.targets @@ -201,6 +201,9 @@ <ClInclude Include="$(MonoSourceLocation)\mono\utils\unlocked.h" /> <ClCompile Include="$(MonoSourceLocation)\mono\utils\mono-state.c" /> <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-state.h" /> + <ClInclude Include="$(MonoSourceLocation)\mono\utils\options.h" /> + <ClCompile Include="$(MonoSourceLocation)\mono\utils\options.c" /> + <ClInclude Include="$(MonoSourceLocation)\mono\utils\options-def.h" /> </ItemGroup> <ItemGroup Label="libmonoutilsinclude_headers"> <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-logger.h" /> diff --git a/msvc/libmonoutils-common.targets.filters b/msvc/libmonoutils-common.targets.filters index c60ab5144f5..5692e1648a1 100644 --- a/msvc/libmonoutils-common.targets.filters +++ b/msvc/libmonoutils-common.targets.filters @@ -463,6 +463,9 @@ <ClCompile Include="$(MonoSourceLocation)\mono\utils\checked-build.c"> <Filter>Source Files$(MonoUtilsFilterSubFolder)\common</Filter> </ClCompile> + <ClCompile Include="$(MonoSourceLocation)\mono\utils\options.c"> + <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter> + </ClCompile> <ClInclude Include="$(MonoSourceLocation)\mono\utils\checked-build.h"> <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter> </ClInclude> @@ -484,6 +487,12 @@ <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-state.h"> <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter> </ClInclude> + <ClInclude Include="$(MonoSourceLocation)\mono\utils\options.h"> + <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter> + </ClInclude> + <ClInclude Include="$(MonoSourceLocation)\mono\utils\options-def.h"> + <Filter>Header Files$(MonoUtilsFilterSubFolder)\common</Filter> + </ClInclude> </ItemGroup> <ItemGroup Label="libmonoutilsinclude_headers"> <ClInclude Include="$(MonoSourceLocation)\mono\utils\mono-logger.h"> |