summaryrefslogtreecommitdiffstats
path: root/build
diff options
context:
space:
mode:
authorJohn Dowdal2015-04-09 11:02:49 -0500
committerJohn Dowdal2015-04-09 11:02:49 -0500
commite60afa6baf80d4b59250fa12dece24c1a8eb8207 (patch)
tree56286d4cd3d194fd732b1d387d2a5917153b214d /build
parent75a2d15f7d1269707477803e026710f18421f812 (diff)
downloadpcie-lld-e60afa6baf80d4b59250fa12dece24c1a8eb8207.tar.gz
pcie-lld-e60afa6baf80d4b59250fa12dece24c1a8eb8207.tar.xz
pcie-lld-e60afa6baf80d4b59250fa12dece24c1a8eb8207.zip
refactor for v0/v1 and run on k2h
Diffstat (limited to 'build')
-rw-r--r--build/armv7/libpcie_aearmv7.mk114
1 files changed, 114 insertions, 0 deletions
diff --git a/build/armv7/libpcie_aearmv7.mk b/build/armv7/libpcie_aearmv7.mk
new file mode 100644
index 0000000..38be5cb
--- /dev/null
+++ b/build/armv7/libpcie_aearmv7.mk
@@ -0,0 +1,114 @@
1#*******************************************************************************
2#* FILE PURPOSE: Lower level makefile for Creating Component Libraries for ARMv7
3#*******************************************************************************
4#* FILE NAME: ./lib/libpcie_aearmv7.mk
5#*
6#* DESCRIPTION: Defines Source Files, Compilers flags and build rules
7#*
8#*******************************************************************************
9#
10
11#
12# Macro definitions referenced below
13#
14empty =
15space =$(empty) $(empty)
16
17# Output for prebuilt generated libraries
18ARMV7LIBDIR ?= ./lib
19ARMV7OBJDIR ?= ./obj
20ARMV7OBJDIR_SO := $(ARMV7OBJDIR)/pcie/lib_so
21ARMV7OBJDIR := $(ARMV7OBJDIR)/pcie/lib
22ARMV7BINDIR ?= ./bin
23
24# Default optimization is on
25DEBUG_FLAG ?= -O2
26
27#CROSS_TOOL_INSTALL_PATH = "C:/ti/ccsv6/tools/compiler/gcc-arm-none-eabi-4_7-2013q3/bin"
28#CROSS_TOOL_PRFX = arm-none-eabi-
29
30ifdef CROSS_TOOL_INSTALL_PATH
31# Support backwards compatibility with KeyStone1 approach
32 CC = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)gcc
33 AC = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)as
34 AR = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)ar
35 LD = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)gcc
36endif
37
38INCS = -I. -I$(strip $(subst ;, -I,$(subst $(space),\$(space),$(INCDIR))))
39
40CFLAGS+=-mno-unaligned-access
41INTERNALDEFS = -D__ARMv7 -D_LITTLE_ENDIAN=1 -DMAKEFILE_BUILD
42CFLAGS += $(INTERNALDEFS)
43
44#Device specific definition
45
46ifeq ($(DEVICE), k2k)
47 CFLAGS += -DDEVICE_K2K
48endif
49
50ifeq ($(DEVICE), k2h)
51 CFLAGS += -DDEVICE_K2H
52endif
53
54ifeq ($(DEVICE), k2l)
55 CFLAGS += -DDEVICE_K2L -DNSS_GEN2
56endif
57
58ifeq ($(DEVICE), k2e)
59 CFLAGS += -DDEVICE_K2E -DNSS_GEN2
60endif
61
62OBJEXT = o
63INTERNALLINKDEFS =
64
65SRCDIR = ./src
66
67
68VPATH=$(SRCDIR)
69
70#List the COMMONSRC Files
71COMMONSRCC = \
72 pcie.c \
73 pcieinit.c \
74 v0/pciev0.c \
75 v0/pciev0_app.c \
76 v0/pciev0_cfg.c
77
78
79# FLAGS for the COMMONSRC Files
80COMMONSRCCFLAGS = $(DEBUG_FLAG) -I$(SRCDIR) -I.
81CFLAGS +=$(COMMONSRCCFLAGS)
82
83# Make Rule for the COMMONSRC Files
84COMMONSRCCOBJS = $(patsubst %.c, $(ARMV7OBJDIR)/%.$(OBJEXT), $(COMMONSRCC))
85COMMONSRCCOBJS_SO = $(patsubst %.c, $(ARMV7OBJDIR_SO)/%.$(OBJEXT), $(COMMONSRCC))
86
87$(COMMONSRCCOBJS): $(ARMV7OBJDIR)/%.$(OBJEXT): %.c $(ARMV7OBJDIR)/.created
88 -@echo compiling $< ...
89 @$(CC) -c $(CFLAGS) $(INCS) $< -o $@
90
91$(COMMONSRCCOBJS_SO): $(ARMV7OBJDIR_SO)/%.$(OBJEXT): %.c $(ARMV7OBJDIR_SO)/.created
92 -@echo compiling $< ...
93 @$(CC) -c $(CFLAGS) -fPIC $(INCS) $< -o $@
94
95$(ARMV7LIBDIR)/lib$(LLD_NAME).a: $(COMMONSRCCOBJS) $(ARMV7LIBDIR)/.created
96 @echo archiving $? into $@ ...
97 @$(AR) -r $@ $?
98
99
100$(ARMV7OBJDIR_SO)/.created:
101 @mkdir -p $(ARMV7OBJDIR_SO) $(ARMV7OBJDIR_SO)/v0 $(ARMV7OBJDIR_SO)/v1
102 @touch $(ARMV7OBJDIR_SO)/.created
103
104$(ARMV7OBJDIR)/.created:
105 @mkdir -p $(ARMV7OBJDIR) $(ARMV7OBJDIR)/v0 $(ARMV7OBJDIR)/v1
106 @touch $(ARMV7OBJDIR)/.created
107
108$(ARMV7LIBDIR)/.created:
109 @mkdir -p $(ARMV7LIBDIR)
110 @touch $(ARMV7LIBDIR)/.created
111
112clean:
113 @$(RMDIR) $(ARMV7OBJDIR)
114