Tweak ISO test
parent
2841227ce2
commit
e4d5d57571
|
@ -1,35 +1,48 @@
|
|||
include_rules
|
||||
export SYSLINUX
|
||||
|
||||
: config |> \
|
||||
echo %f | awk -f a.awk >> %o; \
|
||||
echo %f | awk -f b.awk >> %o; \
|
||||
echo %f | awk -f c.awk >> %o; \
|
||||
BOOT_MODULES = \
|
||||
config \
|
||||
$(GENODE_DIR)/repos/os/src/init/init \
|
||||
$(GENODE_DIR)/repos/base/src/test/log/test-log \
|
||||
|
||||
ifeq (@(TUP_ARCH),i386)
|
||||
ADDR_TYPE = .long
|
||||
endif
|
||||
ifeq (@(TUP_ARCH),x86_64)
|
||||
ADDR_TYPE = .quad
|
||||
endif
|
||||
|
||||
AWK_IT = awk -v RS=" " -v ADDR_TYPE="$(ADDR_TYPE)"
|
||||
|
||||
: $(BOOT_MODULES) \
|
||||
|> \
|
||||
echo -n %f | $(AWK_IT) -f a.awk >> %o; \
|
||||
echo -n %f | $(AWK_IT) -f b.awk >> %o; \
|
||||
echo -n %f | $(AWK_IT) -f c.awk >> %o; \
|
||||
|> modules.s
|
||||
|
||||
: modules.s |> $(CC) $(CC_MARCH) -c %f -o %o |> boot_modules.o
|
||||
: modules.s | $(BOOT_MODULES) |> $(CC) $(CC_MARCH) -c %f -o %o |> boot_modules.o
|
||||
|
||||
LINK_ADDRESS = 0x01000000
|
||||
|
||||
: boot_modules.o | \
|
||||
$(GENODE_DIR)/repos/base-nova/<core> \
|
||||
: boot_modules.o | $(GENODE_DIR)/repos/base-nova/<core> \
|
||||
|> \
|
||||
$(CXX) $(CC_MARCH) -nostdlib \
|
||||
-Wl,-T -Wl,$(GENODE_DIR)/repos/base/src/ld/genode.ld \
|
||||
-Wl,-z -Wl,max-page-size=0x1000 \
|
||||
-Wl,-Ttext=$(LINK_ADDRESS) -Wl,-gc-sections \
|
||||
-Wl,-nostdlib \
|
||||
-Wl,--whole-archive -Wl,--start-group \
|
||||
%<core> %f \
|
||||
-Wl,--no-whole-archive \
|
||||
-Wl,--end-group \
|
||||
`$(CXX) $(CC_MARCH) -print-libgcc-file-name` \
|
||||
-o %o \
|
||||
$(CXX) $(CC_MARCH) -nostdlib \
|
||||
-Wl,-T -Wl,$(GENODE_DIR)/repos/base/src/ld/genode.ld \
|
||||
-Wl,-z -Wl,max-page-size=0x1000 \
|
||||
-Wl,-Ttext=$(LINK_ADDRESS) -Wl,-gc-sections \
|
||||
-Wl,-nostdlib \
|
||||
-Wl,--whole-archive -Wl,--start-group \
|
||||
%<core> %f \
|
||||
-Wl,--no-whole-archive \
|
||||
-Wl,--end-group \
|
||||
`$(CXX) $(CC_MARCH) -print-libgcc-file-name` \
|
||||
-o %o; \
|
||||
strip %o; \
|
||||
|> image.elf
|
||||
|
||||
: image.elf |> gzip --keep %f |> %b.gz
|
||||
|
||||
: hypervisor image.elf.gz |> \
|
||||
: $(GENODE_DIR)/repos/base-nova/src/NOVA/build/hypervisor-x86_64 image.elf |> \
|
||||
mkdir -p tmp/syslinux; \
|
||||
cp \
|
||||
$SYSLINUX/share/syslinux/isolinux.bin \
|
||||
|
|
|
@ -12,9 +12,9 @@ BEGIN {
|
|||
}
|
||||
|
||||
{
|
||||
print ".quad _boot_module_"NR"_name";
|
||||
print ".quad _boot_module_"NR"_begin";
|
||||
print ".quad _boot_module_"NR"_end - _boot_module_"NR"_begin";
|
||||
print ADDR_TYPE" _boot_module_"NR"_name";
|
||||
print ADDR_TYPE" _boot_module_"NR"_begin";
|
||||
print ADDR_TYPE" _boot_module_"NR"_end - _boot_module_"NR"_begin";
|
||||
print "";
|
||||
}
|
||||
|
||||
|
|
|
@ -2,4 +2,4 @@ SERIAL
|
|||
DEFAULT 0
|
||||
LABEL 0
|
||||
KERNEL mboot.c32
|
||||
APPEND /hypervisor serial novga --- /image_elf.gz
|
||||
APPEND /hypervisor_x86_64 iommu novpid serial --- /image.elf
|
||||
|
|
Loading…
Reference in New Issue