# 
# $Id$
# 
# [ Description ]
# 
# Makefile
# 
# DIR_MORPHEO must be defined

Branch_Target_Buffer			= yes

ifndef Behavioural
include 				$(DIR_MORPHEO)/Behavioural/Makefile.deps
endif
ifndef Branch_Target_Buffer_Glue
include 				$(DIR_MORPHEO)/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Branch_Target_Buffer/Branch_Target_Buffer_Glue/Makefile.deps
endif
ifndef Branch_Target_Buffer_Register
include 				$(DIR_MORPHEO)/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Branch_Target_Buffer/Branch_Target_Buffer_Register/Makefile.deps
endif
ifndef Sort
include 				$(DIR_MORPHEO)/Behavioural/Generic/Sort/Makefile.deps
endif
ifndef Victim
include 				$(DIR_MORPHEO)/Behavioural/Generic/Victim/Makefile.deps
endif

#-----[ Directory ]----------------------------------------

Branch_Target_Buffer_DIR		=	$(DIR_MORPHEO)/Behavioural/Core/Multi_Front_end/Front_end/Prediction_unit/Branch_Target_Buffer

#-----[ Library ]------------------------------------------

Branch_Target_Buffer_LIBRARY		= 	-lBranch_Target_Buffer				\
						$(Branch_Target_Buffer_Glue_LIBRARY)		\
						$(Branch_Target_Buffer_Register_LIBRARY)	\
						$(Sort_LIBRARY)					\
						$(Victim_LIBRARY)				\
						$(Behavioural_LIBRARY)	

Branch_Target_Buffer_DIR_LIBRARY	=	-L$(Branch_Target_Buffer_DIR)/lib		\
						$(Branch_Target_Buffer_Glue_DIR_LIBRARY)	\
						$(Branch_Target_Buffer_Register_DIR_LIBRARY)	\
						$(Sort_DIR_LIBRARY)				\
						$(Victim_DIR_LIBRARY)				\
						$(Behavioural_DIR_LIBRARY)

#-----[ Rules ]--------------------------------------------

Branch_Target_Buffer_library		:
					@\
					$(MAKE) Behavioural_library;				\
					$(MAKE) Branch_Target_Buffer_Glue_library;		\
					$(MAKE) Branch_Target_Buffer_Register_library;		\
					$(MAKE) Sort_library;					\
					$(MAKE) Victim_library;					\
					$(MAKE) --directory=$(Branch_Target_Buffer_DIR) --makefile=Makefile;

Branch_Target_Buffer_library_clean	:
					@\
					$(MAKE) Behavioural_library_clean;			\
					$(MAKE) Branch_Target_Buffer_Glue_library_clean;	\
					$(MAKE) Branch_Target_Buffer_Register_library_clean;	\
					$(MAKE) Sort_library_clean;				\
					$(MAKE) Victim_library_clean;				\
					$(MAKE) --directory=$(Branch_Target_Buffer_DIR) --makefile=Makefile clean;
