diff --git a/.gdn/policheck/source.gdnsuppress b/.gdn/policheck/source.gdnsuppress index 564ebc5b8db..5ee5fbf12d8 100644 --- a/.gdn/policheck/source.gdnsuppress +++ b/.gdn/policheck/source.gdnsuppress @@ -8,33 +8,11 @@ "suppressionSets": { "default": { "name": "default", - "createdDate": "2023-02-22 23:55:29Z", - "lastUpdatedDate": "2024-04-22 13:40:30Z" + "createdDate": "2025-02-05 11:48:04Z", + "lastUpdatedDate": "2025-02-05 11:48:04Z" } }, "results": { - "6789cab1bdc97b0cc3ad057b7fdd21d63cdf8bc2679391923803fa240ef81292": { - "signature": "6789cab1bdc97b0cc3ad057b7fdd21d63cdf8bc2679391923803fa240ef81292", - "alternativeSignatures": [ - "b5041e3ec6776af49d6d69148e4db480f366b559299d19ec8ea3e095295b39a8" - ], - "memberOf": [ - "default" - ], - "justification": "Reference to an ISCII term.", - "createdDate": "2023-02-22 23:55:29Z" - }, - "bbaf5f946cb72748567e41f0df5f1bae05550f4ba7381e21ec6b26d6c3ecec9f": { - "signature": "bbaf5f946cb72748567e41f0df5f1bae05550f4ba7381e21ec6b26d6c3ecec9f", - "alternativeSignatures": [ - "739cb5e6ee2409515900652ca668f819f697f23834becece8d2f9f9236723c1b" - ], - "memberOf": [ - "default" - ], - "justification": "Reference to an ISCII term.", - "createdDate": "2023-02-22 23:55:29Z" - }, "db8916a0f0cdca4082c540921dd362e09a9ff413862ab826308411b76ee35789": { "signature": "db8916a0f0cdca4082c540921dd362e09a9ff413862ab826308411b76ee35789", "alternativeSignatures": [ @@ -101,71 +79,60 @@ "justification": "Reference to an Android logging function.", "createdDate": "2023-02-22 23:55:29Z" }, - "bca629d8e7888af4116b013c6585b78d0908d248a80138339e0eb1620832eb10": { - "signature": "bca629d8e7888af4116b013c6585b78d0908d248a80138339e0eb1620832eb10", - "alternativeSignatures": [ - "f35d63032e4f346c1afcc299d50eb17a0a05ecea81ba3025f14c7fbf78b10100" - ], - "memberOf": [ - "default" - ], - "justification": "Reference to find first set bit function.", - "createdDate": "2023-02-22 23:55:29Z" - }, - "dc43990fd9fa6a44f2fb2fffcb0497571af4379f23090482035d79a98970e7ae": { - "signature": "dc43990fd9fa6a44f2fb2fffcb0497571af4379f23090482035d79a98970e7ae", + "b34b42aa41018376a31460c142f2ae910704725d9e9a4470f92b587df682369b": { + "signature": "b34b42aa41018376a31460c142f2ae910704725d9e9a4470f92b587df682369b", "alternativeSignatures": [ - "f35d63032e4f346c1afcc299d50eb17a0a05ecea81ba3025f14c7fbf78b10100" + "3901d031f3ac168bb1a84d06bb234355af514c59a0ed9da325b11a8861ff0b05" ], "memberOf": [ "default" ], - "justification": "Reference to find first set bit function.", - "createdDate": "2023-02-22 23:55:29Z" + "justification": "Matching against `aapt2` tool output.", + "createdDate": "2025-02-05 11:48:04Z" }, - "eb60d4f1e48ca85ad5fa4a413d8ff76c4975bccb12931f51179d67c24a82f354": { - "signature": "eb60d4f1e48ca85ad5fa4a413d8ff76c4975bccb12931f51179d67c24a82f354", + "a5555a74b0e940543802a63a6465b4d965eff4f6c858552813df633186794c45": { + "signature": "a5555a74b0e940543802a63a6465b4d965eff4f6c858552813df633186794c45", "alternativeSignatures": [ - "f35d63032e4f346c1afcc299d50eb17a0a05ecea81ba3025f14c7fbf78b10100" + "c5aa7148967f346e897301d8c424af20d89620c75ba9b966a0d42985102717bc" ], "memberOf": [ "default" ], - "justification": "Reference to find first set bit function.", - "createdDate": "2023-02-22 23:55:29Z" + "justification": "Reference to ffs(3) find first set bit function.", + "createdDate": "2025-02-05 11:48:04Z" }, - "bb80a900ad96e4833eb7f54f55723a3425e846a290dd62b709d4714952cd9d45": { - "signature": "bb80a900ad96e4833eb7f54f55723a3425e846a290dd62b709d4714952cd9d45", + "fd1572e08e818076a2ceaab7a032186f70236fb82ab3663756d69632a9615329": { + "signature": "fd1572e08e818076a2ceaab7a032186f70236fb82ab3663756d69632a9615329", "alternativeSignatures": [ - "f35d63032e4f346c1afcc299d50eb17a0a05ecea81ba3025f14c7fbf78b10100" + "c5aa7148967f346e897301d8c424af20d89620c75ba9b966a0d42985102717bc" ], "memberOf": [ "default" ], - "justification": "Reference to find first set bit function.", - "createdDate": "2024-02-22 21:40:38Z" + "justification": "Reference to ffs(3) find first set bit function.", + "createdDate": "2025-02-05 11:48:04Z" }, - "b34b42aa41018376a31460c142f2ae910704725d9e9a4470f92b587df682369b": { - "signature": "b34b42aa41018376a31460c142f2ae910704725d9e9a4470f92b587df682369b", + "2593da2393fe547b441ddfdfc614dd1448add1bf7d7ccc0696ab91f75fa6f29b": { + "signature": "2593da2393fe547b441ddfdfc614dd1448add1bf7d7ccc0696ab91f75fa6f29b", "alternativeSignatures": [ - "3901d031f3ac168bb1a84d06bb234355af514c59a0ed9da325b11a8861ff0b05" + "c5aa7148967f346e897301d8c424af20d89620c75ba9b966a0d42985102717bc" ], "memberOf": [ "default" ], - "justification": "Reference to output from an external tool.", - "createdDate": "2023-02-22 23:55:29Z" + "justification": "Reference to ffs(3) find first set bit function.", + "createdDate": "2025-02-05 11:48:04Z" }, - "243e199c7aec22377e0363bdca82384278cc36b0674f35697935fde6c45cfd0e": { - "signature": "243e199c7aec22377e0363bdca82384278cc36b0674f35697935fde6c45cfd0e", + "1b604a2a60556cfca51c34a0e8d5f89174379ea1fc2598170147a7ce57a25fba": { + "signature": "1b604a2a60556cfca51c34a0e8d5f89174379ea1fc2598170147a7ce57a25fba", "alternativeSignatures": [ - "cf02f44873b25336e01a1fa294bd858d2ea69ae734f08c6db40d4b83d17ccf76" + "c5aa7148967f346e897301d8c424af20d89620c75ba9b966a0d42985102717bc" ], "memberOf": [ "default" ], - "justification": "Reference to a proper name.", - "createdDate": "2023-10-26 21:20:54Z" + "justification": "Reference to ffs(3) find first set bit function.", + "createdDate": "2025-02-05 11:48:04Z" } } } diff --git a/Xamarin.Android.sln b/Xamarin.Android.sln index f42d1822c74..5227e5fd898 100644 --- a/Xamarin.Android.sln +++ b/Xamarin.Android.sln @@ -45,7 +45,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Java.Interop.Tools.Diagnost EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Java.Interop.Tools.Cecil", "external\Java.Interop\src\Java.Interop.Tools.Cecil\Java.Interop.Tools.Cecil.csproj", "{D48EE8D0-0A0A-4493-AEF5-DAF5F8CF86AD}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "native", "src\native\native.csproj", "{53EE4C57-1C03-405A-8243-8DA539546C88}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "native", "src\native\native-mono.csproj", "{53EE4C57-1C03-405A-8243-8DA539546C88}" EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{CAB438D8-B0F5-4AF0-BEBD-9E2ADBD7B483}" EndProject diff --git a/build-tools/scripts/generate-pinvoke-tables.sh b/build-tools/scripts/generate-pinvoke-tables.sh index 39eaf65eac7..18c593e7c0f 100755 --- a/build-tools/scripts/generate-pinvoke-tables.sh +++ b/build-tools/scripts/generate-pinvoke-tables.sh @@ -2,7 +2,7 @@ MY_DIR="$(dirname $0)" HOST="$(uname | tr A-Z a-z)" -NATIVE_DIR="${MY_DIR}/../../src/native" +NATIVE_DIR="${MY_DIR}/../../src/native/mono" MONODROID_SOURCE_DIR="${NATIVE_DIR}/pinvoke-override" GENERATOR_SOURCE="${MONODROID_SOURCE_DIR}/generate-pinvoke-tables.cc" GENERATOR_BINARY="${MONODROID_SOURCE_DIR}/generate-pinvoke-tables" diff --git a/src/native/CMakeLists.txt b/src/native/CMakeLists.txt index b6109634c19..422d9719850 100644 --- a/src/native/CMakeLists.txt +++ b/src/native/CMakeLists.txt @@ -480,23 +480,23 @@ macro(set_static_library_suffix TARGET_NAME) endmacro() if(BUILD_ARCHIVE_DSO_STUB) - add_subdirectory(archive-dso-stub) + add_subdirectory(common/archive-dso-stub) else() - add_subdirectory(libunwind) - add_subdirectory(lz4) - add_subdirectory(libstub) - add_subdirectory(shared) - add_subdirectory(java-interop) - add_subdirectory(xamarin-app-stub) - add_subdirectory(runtime-base) - add_subdirectory(tracing) - add_subdirectory(pinvoke-override) + add_subdirectory(common/libunwind) + add_subdirectory(common/lz4) + add_subdirectory(common/libstub) + add_subdirectory(mono/shared) + add_subdirectory(common/java-interop) + add_subdirectory(mono/xamarin-app-stub) + add_subdirectory(mono/runtime-base) + add_subdirectory(mono/tracing) + add_subdirectory(mono/pinvoke-override) if(DEBUG_BUILD) - add_subdirectory(xamarin-debug-app-helper) + add_subdirectory(mono/xamarin-debug-app-helper) endif() - add_subdirectory(monodroid) + add_subdirectory(mono/monodroid) add_custom_target(run_static_analysis COMMAND ${ANDROID_TOOLCHAIN_ROOT}/bin/clang-check -analyze -p="${CMAKE_CURRENT_BINARY_DIR}" ${CLANG_CHECK_SOURCES} > ${CMAKE_SOURCE_DIR}/static-analysis.${ANDROID_ABI}.${CMAKE_BUILD_TYPE}.txt 2>&1 diff --git a/src/native/archive-dso-stub/CMakeLists.txt b/src/native/common/archive-dso-stub/CMakeLists.txt similarity index 100% rename from src/native/archive-dso-stub/CMakeLists.txt rename to src/native/common/archive-dso-stub/CMakeLists.txt diff --git a/src/native/archive-dso-stub/stub.cc b/src/native/common/archive-dso-stub/stub.cc similarity index 100% rename from src/native/archive-dso-stub/stub.cc rename to src/native/common/archive-dso-stub/stub.cc diff --git a/src/native/java-interop/CMakeLists.txt b/src/native/common/java-interop/CMakeLists.txt similarity index 100% rename from src/native/java-interop/CMakeLists.txt rename to src/native/common/java-interop/CMakeLists.txt diff --git a/src/native/libstub/CMakeLists.txt b/src/native/common/libstub/CMakeLists.txt similarity index 100% rename from src/native/libstub/CMakeLists.txt rename to src/native/common/libstub/CMakeLists.txt diff --git a/src/native/libstub/stub.cc b/src/native/common/libstub/stub.cc similarity index 100% rename from src/native/libstub/stub.cc rename to src/native/common/libstub/stub.cc diff --git a/src/native/libunwind/CMakeLists.txt b/src/native/common/libunwind/CMakeLists.txt similarity index 100% rename from src/native/libunwind/CMakeLists.txt rename to src/native/common/libunwind/CMakeLists.txt diff --git a/src/native/libunwind/config.h.in b/src/native/common/libunwind/config.h.in similarity index 100% rename from src/native/libunwind/config.h.in rename to src/native/common/libunwind/config.h.in diff --git a/src/native/libunwind/fixes/aarch64/Gos-linux.c b/src/native/common/libunwind/fixes/aarch64/Gos-linux.c similarity index 100% rename from src/native/libunwind/fixes/aarch64/Gos-linux.c rename to src/native/common/libunwind/fixes/aarch64/Gos-linux.c diff --git a/src/native/libunwind/libunwind-xamarin.csproj b/src/native/common/libunwind/libunwind-xamarin.csproj similarity index 100% rename from src/native/libunwind/libunwind-xamarin.csproj rename to src/native/common/libunwind/libunwind-xamarin.csproj diff --git a/src/native/libunwind/libunwind-xamarin.targets b/src/native/common/libunwind/libunwind-xamarin.targets similarity index 100% rename from src/native/libunwind/libunwind-xamarin.targets rename to src/native/common/libunwind/libunwind-xamarin.targets diff --git a/src/native/lz4/CMakeLists.txt b/src/native/common/lz4/CMakeLists.txt similarity index 100% rename from src/native/lz4/CMakeLists.txt rename to src/native/common/lz4/CMakeLists.txt diff --git a/src/native/libmono-android.map.txt b/src/native/mono/libmono-android.map.txt similarity index 100% rename from src/native/libmono-android.map.txt rename to src/native/mono/libmono-android.map.txt diff --git a/src/native/monodroid/.gitignore b/src/native/mono/monodroid/.gitignore similarity index 100% rename from src/native/monodroid/.gitignore rename to src/native/mono/monodroid/.gitignore diff --git a/src/native/monodroid/CMakeLists.txt b/src/native/mono/monodroid/CMakeLists.txt similarity index 98% rename from src/native/monodroid/CMakeLists.txt rename to src/native/mono/monodroid/CMakeLists.txt index c191a6103bb..8f140f062c5 100644 --- a/src/native/monodroid/CMakeLists.txt +++ b/src/native/mono/monodroid/CMakeLists.txt @@ -245,7 +245,7 @@ xa_add_compile_definitions(${XAMARIN_MONO_ANDROID_LIB}) target_link_options(${XAMARIN_MONO_ANDROID_LIB} PRIVATE - -Wl,--version-script,${CMAKE_SOURCE_DIR}/libmono-android.map.txt + -Wl,--version-script,${CMAKE_SOURCE_DIR}/mono/libmono-android.map.txt -Wl,--no-undefined-version ) diff --git a/src/native/monodroid/archive-dso-stub-config.hh.in b/src/native/mono/monodroid/archive-dso-stub-config.hh.in similarity index 100% rename from src/native/monodroid/archive-dso-stub-config.hh.in rename to src/native/mono/monodroid/archive-dso-stub-config.hh.in diff --git a/src/native/monodroid/build-info.hh b/src/native/mono/monodroid/build-info.hh similarity index 100% rename from src/native/monodroid/build-info.hh rename to src/native/mono/monodroid/build-info.hh diff --git a/src/native/monodroid/config.h b/src/native/mono/monodroid/config.h similarity index 100% rename from src/native/monodroid/config.h rename to src/native/mono/monodroid/config.h diff --git a/src/native/monodroid/debug-constants.cc b/src/native/mono/monodroid/debug-constants.cc similarity index 100% rename from src/native/monodroid/debug-constants.cc rename to src/native/mono/monodroid/debug-constants.cc diff --git a/src/native/monodroid/debug.cc b/src/native/mono/monodroid/debug.cc similarity index 100% rename from src/native/monodroid/debug.cc rename to src/native/mono/monodroid/debug.cc diff --git a/src/native/monodroid/debug.hh b/src/native/mono/monodroid/debug.hh similarity index 100% rename from src/native/monodroid/debug.hh rename to src/native/mono/monodroid/debug.hh diff --git a/src/native/monodroid/designer-assemblies.cc b/src/native/mono/monodroid/designer-assemblies.cc similarity index 100% rename from src/native/monodroid/designer-assemblies.cc rename to src/native/mono/monodroid/designer-assemblies.cc diff --git a/src/native/monodroid/designer-assemblies.hh b/src/native/mono/monodroid/designer-assemblies.hh similarity index 100% rename from src/native/monodroid/designer-assemblies.hh rename to src/native/mono/monodroid/designer-assemblies.hh diff --git a/src/native/monodroid/embedded-assemblies-zip.cc b/src/native/mono/monodroid/embedded-assemblies-zip.cc similarity index 100% rename from src/native/monodroid/embedded-assemblies-zip.cc rename to src/native/mono/monodroid/embedded-assemblies-zip.cc diff --git a/src/native/monodroid/embedded-assemblies.cc b/src/native/mono/monodroid/embedded-assemblies.cc similarity index 100% rename from src/native/monodroid/embedded-assemblies.cc rename to src/native/mono/monodroid/embedded-assemblies.cc diff --git a/src/native/monodroid/embedded-assemblies.hh b/src/native/mono/monodroid/embedded-assemblies.hh similarity index 100% rename from src/native/monodroid/embedded-assemblies.hh rename to src/native/mono/monodroid/embedded-assemblies.hh diff --git a/src/native/monodroid/globals.cc b/src/native/mono/monodroid/globals.cc similarity index 100% rename from src/native/monodroid/globals.cc rename to src/native/mono/monodroid/globals.cc diff --git a/src/native/monodroid/globals.hh b/src/native/mono/monodroid/globals.hh similarity index 100% rename from src/native/monodroid/globals.hh rename to src/native/mono/monodroid/globals.hh diff --git a/src/native/monodroid/host-config.h.in b/src/native/mono/monodroid/host-config.h.in similarity index 100% rename from src/native/monodroid/host-config.h.in rename to src/native/mono/monodroid/host-config.h.in diff --git a/src/native/monodroid/internal-pinvokes.cc b/src/native/mono/monodroid/internal-pinvokes.cc similarity index 100% rename from src/native/monodroid/internal-pinvokes.cc rename to src/native/mono/monodroid/internal-pinvokes.cc diff --git a/src/native/monodroid/jni-remapping.cc b/src/native/mono/monodroid/jni-remapping.cc similarity index 100% rename from src/native/monodroid/jni-remapping.cc rename to src/native/mono/monodroid/jni-remapping.cc diff --git a/src/native/monodroid/jni-remapping.hh b/src/native/mono/monodroid/jni-remapping.hh similarity index 100% rename from src/native/monodroid/jni-remapping.hh rename to src/native/mono/monodroid/jni-remapping.hh diff --git a/src/native/monodroid/mono-image-loader.hh b/src/native/mono/monodroid/mono-image-loader.hh similarity index 100% rename from src/native/monodroid/mono-image-loader.hh rename to src/native/mono/monodroid/mono-image-loader.hh diff --git a/src/native/monodroid/mono-log-adapter.cc b/src/native/mono/monodroid/mono-log-adapter.cc similarity index 100% rename from src/native/monodroid/mono-log-adapter.cc rename to src/native/mono/monodroid/mono-log-adapter.cc diff --git a/src/native/monodroid/mono_android_Runtime.h b/src/native/mono/monodroid/mono_android_Runtime.h similarity index 100% rename from src/native/monodroid/mono_android_Runtime.h rename to src/native/mono/monodroid/mono_android_Runtime.h diff --git a/src/native/monodroid/monodroid-glue-internal.hh b/src/native/mono/monodroid/monodroid-glue-internal.hh similarity index 100% rename from src/native/monodroid/monodroid-glue-internal.hh rename to src/native/mono/monodroid/monodroid-glue-internal.hh diff --git a/src/native/monodroid/monodroid-glue.cc b/src/native/mono/monodroid/monodroid-glue.cc similarity index 100% rename from src/native/monodroid/monodroid-glue.cc rename to src/native/mono/monodroid/monodroid-glue.cc diff --git a/src/native/monodroid/monodroid-glue.hh b/src/native/mono/monodroid/monodroid-glue.hh similarity index 100% rename from src/native/monodroid/monodroid-glue.hh rename to src/native/mono/monodroid/monodroid-glue.hh diff --git a/src/native/monodroid/monodroid-networkinfo.cc b/src/native/mono/monodroid/monodroid-networkinfo.cc similarity index 100% rename from src/native/monodroid/monodroid-networkinfo.cc rename to src/native/mono/monodroid/monodroid-networkinfo.cc diff --git a/src/native/monodroid/monodroid-tracing.cc b/src/native/mono/monodroid/monodroid-tracing.cc similarity index 100% rename from src/native/monodroid/monodroid-tracing.cc rename to src/native/mono/monodroid/monodroid-tracing.cc diff --git a/src/native/monodroid/monodroid.h b/src/native/mono/monodroid/monodroid.h similarity index 100% rename from src/native/monodroid/monodroid.h rename to src/native/mono/monodroid/monodroid.h diff --git a/src/native/monodroid/monodroid.x b/src/native/mono/monodroid/monodroid.x similarity index 100% rename from src/native/monodroid/monodroid.x rename to src/native/mono/monodroid/monodroid.x diff --git a/src/native/monodroid/monovm-properties.cc b/src/native/mono/monodroid/monovm-properties.cc similarity index 100% rename from src/native/monodroid/monovm-properties.cc rename to src/native/mono/monodroid/monovm-properties.cc diff --git a/src/native/monodroid/monovm-properties.hh b/src/native/mono/monodroid/monovm-properties.hh similarity index 100% rename from src/native/monodroid/monovm-properties.hh rename to src/native/mono/monodroid/monovm-properties.hh diff --git a/src/native/monodroid/osbridge.cc b/src/native/mono/monodroid/osbridge.cc similarity index 100% rename from src/native/monodroid/osbridge.cc rename to src/native/mono/monodroid/osbridge.cc diff --git a/src/native/monodroid/osbridge.hh b/src/native/mono/monodroid/osbridge.hh similarity index 100% rename from src/native/monodroid/osbridge.hh rename to src/native/mono/monodroid/osbridge.hh diff --git a/src/native/monodroid/runtime-util.cc b/src/native/mono/monodroid/runtime-util.cc similarity index 100% rename from src/native/monodroid/runtime-util.cc rename to src/native/mono/monodroid/runtime-util.cc diff --git a/src/native/monodroid/runtime-util.hh b/src/native/mono/monodroid/runtime-util.hh similarity index 100% rename from src/native/monodroid/runtime-util.hh rename to src/native/mono/monodroid/runtime-util.hh diff --git a/src/native/monodroid/timezones.cc b/src/native/mono/monodroid/timezones.cc similarity index 100% rename from src/native/monodroid/timezones.cc rename to src/native/mono/monodroid/timezones.cc diff --git a/src/native/monodroid/win32/jni_md.h b/src/native/mono/monodroid/win32/jni_md.h similarity index 100% rename from src/native/monodroid/win32/jni_md.h rename to src/native/mono/monodroid/win32/jni_md.h diff --git a/src/native/monodroid/xamarin-android-app-context.cc b/src/native/mono/monodroid/xamarin-android-app-context.cc similarity index 100% rename from src/native/monodroid/xamarin-android-app-context.cc rename to src/native/mono/monodroid/xamarin-android-app-context.cc diff --git a/src/native/monodroid/xamarin_getifaddrs.cc b/src/native/mono/monodroid/xamarin_getifaddrs.cc similarity index 100% rename from src/native/monodroid/xamarin_getifaddrs.cc rename to src/native/mono/monodroid/xamarin_getifaddrs.cc diff --git a/src/native/pinvoke-override/CMakeLists.txt b/src/native/mono/pinvoke-override/CMakeLists.txt similarity index 100% rename from src/native/pinvoke-override/CMakeLists.txt rename to src/native/mono/pinvoke-override/CMakeLists.txt diff --git a/src/native/pinvoke-override/common.cc b/src/native/mono/pinvoke-override/common.cc similarity index 100% rename from src/native/pinvoke-override/common.cc rename to src/native/mono/pinvoke-override/common.cc diff --git a/src/native/pinvoke-override/dynamic.cc b/src/native/mono/pinvoke-override/dynamic.cc similarity index 100% rename from src/native/pinvoke-override/dynamic.cc rename to src/native/mono/pinvoke-override/dynamic.cc diff --git a/src/native/pinvoke-override/generate-pinvoke-tables.cc b/src/native/mono/pinvoke-override/generate-pinvoke-tables.cc similarity index 100% rename from src/native/pinvoke-override/generate-pinvoke-tables.cc rename to src/native/mono/pinvoke-override/generate-pinvoke-tables.cc diff --git a/src/native/pinvoke-override/pinvoke-override-api-impl.hh b/src/native/mono/pinvoke-override/pinvoke-override-api-impl.hh similarity index 100% rename from src/native/pinvoke-override/pinvoke-override-api-impl.hh rename to src/native/mono/pinvoke-override/pinvoke-override-api-impl.hh diff --git a/src/native/pinvoke-override/pinvoke-override-api.hh b/src/native/mono/pinvoke-override/pinvoke-override-api.hh similarity index 100% rename from src/native/pinvoke-override/pinvoke-override-api.hh rename to src/native/mono/pinvoke-override/pinvoke-override-api.hh diff --git a/src/native/pinvoke-override/pinvoke-tables.include b/src/native/mono/pinvoke-override/pinvoke-tables.include similarity index 100% rename from src/native/pinvoke-override/pinvoke-tables.include rename to src/native/mono/pinvoke-override/pinvoke-tables.include diff --git a/src/native/pinvoke-override/precompiled.cc b/src/native/mono/pinvoke-override/precompiled.cc similarity index 100% rename from src/native/pinvoke-override/precompiled.cc rename to src/native/mono/pinvoke-override/precompiled.cc diff --git a/src/native/runtime-base/CMakeLists.txt b/src/native/mono/runtime-base/CMakeLists.txt similarity index 100% rename from src/native/runtime-base/CMakeLists.txt rename to src/native/mono/runtime-base/CMakeLists.txt diff --git a/src/native/runtime-base/android-system.cc b/src/native/mono/runtime-base/android-system.cc similarity index 100% rename from src/native/runtime-base/android-system.cc rename to src/native/mono/runtime-base/android-system.cc diff --git a/src/native/runtime-base/android-system.hh b/src/native/mono/runtime-base/android-system.hh similarity index 100% rename from src/native/runtime-base/android-system.hh rename to src/native/mono/runtime-base/android-system.hh diff --git a/src/native/runtime-base/cpu-arch-detect.cc b/src/native/mono/runtime-base/cpu-arch-detect.cc similarity index 100% rename from src/native/runtime-base/cpu-arch-detect.cc rename to src/native/mono/runtime-base/cpu-arch-detect.cc diff --git a/src/native/runtime-base/cpu-arch.hh b/src/native/mono/runtime-base/cpu-arch.hh similarity index 100% rename from src/native/runtime-base/cpu-arch.hh rename to src/native/mono/runtime-base/cpu-arch.hh diff --git a/src/native/runtime-base/internal-pinvokes.hh b/src/native/mono/runtime-base/internal-pinvokes.hh similarity index 100% rename from src/native/runtime-base/internal-pinvokes.hh rename to src/native/mono/runtime-base/internal-pinvokes.hh diff --git a/src/native/runtime-base/jni-wrappers.hh b/src/native/mono/runtime-base/jni-wrappers.hh similarity index 100% rename from src/native/runtime-base/jni-wrappers.hh rename to src/native/mono/runtime-base/jni-wrappers.hh diff --git a/src/native/runtime-base/logger.cc b/src/native/mono/runtime-base/logger.cc similarity index 100% rename from src/native/runtime-base/logger.cc rename to src/native/mono/runtime-base/logger.cc diff --git a/src/native/runtime-base/logger.hh b/src/native/mono/runtime-base/logger.hh similarity index 100% rename from src/native/runtime-base/logger.hh rename to src/native/mono/runtime-base/logger.hh diff --git a/src/native/runtime-base/monodroid-dl.hh b/src/native/mono/runtime-base/monodroid-dl.hh similarity index 100% rename from src/native/runtime-base/monodroid-dl.hh rename to src/native/mono/runtime-base/monodroid-dl.hh diff --git a/src/native/runtime-base/monodroid-state.hh b/src/native/mono/runtime-base/monodroid-state.hh similarity index 100% rename from src/native/runtime-base/monodroid-state.hh rename to src/native/mono/runtime-base/monodroid-state.hh diff --git a/src/native/runtime-base/search.hh b/src/native/mono/runtime-base/search.hh similarity index 100% rename from src/native/runtime-base/search.hh rename to src/native/mono/runtime-base/search.hh diff --git a/src/native/runtime-base/shared-constants.cc b/src/native/mono/runtime-base/shared-constants.cc similarity index 100% rename from src/native/runtime-base/shared-constants.cc rename to src/native/mono/runtime-base/shared-constants.cc diff --git a/src/native/runtime-base/shared-constants.hh b/src/native/mono/runtime-base/shared-constants.hh similarity index 100% rename from src/native/runtime-base/shared-constants.hh rename to src/native/mono/runtime-base/shared-constants.hh diff --git a/src/native/runtime-base/startup-aware-lock.hh b/src/native/mono/runtime-base/startup-aware-lock.hh similarity index 100% rename from src/native/runtime-base/startup-aware-lock.hh rename to src/native/mono/runtime-base/startup-aware-lock.hh diff --git a/src/native/runtime-base/strings.hh b/src/native/mono/runtime-base/strings.hh similarity index 100% rename from src/native/runtime-base/strings.hh rename to src/native/mono/runtime-base/strings.hh diff --git a/src/native/runtime-base/timing-internal.cc b/src/native/mono/runtime-base/timing-internal.cc similarity index 100% rename from src/native/runtime-base/timing-internal.cc rename to src/native/mono/runtime-base/timing-internal.cc diff --git a/src/native/runtime-base/timing-internal.hh b/src/native/mono/runtime-base/timing-internal.hh similarity index 100% rename from src/native/runtime-base/timing-internal.hh rename to src/native/mono/runtime-base/timing-internal.hh diff --git a/src/native/runtime-base/timing.cc b/src/native/mono/runtime-base/timing.cc similarity index 100% rename from src/native/runtime-base/timing.cc rename to src/native/mono/runtime-base/timing.cc diff --git a/src/native/runtime-base/timing.hh b/src/native/mono/runtime-base/timing.hh similarity index 100% rename from src/native/runtime-base/timing.hh rename to src/native/mono/runtime-base/timing.hh diff --git a/src/native/runtime-base/util.cc b/src/native/mono/runtime-base/util.cc similarity index 100% rename from src/native/runtime-base/util.cc rename to src/native/mono/runtime-base/util.cc diff --git a/src/native/runtime-base/util.hh b/src/native/mono/runtime-base/util.hh similarity index 100% rename from src/native/runtime-base/util.hh rename to src/native/mono/runtime-base/util.hh diff --git a/src/native/runtime-base/xamarin_getifaddrs.h b/src/native/mono/runtime-base/xamarin_getifaddrs.h similarity index 100% rename from src/native/runtime-base/xamarin_getifaddrs.h rename to src/native/mono/runtime-base/xamarin_getifaddrs.h diff --git a/src/native/shared/CMakeLists.txt b/src/native/mono/shared/CMakeLists.txt similarity index 100% rename from src/native/shared/CMakeLists.txt rename to src/native/mono/shared/CMakeLists.txt diff --git a/src/native/shared/cpp-util.hh b/src/native/mono/shared/cpp-util.hh similarity index 100% rename from src/native/shared/cpp-util.hh rename to src/native/mono/shared/cpp-util.hh diff --git a/src/native/shared/cppcompat.hh b/src/native/mono/shared/cppcompat.hh similarity index 100% rename from src/native/shared/cppcompat.hh rename to src/native/mono/shared/cppcompat.hh diff --git a/src/native/shared/helpers.cc b/src/native/mono/shared/helpers.cc similarity index 100% rename from src/native/shared/helpers.cc rename to src/native/mono/shared/helpers.cc diff --git a/src/native/shared/helpers.hh b/src/native/mono/shared/helpers.hh similarity index 100% rename from src/native/shared/helpers.hh rename to src/native/mono/shared/helpers.hh diff --git a/src/native/shared/log_functions.cc b/src/native/mono/shared/log_functions.cc similarity index 100% rename from src/native/shared/log_functions.cc rename to src/native/mono/shared/log_functions.cc diff --git a/src/native/shared/log_level.hh b/src/native/mono/shared/log_level.hh similarity index 100% rename from src/native/shared/log_level.hh rename to src/native/mono/shared/log_level.hh diff --git a/src/native/shared/log_types.hh b/src/native/mono/shared/log_types.hh similarity index 100% rename from src/native/shared/log_types.hh rename to src/native/mono/shared/log_types.hh diff --git a/src/native/shared/platform-compat.hh b/src/native/mono/shared/platform-compat.hh similarity index 100% rename from src/native/shared/platform-compat.hh rename to src/native/mono/shared/platform-compat.hh diff --git a/src/native/shared/xxhash.hh b/src/native/mono/shared/xxhash.hh similarity index 100% rename from src/native/shared/xxhash.hh rename to src/native/mono/shared/xxhash.hh diff --git a/src/native/tracing/CMakeLists.txt b/src/native/mono/tracing/CMakeLists.txt similarity index 100% rename from src/native/tracing/CMakeLists.txt rename to src/native/mono/tracing/CMakeLists.txt diff --git a/src/native/tracing/native-tracing.cc b/src/native/mono/tracing/native-tracing.cc similarity index 100% rename from src/native/tracing/native-tracing.cc rename to src/native/mono/tracing/native-tracing.cc diff --git a/src/native/tracing/native-tracing.hh b/src/native/mono/tracing/native-tracing.hh similarity index 100% rename from src/native/tracing/native-tracing.hh rename to src/native/mono/tracing/native-tracing.hh diff --git a/src/native/xamarin-app-stub/CMakeLists.txt b/src/native/mono/xamarin-app-stub/CMakeLists.txt similarity index 100% rename from src/native/xamarin-app-stub/CMakeLists.txt rename to src/native/mono/xamarin-app-stub/CMakeLists.txt diff --git a/src/native/xamarin-app-stub/application_dso_stub.cc b/src/native/mono/xamarin-app-stub/application_dso_stub.cc similarity index 100% rename from src/native/xamarin-app-stub/application_dso_stub.cc rename to src/native/mono/xamarin-app-stub/application_dso_stub.cc diff --git a/src/native/xamarin-app-stub/xamarin-app.hh b/src/native/mono/xamarin-app-stub/xamarin-app.hh similarity index 100% rename from src/native/xamarin-app-stub/xamarin-app.hh rename to src/native/mono/xamarin-app-stub/xamarin-app.hh diff --git a/src/native/xamarin-debug-app-helper/CMakeLists.txt b/src/native/mono/xamarin-debug-app-helper/CMakeLists.txt similarity index 100% rename from src/native/xamarin-debug-app-helper/CMakeLists.txt rename to src/native/mono/xamarin-debug-app-helper/CMakeLists.txt diff --git a/src/native/xamarin-debug-app-helper/debug-app-helper.cc b/src/native/mono/xamarin-debug-app-helper/debug-app-helper.cc similarity index 100% rename from src/native/xamarin-debug-app-helper/debug-app-helper.cc rename to src/native/mono/xamarin-debug-app-helper/debug-app-helper.cc diff --git a/src/native/xamarin-debug-app-helper/debug-app-helper.hh b/src/native/mono/xamarin-debug-app-helper/debug-app-helper.hh similarity index 100% rename from src/native/xamarin-debug-app-helper/debug-app-helper.hh rename to src/native/mono/xamarin-debug-app-helper/debug-app-helper.hh diff --git a/src/native/native.csproj b/src/native/native-mono.csproj similarity index 100% rename from src/native/native.csproj rename to src/native/native-mono.csproj