struct initfs_entry {
const char * const ife_name;
const void * const ife_base;
- const void * const ife_limit;
+ const unsigned long ife_limit;
};
struct initfs {
all: $(OUTPUT)
-$(OUTPUT): initfs.o
- ar r $@ $^ *.ko
+kbd.ko: kbd
+
+$(OUTPUT): initfs.o kbd.ko
+ ar -rc $@ $^
updateinitfs:
gcc -o initfs.o $(CFLAGS) initfs.c *.ko
$(MAKE) -C $@ $(MAKECMDGOALS)
clean: $(DEPS)
- rm -f $(OUTPUT)
+ rm -f $(OUTPUT) *.ko
.PHONY: $(PHONY)
#if FEATURE(KBD)
extern const char _binary_kbd_end[];
extern const char _binary_kbd_start[];
+extern const unsigned long _binary_kbd_size;
#endif /* FEATURE(KBD) */
#if FEATURE(VGA)
extern const char _binary_vga_end[];
extern const char _binary_vga_start[];
+extern const unsigned long _binary_vga_size;
#endif /* FEATURE(VGA) */
static struct initfs_entry _ifs_entries[] = {
{
.ife_name = "kbd",
.ife_base = &_binary_kbd_start,
- .ife_limit = &_binary_kbd_end
+ .ife_limit = (unsigned long)&_binary_kbd_size
},
#endif
#if FEATURE(VGA)
{
.ife_name = "vga",
.ife_base = &_binary_vga_start,
- .ife_limit = &_binary_vga_end
+ .ife_limit = (unsigned long)&_binary_vga_size
},
#endif
};