From 64c9982593949744e1fb285906973222b8d34427 Mon Sep 17 00:00:00 2001 From: Bryan Phelps Date: Thu, 1 Aug 2019 09:20:12 -0700 Subject: [PATCH] #510 - Part 1 - Move `dyllibs` to `Frameworks` folder (#529) * Move dyllibs to 'Frameworks' directory per MacOS bundle guidelines * Set inner installation path of libraries * No longer need to special case the dylibs; since they are in the expected bundle location --- scripts/osx/publish.sh | 3 --- scripts/release.js | 6 +++--- 2 files changed, 3 insertions(+), 6 deletions(-) diff --git a/scripts/osx/publish.sh b/scripts/osx/publish.sh index 133928aeb1..a390482ac1 100755 --- a/scripts/osx/publish.sh +++ b/scripts/osx/publish.sh @@ -21,9 +21,6 @@ else echo "Checking identities..." security find-identity -v - # Need to sign the dylib files directly, as they aren't - # picked up by --deep - codesign --force --verbose --sign "Outrun Labs, LLC" _release/Onivim2.App/Contents/libs/*.dylib echo "Starting codesign..." codesign --deep --force --verbose --sign "Outrun Labs, LLC" _release/Onivim2.App diff --git a/scripts/release.js b/scripts/release.js index bf5e39f29b..7a8e8e3523 100644 --- a/scripts/release.js +++ b/scripts/release.js @@ -74,7 +74,7 @@ if (process.platform == "linux") { const contentsDirectory = path.join(appDirectory, "Contents"); const resourcesDirectory = path.join(contentsDirectory, "Resources"); const binaryDirectory = path.join(contentsDirectory, "MacOS"); - const libsDirectory = path.join(contentsDirectory, "libs"); + const frameworksDirectory = path.join(contentsDirectory, "Frameworks"); const imageSourceDirectory = path.join(rootDirectory, "assets", "images"); const iconSourcePath = path.join(imageSourceDirectory, "Onivim2.icns"); @@ -93,7 +93,7 @@ if (process.platform == "linux") { NSHighResolutionCapable: true, }; - fs.mkdirpSync(libsDirectory); + fs.mkdirpSync(frameworksDirectory); fs.mkdirpSync(resourcesDirectory); fs.writeFileSync(plistFile, require("plist").build(plistContents)); @@ -112,7 +112,7 @@ if (process.platform == "linux") { // Copy icon copy(iconSourcePath, path.join(resourcesDirectory, "Onivim2.icns")); - shell(`dylibbundler -b -x "${path.join(binaryDirectory, "Oni2_editor")}" -d "${libsDirectory}" -cd`); + shell(`dylibbundler -b -x "${path.join(binaryDirectory, "Oni2_editor")}" -d "${frameworksDirectory}" -p "@executable_path/../Frameworks/" -cd`); const dmgPath = path.join(releaseDirectory, "Onivim2.dmg"); const dmgJsonPath = path.join(releaseDirectory, "appdmg.json");