]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - processor-sdk/pdk.git/blob - packages/ti/drv/pa/test/PAUnitTest/k2h/armv7/linux/build/makefile
pa-lld: add to PDK
[processor-sdk/pdk.git] / packages / ti / drv / pa / test / PAUnitTest / k2h / armv7 / linux / build / makefile
1 #
2 # Macro definitions referenced below
3 #
5 empty =
6 space =$(empty) $(empty)
8 ARMV7OBJDIR ?= ./obj/$(DEVICE)
9 ARMV7BINDIR ?= ./bin/$(DEVICE)
10 ARMV7LIBDIR ?= ./lib
12 ARMV7OBJDIR := $(ARMV7OBJDIR)/pa/test
13 ARMV7BINDIR := $(ARMV7BINDIR)/pa/test
15 #Cross tools
16 ifdef CROSS_TOOL_INSTALL_PATH
17 # Support backwards compatibility with KeyStone1 approach
18  CC = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)gcc
19  AC = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)as
20  AR = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)ar
21  LD = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)gcc
22 endif
24 # INCLUDE Directories
25 QMSS_INC_DIR = $(PDK_INSTALL_PATH)/ti/drv/qmss
26 CPPI_INC_DIR = $(PDK_INSTALL_PATH)/ti/drv/cppi
28 PA_SRC_DIR ?= $(PDK_INSTALL_PATH)/ti/drv/pa
29 PA_TEST_DIR = $(PA_SRC_DIR)/test/PAUnitTest
30 PA_TEST_COM_DIR = $(PA_TEST_DIR)/src/common
31 PA_TEST_UT_DIR = $(PA_TEST_DIR)/src/tests
32 PA_TEST_ARM_LIN_DIR = $(PA_TEST_DIR)/src/armv7/linux
34 PA_TEST_REASSEMBLY_LIB_DIR = $(PA_SRC_DIR)/example/reassemLib
36 INCDIR := $(PDK_INSTALL_PATH);$(CPPI_INC_DIR);$(QMSS_INC_DIR);$(PA_TEST_DIR);$(PA_TEST_COM_DIR);$(PA_TEST_UT_DIR);$(PA_TEST_ARM_LIN_DIR);$(PA_TEST_REASSEMBLY_LIB_DIR)
38 # Libraries
39 CPPI_LIB = -lcppi
40 QMSS_LIB = -lqmss
41 PA_LIB   = -lpa
42 RM_LIB   = -lrm
44 ifeq ($(USEDYNAMIC_LIB), yes)
45 #presuming ARM executable would depend on dynamic library dependency
46 EXE_EXTN = _so
47 LIBS     = $(QMSS_LIB) $(PA_LIB) $(CPPI_LIB) $(RM_LIB)
48 else
49 #forcing ARM executable to depend on static LLD libraries
50 LIBS = -Wl,-Bstatic $(QMSS_LIB) $(PA_LIB) $(CPPI_LIB) $(RM_LIB) -Wl,-Bdynamic
51 EXE_EXTN =
52 endif
54 # Compiler options
55 INTERNALDEFS = -g -D__ARMv7 -DSOC_K2H -D_VIRTUAL_ADDR_SUPPORT -D__LINUX_USER_SPACE -D_LITTLE_ENDIAN=1 -DMAKEFILE_BUILD
57 # Linker options
58 INTERNALLINKDEFS = -Wl,--start-group -L$(ARMV7LIBDIR) $(LIBS) -lrt -Wl,--end-group -pthread $(LDFLAGS)
60 EXE=paUnitTest$(EXE_EXTN).out
61 OBJEXT = o 
63 SRCDIR = $(PA_TEST_DIR):$(PA_TEST_COM_DIR):$(PA_TEST_UT_DIR):$(PA_TEST_ARM_LIN_DIR):$(PA_TEST_REASSEMBLY_LIB_DIR)
65 INCS = -I. -I$(strip $(subst ;, -I,$(INCDIR)))
67 VPATH=$(SRCDIR)
69 #List the COMMONSRC Files
70 COMMONSRCC = \
71     fw_main.c \
72     fw_init.c \
73     fw_osal.c \
74     fw_mem_allocator.c \
75     sockutils.c \
76     common.c \
77     setuprm.c \
78     testutil.c \
79     test1.c \
80     test2.c \
81     test3.c \
82     test4.c \
83     test5.c \
84     test6.c \
85     test7.c \
86     test8.c \
87     test9.c \
88     test10.c \
89     test11.c \
90     reassemLib.c
92 # FLAGS for the COMMONSRC Files
93 COMMONSRCCFLAGS = -I.
95 # Make Rule for the COMMONSRC Files
96 COMMONSRCCOBJS = $(patsubst %.c, $(ARMV7OBJDIR)/%.$(OBJEXT), $(COMMONSRCC))
98 all:$(ARMV7BINDIR)/$(EXE)
100 $(ARMV7BINDIR)/$(EXE): $(COMMONSRCCOBJS) $(ARMV7BINDIR)/.created
101         @echo linking $(COMMONSRCCOBJS) into $@ ...
102         @$(CC) $(COMMONSRCCOBJS) $(INTERNALLINKDEFS) -o $@
104 $(ARMV7OBJDIR)/%.$(OBJEXT): %.c $(ARMV7OBJDIR)/.created
105         @echo compiling $< ...
106         @$(CC) -c $(COMMONSRCCFLAGS) $(INTERNALDEFS) $(INCS)  $< -o $@
108 $(ARMV7OBJDIR)/.created:
109         @mkdir -p $(ARMV7OBJDIR)
110         @touch $(ARMV7OBJDIR)/.created
112 $(ARMV7BINDIR)/.created:
113         @mkdir -p $(ARMV7BINDIR)
114         @touch $(ARMV7BINDIR)/.created
116 clean:
117         @rm -fr $(ARMV7OBJDIR)
118         @rm -fr $(ARMV7BINDIR)