[Openmcl-devel] universal binaries
Terje Norderhaug
terje at in-progress.com
Fri Apr 17 08:21:30 PDT 2009
On Apr 16, 2009, at 8:54 PM, Alexander Repenning wrote:
> Terje's approach with the shell script may work but I would not
> like the idea of the finder not recognizing the universal binary as
> such.
It is important for me as well to be able to create LISP applications
that appear 100% as expected for the Mac end user (aka "The
Customer"). Using a work-around in place of a true universal binary
may or may not take you all the way.
In place of the script, you could use a small program compiled as a
universal binary in the app bundle, with purpose to start/orchestrate
the correct edition of your LISP application.
One issue when starting the LISP app from a script (or other program)
is that multiple icons may show up on the dock. To avoid the display
of an icon for the script, I place the following in the Info.plist in
the .app bundle:
<key>LSBackgroundOnly</key>
<string>1</string>
-- Terje Norderhaug
> We are only using the IDE versions of CCL with the large, merged
> kernel + heap "d<architecture>cl" files. Could the Cocoa/IDE
> version be lipoed together given that there would not be the
> problem with finding the right image file? If so, what would be the
> proper way to use lipo to achieve this?
>
> alex
>
>
> On Apr 16, 2009, at 3:09 PM, Gary Byers wrote:
>
>> There has never been any support for universal binaries in CCL.
>>
>> Merging multiple kernels into a single executable file is trivial
>> (well,
>> it's trivial since we can just invoke the 'lipo' program to do all of
>> the non-trivial work.)
>>
>> There isn't currently any support for multi-architecture heap images,
>> so it's not clear how a universal binary kernel could find and load
>> the right architecture-specific heap image by default.
>>
>> For a long time, I've been under the impression that the file
>> named by
>> the value of the CFBundleExecutable key in a .app bundle' Info.plist
>> had to be a real executable file. If it can in fact be a shell
>> script, then that shell script could just determine the architecture
>> and execute the right architecure-specific binary (which could either
>> contain an embedded heap image, load a default heap image based on
>> its
>> name, or receive an argument from that shell script.)
>>
>> (It does seems to work to set the CFBundleExecutable key's value to
>> the name of a shell script, and that shell script can determine the
>> architecture and word size and exec a real executable file. That
>> isn't
>> quite the same thing as a Universal Binary - "Get Info" wouldn't
>> recognize
>> it as one - but it'd have much the same effect.)
>>
>>
>> On Thu, 16 Apr 2009, Alexander Repenning wrote:
>>
>>> is there a tool/script/document helping with the process of
>>> merging the PPC with the Intel-Mac binary version(s) into a
>>> single app? If I remember right CCL 1.2 did have such a universal
>>> binary. Would it be possible to squeeze 64bit and 32 bit intel-
>>> macs versions together with a ppc binary into a single app?
>>>
>>> alex
>>>
>>> Prof. Alexander Repenning
>>>
>>> University of Colorado
>>> Computer Science Department
>>> Boulder, CO 80309-430
>>>
>>> vCard: http://www.cs.colorado.edu/~ralex/AlexanderRepenning.vcf
>>>
>>>
>>
>
> Prof. Alexander Repenning
>
> University of Colorado
> Computer Science Department
> Boulder, CO 80309-430
>
> vCard: http://www.cs.colorado.edu/~ralex/AlexanderRepenning.vcf
>
>
> _______________________________________________
> Openmcl-devel mailing list
> Openmcl-devel at clozure.com
> http://clozure.com/mailman/listinfo/openmcl-devel
More information about the Openmcl-devel
mailing list