#******************************************************************************* #* FILE PURPOSE: Top level makefile for Creating Component Libraries for ARM #* architectures #******************************************************************************* #* FILE NAME: makefile #* #* DESCRIPTION: Defines Compiler tools paths, libraries , Build Options #* #* #******************************************************************************* #* # (Mandatory) Specify where various tools are installed. # Set the device to build the test bin files export DEVICE ?= c6614 # Dependent package install location export CUIA_INSTALL_DIR ?= $HOME/cuia_1_00_00_13 #Default Do not use the shared object libraries for the test/example applications export USEDYNAMIC_LIB ?= "no" # Output for installing generated library and binary files for install rule export TARGET_ROOT_DIR ?= . export USRBIN_DIR ?= $(TARGET_ROOT_DIR)/usr/bin export USRLIB_DIR ?= $(TARGET_ROOT_DIR)/usr/lib export USRINC_DIR ?= $(TARGET_ROOT_DIR)/usr/include # Output for prebuilt generated libraries export ARMV7LIBDIR ?= ./lib/armv7 export ARMV7BINDIR ?= ./bin/$(DEVICE) export ARMV7OBJDIR ?= ./obj/$(DEVICE) # ROOT Directory export ROOTDIR := ../../.. # INCLUDE Directory export INCDIR := ../../..;$(CUIA_INSTALL_DIR);$(CUIA_INSTALL_DIR)/packages;$(CUIA_INSTALL_DIR)/sources;$(ROOTDIR) # 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 clean lib tests install # all rule all: .executables .executables: lib tests # Libraries lib: .libraries # tests Stub to add tests tests: @$(MAKE) -f ./test/TFUnitTest/$(DEVICE)/armv7/linux/build/makefile all # Make rule to create trace framework libraries .libraries: $(ARMV7LIBDIR)/libtraceframework.a libtraceframework.so $(ARMV7LIBDIR)/libtraceframework.a: @echo Creating the static library @$(MAKE) -f ./build/armv7/libtf_aearmv7.mk $@ libtraceframework.so: @echo Creating the shared library @$(MAKE) -f ./build/armv7/libtf_aearmv7.mk $@ # Rule to clean traceframework library clean: @$(MAKE) -f ./build/armv7/libtf_aearmv7.mk $@ @$(RM) $(ARMV7LIBDIR)/libtraceframework.a @$(MAKE) -f ./test/TFUnitTest/$(DEVICE)/armv7/linux/build/makefile $@ @$(RMDIR) $(ARMV7OBJDIR) @$(RMDIR) $(ARMV7BINDIR) @$(RM) $(ARMV7LIBDIR)/libtraceframework.so @$(RM) $(ARMV7LIBDIR)/libtraceframework.so.* install: install -d $(USRINC_DIR)/ti/instrumentation/traceframework install -d $(USRLIB_DIR) install -d $(USRBIN_DIR) $(CP) ./*.h $(USRINC_DIR)/ti/instrumentation/traceframework @$(CP) -r $(ARMV7LIBDIR)/*.a $(USRLIB_DIR) @$(CP) -r $(ARMV7LIBDIR)/*.so $(USRLIB_DIR) @$(CP) -r $(ARMV7LIBDIR)/*.so.* $(USRLIB_DIR) $(CP) ./test/TFUnitTest/TFUnitTest_input.txt $(USRBIN_DIR) install -c -m 755 $(ARMV7BINDIR)/tfw/test/tfwUiaArmConsumer.out $(USRBIN_DIR)/tfwUiaArmConsumer_$(DEVICE).out install -c -m 755 $(ARMV7BINDIR)/tfw/test/tfwUiaMinstArmConsumer.out $(USRBIN_DIR)/tfwUiaMinstArmConsumer_$(DEVICE).out install -c -m 755 $(ARMV7BINDIR)/tfw/test/tfwcUiaProdConsumers.out $(USRBIN_DIR)/tfwcUiaProdConsumers_$(DEVICE).out