Porting third-party code to Genode
norman.feske at ...1...
Fri Sep 22 12:16:30 CEST 2017
> This Chapter says, that I should create a build (Makefile) for
> the third party source code ?
> I was expected that the port mechanism from genode will execute the
> configure script (Cross compiling) of the third party just as the
> "source based" Linux/UNIX (FreeBSD/Arch Linux) systems does.
we apply the approach of invoking the configure script only to noux
packages (like coreutils, bash, gcc) but not for building libraries. We
instead "port" libraries to Genode's build system so that they are built
as first-class citizens. This gives us the advantage that the deep
dependency tracking of Genode's build system is applied to those
libraries. E.g., when changing an implementation file of a 3rd-party
library and then re-executing a run script that implicitly uses the
library, the library gets automatically updated.
Please don't be afraid of make too much. For porting libraries, you
typically don't need to write make rules. In most cases, it suffices to
list the source codes, specify the location of the source codes (via
vpath), and define compiler arguments (like defines passed via -D).
Genode's build system does the tricky parts for you. You can learn about
the use of Genode's build system in Section 5.3. "Build system" in the
Genode Foundations book . You may also take the other libraries
(e.g., those at genode-world) as reference.
> My question: It is not possible to execute the "third party build
> system" to cross compile it for genode?
In principle, it is possible (as done by GNU-build-system wrapper we use
for noux, see ports/mk/gnu_build.mk) but we deliberately don't do that
> My port idea/work:
> I didn't see any information about boost on the "Future Challenges of
> the Genode project" or "Genode Porting Wishlist" site, so I try to
> port boost to genode. Maybe somebody is also working on this?
I am not aware of such a development. This would be a very welcome
Dr.-Ing. Norman Feske
http://www.genode-labs.com · http://genode.org
Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
More information about the users