1# 2# Router rc control scripts Makefile 3# 4# Copyright (C) 2013, Broadcom Corporation. All Rights Reserved. 5# 6# Permission to use, copy, modify, and/or distribute this software for any 7# purpose with or without fee is hereby granted, provided that the above 8# copyright notice and this permission notice appear in all copies. 9# 10# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 11# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 12# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 13# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 14# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 15# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 16# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 17# 18# $Id: Makefile 382678 2013-02-03 04:43:44Z $ 19# 20 21include $(TOP)/.config 22 23ifneq (2_4,$(LINUX_VERSION)) 24ifeq (2_6_36,$(LINUX_VERSION)) 25CFLAGS += -DLINUX26 -DLINUX_2_6_36 -DAUTOFW_PORT_DEPRECATED 26else 27CFLAGS += -DLINUX26 28# /* Fxcn port-S Wins, 0720-09 */ 29CFLAGS += -DACOS_LINUX26 30# /* Fxcn port-E Wins, 0720-09 */ 31endif 32CFLAGS += -I. -I$(TOP)/shared -I$(SRCBASE)/include -I$(SRCBASE)/common/include -Wall -I$(LINUXDIR)/include -I$(TOP)/busybox-1.x 33else 34CFLAGS += -I. -I$(TOP)/shared -I$(TOP)/busybox -I$(SRCBASE)/include -I$(SRCBASE)/common/include -Wall 35endif 36ifeq ($(CONFIG_BONJOUR_PRINTER),y) 37CFLAGS += -DBONJOUR_PRINTER 38endif 39CFLAGS += $(if $(WLAN_ComponentIncPath),$(WLAN_ComponentIncPath),$(addprefix -I,$(wildcard $(SRCBASE)/shared/bcmwifi/include))) 40CFLAGS += -I$(TOP)/dpsta 41 42#CFLAGS += -g -DDEBUG 43CFLAGS += -s 44ifeq ($(CONFIG_RTR_OPTIMIZE_SIZE),y) 45CFLAGS += -Os 46else 47CFLAGS += -O2 48endif 49LDFLAGS += -L$(TOP)/nvram -L$(PLATFORMDIR)/install/nvram/usr/lib -lnvram -L$(TOP)/shared -L$(PLATFORMDIR)/install/shared/usr/lib -lshared \ 50 -L$(TOP)/libbcmcrypto -L$(INSTALLDIR)/libbcmcrypto/usr/lib -lbcmcrypto 51LDFLAGS += -L$(TOP)/libbcm -L$(INSTALLDIR)/libbcm/usr/lib -lbcm 52LDFLAGS += $(EXTRA_LDFLAGS) 53CFLAGS += -I$(SRCBASE)/../ap/acos/shared 54LDFLAGS += -L$(SRCBASE)/../ap/acos/shared -L$(TARGETDIR)/usr/lib -lacos_shared 55 56#Foxconn Silver added start, 2011/12/21, for kernel_ntfs 57ifeq ($(PROFILE),WNDR4500REV) 58CFLAGS += -DUSE_KERNEL_NTFS 59endif 60#Foxconn Silver added end, 2011/12/21, for kernel_ntfs 61 62 63ifeq ($(PROFILE),WNDR4500v2) 64CFLAGS += -DUSE_KERNEL_NTFS 65endif 66 67ifeq ($(BUILD_WFA_APUT),1) 68CFLAGS += -DCAPI_AP 69endif 70 71ifeq ($(FW_TYPE),TWC) 72CFLAGS += -DBUILD_TWC 73endif 74ifeq ($(CONFIG_WAPI_IAS),y) 75CFLAGS += -DRC_BUILDTIME=$(shell date -d "now" +"%s") 76endif 77 78OBJS := rc.o init.o interface.o network.o services.o udhcpc.o http.o stats.o bcmutils.o mtd.o usb_hotplug.o pmon.o 79ifeq ($(CONFIG_BCMQOS),y) 80OBJS += qos.o 81endif 82 83ifeq ($(CONFIG_NAT),y) 84OBJS += firewall.o 85LDFLAGS += -L$(TOP)/netconf -L$(PLATFORMDIR)/install/netconf/usr/lib -lnetconf 86endif 87 88ifeq ($(CONFIG_NAT),y) 89OBJS += ppp.o 90endif 91 92ifeq ($(CONFIG_WCN),y) 93OBJS += usb_hotplug.o 94endif 95 96ifeq ($(PROFILE),WNR3500L) 97OBJS += hotplug_usb2.o 98endif 99 100ifeq ($(PROFILE),WNDR4500REV) 101OBJS += hotplug_usb2.o 102endif 103 104 105ifeq ($(PROFILE),WNDR4500v2) 106OBJS += hotplug_usb2.o 107endif 108 109ifeq ($(PROFILE),WNDR3300v2) 110OBJS += hotplug_usb2.o 111endif 112 113vpath %.c $(TOP)/shared $(SRCBASE)/shared 114 115all: rc 116 117clean: 118 rm -f *.o rc .*.depend 119 120install: all 121 install -d $(INSTALLDIR)/sbin 122 install rc $(INSTALLDIR)/sbin 123 $(STRIP) $(INSTALLDIR)/sbin/rc 124 cd $(INSTALLDIR)/sbin && ln -sf rc init 125 cd $(INSTALLDIR)/sbin && ln -sf rc erase 126 cd $(INSTALLDIR)/sbin && ln -sf rc write 127 cd $(INSTALLDIR)/sbin && ln -sf rc write_cfe 128 cd $(INSTALLDIR)/sbin && ln -sf rc stats 129 cd $(INSTALLDIR)/sbin && ln -sf rc hotplug 130 cd $(INSTALLDIR)/sbin && ln -sf rc preinit 131 132rc: $(OBJS) 133 $(CC) -o $@ $(OBJS) $(LDFLAGS) 134 135%.o: .%.depend 136.%.depend: %.c 137 $(CC) $(CFLAGS) -M $< > $@ 138 139-include $(OBJS:%.o=.%.depend) 140