#!/usr/bin/make -f
#

TOP=$(TOPDIR)/libc
VERMAJOR=0
VERMINOR=0
VERPATCH=10
VER=$(VERMAJOR).$(VERMINOR).$(VERPATCH)

CC=bcc
CCFLAGS=-I -I$(TOP)/include
DEFS='-D__LIBC__="$(VER)"'

include Make.defs

CFLAGS=$(ARCH) $(CCFLAGS) $(DEFS)

############################################################################

MAKEPASS=	\
         LIBC='$(LIBC)' CC='$(CC)' ARCH='$(ARCH)' CCFLAGS='$(CCFLAGS)'	\
         DEFS='$(DEFS)' LIB_CPU='$(LIB_CPU)' LIB_OS='$(LIB_OS)' \


all: $(OBJ) $(LIBC)
	@:

$(LIBC): transfer .config.dir
	@for i in `cat .config.dir` ; do \
	   $(MAKE) $(MAKEPASS) -C $$i all || exit 1 ; \
	done

crt0.o: Makefile
crt3.o: Makefile

crt3.o: crt0.c
	$(CC) -c $(CFLAGS) -o $@ crt0.c

############################################################################

transfer: .config.dir
	@for i in `cat .config.dir`; do \
	   grep -s '^transfer' $$i/Makefile && $(MAKE) -s -C $$i $@ ; \
	done ; echo -n
	@[ -f kinclude/Used ] || \
	{ rm -f include/linuxmt ; \
	  ln -s $(ELKSSRC)/include/linuxmt include ; }

############################################################################

realclean: clean noconfig

clean:
	rm -f *.o *.a
	@for i in */Makefile ; do \
	   $(MAKE) -C `dirname $$i` $@ || exit 1 ; \
	done

############################################################################

install_incl:
	rm -rf $(BCCHOME)/include
	cp -pr include $(BCCHOME)/include
	if [ -f kinclude/Used ] ; \
	then cp -pr kinclude/arch $(BCCHOME)/include/arch ; \
	else rm -rf $(BCCHOME)/include/linuxmt ; \
	     ln -s $(ELKSSRC)/include/linuxmt $(BCCHOME)/include ; \
	fi
	-chown -R root:root   $(BCCHOME)/include 2>/dev/null
	-chmod -R u=rwX,og=rX $(BCCHOME)/include

############################################################################

config: 
	sh Config_sh

.config.dir: .config.lst
	@grep '^[^:]*:+:' < .config.lst | sed 's/:.*//' > .config.tmp
	@mv -f .config.tmp .config.dir

.config.lst: Config_sh
	sh Config_sh
	
noconfig:
	rm -f .config.dir .config.lst .config.tmp

############################################################################

Libc_version:
	echo $(VER) > ../Libc_version
