Rev 1744 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 1744 | Rev 1820 | ||
---|---|---|---|
Line 28... | Line 28... | ||
28 | # $(4) = name of program - without path and extension, |
28 | # $(4) = name of program - without path and extension, |
29 | define fasm_meta_rule |
29 | define fasm_meta_rule |
30 | $(1): $(2) Makefile.fasm .deps/.dir $$(call respace,$$(addsuffix .dir,$(3))) |
30 | $(1): $(2) Makefile.fasm .deps/.dir $$(call respace,$$(addsuffix .dir,$(3))) |
31 | fasm -m 65536 $$< "$$@" -s .deps/$(4).fas |
31 | fasm -m 65536 $$< "$$@" -s .deps/$(4).fas |
32 | prepsrc .deps/$(4).fas /dev/null |
32 | prepsrc .deps/$(4).fas /dev/null |
33 | prepsrc .deps/$(4).fas /dev/stdout | (echo -n '$(1):' && \ |
33 | prepsrc .deps/$(4).fas /dev/stdout | \ |
34 | perl -ne 's|\\|/|g;print " \\\n $$$$1" if /^;include \x27(.*?)\x27/' \ |
34 | perl -n -e 's|\\|/|g;push @a,$$$$1 if/^;include \x27(.*?)\x27/;' \ |
35 | && echo) > .deps/$(4).Po |
35 | -e 'END{$$$$a=join " \\\n ",@a;print "$(1): $$$$a\n$$$$a:\n"}' > .deps/$(4).Po |
36 | kpack --nologo "$$@" |
36 | kpack --nologo "$$@" |
37 | -include .deps/$(4).Po |
37 | -include .deps/$(4).Po |
38 | endef |
38 | endef |
Line 39... | Line 39... | ||
39 | 39 | ||
Line 43... | Line 43... | ||
43 | 43 | ||
44 | # Rule for the kernel differs: it uses kerpack instead of kpack. |
44 | # Rule for the kernel differs: it uses kerpack instead of kpack. |
45 | kernel.mnt: $(KERNEL)/kernel.asm Makefile.fasm .deps/.dir |
45 | kernel.mnt: $(KERNEL)/kernel.asm Makefile.fasm .deps/.dir |
46 | fasm -m 65536 $< "$@" -s .deps/kernel.fas |
46 | fasm -m 65536 $< "$@" -s .deps/kernel.fas |
47 | prepsrc .deps/kernel.fas /dev/null |
47 | prepsrc .deps/kernel.fas /dev/null |
48 | prepsrc .deps/kernel.fas /dev/stdout | (echo -n 'kernel.mnt:' && \ |
48 | prepsrc .deps/kernel.fas /dev/stdout | \ |
49 | perl -ne 's|\\|/|g;print " \\\n $$1" if /^;include \x27(.*?)\x27/' \ |
49 | perl -n -e 's|\\|/|g;push @a,$$1 if/^;include \x27(.*?)\x27/;' \ |
50 | && echo) > .deps/kernel.Po |
50 | -e 'END{$$a=join " \\\n ",@a;print "$@: $$a\n$$a:\n"}' > .deps/kernel.Po |
51 | kerpack $@ |
51 | kerpack $@ |