Subversion Repositories Kolibri OS

Rev

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