X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Makefile.cfg;h=d12710cf90852936131825e5ad44055a786b681c;hb=6274aaa8894e14462a36c69090e2f9235f130e31;hp=5abb96dd2f0aee15fd48bf0f903106cab59dff29;hpb=d0d0e340fba5ec56dfec004be189c8de79dae12f;p=tpg%2Facess2.git diff --git a/Makefile.cfg b/Makefile.cfg index 5abb96dd..d12710cf 100644 --- a/Makefile.cfg +++ b/Makefile.cfg @@ -2,38 +2,88 @@ # 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 +V ?= @ +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 +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)/BuildConf/$(ARCH)/Makefile.cfg ifeq ($(ARCHDIR),) - ARCHDIR = x86 + 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 + ifeq ($(AS),as) + AS = $(COMPILERDIR)bin/$(TRIPLET)-gcc -c + endif +endif + +ifneq ($(ARCH),host) + ifneq ($(ARCHDIR),$(ARCH)) + include $(ACESSDIR)/BuildConf/$(ARCHDIR)/Makefile.cfg + endif endif -FILESYSTEMS = fat -DRIVERS = -MODULES = Storage/ATA Storage/FDD -MODULES += Network/NE2000 -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 +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