# Acess2 Build Configuration
#
+ACESSDIR := $(dir $(lastword $(MAKEFILE_LIST)))
+ACESSDIR := $(shell cd $(ACESSDIR) && pwd)
+
# Install destination configuration
-DISTROOT := a:/Acess2
+DISTROOT := -i $(ACESSDIR)/Acess2.img ::/Acess2
+NCC := $(CC)
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
# Load Architecture settings
ifeq ($(ARCH),)
- ARCH := i386
+ ARCH := x86
endif
-include $(ACESSDIR)/Makefile.$(ARCH).cfg
+include $(ACESSDIR)/BuildConf/$(ARCH)/Makefile.cfg
ifeq ($(ARCHDIR),)
ARCHDIR := x86
endif
+
ifneq ($(ARCH),host)
-include $(ACESSDIR)/Makefile.$(ARCHDIR).cfg
+ ifneq ($(ARCHDIR),$(ARCH))
+ include $(ACESSDIR)/BuildConf/$(ARCHDIR)/Makefile.cfg
+ endif
+endif
+
+ifeq ($(PLATFORM),)
+ PLATFORM := default
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/RAMDisk
MODULES += Filesystems/Ext2
MODULES += Filesystems/FAT
MODULES += Filesystems/NTFS
+MODULES += Storage/LVM
-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
+include $(ACESSDIR)/BuildConf/$(ARCH)/$(PLATFORM).mk
+MODULES += Input/Keyboard Input/Mouse
MODULES += IPStack # So the other modules are loaded before it
#DYNMODS := USB/Core
#DYNMODS += Filesystems/InitRD