Fiasco & oskit10

suzukis at file.phys.tohoku.ac.jp suzukis at file.phys.tohoku.ac.jp
Tue Dec 21 08:59:09 CET 1999


Yet I've not received any replies about Mr. Chris's mail
about oskit10. If I'm missing, please ignore.

Now I'm trying to compile Fiasco with oskit10,
which I've downloaded from CVS on 14/Dec/1999.

>Is it possible to compile fiasco based on oskit10? I think 
>there are some files missing (flux/*/*)??

I think, yet porting of fiasco onto oskit10 is not completed.
The "flux" was a directory under old OSkit tree.

+-- l4 ...
|
+-- oskit + flux - x86 - ...
|         |
|         ...
|
+-- oskit10 - oskit - x86 ...
|
+-- linux22

In the recent OSkit, the "flux" is renamed "oskit".
Several macros in the old OSkit (especially the most
basic type-declarations in flux/x86/types.h) were removed
in the recent OSkit, so, making symbolic-link from oskit to
flux does not solve the problem completely.
(in following, "oskit directory" means oskit10/oskit,
 "flux directory" means oskit/flux.)

Furthermore, editing the original files under "oskit" directory
is not recommended. Because, a few types are used in Linux,
FreeBSD, NetBSD device drivers, with different declaration
(I found vm_offset_t, vm_size_t, boolean_t).
If editing the original files

I creadted "flux" directory, copied files from "oskit",
and rewrote all
	#include <oskit/machine...
to
	#include <flux/machine...
, and added following declarations to types.h.

/* ********************************************
   compatibility for old OSKit flux/x86/types.h
   ******************************************** */

#ifndef        _FLUX_X86_TYPES_H_
#define _FLUX_X86_TYPES_H_

typedef oskit_u32_t    natural_t;

typedef        oskit_addr_t    vm_offset_t;
typedef        oskit_size_t    vm_size_t;

typedef oskit_s8_t             signed8_t;
typedef oskit_s16_t            signed16_t;
typedef oskit_s32_t            signed32_t;     /* originally signed long */
typedef oskit_s64_t            signed64_t;
typedef oskit_u8_t             unsigned8_t;
typedef oskit_u16_t            unsigned16_t;
typedef oskit_u32_t            unsigned32_t;
typedef oskit_u64_t            unsigned64_t;
typedef oskit_f32_t            float32_t;
typedef oskit_f64_t            float64_t;

typedef oskit_bool_t           boolean_t;
typedef oskit_s8_t             signed_min8_t;
typedef oskit_u8_t             unsigned_min8_t;
typedef oskit_s32_t            signed_min16_t;
typedef oskit_u32_t            unsigned_min16_t;
typedef oskit_s32_t            signed_min32_t;
typedef oskit_u32_t            unsigned_min32_t;

#endif /* _FLUX_X86_TYPES_H_ */

Sorry for without patch, still I could not complete
the building of Fiasco with oskit10, and my working
directory is too ugly.

Some sources for Fiasco kernel are already rewritten to
use "oskit" instead of "flux", but RMGR and SIGMA0 are
still using "flux" directory. Taking a glance on Mr. Michael's
patch (porting Fiasco onto new OSkit), it seems that the
patch modifies Fiasco kernel, and RMGR and SIGMA0 are left...?

Mr. Michael, Please let me know, RMGR and SIGMA0 will be
ported onto oskit10 in future? or, they are already ported
and I'm missing any points?

My building was stopped in building RMGR.

$ ld -o rmgr -T rmgr.ld \
	crt0.o startup.o rmgr.o oskit_support.o \
	exec.o globals.o init.o memmap.o trampoline.o \
	irq.o cfg-parse.o cfg-mem.o \
	-L/home/drops/lib -L../../../../lib \
	-L../../../../../oskit10/lib \
	-loskit_kern -loskit_exec -loskit_c -loskit_lmm
../../../../../oskit10/lib/liboskit_c.a(printf.o): In function `flush':
printf.o(.text+0xf): undefined reference to `console_putbytes'

$ ld -o rmgr -T rmgr.ld \
	crt0.o startup.o rmgr.o oskit_support.o \
	exec.o globals.o init.o memmap.o trampoline.o \
	irq.o cfg-parse.o cfg-mem.o \
	-L/home/drops/lib -L../../../../lib \
	-L../../../../../oskit10/lib \
	-loskit_kern -loskit_exec -loskit_c -loskit_lmm \
	-loskit_kern -loskit_exec -loskit_c -loskit_lmm

../../../../../oskit10/lib/liboskit_kern.a(base_console_init.o): In function `base_console_init':
base_console_init.o(.text+0x2c6): undefined reference to `main'

I'm afraid that the recent oskit cannot be used for the server...?

suzuki



More information about the l4-hackers mailing list