# Transport: Plugin interface
#
MOD_NAME = tr_plugin
MOD_TYPE = lib
MOD_DEPS = utils common_api model

ifeq ("$(RELEASE_BUILD)", "y")
MOD_INC_DIRS = $(SRC_DIR) $(TOP_DIR)/host_driver/transport
else
MOD_INC_DIRS = $(SRC_DIR) $(SRC_DIR)/..
endif
