Subversion Repositories Kolibri OS

Rev

Rev 7129 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. FASM=fasm
  2. FLAGS=-m 65536
  3. languages=en|ru|ge|et|sp
  4.  
  5. .PHONY: all kernel bootloader clean
  6.  
  7. all: kernel bootloader bootbios
  8.  
  9. kernel: check_lang bootbios
  10.         @echo "*** building kernel with language '$(lang)' ..."
  11.         @mkdir -p bin
  12.         @echo "lang fix $(lang)" > lang.inc
  13.         @echo "--- building 'bin/kernel.mnt' ..."
  14.         @$(FASM) $(FLAGS) kernel.asm bin/kernel.mnt
  15.         @$(FASM) $(FLAGS) -dUEFI=1 kernel.asm bin/kernel.bin
  16.         @rm -f lang.inc
  17.  
  18. bootbios: check_lang
  19.         @echo "*** building bootbios.bin with language '$(lang)' ..."
  20.         @mkdir -p bin
  21.         @echo "lang fix $(lang)" > lang.inc
  22.         @echo "--- building 'bootbios.bin' ..."
  23.         @$(FASM) $(FLAGS) bootbios.asm bootbios.bin
  24.         @rm -f lang.inc
  25.  
  26. bootloader: check_lang
  27.         @echo "*** building bootloader with language '$(lang)' ..."
  28.         @mkdir -p bin
  29.         @echo "lang fix $(lang)" > lang.inc
  30.         @echo "--- building 'bin/boot_fat12.bin' ..."
  31.         @$(FASM) $(FLAGS) bootloader/boot_fat12.asm bin/boot_fat12.bin
  32.         @rm -f lang.inc
  33.                
  34.  
  35. check_lang:
  36.         @case "$(lang)" in \
  37.           $(languages)) \
  38.             ;; \
  39.           *) \
  40.             echo "*** error: language is incorrect or not specified"; \
  41.             exit 1; \
  42.             ;; \
  43.         esac
  44.  
  45. clean:
  46.         rm -rf bin
  47.         rm -f lang.inc
  48.