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

ALC_INC = -I$(ALLIANCE_INCLUDE) \
          -DGFP_H='<$(GFP_H)>' \
          -DMGN_H='<$(MGN_H)>' \
          -DMLU_H='<$(MLU_H)>' \
          -DMPU_H='<$(MPU_H)>' \
          -DMLO_H='<$(MLO_H)>' \
          -DMPH_H='<$(MPH_H)>' \
          -DBHL_H='<$(BHG_H)>' \
          -DBVL_H='<$(BVL_H)>' \
          -DBEH_H='<$(BEH_H)>' \
          -DPAT_H='<$(PAT_H)>' \
          -DLOG_H='<$(LOG_H)>' \
          -DMUT_H='<$(MUT_H)>' \
          -DAPR_H='<$(APR_H)>'

ALC_LIB = -L$(ALLIANCE_LIB) \
          $(GFP_L) \
          $(APR_L) \
          $(MGN_L) \
          $(MLU_L) \
          $(MPU_L) \
          $(MCP_L) \
          $(MAP_L) \
          $(MMG_L) \
          $(MCL_L) \
          $(MAL_L) \
          $(MVL_L) \
          $(MEL_L) \
          $(MSL_L) \
          $(MHL_L) \
          $(MLO_L) \
          $(MPH_L) \
          $(BVL_L) \
          $(BHL_L) \
          $(BEH_L) \
          $(PAT_L) \
          $(MUT_L)

DPR_VERSION   =  5.4
LOCAL_CFLAGS  =  $(CFLAGS)                              \
                 $(ALC_INC)                             \
                 -DDPR_VERSION='"$(DPR_VERSION)"'       \
                 -DALLIANCE_VERSION=$(ALLIANCE_VERSION) \
                 -D$(MACHINE)                           \
                 -O

LOCAL_TRGBIN = ../bin

MAIN_OBJ     = dpr.o
PLACER_OBJ   = placer_main.o        \
               placer_structure.o   \
               placer_decoup.o      \
               placer_utils.o       \
               placer_create_grid.o \
               placer_create_con.o  \
               placer_dprfile.o     \
               scp_scp2mbk.o
ROUTER_OBJ   = acces_R.o            \
               init_router_R.o      \
               optiplace_R.o        \
               save_R.o             \
               dpr_R.o              \
               phwork_R.o           \
               sig_R.o              \
               chanrout_R.o         \
               load_R.o             \
               util_R.o             \
               debug_R.o            \
               dprlin_R.o           \
               router_R.o
OBJ          = $(MAIN_OBJ)          \
               $(PLACER_OBJ)        \
               $(ROUTER_OBJ)

.c.o :
	$(CC) $(LOCAL_CFLAGS) -c $<

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

$(LOCAL_TRGBIN)/dpr : $(OBJ)
	$(CC) $(CFLAGS) $(OBJ) $(ALC_LIB) -lm -o $(LOCAL_TRGBIN)/dpr

clean:
	-$(RM) -f $(OBJ)
	-$(RM) -f distrib
	-$(RM) -f $(LOCAL_TRGBIN)/dpr

depends:
	if [ "$(CC)" = "gcc" ] ;\
	then $(CC) -MM $(LOCAL_CFLAGS) *.c > Makefile.depends ;\
	else echo "Option invalide avec $(CC)" ;\
	fi

lint:
	for i in `/bin/ls *.c`;\
	do\
	  echo "*******************";\
	  echo $$i;\
	  echo " ";\
	  lint -u $$i $(DPP_CFLAGS);\
	done

include Makefile.depends
