#
# Makefile for LKCD libraries and utilities
#
# Copyright 2000,2004 Silicon Graphics, Inc. All rights reserved.
#
TOPDIR=..

# Cross Compiling Support
CROSS_COMPILE   =
AS              = $(CROSS_COMPILE)as
LD              = $(CROSS_COMPILE)ld
CC              = $(CROSS_COMPILE)gcc
CPP             = $(CC) -E
AR              = $(CROSS_COMPILE)ar
NM              = $(CROSS_COMPILE)nm
STRIP           = $(CROSS_COMPILE)strip
OBJCOPY         = $(CROSS_COMPILE)objcopy
OBJDUMP         = $(CROSS_COMPILE)objdump
export AS LD CC CPP AR NM STRIP OBJCOPY OBJDUMP

all: default

default: check_config subdirs_make

check_config:
	@if [ \! -f $(TOPDIR)/.config ] ; then \
		echo "You must run './configure' before running 'make'." ; \
		exit 1 ; \
	fi

-include $(TOPDIR)/.config

SUB_DIRS  = libklib liballoc libutil librl libsial libconfig libhwconfig 

subdirs_make:
	for dir in $(SUB_DIRS) ; do \
		( cd $$dir && \
		 	$(MAKE) ARCH=$(ARCH) LIBSIAL=$(LIBSIAL) ) || exit $$?; \
	done

clean:
	for dir in $(SUB_DIRS) ; do \
		( cd $$dir && \
			$(MAKE) ARCH=$(ARCH) LIBSIAL=$(LIBSIAL) clean ) \
		 || exit $$?; \
	done

clobber: clean
	for dir in $(SUB_DIRS) ; do \
		(cd $$dir && \
			$(MAKE) ARCH=$(ARCH) LIBSIAL=$(LIBSIAL) clobber) \
		|| exit $$?; \
	done
	/bin/rm -f get_bfd_version

headers:
	for dir in $(SUB_DIRS) ; \
	do \
		(cd $$dir && $(MAKE) ARCH=$(ARCH) LIBSIAL=$(LIBSIAL) headers) \
		|| exit $$?; \
	done

exports: 
	for dir in $(SUB_DIRS) ; \
	do \
		(cd $$dir && $(MAKE) ARCH=$(ARCH) LIBSIAL=$(LIBSIAL) exports) \
		|| exit $$?; \
	done

install:
	for dir in $(SUB_DIRS) ; \
	do \
		(cd $$dir && $(MAKE) ARCH=$(ARCH) LIBSIAL=$(LIBSIAL) install) \
		|| exit $$?; \
	done
