X-Git-Url: https://git.ucc.asn.au/?p=tpg%2Facess2.git;a=blobdiff_plain;f=Makefile.cfg;h=1eedf8ec876cbaa7b9262f7b68b0c8d2c5a9f7dc;hp=16a4b3877d7e4ac86e6a4eb862748b213c6f7ae5;hb=13078002b01ee4f63eb2001d2ef479a2a006ea32;hpb=9b7a7e725ca1b371e4a89776ac4a7bb10e2cbea7 diff --git a/Makefile.cfg b/Makefile.cfg index 16a4b387..1eedf8ec 100644 --- a/Makefile.cfg +++ b/Makefile.cfg @@ -2,28 +2,84 @@ # 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 - -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/tpg/Projects/Acess2 +ACESSDIR := $(dir $(lastword $(MAKEFILE_LIST))) +ACESSDIR := $(shell cd $(ACESSDIR) && pwd) + +# Install destination configuration +DISTROOT := -i $(ACESSDIR)/Acess2.img ::/Acess2 +NCC := $(CC) +NCXX := $(CXX) +xCP := mcopy -D o +xMKDIR := mmd -D s + +-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 := x86 +endif +include $(ACESSDIR)/BuildConf/$(ARCH)/Makefile.cfg +ifeq ($(ARCHDIR),) + ARCHDIR := x86 +endif + +# Default compilers +ifneq ($(ARCHDIR),native) +CC = $(COMPILERDIR)bin/$(TRIPLET)-gcc +CXX = $(COMPILERDIR)bin/$(TRIPLET)-g++ +LD = $(COMPILERDIR)bin/$(TRIPLET)-ld +OBJDUMP = $(COMPILERDIR)bin/$(TRIPLET)-objdump +endif + +ifneq ($(ARCH),host) + ifneq ($(ARCHDIR),$(ARCH)) + include $(ACESSDIR)/BuildConf/$(ARCHDIR)/Makefile.cfg + endif +endif + +COMPILERDIR := $(ACESSDIR)/Externals/Output/$(ARCHDIR)-BUILD/ +PATH := $(COMPILERDIR)bin/ $(PATH) + +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 + +DRIVERS := +MODULES := + +MODULES += Filesystems/RAMDisk +MODULES += Filesystems/Ext2 +MODULES += Filesystems/FAT +MODULES += Filesystems/NTFS +MODULES += Storage/LVM + +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 + +# BUILD_DIST=y - Install to ./Dist +ifneq ($(BUILD_DIST),) + DISTROOT := $(ACESSDIR)/Dist + xCP := cp + xMKDIR := mkdir -p +endif