git-svn-id: svn://kolibrios.org@2789 a494cfbc-eb01-0410-851d-a64ba20cac60
This commit is contained in:
CleverMouse 2012-06-15 14:53:20 +00:00
parent 5490e9eedc
commit 06c7a56d80
2 changed files with 11 additions and 0 deletions

View File

@ -37,9 +37,20 @@ $(1): $(2) Makefile.fasm .deps/.dir $$(call respace,$$(addsuffix .dir,$(3)))
-include .deps/$(4).Po -include .deps/$(4).Po
endef endef
define fasm_nokpack_meta_rule
$(1): $(2) Makefile.fasm .deps/.dir $$(call respace,$$(addsuffix .dir,$(3)))
fasm -m 65536 "$$<" "$$@" -s .deps/$(4).fas
prepsrc .deps/$(4).fas /dev/null
prepsrc .deps/$(4).fas /dev/stdout | \
perl -n -e 's|\\|/|g;s| |\\ |g;push @a,$$$$1 if/^;include\\ \x27(.*?)\x27/;' \
-e 'END{$$$$a=join " \\\n ",@a;print q`$(1): `,"$$$$a\n$$$$a:\n"}' > .deps/$(4).Po
-include .deps/$(4).Po
endef
progname=$(call respace,$(basename $(notdir $(call binarypart,$(f))))) progname=$(call respace,$(basename $(notdir $(call binarypart,$(f)))))
binarydir=$(subst ./,,$(dir $(call binarypart,$(f)))) binarydir=$(subst ./,,$(dir $(call binarypart,$(f))))
$(foreach f,$(FASM_PROGRAMS) $(FASM_PROGRAMS_CD) $(SKIN_SOURCES),$(eval $(call fasm_meta_rule,$(fbinary),$(fsource),$(binarydir),$(progname)))) $(foreach f,$(FASM_PROGRAMS) $(FASM_PROGRAMS_CD) $(SKIN_SOURCES),$(eval $(call fasm_meta_rule,$(fbinary),$(fsource),$(binarydir),$(progname))))
$(foreach f,$(FASM_NOKPACK_PROGRAMS),$(eval $(call fasm_nokpack_meta_rule,$(fbinary),$(fsource),$(binarydir),$(progname))))
# Rule for the kernel differs: it uses kerpack instead of kpack. # Rule for the kernel differs: it uses kerpack instead of kpack.
kernel.mnt: $(KERNEL)/kernel.asm Makefile.fasm .deps/.dir kernel.mnt: $(KERNEL)/kernel.asm Makefile.fasm .deps/.dir

BIN
data/eng/games/soko Normal file

Binary file not shown.