# # FreeLoader # Copyright (C) 1999, 2000, 2001 Brian Palmer # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # # Windows is default host environment ifeq ($(HOST),) HOST = mingw32-windows endif # # Choose various options # ifeq ($(HOST),mingw32-linux) RM = rm -f CP = cp -f MKDIR = mkdir SEP = / else RM = cmd /C del CP = copy /Y MKDIR = md SEP = \$(EMPTY_VAR) endif NASM_CMD = nasm NFLAGS = -fwin32 -dwin32 BIN2C = ..$(SEP)tools$(SEP)bin2c TOOLSDIR = ..$(SEP)tools BOOTCD_DIR = ..$(SEP)..$(SEP)bootcd .PHONY : clean bootcd all: $(BIN2C) dosmbr.bin fat.bin fat32.bin isoboot.bin ext2.bin $(BIN2C) : @$(MAKE) --no-print-directory -C $(TOOLSDIR) dosmbr.bin : dosmbr.asm @echo ===================================================== Assembling dosmbr @$(NASM_CMD) $(NFLAGS) -o dosmbr.bin -f bin dosmbr.asm fat.bin : fat.asm $(BIN2C) @echo ===================================================== Assembling fat @$(NASM_CMD) $(NFLAGS) -o fat.bin -f bin fat.asm @$(BIN2C) fat.bin fat.h fat_data fat32.bin : fat32.asm $(BIN2C) @echo ===================================================== Assembling fat32 @$(NASM_CMD) $(NFLAGS) -o fat32.bin -f bin fat32.asm @$(BIN2C) fat32.bin fat32.h fat32_data isoboot.bin : isoboot.asm @echo ===================================================== Assembling isoboot @$(NASM_CMD) $(NFLAGS) -o isoboot.bin -f bin isoboot.asm ext2.bin : ext2.asm @echo ===================================================== Assembling ext2 @$(NASM_CMD) $(NFLAGS) -o ext2.bin -f bin ext2.asm @$(BIN2C) ext2.bin ext2.h ext2_data .PHONY : bootcd bootcd: bootcd_dirs isoboot.bin $(CP) isoboot.bin $(BOOTCD_DIR) $(CP) dosmbr.bin $(BOOTCD_DIR)$(SEP)disk$(SEP)loader $(CP) ext2.bin $(BOOTCD_DIR)$(SEP)disk$(SEP)loader $(CP) fat.bin $(BOOTCD_DIR)$(SEP)disk$(SEP)loader $(CP) fat32.bin $(BOOTCD_DIR)$(SEP)disk$(SEP)loader $(CP) isoboot.bin $(BOOTCD_DIR)$(SEP)disk$(SEP)loader .PHONY : bootcd_dirs bootcd_dirs: $(MKDIR) $(BOOTCD_DIR) $(MKDIR) $(BOOTCD_DIR)$(SEP)disk $(MKDIR) $(BOOTCD_DIR)$(SEP)disk$(SEP)reactos $(MKDIR) $(BOOTCD_DIR)$(SEP)disk$(SEP)install $(MKDIR) $(BOOTCD_DIR)$(SEP)disk$(SEP)bootdisk $(MKDIR) $(BOOTCD_DIR)$(SEP)disk$(SEP)loader clean: @-$(RM) *.bin @-$(RM) *.h @echo Clean ALL done.