diff --git a/.gitattributes b/.gitattributes index 6456f2ef592b8a..9278790f45592b 100644 --- a/.gitattributes +++ b/.gitattributes @@ -81,4 +81,4 @@ src/tests/JIT/Performance/CodeQuality/BenchmarksGame/reverse-complement/revcomp- src/tests/JIT/Performance/CodeQuality/BenchmarksGame/k-nucleotide/knucleotide-input.txt text eol=lf src/tests/JIT/Performance/CodeQuality/BenchmarksGame/k-nucleotide/knucleotide-input-big.txt text eol=lf src/mono/browser/runtime/dotnet.d.ts text eol=lf -src/native/corehost/browserhost/loader/dotnet.d.ts text eol=lf +src/native/libs/Common/JavaScript/loader/dotnet.d.ts text eol=lf diff --git a/eng/native.wasm.targets b/eng/native.wasm.targets index 6cc8549d92f9f1..a8966ecdb85e9b 100644 --- a/eng/native.wasm.targets +++ b/eng/native.wasm.targets @@ -24,6 +24,7 @@ + diff --git a/src/native/.eslintignore b/src/native/.eslintignore index 60eb58f0ba9393..e83cae41cdd642 100644 --- a/src/native/.eslintignore +++ b/src/native/.eslintignore @@ -1 +1 @@ -./corehost/browserhost/loader/dotnet.d.ts +./libs/Common/JavaScript/loader/dotnet.d.ts diff --git a/src/native/libs/Common/JavaScript/CMakeLists.txt b/src/native/libs/Common/JavaScript/CMakeLists.txt index 880d4dac2f58ed..9f9ebbb7c859ca 100644 --- a/src/native/libs/Common/JavaScript/CMakeLists.txt +++ b/src/native/libs/Common/JavaScript/CMakeLists.txt @@ -11,38 +11,40 @@ set(ROLLUP_TS_SOURCES "${CLR_SRC_NATIVE_DIR}/rollup.config.js" "${CLR_SRC_NATIVE_DIR}/rollup.config.defines.js" "${CLR_SRC_NATIVE_DIR}/rollup.config.plugins.js" + "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/libBrowserHost.footer.js" "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/libSystem.Native.Browser.Utils.footer.js" "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/libSystem.Native.Browser.extpost.js" "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/libSystem.Native.Browser.footer.js" "${CLR_SRC_NATIVE_DIR}/libs/System.Runtime.InteropServices.JavaScript.Native/libSystem.Runtime.InteropServices.JavaScript.Native.footer.js" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/host/assets.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/host/cross-module.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/host/host.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/host/index.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/host/per-module.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/host/types.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/assets.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/bootstrap.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/config.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/cross-module.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/dotnet.d.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/dotnet.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/exit.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/host-builder.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/icu.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/index.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/lib-initializers.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/logging.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/per-module.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/polyfills.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/promise-completion-source.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/run.ts" - "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/loader/types.ts" "${CLR_SRC_NATIVE_DIR}/corehost/browserhost/types.ts" - "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/ems-ambient/index.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/cross-module/index.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/ems-ambient/index.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/host/assets.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/host/cross-module.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/host/host.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/host/index.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/host/per-module.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/host/types.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/assets.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/bootstrap.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/config.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/cross-module.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/dotnet.d.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/dotnet.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/exit.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/host-builder.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/icu.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/index.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/lib-initializers.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/logging.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/per-module.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/polyfills.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/promise-completion-source.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/run.ts" + "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/loader/types.ts" "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/per-module/index.ts" "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/types/consts.d.ts" "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/types/ems-ambient.ts" @@ -55,8 +57,9 @@ set(ROLLUP_TS_SOURCES "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/types/node.d.ts" "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/types/public-api.ts" "${CLR_SRC_NATIVE_DIR}/libs/Common/JavaScript/types/v8.d.ts" - "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/diagnostics/cross-module.ts" + "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/diagnostics/console-proxy.ts" + "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/diagnostics/cross-module.ts" "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/diagnostics/exit.ts" "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/diagnostics/index.ts" "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/diagnostics/per-module.ts" @@ -79,6 +82,7 @@ set(ROLLUP_TS_SOURCES "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/utils/runtime-list.ts" "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/utils/strings.ts" "${CLR_SRC_NATIVE_DIR}/libs/System.Native.Browser/utils/types.ts" + "${CLR_SRC_NATIVE_DIR}/libs/System.Runtime.InteropServices.JavaScript.Native/dotnet.runtime.ts" "${CLR_SRC_NATIVE_DIR}/libs/System.Runtime.InteropServices.JavaScript.Native/interop/cancelable-promise.ts" "${CLR_SRC_NATIVE_DIR}/libs/System.Runtime.InteropServices.JavaScript.Native/interop/cross-module.ts" @@ -108,8 +112,6 @@ set(ROLLUP_OUTPUTS "${STATIC_LIB_DESTINATION}/dotnet.js" "${STATIC_LIB_DESTINATION}/dotnet.js.map" "${STATIC_LIB_DESTINATION}/dotnet.d.ts" - "${STATIC_LIB_DESTINATION}/libBrowserHost.js" - "${STATIC_LIB_DESTINATION}/libBrowserHost.js.map" "${STATIC_LIB_DESTINATION}/libSystem.Native.Browser.js" "${STATIC_LIB_DESTINATION}/libSystem.Native.Browser.js.map" "${STATIC_LIB_DESTINATION}/libSystem.Native.Browser.Utils.js" @@ -122,9 +124,19 @@ set(ROLLUP_OUTPUTS "${STATIC_LIB_DESTINATION}/libSystem.Runtime.InteropServices.JavaScript.Native.js.map" ) +if(CMAKE_BUILD_RUNTIME_FLAVOR STREQUAL "CoreCLR") + LIST(APPEND ROLLUP_OUTPUTS + "${STATIC_LIB_DESTINATION}/libBrowserHost.js" + "${STATIC_LIB_DESTINATION}/libBrowserHost.js.map" + ) +else() + #error TODO Mono +endif() + + add_custom_command( OUTPUT ${ROLLUP_OUTPUTS} - COMMAND npm run rollup:cmake -- "Configuration:${CMAKE_BUILD_TYPE},ProductVersion:${CMAKE_PRODUCT_VERSION},ContinuousIntegrationBuild:${CMAKE_CONTINUOUS_INTEGRATION_BUILD},StaticLibDestination:${STATIC_LIB_DESTINATION}" + COMMAND npm run rollup:cmake -- "Configuration:${CMAKE_BUILD_TYPE},ProductVersion:${CMAKE_PRODUCT_VERSION},ContinuousIntegrationBuild:${CMAKE_CONTINUOUS_INTEGRATION_BUILD},RuntimeFlavor:${CMAKE_BUILD_RUNTIME_FLAVOR},StaticLibDestination:${STATIC_LIB_DESTINATION}" WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}/../.." COMMENT "Running 'npm run rollup' to generate JavaScript bundles" DEPENDS ${ROLLUP_TS_SOURCES} diff --git a/src/native/corehost/browserhost/host/assets.ts b/src/native/libs/Common/JavaScript/host/assets.ts similarity index 96% rename from src/native/corehost/browserhost/host/assets.ts rename to src/native/libs/Common/JavaScript/host/assets.ts index b4d920c2c3b9c8..3fd2a34c4ceab6 100644 --- a/src/native/corehost/browserhost/host/assets.ts +++ b/src/native/libs/Common/JavaScript/host/assets.ts @@ -1,10 +1,10 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -import type { CharPtr, VfsAsset, VoidPtr, VoidPtrPtr } from "./types"; -import { _ems_ } from "../../../libs/Common/JavaScript/ems-ambient"; +import type { CharPtr, VfsAsset, VoidPtr, VoidPtrPtr } from "../types"; +import { _ems_ } from "../ems-ambient"; -import { browserVirtualAppBase, ENVIRONMENT_IS_WEB } from "./per-module"; +import { browserVirtualAppBase, ENVIRONMENT_IS_WEB } from "../per-module"; const hasInstantiateStreaming = typeof WebAssembly !== "undefined" && typeof WebAssembly.instantiateStreaming === "function"; const loadedAssemblies: Map = new Map(); diff --git a/src/native/corehost/browserhost/host/cross-module.ts b/src/native/libs/Common/JavaScript/host/cross-module.ts similarity index 69% rename from src/native/corehost/browserhost/host/cross-module.ts rename to src/native/libs/Common/JavaScript/host/cross-module.ts index d5e72ee0889671..7e45f1da5f993b 100644 --- a/src/native/corehost/browserhost/host/cross-module.ts +++ b/src/native/libs/Common/JavaScript/host/cross-module.ts @@ -1,4 +1,4 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -export * from "../../../libs/Common/JavaScript/cross-module"; +export * from "../cross-module"; diff --git a/src/native/corehost/browserhost/host/host.ts b/src/native/libs/Common/JavaScript/host/host.ts similarity index 96% rename from src/native/corehost/browserhost/host/host.ts rename to src/native/libs/Common/JavaScript/host/host.ts index 421138d900c4e9..4b7f63a19c9e89 100644 --- a/src/native/corehost/browserhost/host/host.ts +++ b/src/native/libs/Common/JavaScript/host/host.ts @@ -1,9 +1,9 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -import type { CharPtrPtr, VoidPtr } from "./types"; -import { _ems_ } from "../../../libs/Common/JavaScript/ems-ambient"; -import { browserVirtualAppBase } from "./per-module"; +import type { CharPtrPtr, VoidPtr } from "../types"; +import { _ems_ } from "../ems-ambient"; +import { browserVirtualAppBase } from "../per-module"; const HOST_PROPERTY_RUNTIME_CONTRACT = "HOST_RUNTIME_CONTRACT"; const HOST_PROPERTY_TRUSTED_PLATFORM_ASSEMBLIES = "TRUSTED_PLATFORM_ASSEMBLIES"; diff --git a/src/native/corehost/browserhost/host/index.ts b/src/native/libs/Common/JavaScript/host/index.ts similarity index 97% rename from src/native/corehost/browserhost/host/index.ts rename to src/native/libs/Common/JavaScript/host/index.ts index e638eb884c83fe..bb0f9f89f5f669 100644 --- a/src/native/corehost/browserhost/host/index.ts +++ b/src/native/libs/Common/JavaScript/host/index.ts @@ -3,7 +3,7 @@ import type { InternalExchange, BrowserHostExports, RuntimeAPI, BrowserHostExportsTable, LoaderConfigInternal } from "./types"; import { InternalExchangeIndex } from "./types"; -import { _ems_ } from "../../../libs/Common/JavaScript/ems-ambient"; +import { _ems_ } from "../ems-ambient"; import GitHash from "consts:gitHash"; diff --git a/src/native/corehost/browserhost/host/per-module.ts b/src/native/libs/Common/JavaScript/host/per-module.ts similarity index 69% rename from src/native/corehost/browserhost/host/per-module.ts rename to src/native/libs/Common/JavaScript/host/per-module.ts index 4d63f6790bfbce..eaeaff9614e904 100644 --- a/src/native/corehost/browserhost/host/per-module.ts +++ b/src/native/libs/Common/JavaScript/host/per-module.ts @@ -1,4 +1,4 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -export * from "../../../libs/Common/JavaScript/per-module"; +export * from "../per-module"; diff --git a/src/native/corehost/browserhost/host/types.ts b/src/native/libs/Common/JavaScript/host/types.ts similarity index 100% rename from src/native/corehost/browserhost/host/types.ts rename to src/native/libs/Common/JavaScript/host/types.ts diff --git a/src/native/corehost/browserhost/loader/assets.ts b/src/native/libs/Common/JavaScript/loader/assets.ts similarity index 100% rename from src/native/corehost/browserhost/loader/assets.ts rename to src/native/libs/Common/JavaScript/loader/assets.ts diff --git a/src/native/corehost/browserhost/loader/bootstrap.ts b/src/native/libs/Common/JavaScript/loader/bootstrap.ts similarity index 100% rename from src/native/corehost/browserhost/loader/bootstrap.ts rename to src/native/libs/Common/JavaScript/loader/bootstrap.ts diff --git a/src/native/corehost/browserhost/loader/config.ts b/src/native/libs/Common/JavaScript/loader/config.ts similarity index 100% rename from src/native/corehost/browserhost/loader/config.ts rename to src/native/libs/Common/JavaScript/loader/config.ts diff --git a/src/native/corehost/browserhost/loader/cross-module.ts b/src/native/libs/Common/JavaScript/loader/cross-module.ts similarity index 69% rename from src/native/corehost/browserhost/loader/cross-module.ts rename to src/native/libs/Common/JavaScript/loader/cross-module.ts index d5e72ee0889671..7e45f1da5f993b 100644 --- a/src/native/corehost/browserhost/loader/cross-module.ts +++ b/src/native/libs/Common/JavaScript/loader/cross-module.ts @@ -1,4 +1,4 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -export * from "../../../libs/Common/JavaScript/cross-module"; +export * from "../cross-module"; diff --git a/src/native/corehost/browserhost/loader/dotnet.d.ts b/src/native/libs/Common/JavaScript/loader/dotnet.d.ts similarity index 100% rename from src/native/corehost/browserhost/loader/dotnet.d.ts rename to src/native/libs/Common/JavaScript/loader/dotnet.d.ts diff --git a/src/native/corehost/browserhost/loader/dotnet.ts b/src/native/libs/Common/JavaScript/loader/dotnet.ts similarity index 100% rename from src/native/corehost/browserhost/loader/dotnet.ts rename to src/native/libs/Common/JavaScript/loader/dotnet.ts diff --git a/src/native/corehost/browserhost/loader/exit.ts b/src/native/libs/Common/JavaScript/loader/exit.ts similarity index 100% rename from src/native/corehost/browserhost/loader/exit.ts rename to src/native/libs/Common/JavaScript/loader/exit.ts diff --git a/src/native/corehost/browserhost/loader/host-builder.ts b/src/native/libs/Common/JavaScript/loader/host-builder.ts similarity index 100% rename from src/native/corehost/browserhost/loader/host-builder.ts rename to src/native/libs/Common/JavaScript/loader/host-builder.ts diff --git a/src/native/corehost/browserhost/loader/icu.ts b/src/native/libs/Common/JavaScript/loader/icu.ts similarity index 100% rename from src/native/corehost/browserhost/loader/icu.ts rename to src/native/libs/Common/JavaScript/loader/icu.ts diff --git a/src/native/corehost/browserhost/loader/index.ts b/src/native/libs/Common/JavaScript/loader/index.ts similarity index 100% rename from src/native/corehost/browserhost/loader/index.ts rename to src/native/libs/Common/JavaScript/loader/index.ts diff --git a/src/native/corehost/browserhost/loader/lib-initializers.ts b/src/native/libs/Common/JavaScript/loader/lib-initializers.ts similarity index 100% rename from src/native/corehost/browserhost/loader/lib-initializers.ts rename to src/native/libs/Common/JavaScript/loader/lib-initializers.ts diff --git a/src/native/corehost/browserhost/loader/logging.ts b/src/native/libs/Common/JavaScript/loader/logging.ts similarity index 100% rename from src/native/corehost/browserhost/loader/logging.ts rename to src/native/libs/Common/JavaScript/loader/logging.ts diff --git a/src/native/corehost/browserhost/loader/per-module.ts b/src/native/libs/Common/JavaScript/loader/per-module.ts similarity index 69% rename from src/native/corehost/browserhost/loader/per-module.ts rename to src/native/libs/Common/JavaScript/loader/per-module.ts index 4d63f6790bfbce..eaeaff9614e904 100644 --- a/src/native/corehost/browserhost/loader/per-module.ts +++ b/src/native/libs/Common/JavaScript/loader/per-module.ts @@ -1,4 +1,4 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -export * from "../../../libs/Common/JavaScript/per-module"; +export * from "../per-module"; diff --git a/src/native/corehost/browserhost/loader/polyfills.ts b/src/native/libs/Common/JavaScript/loader/polyfills.ts similarity index 100% rename from src/native/corehost/browserhost/loader/polyfills.ts rename to src/native/libs/Common/JavaScript/loader/polyfills.ts diff --git a/src/native/corehost/browserhost/loader/promise-completion-source.ts b/src/native/libs/Common/JavaScript/loader/promise-completion-source.ts similarity index 100% rename from src/native/corehost/browserhost/loader/promise-completion-source.ts rename to src/native/libs/Common/JavaScript/loader/promise-completion-source.ts diff --git a/src/native/corehost/browserhost/loader/run.ts b/src/native/libs/Common/JavaScript/loader/run.ts similarity index 100% rename from src/native/corehost/browserhost/loader/run.ts rename to src/native/libs/Common/JavaScript/loader/run.ts diff --git a/src/native/corehost/browserhost/loader/types.ts b/src/native/libs/Common/JavaScript/loader/types.ts similarity index 100% rename from src/native/corehost/browserhost/loader/types.ts rename to src/native/libs/Common/JavaScript/loader/types.ts diff --git a/src/native/libs/Common/JavaScript/types/exchange.ts b/src/native/libs/Common/JavaScript/types/exchange.ts index b228f7e2e06f34..f2d5655713ac30 100644 --- a/src/native/libs/Common/JavaScript/types/exchange.ts +++ b/src/native/libs/Common/JavaScript/types/exchange.ts @@ -1,13 +1,13 @@ // Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. -import type { check, error, info, warn, debug, fastCheck, normalizeException } from "../../../../corehost/browserhost/loader/logging"; -import type { resolveRunMainPromise, rejectRunMainPromise, getRunMainPromise, abortStartup } from "../../../../corehost/browserhost/loader/run"; -import type { addOnExitListener, isExited, isRuntimeRunning, quitNow } from "../../../../corehost/browserhost/loader/exit"; +import type { check, error, info, warn, debug, fastCheck, normalizeException } from "../loader/logging"; +import type { resolveRunMainPromise, rejectRunMainPromise, getRunMainPromise, abortStartup } from "../loader/run"; +import type { addOnExitListener, isExited, isRuntimeRunning, quitNow } from "../loader/exit"; -import type { initializeCoreCLR } from "../../../../corehost/browserhost/host/host"; -import type { instantiateWasm, installVfsFile, registerDllBytes, loadIcuData, registerPdbBytes } from "../../../../corehost/browserhost/host/assets"; -import type { createPromiseCompletionSource, getPromiseCompletionSource, isControllablePromise } from "../../../../corehost/browserhost/loader/promise-completion-source"; +import type { initializeCoreCLR } from "../host/host"; +import type { instantiateWasm, installVfsFile, registerDllBytes, loadIcuData, registerPdbBytes } from "../host/assets"; +import type { createPromiseCompletionSource, getPromiseCompletionSource, isControllablePromise } from "../loader/promise-completion-source"; import type { isSharedArrayBuffer, zeroRegion } from "../../../System.Native.Browser/utils/memory"; import type { stringToUTF16, stringToUTF16Ptr, stringToUTF8, stringToUTF8Ptr, utf16ToString } from "../../../System.Native.Browser/utils/strings"; diff --git a/src/native/package.json b/src/native/package.json index a21651a2457791..e1939fd60b32d7 100644 --- a/src/native/package.json +++ b/src/native/package.json @@ -12,8 +12,8 @@ "scripts": { "rollup:stub": "node rollup.stub.js", "rollup:cmake": "rollup -c --environment ", - "rollup:release": "rollup -c --environment Configuration:Release,ProductVersion:11.0,ContinuousIntegrationBuild:false", - "rollup:debug": "rollup -c --environment Configuration:Debug,ProductVersion:11.0,ContinuousIntegrationBuild:false", + "rollup:release": "rollup -c --environment Configuration:Release,ProductVersion:11.0,ContinuousIntegrationBuild:false,RuntimeFlavor:CoreCLR", + "rollup:debug": "rollup -c --environment Configuration:Debug,ProductVersion:11.0,ContinuousIntegrationBuild:false,RuntimeFlavor:CoreCLR", "lint": "eslint --no-color --max-warnings=0 \"./**/*.ts\" \"./**/*.js\"", "format": "eslint --fix \"./**/*.ts\" \"./*.js\"" }, diff --git a/src/native/rollup.config.defines.js b/src/native/rollup.config.defines.js index 675e964c570058..92b6a882797379 100644 --- a/src/native/rollup.config.defines.js +++ b/src/native/rollup.config.defines.js @@ -16,11 +16,12 @@ if (process.env.ProductVersion === undefined) { } export const configuration = process.env.Configuration !== "Release" && process.env.Configuration !== "RELEASE" ? "Debug" : "Release"; +export const runtimeFlavor = process.env.RuntimeFlavor || "CoreCLR"; export const productVersion = process.env.ProductVersion; export const isContinuousIntegrationBuild = process.env.ContinuousIntegrationBuild === "true" ? true : false; export const staticLibDestination = process.env.StaticLibDestination || `../../artifacts/obj/native/net${productVersion}-browser-${configuration}-wasm/lib`; -console.log(`Rollup configuration: Configuration=${configuration}, ProductVersion=${productVersion}, ContinuousIntegrationBuild=${isContinuousIntegrationBuild}`); +console.log(`Rollup configuration: Configuration=${configuration}, RuntimeFlavor=${runtimeFlavor}, ProductVersion=${productVersion}, ContinuousIntegrationBuild=${isContinuousIntegrationBuild}`); export const banner = "//! Licensed to the .NET Foundation under one or more agreements.\n//! The .NET Foundation licenses this file to you under the MIT license.\n//! This is generated file, see src/native/rollup.config.js\n\n"; export const banner_dts = banner + "//! This is not considered public API with backward compatibility guarantees. \n"; @@ -49,6 +50,7 @@ try { export const envConstants = { productVersion, configuration, + runtimeFlavor, gitHash, isContinuousIntegrationBuild, }; diff --git a/src/native/rollup.config.js b/src/native/rollup.config.js index 241403ff6546bd..4cd6db923db0ec 100644 --- a/src/native/rollup.config.js +++ b/src/native/rollup.config.js @@ -10,6 +10,7 @@ import { isDebug, staticLibDestination, keep_classnames, keep_fnames, reserved, inlinefastCheck, + runtimeFlavor, } from "./rollup.config.defines.js"; import { terserPlugin, writeOnChangePlugin, consts, onwarn, alwaysLF, iife2fe, emsAmbient, regexReplace, sourcemapPathTransform } from "./rollup.config.plugins.js"; import { promises as fs } from "fs"; @@ -25,7 +26,7 @@ const dotnetDTS = { }, ...(isDebug ? [{ format: "es", - file: "./corehost/browserhost/loader/dotnet.d.ts", + file: "./libs/Common/JavaScript/loader/dotnet.d.ts", banner: banner_dts, plugins: [alwaysLF(), writeOnChangePlugin()], }] : []) @@ -36,7 +37,7 @@ const dotnetDTS = { }; const dotnetJS = configure({ - input: "./corehost/browserhost/loader/dotnet.ts", + input: "./libs/Common/JavaScript/loader/dotnet.ts", output: [{ file: staticLibDestination + "/dotnet.js", intro: "/*! bundlerFriendlyImports */", @@ -141,7 +142,7 @@ const libInteropJavaScriptNative = configure({ }); const libBrowserHost = configure({ - input: "./corehost/browserhost/host/index.ts", + input: "./libs/Common/JavaScript/host/index.ts", output: [{ name: "libBrowserHost", format: "iife",