Author: Serban Date: 2024-09-18T08:05:35+02:00 New Revision: 30eb19321349827056facd54afab9b856b9f9d0a
URL: https://github.com/llvm/llvm-project/commit/30eb19321349827056facd54afab9b856b9f9d0a DIFF: https://github.com/llvm/llvm-project/commit/30eb19321349827056facd54afab9b856b9f9d0a.diff LOG: [LLDB][lldb-dap][vscode-lldb] Add Environment configuration for the lldb-dap process (#108948) Frequently, environment variables such as `LLDB_USE_NATIVE_PDB_READER` are needed to be able to use lldb-dap in vscode This PR adds a way to set the environment for the lldb-dap process using configuration. Added: Modified: lldb/tools/lldb-dap/package-lock.json lldb/tools/lldb-dap/package.json lldb/tools/lldb-dap/src-ts/extension.ts Removed: ################################################################################ diff --git a/lldb/tools/lldb-dap/package-lock.json b/lldb/tools/lldb-dap/package-lock.json index 96570e42dbfdc4..8663659715590a 100644 --- a/lldb/tools/lldb-dap/package-lock.json +++ b/lldb/tools/lldb-dap/package-lock.json @@ -1,12 +1,12 @@ { "name": "lldb-dap", - "version": "0.2.4", + "version": "0.2.6", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "lldb-dap", - "version": "0.2.4", + "version": "0.2.6", "license": "Apache 2.0 License with LLVM exceptions", "devDependencies": { "@types/node": "^18.11.18", diff --git a/lldb/tools/lldb-dap/package.json b/lldb/tools/lldb-dap/package.json index d35accfb6ec4e8..33b09d56ab17e2 100644 --- a/lldb/tools/lldb-dap/package.json +++ b/lldb/tools/lldb-dap/package.json @@ -1,7 +1,7 @@ { "name": "lldb-dap", "displayName": "LLDB DAP", - "version": "0.2.5", + "version": "0.2.6", "publisher": "llvm-vs-code-extensions", "homepage": "https://lldb.llvm.org", "description": "LLDB debugging from VSCode", @@ -78,6 +78,15 @@ "scope": "resource", "type": "string", "description": "The log path for lldb-dap (if any)" + }, + "lldb-dap.environment": { + "scope": "resource", + "type": "object", + "default": {}, + "description": "The environment of the lldb-dap process.", + "additionalProperties": { + "type": "string" + } } } }, diff --git a/lldb/tools/lldb-dap/src-ts/extension.ts b/lldb/tools/lldb-dap/src-ts/extension.ts index fdc4f47b238b5a..36d3dfba18c142 100644 --- a/lldb/tools/lldb-dap/src-ts/extension.ts +++ b/lldb/tools/lldb-dap/src-ts/extension.ts @@ -25,9 +25,15 @@ function createDefaultLLDBDapOptions(): LLDBDapOptions { if (log_path) { env["LLDBDAP_LOG"] = log_path; } - + const configEnvironment = config.get<{ [key: string]: string }>("environment") || {}; if (path) { - return new vscode.DebugAdapterExecutable(path, [], { env }); + const dbgOptions = { + env: { + ...configEnvironment, + ...env, + } + }; + return new vscode.DebugAdapterExecutable(path, [], dbgOptions); } else if (packageJSONExecutable) { return new vscode.DebugAdapterExecutable( packageJSONExecutable.command, @@ -36,6 +42,7 @@ function createDefaultLLDBDapOptions(): LLDBDapOptions { ...packageJSONExecutable.options, env: { ...packageJSONExecutable.options?.env, + ...configEnvironment, ...env, }, }, _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits