diff options
Diffstat (limited to 'roms/openbios/Makefile')
| -rw-r--r-- | roms/openbios/Makefile | 51 | 
1 files changed, 51 insertions, 0 deletions
diff --git a/roms/openbios/Makefile b/roms/openbios/Makefile new file mode 100644 index 00000000..172f4507 --- /dev/null +++ b/roms/openbios/Makefile @@ -0,0 +1,51 @@ +include config-host.mak + +all: requirements info build + +requirements: +	@which xsltproc &>/dev/null || ( echo ; echo "Please install libxslt2"; \ +			echo; exit 1 ) + +info: +	@echo "Building OpenBIOS for $(TARGETS)" + +clean: +	@echo "Cleaning up..." +	@for dir in $(ODIRS); do \ +		$(MAKE) -C $$dir clean; \ +	done + +build: start-build +	@for dir in $(ODIRS); do \ +		$(MAKE) -C $$dir > $$dir/build.log 2>&1 && echo "ok." || \ +		( echo "error:"; tail -15 $$dir/build.log; exit 1 ) \ +	done + +SUBDIR_RULES=$(patsubst %,subdir-%, $(TARGETS)) +SUBDIR_MAKEFLAGS=$(if $(V),,--no-print-directory) + +quiet-command = $(if $(V),$1,$(if $(2),@echo $2 && $1, @$1)) + +build-verbose: start-build $(SUBDIR_RULES) + +subdir-%: +	$(call quiet-command,$(MAKE) $(SUBDIR_MAKEFLAGS) -C obj-$* V="$(V)" all,) + +start-build: +	@echo "Building..." + +run: +	@echo "Running..." +	@for dir in $(ODIRS); do \ +		$$dir/openbios-unix $$dir/openbios-unix.dict; \ +	done + + +# The following two targets will only work on x86 so far. +#  +$(ODIR)/openbios.iso: $(ODIR)/openbios.multiboot $(ODIR)/openbios-x86.dict +	@mkisofs -input-charset UTF-8 -r -b boot/grub/stage2_eltorito -no-emul-boot \ +	-boot-load-size 4 -boot-info-table -o $@ utils/iso $^ + +runiso: $(ODIR)/openbios.iso +	qemu -cdrom $^  | 
