Something like this currently exists in GNUstep.  There is a nib flattened
mode which allows for different architectures and library combinations.

On Wednesday, May 22, 2013, Chan Maxthon wrote:

> This is what I am describing. Apple is still using the NeXT bundle layout
> that is currently used by GNUstep, but only on iOS. On OS X the new Cocoa
> layout (that one with the Contents directory) is used. My suggestion was,
> once again, while keeping compatibility, default to the Cocoa layout,
> meanwhile extend this Cocoa layout to support something like fat bundles,
> or a single bundle with multiple binaries that is designed to work under
> different architectures and libraries, regardless whether the binary itself
> is fat or not.
>
> To accomplish this, a trick used by Apple themselves can be employed and
> extended. Apple stored binaries in Contents/MacOS folder inside the bundle.
> For GNUstep, we just don't use that folder, instead, we use
> Contents/GNUstep-(host triplet)-(library combo, if not gnu-gnu-gnu).
>
> This can result in a bundle that can be used on both Apple and GNUstep
> systems right out of the box, like this following filesystem layout:
>
> MyApp.app
> ./Contents
> ./Contents/MacOS # OS X binary, linked against Apple Cocoa
> ./Contents/Resources # shared resources
> ./Contents/GNUstep-i386-linux-pc # 32-bit x86 Linux binary
> ./Contents/GNUstep-x86_64-linux-unknown # 64-bit x86-64 Linux binary
> ./Contents/GNUstep-i386-mingw-gnu # 32-bit x86 Windows binary, linked
> against mingw
> ./Contents/GNUstep-i386-cygwin-gnu # 32-bit x86 Windows binary, linked
> against Cygwin
>
> 发自我的 iPhone
>
> 在 2013-5-23,3:08,Luboš Doležel <[email protected] <javascript:;>> 写道:
>
> >
> >> You can already do that with GNUstep if configure gnustep-make with
> >> "--disable-flattened --enable-multi-platform". I've successfully used
> >> that for quite some time to provide a shared GNUstep setup to i386
> >> and amd64 machines on a network share.
> >>
> >> Cheers,
> >>
> >> Niels
> >
> > What about the "Contents/" directory used on OS X? I've already had
> trouble with this.
> >
> > All OS X apps have a Contents directory right under *.app and GNUstep
> couldn't cope with that last time I tried.
> >
> > --
> > Luboš Doležel
> >
> > _______________________________________________
> > Gnustep-dev mailing list
> > [email protected] <javascript:;>
> > https://lists.gnu.org/mailman/listinfo/gnustep-dev
>
> _______________________________________________
> Gnustep-dev mailing list
> [email protected] <javascript:;>
> https://lists.gnu.org/mailman/listinfo/gnustep-dev
>


-- 
Gregory Casamento
Open Logic Corporation, Principal Consultant
yahoo/skype: greg_casamento, aol: gjcasa
(240)274-9630 (Cell)
http://www.gnustep.org
http://heronsperch.blogspot.com
_______________________________________________
Gnustep-dev mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/gnustep-dev

Reply via email to