X-Git-Url: https://code.grnet.gr/git/archipelago/blobdiff_plain/6d486cc0e4c54f6224e7da47d84b319de3677542..f29c3bebd18166d63d26c8014e7f1ea2bfbbb8f0:/xseg/base.mk diff --git a/xseg/base.mk b/xseg/base.mk index 0a3479d..7f06697 100644 --- a/xseg/base.mk +++ b/xseg/base.mk @@ -1,15 +1,57 @@ -# Default setup for subdirectory Makefiles. +# Setup for xseg Makefiles. -CC=gcc +ifndef TARGET +TARGET:=$(shell basename $(shell pwd)) +endif + +export CC=gcc ifndef MOPTS -MOPTS= +export MOPTS= endif ifndef COPTS -COPTS=-O2 -g -finline-functions $(MOPTS) $(DEBUG) +export COPTS=-O2 -g -finline-functions $(MOPTS) $(DEBUG) endif ifndef CSTD -CSTD=-std=gnu99 -pedantic +export CSTD=-std=gnu99 -pedantic endif + INC=-I$(BASE) -CFLAGS=-Wall $(INC) $(COPTS) $(CSTD) +INC+=-I$(BASE)/peers/$(TARGET) +INC+=-I$(BASE)/sys/$(TARGET) +INC+=-I$(BASE)/drivers/$(TARGET) +export INC + +export LIB=$(BASE)/lib/$(TARGET) +export CFLAGS=-Wall $(COPTS) $(CSTD) + +ifeq (,$(XSEG_HOME)) +export XSEG_HOME=$(shell ${XSEG_HOME}) +endif + +ifeq (,$(XSEG_HOME)) +export XSEG_HOME=. +endif +CONFIG=./config.mk + +default: + +.PHONY: clean-config + +clean: clean-config + +clean-config: + rm -f $(CONFIG) + +ifndef BASE +exists=$(shell [ -f "$(CONFIG)" ] && echo exists) +ifeq (exists,$(exists)) +include $(CONFIG) +else +$(shell $(XSEG_HOME)/envsetup show | sed -e 's/"//g' > "$(CONFIG)") +include $(CONFIG) +endif + +export XSEG_DOMAIN_TARGETS=$(shell $(XSEG_HOME)/tools/xseg-domain-targets | sed -e 's/^[^=]*=//;s/"//g') +export BASE=$(XSEG_HOME) +endif