[okl4-developer] FW: Adding Software to OKL4
Frank Kaiser
frank.kaiser at opensynergy.com
Fri Aug 8 19:18:08 EST 2008
Hello
Since the first posting attempt was bounced, I hope the issue gets its
audience this way.
Regards
Frank
From: Frank Kaiser
Sent: Wednesday, August 06, 2008 12:19 PM
To: 'support.opensynergy at portal.ok-labs.com'
Subject: Adding Software to OKL4
Hello, Folks
I am currently looking into ways to extend OKL4 by other software with
minimum impact on the OKL4 build system. One way seems to be to use the
'cust' folder. The IGUANA SConstruct file is able to find an IGUANA
extension in 'cust/<cust>/iguana/example/<name>/', when the script
build.py is called with parameters 'CUST=<cust> EXAMPLE=<name>'. I made
an attempt to use this scheme, but it did not work. The build attempt
failed when trying to compile the first PISTACHIO file:
[CXX ] story1/pistachio/l4kernel/object/src/asid.o
In file included from story1/pistachio/include/l4/config.h:67,
from story1/pistachio/include/kernel/clist.h:64,
from story1/pistachio/include/kernel/space.h:97,
from pistachio/src/asid.cc:62:
story1/pistachio/include/l4/arch/vregs.h:69:26: l4/cust/utcb.h: No such
file or directory
story1/pistachio/include/l4/arch/vregs.h:180:27: l4/cust/vregs.h: No
such file or directory
scons: *** [story1/pistachio/l4kernel/object/src/asid.o] Error 1
scons: building terminated because of errors.
The missing header files were not copied from their original location
which is 'cust/okl/libs/l4/cust/include'. Another file located there is
'vregs_asm.h'. What has happened is that the explicit assignment
'CUST=<cust>' overwrites the default assignment 'CUST="okl"' which is
represented by line 478 of 'projects/iguana/SConstruct'. With CUST not
being assigned to "okl" the build script 'libs/l4/SConscript' does not
correctly extend the public headers (line 89 to 92):
public_headers = [("include/", "include/l4/"),
(os.path.join(arch_path, "include", ""),
"include/l4/arch/"),
(os.path.join(cust_path, "include", ""),
"include/l4/cust/")
]
This leads to the effective path 'cust/<cust>/libs/l4/cust/include', so
that the 2 header files cannot be found. This is clearly inconsistent:
on one side allowing a variable 'cust_path', on the other side having
something which only works with a predefined value. I wonder what at all
is the benefit of having header files required by the L4 library in that
CUST location?
Regards
Frank
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.okl4.org/pipermail/developer/attachments/20080808/33b78d7f/attachment.htm
More information about the Developer
mailing list