Today I started looking into the issue of how to store additional version info that could be used to populate a Mac app bundle's Info.plist file. Unfortunately, it appears as though any additional data added to the .lpi file in the <VersionInfo> section gets deleted the next time it's saved. Shouldn't the Laz IDE roundtrip data it doesn't know about in the .lpi rather than deleting it? By deleting it, isn't that kind of defeating the purpose of using XML for the .lpi?
Also, if the value you enter in the Product Version box isn't in the expected format (major.minor.micro.build), this prevents Laz from compiling and doesn't give any error. Apparently windres chokes on anything else but doesn't communicate this to the IDE. What about having the IDE proof Product Version? Thanks. -Phil -----Original Message----- From: Hess, Philip J [mailto:[EMAIL PROTECTED] Sent: Wed 5/30/2007 8:51 PM To: [email protected] Subject: RE: [lazarus] Debugger on Mac OS X Good point. But if the linker on other platforms complains about the OS X specific switches, you should be able to uncheck Pass Options To Linker box, correct? Here's the reference for what can go into the app bundle's Info.plist file: http://developer.apple.com/documentation/MacOSX/Conceptual/BPRuntimeConfig/index.html Some of the settings in Info.plist kind of overlap with Windows-type version resource info, hence the idea that maybe some of them could be set in Project Options | Version Info, although this would require a way to define any sort of string the way you can in Delphi, not just the limited version strings that it allows now. Thanks. -Phil -----Original Message----- From: Mattias Gaertner [mailto:[EMAIL PROTECTED] Sent: Wed 5/30/2007 6:44 PM To: [email protected] Subject: Re: [lazarus] Debugger on Mac OS X On Wed, 30 May 2007 19:00:23 -0400 "Hess, Philip J" <[EMAIL PROTECTED]> wrote: > Felipe, > > I think you can set Pass Options To The Linker to this: > > -framework carbon -framework Qt4Intf -lobjc > > for each new project and then just forget about it. You can then > change the widget type to gtk, qt or carbon as needed and compile. I > don't believe the extra linker switches make any difference if not > needed to resolve references for a particular widget set. AFAIK this will only work under MacOSX. We need conditional compiler options. There is already a feature request in mantis. > Regarding your 2nd suggestion: It's absolutely critical that the IDE > not create a new app bundle each time it compiles. Remember that an > app bundle is rarely the barebones folder that createmacapplication > creates. It may contain dozens or hundreds of other files - > resources, icons, private frameworks, etc. These will likely need to > be copied in manually by the developer, but once he's done that the > IDE shouldn't delete the app bundle - rather, it should just compile > to replace the executable (which is either inside the bundle or > outside the bundle and symlinked to it from within the bundle as > createmacapplication does it). Agreed. > It would be nice if there were a way to set the bundle's Info.plist > settings from within the IDE, but this might be asking too much. I > believe I wrote up some suggestions related to this and the IDE's > Project Options | Version Info about a year ago but don't recall if I > posted them on the forum or what. What info is stored in the Info.plist? > Currently I use a script file something like my create_app_mac.sh > that I run to create the initial app bundle and copy everything > needed into the bundle folder (can also do this anytime I need to > "start over" with the bundle). Something like this will probably > always be needed for non-trivial projects. Mattias _________________________________________________________________ To unsubscribe: mail [EMAIL PROTECTED] with "unsubscribe" as the Subject archives at http://www.lazarus.freepascal.org/mailarchives
