# Copyright (C) 2015 Texas Instruments Incorporated - http://www.ti.com/
#
#
#  Redistribution and use in source and binary forms, with or without
#  modification, are permitted provided that the following conditions
#  are met:
#
#    Redistributions of source code must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
#    Redistributions in binary form must reproduce the above copyright
#    notice, this list of conditions and the following disclaimer in the
#    documentation and/or other materials provided with the
#    distribution.
#
#    Neither the name of Texas Instruments Incorporated nor the names of
#    its contributors may be used to endorse or promote products derived
#    from this software without specific prior written permission.
#
#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
#  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
#  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
#  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
#  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
#  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
#  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
#  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
#  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
#  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

export USEDYNAMIC_LIB ?= "no"

# ROOT Directory
ifndef PDK_INSTALL_PATH
export ROOTDIR := ../..
else
export ROOTDIR = $(PDK_INSTALL_PATH)
endif

# PDK Board Library
ifndef PDK_DIAG_DIR
export PDK_DIAG_DIR = $(ROOTDIR)/ti/board
endif

# Device based on board
ifeq ($(BOARD), idkAM571x)
export DEVICE=AM571x
endif

ifeq ($(BOARD), idkAM572x)
export DEVICE=AM572x
endif

# Common Macros used in make
ifndef RM
export RM = rm -f
endif

ifndef CP
export CP = cp -p
endif

export MKDIR = mkdir -p

ifndef RMDIR
export RMDIR = rm -rf
endif

ifndef SED
export SED = sed
endif

ifndef MAKE
export MAKE = make
endif

# PHONY Targets
.PHONY: all build_example clean

# all rule
all: build_example

# Check for board variable to exist
check-board:
ifndef BOARD
	@echo BOARD NOT DEFINED, exiting...
	@exit 1
else
	@if [ ! -d "./build/$(BOARD)" ]; then echo $(DIAGTEST) not supported for $(BOARD); exit 1; fi
endif
	
# Check for target variable to exist
check-target:
ifndef TARGET
	@echo TARGET NOT DEFINED, exiting...
	@exit 1
else
	@if [ ! -d "./build/$(BOARD)/$(TARGET)" ]; then echo $(DIAGTEST) not supported for target $(TARGET) using board $(BOARD); exit 1; fi
endif

build_example: check-board check-target
	$(MAKE) -f ./build/$(BOARD)/$(TARGET)/makefile 

clean: check-board check-target
	$(MAKE) -f ./build/$(BOARD)/$(TARGET)/makefile clean
