X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Makefile.cfg;h=3b1bfd5e7072abaee60dd302eb5559ff55737504;hb=52508b805ef1512b016b74461f080411cf076088;hp=5abb96dd2f0aee15fd48bf0f903106cab59dff29;hpb=d0d0e340fba5ec56dfec004be189c8de79dae12f;p=tpg%2Facess2.git diff --git a/Makefile.cfg b/Makefile.cfg index 5abb96dd..3b1bfd5e 100644 --- a/Makefile.cfg +++ b/Makefile.cfg @@ -2,38 +2,82 @@ # 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 -xMKDIR = mmd -xRMDIR = mdeltree -xRM = mdel +# Install destination configuration +DISTROOT := a:/Acess2 +xCP := mcopy -D o +xMKDIR := mmd -D s +ACESSDIR := $(dir $(lastword $(MAKEFILE_LIST))) +ACESSDIR := $(shell cd $(ACESSDIR) && pwd) + +-include $(ACESSDIR)/Makefile.Version.cfg + +# 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 = i386 + ARCH := x86 endif --include Makefile.$(ARCH).cfg +include $(ACESSDIR)/Makefile.$(ARCH).cfg ifeq ($(ARCHDIR),) - ARCHDIR = x86 + 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 -FILESYSTEMS = fat -DRIVERS = -MODULES = Storage/ATA Storage/FDD -MODULES += Network/NE2000 +ifeq ($(ARCHDIR),x86_64) +MODULES += Storage/ATA +MODULES += Storage/FDDv2 +MODULES += Network/NE2000 Network/RTL8139 MODULES += Display/BochsGA -MODULES += Filesystems/FS_Ext2 -MODULES += IPStack -DYNMODS = USB Interfaces/UDI - -#DISTROOT = /mnt/AcessHDD/Acess2 -#DISTROOT = ~/Projects/Acess2/Filesystem -DISTROOT = a:/Acess2 -ACESSDIR = /home/tpg/Projects/Acess2 +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