[email protected] said:
> On 06/03/15 09:16, Martin Lucina wrote:
> >After that, can we split up step 5 (actually removing duplicate parts) so
> >that you don't have to do all the work? I should be able to take care of at
> >least the app-tools and test/demo applications, and whatever else you'd
> >like help with.
> 
> Yes please, but let me lay out some groundwork first.  app-tools
> will probably be done as part of that groundwork.  I'm happy to
> leave the tests for you to handle -- handling the tests actually
> needs more thinking than app-tools so that they can be shared to
> maximal extent among platforms.

Regarding app-tools and rumprun, here are a couple of things I have planned
which would be good to take into account when laying the groundwork:

1) installable app-tools that looks as close to a "full" cross toolchain as
   we can get it. Notably, this means a full set of
   $PLATFORM-{cc,c++,$binutils} wrappers.

   Rationale: 

   a) Principle of least surprise for cross-compiling existing software. As
   I found with CMake (MySQL), build systems expect to see a "full" cross
   toolchain.

   b) (Eventually) distribution packages of app-tools + rumprun.

2) replace the cc.configure with an arrangement where $PLATFORM-configure
   uses the normal cc, but sets an environment variable to indicate "I am
   configure" to the compiler(s).

   Rationale:

   a) This will allow use of the cc.configure optimization with CMake.
   b) While adding C++ support I found that some packages using libtool
   (php) get horribly confused if you try and build with $CC *AND* $CXX set
   to something other than what you specified at configure time. This
   arrangement will allow for configure and build steps to use the "same"
   compiler.

3) extending rumprun to support running baremetal on qemu/kvm. I.e.
   "rumprun baremetal foo" should do exactly what the xen version does.


Reply via email to