ROOT    := env
export ROOT

ENV_SUBDIRS := generic
ENV_OBJS    := generic.o init.o port.o video.o

ifdef CONFIG_ENV_X
ENV_SUBDIRS := $(ENV_SUBDIRS) X
ENV_OBJS    := $(ENV_OBJS) X.o
endif

ifdef CONFIG_ENV_i386
ENV_SUBDIRS := $(ENV_SUBDIRS) i386
ENV_OBJS    := $(ENV_OBJS) i386.o
endif

.c.s:
	$(CC) $(CFLAGS) -S $<
.c.o:
	$(CC) $(CFLAGS) -c $<
.s.o:
	$(AS) -o $*.o $<

all: env.a

env.a: dummy $(ENV_OBJS)
	rm -f env.a
	$(AR) rcs env.a $(ENV_OBJS)
	set -e; for i in $(ENV_SUBDIRS); do \
	  test ! -d $$i || \
	    { $(MAKE) -C $$i; $(AR) rcs env.a $$i/*.o; }; done

depend dep:
	$(CPP) -M $(CFLAGS) *.c > .depend
	set -e; for i in $(ENV_SUBDIRS); do \
	  test ! -d $$i || $(MAKE) -C $$i dep; done

dummy:

#
# include a dependency file if one exists
#
ifeq (.depend,$(wildcard .depend))
include .depend
endif
