-# INCLUDE Directories
-QMSS_INC_DIR = $(PDK_INSTALL_PATH)/ti/drv/qmss
-CPPI_INC_DIR = $(PDK_INSTALL_PATH)/ti/drv/cppi
-
-INCDIR := $(PDK_INSTALL_PATH); $(QMSS_INC_DIR); $(CPPI_INC_DIR)
-
-# Libraries
-QMSS_LIB = $(PDK_INSTALL_PATH)/ti/drv/qmss/lib/ti.drv.qmss.aearmv7
-CPPI_LIB = $(PDK_INSTALL_PATH)/ti/drv/cppi/lib/ti.drv.cppi.aearmv7
-PA_LIB = $(PDK_INSTALL_PATH)/ti/drv/pa/lib/ti.drv.pa.aearmv7
-NWAL_LIB = $(PDK_INSTALL_PATH)/ti/drv/nwal/lib/ti.drv.nwal.aearmv7
-
-#NETAPI dirs
-NETAPI_SRC_DIR = ../src
-NETAPI_INC_DIR = ../
-NETAPI_LIB_DIR = ../lib
-
-API_OBJS= $(NETAPI_SRC_DIR)/netapi.o $(NETAPI_SRC_DIR)/pktio.o $(NETAPI_SRC_DIR)/netcp_cfg.o $(NETAPI_SRC_DIR)/netapi_sched.o $(NETAPI_SRC_DIR)/netapi_vm.o $(NETAPI_SRC_DIR)/netapi_init.o $(NETAPI_SRC_DIR)/osal.o $(NETAPI_SRC_DIR)/tim64.o $(NETAPI_SRC_DIR)/timlist.o $(NETAPI_SRC_DIR)/netapi_timer.o
-
-CROSS=arm-none-linux-gnueabi-gcc
-CROSS_PATH=/opt/CodeSourcery/Sourcery_G++_Lite/bin
-CC=$(CROSS_PATH)/$(CROSS)
-AR=$(CROSS_PATH)/arm-none-linux-gnueabi-ar
-CFLAGS= -g -I$(NETAPI_INC_DIR) -I. -I $(NETAPI_SRC_DIR) -I$(PDK_INSTALL_PATH) -I$(NWAL_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
-
-all: api
-
-clean:
- rm -f $(NETAPI_SRC_DIR)/*.o
- rm -f *.a
-
-
-%.o: %.c
- $(CC) -c $(CFLAGS) $< -o $@
-
-api: $(NETAPI_LIB_DIR)/ti.runtime.netapi.aearmv7.a
-
-$(NETAPI_LIB_DIR)/ti.runtime.netapi.aearmv7.a: $(API_OBJS)
- rm -f $(NETAPI_LIB_DIR)/ti.runtime.netapi.aearmv7.a
- $(AR) rcv $(NETAPI_LIB_DIR)/ti.runtime.netapi.aearmv7.a $(API_OBJS)
-
-
+# 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) -I$(SA_INSTALL_PATH) -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