X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Makefile.cfg;h=70570c86d843f7a6f9ba79aba1e3ba22bf9b4a93;hb=d48818efad07523eba505813b60a82d13b35499a;hp=3a164ee628a91e1b2b31e72a0bd8fb05f8f26dea;hpb=5c46f86c5a8ceaa63a1a9919cf1f4d2889c6c233;p=tpg%2Facess2.git diff --git a/Makefile.cfg b/Makefile.cfg index 3a164ee6..70570c86 100644 --- a/Makefile.cfg +++ b/Makefile.cfg @@ -2,25 +2,80 @@ # Acess2 Build Configuration # -CC = gcc -LD = ld -AS = nasm -OBJDUMP = objdump -RM = @rm -f -STRIP = strip -MKDIR = mkdir -RMDIR = rm -rf -lCP = cp -xCP = mcopy -D o - -ARCH = i386 -ARCHDIR = x86 - -FILESYSTEMS = fat -DRIVERS = ata_x86 -MODULES = FS_Ext2 FDD NE2000 BochsGA - -#DISTROOT = /mnt/AcessHDD/Acess2 -#DISTROOT = ~/Projects/Acess2/Filesystem -DISTROOT = a:/Acess2 -ACESSDIR = /home/hodgeja/Projects/Acess2 +# Install destination configuration +DISTROOT := a:/Acess2 +xCP := mcopy -D o +xMKDIR := mmd -D s + +ACESSDIR := $(dir $(lastword $(MAKEFILE_LIST))) +ACESSDIR := $(shell cd $(ACESSDIR) && pwd) + +# Default build programs +#CC := gcc +#LD := ld +AS := nasm +DISASM := objdump -d -S +RM := @rm -f +STRIP := strip +MKDIR := mkdir -p +RMDIR := rm -rf +lCP := cp +ASSUFFIX = asm + + +# Load Architecture settings +ifeq ($(ARCH),) + ARCH := x86 +endif +include $(ACESSDIR)/Makefile.$(ARCH).cfg +ifeq ($(ARCHDIR),) + ARCHDIR := x86 +endif +ifneq ($(ARCH),host) +include $(ACESSDIR)/Makefile.$(ARCHDIR).cfg +endif + +# Makefile.user.cfg is not part of the Acess git repo, +# It is for overriding the options in this file +-include $(ACESSDIR)/Makefile.user.cfg + +FILESYSTEMS := +DRIVERS := +MODULES := +MODULES += Filesystems/Ext2 +MODULES += Filesystems/FAT +MODULES += Filesystems/NTFS + +ifeq ($(ARCHDIR),x86) +MODULES += Storage/ATA +MODULES += Storage/FDDv2 +MODULES += Network/NE2000 Network/RTL8139 +MODULES += Display/VESA +MODULES += Display/BochsGA +#MODULES += Interfaces/UDI +MODULES += Input/PS2KbMouse +MODULES += x86/ISADMA x86/VGAText +MODULES += USB/Core +endif + +ifeq ($(ARCHDIR),x86_64) +MODULES += Storage/ATA +MODULES += Storage/FDDv2 +MODULES += Network/NE2000 Network/RTL8139 +MODULES += Display/BochsGA +MODULES += Interfaces/UDI +MODULES += Input/PS2KbMouse +MODULES += x86/ISADMA x86/VGAText +MODULES += USB/Core +endif + +ifeq ($(ARCHDIR),armv7) +MODULES += Input/PS2KbMouse +MODULES += armv7/GIC +MODULES += Filesystems/InitRD +MODULES += Display/PL110 +endif + +MODULES += IPStack # So the other modules are loaded before it +#DYNMODS := USB/Core +#DYNMODS += Filesystems/InitRD