index 2b8920951ab16d72bac5eccb5b1e212f358892d3..87c6868f7904f3a9b8de01ebd384e438e8512d1c 100755 (executable)
-# INCLUDE Directories\r
-QMSS_INC_DIR = $(PDK_INSTALL_PATH)/ti/drv/qmss\r
-CPPI_INC_DIR = $(PDK_INSTALL_PATH)/ti/drv/cppi\r
-\r
-INCDIR := $(PDK_INSTALL_PATH); $(QMSS_INC_DIR); $(CPPI_INC_DIR)\r
-\r
-# Output for prebuilt generated libraries\r
-export ARMV7LIBDIR ?= ../lib\r
-export ARMV7OBJDIR ?= ../obj\r
-\r
-# Set NETAPI INSTALL PATH to Transport SDK for default\r
-export NETAPI_INSTALL_PATH ?= $(TRANS_SDK_INSTALL_PATH)\r
-\r
-#NETAPI dirs\r
-OBJEXT = o \r
-INTERNALLINKDEFS =\r
-NETAPI_INC_DIR = $(NETAPI_INSTALL_PATH)/ti/runtime/netapi\r
-SRCDIR = $(NETAPI_INC_DIR)/src\r
-\r
-VPATH=$(SRCDIR)\r
-\r
-\r
-#Cross tools\r
-CC = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)gcc -c\r
-AR = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)ar -r\r
-\r
-\r
-#List the COMMONSRC Files\r
-COMMONSRCC = \\r
- netapi.c \\r
- netapi_sec.c \\r
- netapi_init.c \\r
- netapi_sched.c \\r
- netapi_timer.c \\r
- netapi_vm.c \\r
- netcp_cfg.c \\r
- osal.c \\r
- pktio.c \\r
- tim64.c\\r
- timlist.c\r
-\r
-CFLAGS= $(DEBUG_FLAG) -I$(NETAPI_INC_DIR) -I. -I $(SRCDIR) -I$(PDK_INSTALL_PATH) -I$(NWAL_INSTALL_PATH) -I$(PKTLIB_INSTALL_PATH) -I$(TRANS_SDK_INSTALL_PATH) -I$(QMSS_INC_DIR) -I$(CPPI_INC_DIR) -D__ARMv7 -D_VIRTUAL_ADDR_SUPPORT -D__LINUX_USER_SPACE -D_LITTLE_ENDIAN=1 -DMAKEFILE_BUILD -pthread -D _GNU_SOURCE\r
-INCS = -I$(strip $(subst ;, -I,$(subst $(space),\$(space),$(INCDIR))))\r
-all: lib \r
-\r
-lib: $(ARMV7LIBDIR)/libnetapi.a\r
-\r
-\r
-# Make Rule for the COMMONSRC Files\r
-COMMONSRCCOBJS = $(patsubst %.c, $(ARMV7OBJDIR)/netapi/lib/%.$(OBJEXT), $(COMMONSRCC))\r
-\r
-$(COMMONSRCCOBJS): $(ARMV7OBJDIR)/netapi/lib/%.$(OBJEXT): %.c\r
- -@echo compiling $< ...\r
- @mkdir -p $(ARMV7OBJDIR)/netapi/lib/\r
- $(CC) $(CFLAGS) $(INCS) $< -o $@\r
-\r
-$(ARMV7LIBDIR)/libnetapi.a: $(COMMONSRCCOBJS)\r
- @mkdir -p $(ARMV7LIBDIR)\r
- @echo archiving $? into $@ ...\r
- @$(AR) $@ $?\r
-\r
-clean: \r
- rm -f $(ARMV7OBJDIR)/netapi/lib/*.o\r
- rm -f $(ARMV7LIBDIR)/libnetapi.a\r
+# Macro definitions referenced below
+#
+empty =
+space =$(empty) $(empty)
+
+# INCLUDE Directories
+QMSS_INC_DIR ?= $(PDK_INSTALL_PATH)/ti/drv/qmss
+SA_INSTALL_PATH ?= $(PDK_INSTALL_PATH)/ti/drv/sa
+CPPI_INC_DIR ?= $(PDK_INSTALL_PATH)/ti/drv/cppi
+
+
+NETAPI_INC_DIR ?= $(TRANS_SDK_INSTALL_PATH)
+NETAPI_SRC_DIR ?= $(TRANS_SDK_INSTALL_PATH)/ti/runtime/netapi
+
+#HPLIB_INC_DIR = $(HPLIB_INSTALL_PATH)/ti/runtime/hplib
+
+HPLIB_INC_DIR ?= $(PDK_INSTALL_PATH)/ti/runtime/hplib
+INCDIR := $(PDK_INSTALL_PATH);$(QMSS_INC_DIR);$(CPPI_INC_DIR);$(HPLIB_INC_DIR);$(NETAPI_INC_DIR)
+
+export PDK_VER ?= v3
+NETAPI_NAVIG_INIT_SRC=$(NETAPI_SRC_DIR)/src/pdk$(PDK_VER)
+
+ifeq ($(CPU), cortex-a8)
+ CFLAGS += -DCORTEX_A8
+endif
+
+export DEVICE?= k2h
+ifeq ($(PDK_VER),v3)
+QMSS_DEV_DIR = $(PDK_INSTALL_PATH)/ti/drv/qmss/device/$(DEVICE)/src
+CPPI_DEV_DIR = $(PDK_INSTALL_PATH)/ti/drv/cppi/device/$(DEVICE)/src
+endif
+ifeq ($(PDK_VER),v2)
+QMSS_DEV_DIR = $(PDK_INSTALL_PATH)/ti/drv/qmss/device
+CPPI_DEV_DIR = $(PDK_INSTALL_PATH)/ti/drv/cppi/device
+endif
+
+# Set NETAPI INSTALL PATH to Transport SDK for default
+export NETAPI_INSTALL_PATH ?= $(TRANS_SDK_INSTALL_PATH)
+
+NETAPI_DOCS_DIR := $(NETAPI_INSTALL_PATH)/ti/runtime/netapi/docs
+
+#NETAPI dirs
+OBJEXT = o
+INTERNALLINKDEFS =
+SRCDIR = ./src
+#VPATH=$(SRCDIR):$(NETAPI_NAVIG_INIT_SRC)
+VPATH=$(SRCDIR):./src/pdk$(PDK_VER)
+
+ifdef CROSS_TOOL_INSTALL_PATH
+## Support backwards compatibility with KeyStone1 approach
+ CC = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)gcc
+ AC = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)as
+ AR = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)ar
+ LD = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)gcc
+endif
+#Cross tools
+#CC = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)gcc -c
+#AR = $(CROSS_TOOL_INSTALL_PATH)/$(CROSS_TOOL_PRFX)ar -r
+
+
+#List the COMMONSRC Files
+COMMONSRCC = \
+ netapi.c \
+ netapi_sec.c \
+ netapi_init.c \
+ netapi_sched.c \
+ netcp_cfg.c \
+ pktio.c \
+ netapi_navig.c\
+
+CFLAGS+= $(DEBUG_FLAG) -I. -I $(SRCDIR) -I$(PDK_INSTALL_PATH) -I$(NWAL_INSTALL_PATH) -I$(PKTLIB_INSTALL_PATH) -I$(TRANS_SDK_INSTALL_PATH) -I$(QMSS_INC_DIR) -I$(CPPI_INC_DIR) -I$(HPLIB_INC_DIR) -I$(QMSS_DEV_DIR) -I$(CPPI_DEV_DIR) -I$(NETAPI_NAVIG_INIT_SRC) -I$(SA_INSTALL_PATH) $(CSL_DEVICE) -D__ARMv7 -D_VIRTUAL_ADDR_SUPPORT -D__LINUX_USER_SPACE -D_LITTLE_ENDIAN=1 -DMAKEFILE_BUILD -DNWAL_ENABLE_SA -pthread -D _GNU_SOURCE
+
+
+
+INCS = -I$(strip $(subst ;, -I,$(subst $(space),\$(space),$(INCDIR))))
+all: lib
+
+lib: $(ARMV7LIBDIR)/libnetapi_$(DEVICE).a
+
+
+# Make Rule for the COMMONSRC Files
+COMMONSRCCOBJS = $(patsubst %.c, $(ARMV7OBJDIR)/%.$(OBJEXT), $(COMMONSRCC))
+COMMONSRCCOBJS_SO = $(patsubst %.c, $(ARMV7OBJDIR_SO)/%.$(OBJEXT), $(COMMONSRCC))
+
+$(COMMONSRCCOBJS): $(ARMV7OBJDIR)/%.$(OBJEXT): %.c
+ -@echo compiling $< ........
+ -@echo vpath = $(VPATH)
+ @mkdir -p $(ARMV7OBJDIR)
+ $(CC) -c $(CFLAGS) $(INCS) $< -o $@
+
+$(COMMONSRCCOBJS_SO): $(ARMV7OBJDIR_SO)/%.$(OBJEXT): %.c
+ -@echo **** compiling this file $< ...
+ @mkdir -p $(ARMV7OBJDIR_SO)
+ $(CC) -c $(CFLAGS) -fPIC $(INCS) $< -o $@
+
+$(ARMV7LIBDIR)/libnetapi_$(DEVICE).a: $(COMMONSRCCOBJS)
+ @mkdir -p $(ARMV7LIBDIR)
+ @echo archiving $? into $@ ...
+ @$(AR) -r $@ $?
+
+
+libnetapi_$(DEVICE).so: $(COMMONSRCCOBJS_SO)
+ -@echo archiving $? into $(ARMV7LIBDIR)/$@.1 ...
+ @$(CC) $(DEBUG_FLAG) -ggdb2 -Wl,-soname=$@.1 -shared -fPIC ${LDFLAGS} -o $@.1.0.0 $^
+ @ln -s $@.1.0.0 $@.1
+ @ln -s $@.1 $@
+ mkdir -p $(ARMV7LIBDIR)
+ @mv -f $@.1.0.0 $(ARMV7LIBDIR)/$@.1.0.0
+ @mv -f $@.1 $(ARMV7LIBDIR)/$@.1
+ @mv -f $@ $(ARMV7LIBDIR)/$@
+
+clean:
+ rm -f $(ARMV7OBJDIR)/*.o
+ rm -f $(ARMV7OBJDIR_SO)/*.o
+ rm -f $(ARMV7LIBDIR)/libnetapi_$(DEVICE).a
+ rm -f $(ARMV7LIBDIR)/libnetapi_$(DEVICE).so*
+
+doxygen:
+ rm -rf $(NETAPI_DOCS_DIR)/html
+ rm -rf $(NETAPI_DOCS_DIR)/latex
+ doxygen netapi_doxygen.cfg
+
+clean_doxygen:
+ rm -rf $(NETAPI_DOCS_DIR)/html
+ rm -rf $(NETAPI_DOCS_DIR)/latex
+