The Windows product builds a small executable that then loads the main
chromium dll, and hands off control to that.  I believe this is done solely
for updating reasons.  All the difference processes start from that one
shim.

On the Mac, we are currently building as a single executable.  But, this
brings up some complications, we need to be able to launch the Renderers
with different Cocoa initialization.  This data comes out of the info.plist,
so we really need different bundles on disk (the OS acts on the data before
the process is even started).  So what it's looking like is that we need to
move to a world where we also have a small shim for Chromium that loads a
main shared lib and hands off control.  Then we'll have a second shim for
Renderers (and maybe plugin hosts, etc.) that loads the main shared lib and
hands off control.  Each of these shims will have different info.plists to
provide the different Cocoa configuration information.

Linux currently builds as one executable also.  But Adam proposed we create
a second executable (via hardlink?) for AppArmor as a sandbox?

Does it make sense to standardize/require a small shell and shared lib for
all platforms?  One advantage of this approach on all platforms is they can
initialize breakpad/crash reporting to the started up in the shim, so a
crash during the loading of the main shared lib would be captured.  One
place not standardizing this gets ugly is within the build system, where it
could become very complex expressing what goes into apps vs. shared libs.

Thoughts/suggestions/comments?

TVL

--~--~---------~--~----~------------~-------~--~----~
Chromium Developers mailing list: chromium-dev@googlegroups.com 
View archives, change email options, or unsubscribe: 
    http://groups.google.com/group/chromium-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to