This is an archive of the discontinued LLVM Phabricator instance.

Fix up Info.plist when building LLDB.framework with CMake
ClosedPublic

Authored by xiaobai on Jun 5 2018, 11:07 AM.

Details

Summary

We weren't using the Info.plist template in resources previously.
When using that template, some of the key's values weren't being populated
because some variables were not being defined. In one case, CMake didn't
like the substring expansion syntax of CFBundleIdentifier so I got rid of that.

Event Timeline

xiaobai created this revision.Jun 5 2018, 11:07 AM
sas added inline comments.Jun 5 2018, 4:21 PM
source/API/CMakeLists.txt
184 ↗(On Diff #150008)

Hardcoding this here isn't ideal. Where did you get this number from? Is there a way to fetch it from a single location?

clayborg added inline comments.Jun 5 2018, 4:41 PM
source/API/CMakeLists.txt
184 ↗(On Diff #150008)

Currently the apple generic versioning is used and the value for this is grabbed from CURRENT_PROJECT_VERSION in the Xcode project in lldb.xcodeproj/project.pbxproj. We will need to let people know that they will need to update this variable from now on.

184 ↗(On Diff #150008)

It was hardcoded into the Xcode project before. The numbers would be manually bumped by using "agvtool bump -all". That would update the Xcode project and a few plist files. Feel free to try running that from the root LLDB directory to see all files that get updated, then revert once you see what changed.

xiaobai added inline comments.Jun 6 2018, 11:51 AM
source/API/CMakeLists.txt
184 ↗(On Diff #150008)

In the meantime, is hardcoding this version an acceptable thing to do? Additionally, this value is actually hardcoded in the Info.plist as CFBundleVersion, but filled in with CURRENT_PROJECT_VERSION in CFBundleShortVersionString. That seems kind of clowny.

Friendly ping!

sas accepted this revision.Jun 18 2018, 4:36 PM

LGTM for now.

This revision is now accepted and ready to land.Jun 18 2018, 4:36 PM
clayborg accepted this revision.Jun 18 2018, 4:39 PM

Looks good to me as long as Xcode still produces the same Info.plist in its LLDB.framework after your changes.

xiaobai updated this revision to Diff 151840.Jun 18 2018, 7:41 PM

Rebasing this commit after my framework refactor

This revision was automatically updated to reflect the committed changes.