From bc1a139af84ab8d6b44008c53ab429cec7224dc3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kr=C3=A6n=20Hansen?= Date: Sat, 31 Jan 2026 20:10:30 +0100 Subject: [PATCH] Fix bundle identifiers --- .changeset/tall-tips-fail.md | 5 +++++ packages/gyp-to-cmake/src/transformer.ts | 8 ++++++-- 2 files changed, 11 insertions(+), 2 deletions(-) create mode 100644 .changeset/tall-tips-fail.md diff --git a/.changeset/tall-tips-fail.md b/.changeset/tall-tips-fail.md new file mode 100644 index 00000000..bedcf4c7 --- /dev/null +++ b/.changeset/tall-tips-fail.md @@ -0,0 +1,5 @@ +--- +"gyp-to-cmake": patch +--- + +Fixed escaping bundle ids to no longer contain "\_" diff --git a/packages/gyp-to-cmake/src/transformer.ts b/packages/gyp-to-cmake/src/transformer.ts index a5660eba..4901df4f 100644 --- a/packages/gyp-to-cmake/src/transformer.ts +++ b/packages/gyp-to-cmake/src/transformer.ts @@ -27,8 +27,12 @@ function escapeSpaces(source: string) { return source.replace(/ /g, "\\ "); } -function escapeBundleIdentifier(identifier: string) { - return identifier.replaceAll("__", ".").replace(/[^A-Za-z0-9.-_]/g, "-"); +/** + * Escapes any input to match a CFBundleIdentifier + * See https://developer.apple.com/documentation/bundleresources/information-property-list/cfbundleidentifier + */ +export function escapeBundleIdentifier(input: string) { + return input.replaceAll("__", ".").replace(/[^A-Za-z0-9-.]/g, "-"); } /**