Rev 1052 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
137 | mikedld | 1 | FASM=fasm |
467 | mikedld | 2 | FLAGS=-m 65536 |
3 | languages=en|ru|ge|et |
||
1623 | mikedld | 4 | drivers_src=com_mouse emu10k1x ensoniq fm801 infinity sis sound uart viasound vmode vt823\(x\) |
467 | mikedld | 5 | skins_src=default |
17 | me_root | 6 | |
467 | mikedld | 7 | .PHONY: all kernel drivers skins clean |
17 | me_root | 8 | |
467 | mikedld | 9 | all: kernel drivers skins |
10 | |||
11 | kernel: check_lang |
||
12 | @echo "*** building kernel with language '$(lang)' ..." |
||
13 | @mkdir -p bin |
||
14 | @echo "lang fix $(lang)" > lang.inc |
||
15 | @echo "--- building 'bin/kernel.mnt' ..." |
||
16 | @$(FASM) $(FLAGS) kernel.asm bin/kernel.mnt |
||
17 | @rm -f lang.inc |
||
18 | |||
19 | drivers: |
||
20 | @echo "*** building drivers ..." |
||
21 | @mkdir -p bin/drivers |
||
22 | @cd drivers; for f in $(drivers_src); do \ |
||
23 | echo "--- building 'bin/drivers/$${f}.obj' ..."; \ |
||
1623 | mikedld | 24 | $(FASM) $(FLAGS) "$${f}.asm" "../bin/drivers/$${f}.obj" || exit $?; \ |
467 | mikedld | 25 | done |
26 | @mv bin/drivers/vmode.obj bin/drivers/vmode.mdr |
||
27 | |||
28 | skins: |
||
29 | @echo "*** building skins ..." |
||
30 | @mkdir -p bin/skins |
||
31 | @cd skin; for f in $(skins_src); do \ |
||
32 | echo "--- building 'bin/skins/$${f}.skn' ..."; \ |
||
1623 | mikedld | 33 | $(FASM) $(FLAGS) $${f}.asm ../bin/skins/$${f}.skn || exit $?; \ |
467 | mikedld | 34 | done |
35 | |||
36 | check_lang: |
||
37 | @case "$(lang)" in \ |
||
38 | $(languages)) \ |
||
39 | ;; \ |
||
40 | *) \ |
||
41 | echo "*** error: language is incorrect or not specified"; \ |
||
42 | exit 1; \ |
||
43 | ;; \ |
||
44 | esac |
||
45 | |||
17 | me_root | 46 | clean: |
467 | mikedld | 47 | rm -rf bin |
17 | me_root | 48 | rm -f lang.inc |