]> Gitweb @ Texas Instruments - Open Source Git Repositories - git.TI.com/gitweb - keystone-rtos/netapi.git/blob - ti/runtime/netapi/makefile_armv7
87744b6a7c1cad8bdc0399abf3e1dc9ca877b22a
[keystone-rtos/netapi.git] / ti / runtime / netapi / makefile_armv7
1 #*******************************************************************************
2 #* FILE PURPOSE: Top level makefile for Creating Component Libraries for ARM
3 #* architectures
4 #*******************************************************************************
5 #* FILE NAME: makefile
6 #*
7 #* DESCRIPTION: Defines Compiler tools paths, libraries , Build Options 
8 #*
9 #*
10 #*******************************************************************************
11 #*
12 # (Mandatory) Specify where various tools are installed.
14 # Output for prebuilt generated libraries
15 export ARMV7LIBDIR ?= ./lib
16 export ARMV7OBJDIR ?= ./obj
17 export ARMV7OBJDIR_SO := $(ARMV7OBJDIR)/netapi/lib_so
18 export ARMV7OBJDIR := $(ARMV7OBJDIR)/netapi/lib
20 export ARMV7BINDIR ?= ./bin
22 export DEVICE ?=k2l
24 #Enable the following to build for tci6614
25 #export CPU ?=cortex-a8
28 # ROOT Directory
29 export ROOTDIR := ../../..
32 # INCLUDE Directory
33 export INCDIR := ../;$(PDK_INSTALL_PATH);$(ROOTDIR)
35 # Common Macros used in make
37 ifndef RM
38 export RM = rm -f
39 endif
41 ifndef CP
42 export CP = cp -p
43 endif
45 export MKDIR = mkdir -p
47 ifndef RMDIR
48 export RMDIR = rm -rf
49 endif
51 ifndef SED
52 export SED = sed
53 endif
55 ifndef MAKE
56 export MAKE = make
57 endif
59 ifeq ($(DEVICE), k2h)
60 export CSL_DEVICE = -DDEVICE_K2H
61 endif
62 ifeq  ($(DEVICE), k2k)
63 export CSL_DEVICE = -DDEVICE_K2K
64 endif
65 ifeq ($(DEVICE), k2l)
66 export CSL_DEVICE = -DDEVICE_K2L -DNSS_GEN2
67 endif
68 ifeq ($(DEVICE), k2e)
69 export CSL_DEVICE = -DDEVICE_K2E -DNSS_GEN2
70 endif
72 # PHONY Targets
73 .PHONY: all clean lib tests examples install installbin
75 # all rule
76 all: .executables install installbin
77 .executables: lib tests examples
79 # Make rule to create $(ARMV7LIBDIR)/libnetapi.a library
80 lib: $(ARMV7LIBDIR)/libnetapi_$(DEVICE).a libnetapi_$(DEVICE).so
82 $(ARMV7LIBDIR)/libnetapi_$(DEVICE).a:
83         -@echo Building library...
84         -@echo ARMV7OBJDIR = $(ARMV7OBJDIR)
85         @$(MAKE) -f ./build/Makefile $@
88 libnetapi_$(DEVICE).so:
89         -@echo Building library...
90         -@echo ARMV7OBJDIR = $(ARMV7OBJDIR_SO)
91         @$(MAKE) -f ./build/Makefile $@
94 # Rule to clean $(ARMV7LIBDIR)/libnetapi.a library
95 clean:
96         -@echo Cleaning netapi package... $@
97         @$(MAKE) -f ./build/Makefile $@
98         @$(MAKE) -f ./test/build/Makefile $@
100 install:
101         install -d $(INSTALL_INC_BASE_DIR)/ti/runtime/netapi
102         install -d $(INSTALL_INC_BASE_DIR)/ti/runtime/netapi/src
103         install -d $(INSTALL_LIB_BASE_DIR)
104         $(CP) ./*.h                                       $(INSTALL_INC_BASE_DIR)/ti/runtime/netapi
105         $(CP) -r ./device                                 $(INSTALL_INC_BASE_DIR)/ti/runtime/netapi/
106         @$(CP) -r $(ARMV7LIBDIR)/libnetapi_$(DEVICE).a    $(INSTALL_LIB_BASE_DIR)
107         @$(CP) -rp $(ARMV7LIBDIR)/libnetapi_$(DEVICE).so* $(INSTALL_LIB_BASE_DIR)
108         $(CP) src/*.h                                     $(INSTALL_INC_BASE_DIR)/ti/runtime/netapi/src
110 installbin:
111         install -d $(INSTALL_BIN_BASE_DIR)
112         install -c -m 755 $(ARMV7BINDIR)/netapi/test/net_test_loopback_$(DEVICE) $(INSTALL_BIN_BASE_DIR)/net_test_loopback_$(DEVICE)
113         install -c -m 755 $(ARMV7BINDIR)/netapi/test/net_test_router_$(DEVICE) $(INSTALL_BIN_BASE_DIR)/net_test_router_$(DEVICE)
114         install -c -m 755 $(ARMV7BINDIR)/netapi/test/net_test_bench_$(DEVICE) $(INSTALL_BIN_BASE_DIR)/net_test_bench_$(DEVICE)
115         install -d $(SYSCONFDIR)/netapi
116         $(CP) test/net_test_config.txt                        $(SYSCONFDIR)/netapi
117         install -c -m 755 tools/net_test_loopback_setup.sh    $(SYSCONFDIR)/netapi
118         install -c -m 755 tools/net_test_router_setup.sh      $(SYSCONFDIR)/netapi
119         install -c -m 755 tools/irqset.sh                     $(SYSCONFDIR)/netapi
120         install -c -m 755 tools/dsp_core_setup.sh             $(SYSCONFDIR)/netapi
121 # Make rule to create tests
122 tests:
123         -@echo compiling tests 
124         @$(MAKE) -f ./test/build/Makefile $@
126 examples: