View Issue Details

IDProjectCategoryView StatusLast Update
0017855LazarusIDEpublic2010-11-16 12:32
ReporterPhil Assigned To 
Status acknowledgedResolutionopen 
PlatformMacOSOS X 
Product Version0.9.29 (SVN) 
Summary0017855: lazbuild now creates .app bundle and general uselessness of .app bundle it and IDE create
DescriptionPreviously lazbuild did not create an .app bundle. Now it does - not sure if this is a good thing, but I suppose it is consistent with the IDE's creation of an .app bundle when the "Use Application Bundle for running..." box is checked.

Unchecking this box sort of solves my lazbuild problem (I never compile from IDE) but reveals other problems: No way to associate the project with a specific app bundle. It's typical to have the executable named one way (lower case, no spaces) and the app bundle named another way (mixed case, space if app's name is two words).

Examining the .app bundle's Info.plist reveals that it's rudimentary and pretty useless. It doesn't even use any of the useful version info to set keys in Info.plist!

Suggestion: Map some of the obvious things in the project's version info to keys in Info.plist (examples: version number to CFBundleShortVersionString, copyright to NSHumanReadableCopyright) and just add the others to the bottom of the file using the bundle identifier to avoid any name collisions. Example:

  <string>Company name goes here</string>

Now app can easily retrieve these things at runtime.

Some thought also needs to be put into the deriving of CFBundleIdentifier. Currently all projects named project1 get a CFBundleIdentifier of That means they're all sharing the same preferences file in ~/Library/Preferences.

IDE really needs to prompt for a proper bundle ID and app bundle name before saving a new project - as it is, it's using the project name for .lpi, .lpr, executable, .app bundle, bundle identifier, bundle name, probably other things as well. Probably not a great idea.

TagsNo tags attached.
Fixed in Revision
Attached Files


There are no notes attached to this issue.

Issue History

Date Modified Username Field Change
2010-11-07 02:09 Phil New Issue
2010-11-07 02:09 Phil Widgetset => Carbon
2010-11-16 12:32 Vincent Snijders LazTarget => -
2010-11-16 12:32 Vincent Snijders Status new => acknowledged