# Makefile for rdsgds construction

include $(TOP)/etc/$(MACHINE).mk
include $(TOP)/etc/libraries.mk

LOCAL_CFLAGS = $(CFLAGS) -g -D$(MACHINE)

LOCAL_GDSOBJ = gds_parse.o gds_drive.o gds_error.o

LOCAL_TRGLIB = ../lib

LOCAL_HEADER = -I$(ALLIANCE_INCLUDE) \
               -DMUT_H='"$(MUT_H)"' \
               -DMPH_H='"$(MPH_H)"' \
               -DRDS_H='"$(RDS_H)"' \
               -DRPR_H='"$(RPR_H)"' \
               -DRFM_H='"$(RFM_H)"' \
               -DRUT_H='"$(RUT_H)"' \
               -DRTL_H='"$(RTL_H)"'

LOCAL_GDSLIB = libRgs106.a

distrib : $(LOCAL_TRGLIB)/$(LOCAL_GDSLIB)
	@if [ -f $(LOCAL_TRGLIB)/INSTALLED ] ; \
	then $(RM) $(LOCAL_TRGLIB)/INSTALLED ; \
	else exit 0 ; \
	fi
	@$(TOUCH) distrib

all : $(LOCAL_TRGLIB)/$(LOCAL_GDSLIB)

$(LOCAL_TRGLIB)/$(LOCAL_GDSLIB) : $(LOCAL_GDSOBJ)
	$(AR) $(ARFLAGS) $(LOCAL_TRGLIB)/$(LOCAL_GDSLIB) $(LOCAL_GDSOBJ)
	$(RANLIB) $(LOCAL_TRGLIB)/$(LOCAL_GDSLIB)

gds_error.o : gds_error.c gds_error.h gds.h
	$(CC) $(LOCAL_CFLAGS) $(LOCAL_HEADER) -c gds_error.c

gds_drive.o : gds_drive.c gds_drive.h gds_error.h gds.h
	$(CC) $(LOCAL_CFLAGS) $(LOCAL_HEADER) -c gds_drive.c

gds_parse.o : gds_parse.c gds_parse.h gds_error.h gds.h
	$(CC) $(LOCAL_CFLAGS) $(LOCAL_HEADER) -c gds_parse.c

clean :
	-$(RM) -f $(LOCAL_GDSOBJ)
	-$(RM) -f distrib
	-$(RM) -f $(LOCAL_TRGLIB)/$(LOCAL_GDSLIB)

realclean :
	-$(RM) $(LOCAL_GDSOBJ) $(LOCAL_TRGLIB)/$(LOCAL_GDSLIB)
