#-----------------------------------------------------------------------------
#
#      File         :  Makefile
#      Abstract     :  The makefile for building an Application
#      Last Revision:  03-01-02
#      SDK Version  :  3.40
#      Usage        :  To Build Target:
#                          make
#
#                      To Cleanup Intermdiate files only:
#                          make clean
#
#                      To Cleanup All files:
#                          make cleanall
#
#-----------------------------------------------------------------------------


#=============================================================================
# Modify the following lines as needed:
#
# ImageName   		= The final image name
# TGT_TYPE    		= Type of Target image [App | Library | Driver]
# PLX_DEBUG/DEBUG	= Add/remove the comment symbol(#) to disable/enable
#			  debugging. Use DEBUG for Plx SDK versions prior to
#			  4.4.
#=============================================================================
ImageName   = GscApi$(DBG)
TGT_TYPE    = Library
#DEBUG       = 1
#PLX_DEBUG       = 1
#PLX_SDK_DIR = /home/mercier/PlxLinux
EXTRA_CFLAGS = -I/usr/local/include/GscApi -I. -I./Analog -D_REENTRANT -DPLXVER_MAJ=5 -DPLXVER_MIN=1

#=============================================================================
# Put all object files here. OBJECTS is used by the makefiles in Plx sdk
# versions prior to 4.4. It is ignored when building with Plx sdk v. 4.4.
#=============================================================================
OBJECTS	= \
	$(OBJ_DIR)/GscApi.o  		\
	$(OBJ_DIR)/GscApiClock.o	\
	$(OBJ_DIR)/GscApiDeprecated.o	\
	$(OBJ_DIR)/GscApiDma.o		\
	$(OBJ_DIR)/GscApiInterrupt.o	\
	$(OBJ_DIR)/GscApiPins.o		\
	$(OBJ_DIR)/GscApiUtils.o	\
	$(OBJ_DIR)/GscApiCommon.o	\
	$(OBJ_DIR)/GscApiAnalog.o	\
	$(OBJ_DIR)/GscApiAsync.o	\
	$(OBJ_DIR)/GscApiSync.o		\
	$(OBJ_DIR)/GscApiBiSync.o	\
	$(OBJ_DIR)/GscApiBiSync16.o	\
	$(OBJ_DIR)/GscApiHdlc.o		\
	$(OBJ_DIR)/GscApiRAsync.o	\
	$(OBJ_DIR)/GscApiPrivate.o	\
	$(OBJ_DIR)/GscAnalogBoard.o	\
	$(OBJ_DIR)/GscAnaSSA.o		\
	$(OBJ_DIR)/GscAnaDSI.o
PLX_OBJECTS	= \
	$(OBJ_DIR)/GscAnalogBoard.o	\
	$(OBJ_DIR)/GscApi.o  		\
	$(OBJ_DIR)/GscApiClock.o	\
	$(OBJ_DIR)/GscApiDeprecated.o	\
	$(OBJ_DIR)/GscApiDma.o		\
	$(OBJ_DIR)/GscApiInterrupt.o	\
	$(OBJ_DIR)/GscApiPins.o		\
	$(OBJ_DIR)/GscApiUtils.o	\
	$(OBJ_DIR)/GscApiCommon.o	\
	$(OBJ_DIR)/GscApiAnalog.o	\
	$(OBJ_DIR)/GscApiAsync.o	\
	$(OBJ_DIR)/GscApiSync.o		\
	$(OBJ_DIR)/GscApiBiSync.o	\
	$(OBJ_DIR)/GscApiBiSync16.o	\
	$(OBJ_DIR)/GscApiHdlc.o		\
	$(OBJ_DIR)/GscApiRAsync.o	\
	$(OBJ_DIR)/GscApiPrivate.o	\
	$(OBJ_DIR)/GscAnalogBoard.o	\
	$(OBJ_DIR)/GscAnaSSA.o		\
	$(OBJ_DIR)/GscAnaDSI.o

#=============================================================================
# Include standard common definitions
#=============================================================================
include $(PLX_SDK_DIR)/Linux/Makefiles/Common.def

#=============================================================================
# Target builds
#=============================================================================
all:    DisplayParameters Build$(TGT_TYPE)

#=============================================================================
# Include definitions for the tools
#=============================================================================
include $(PLX_SDK_DIR)/Linux/Makefiles/Gcc.def

$(OBJ_DIR)/%.o : Analog/%.cpp
	@echo Compiling: $<
	$(Q)$(CXX) $< -o $@ $(EXTRA_CFLAGS)
	@echo

$(OBJ_DIR)/%.o : %.cpp
	@echo Compiling: $<
	$(Q)$(CXX) $< -o $@ $(EXTRA_CFLAGS)
	@echo



#=============================================================================
# Include definitions for building targets
#=============================================================================
include $(PLX_SDK_DIR)/Linux/Makefiles/Targets.def
