1include ../common.mak 2include $(SRCBASE)/.config 3 4CFLAGS += -Os -Wall $(EXTRACFLAGS) -fPIC 5CFLAGS += -I. -I$(TOP)/shared -I$(SRCBASE)/include 6ifneq ($(RTCONFIG_BCMARM),y) 7CFLAGS += -I$(TOP)/kernel_header/include 8else 9CFLAGS += -I$(LINUXDIR)/include 10CFLAGS += -D__EXPORTED_HEADERS__ 11endif 12 13ifeq ($(RTCONFIG_SHP),y) 14CFLAGS += -DSHP 15endif 16 17ifeq ($(RTCONFIG_RALINK),y) 18CFLAGS += -I./sysdeps/ralink -I$(TOP)/wireless_tools/ -DWE_NOLIBM 19endif 20 21ifeq ($(RTCONFIG_QCA),y) 22CFLAGS += -I./sysdeps/qca -I$(TOP)/wireless_tools/ -DWE_NOLIBM 23endif 24 25ifeq ($(RTCONFIG_BCMWL6),y) 26CFLAGS += -I$(SRCBASE)/shared/bcmwifi/include 27CFLAGS += -I$(SRCBASE)/common/include 28ifeq ($(RTCONFIG_BCM7)$(RTCONFIG_HSPOT),y) 29CFLAGS += ${WLAN_StdIncPathA} 30endif 31else 32CFLAGS += -I$(SRCBASE)/shared 33endif 34 35ifeq ($(RTCONFIG_QTN),y) 36CFLAGS += -I$(TOP)/libqcsapi_client -I$(TOP)/httpd -I./sysdeps/qtn 37LDFLAGS += -L$(TOP)/libqcsapi_client -lqcsapi_client 38endif 39 40ifeq ($(RTCONFIG_BCMSMP),y) 41CFLAGS += -DSMP 42endif 43 44ifeq ($(RTCONFIG_5301X),y) 45CFLAGS += -DBCM5301X 46endif 47 48include $(SRCBASE)/.config 49 50ifeq ($(RTCONFIG_4352_5G),y) 51CFLAGS += -DBCM4352 52endif 53 54ifeq (2_6_36,$(LINUX_VERSION)) 55CFLAGS += -DAUTOFW_PORT_DEPRECATED 56endif 57 58CFLAGS += -DTRAFFIC_MGMT 59 60ifeq ($(RTCONFIG_BCM7)$(RTCONFIG_HSPOT),y) 61CFLAGS += -DD11AC_IOTYPES 62endif 63 64OBJS = shutils.o linux_timer.o defaults.o model.o rtstate.o boardapi.o 65OBJS += misc.o version.o files.o strings.o process.o 66OBJS += bin_sem_asus.o semaphore.o pids.o notify_rc.o discover.o 67OBJS += base64.o 68OBJS += nvparse.o 69ifeq ($(RTCONFIG_BCM7),y) 70OBJS += et_linux.o bcmwifi_channels.o 71else ifeq ($(RTCONFIG_HSPOT),y) 72OBJS += bcmwifi_channels.o 73endif 74ifeq ($(RTCONFIG_BCM_7114),y) 75OBJS += confmtd_utils.o 76ifeq ($(RTCONFIG_GMAC3),y) 77OBJS += et_linux.o 78endif 79endif 80 81ifeq ($(RTCONFIG_RALINK),y) 82OBJS += $(TOP)/wireless_tools/iwlib.o 83OBJS += flash_mtd.o api-ralink.o 84ifeq ($(RTCONFIG_RALINK_RT3052),y) 85OBJS += ra3052.o 86endif 87ifeq ($(RTN14U)$(RTAC52U)$(RTAC51U)$(RTN11P)$(RTN300)$(RTN54U)$(RTAC1200HP)$(RTN56UB1)$(RTN56UB2)$(RTAC54U),y) 88CFLAGS += -DRA_ESW 89OBJS += mt7620.o 90else 91OBJS += rtkswitch.o 92endif 93 94else ifeq ($(RTCONFIG_QCA),y) 95# Qualcomm Atheros 96OBJS += $(TOP)/wireless_tools/iwlib.o 97OBJS += flash_mtd.o api-qca.o qca8337.o 98else 99# Broadcom 100OBJS += wl.o wl_linux.o 101OBJS += broadcom.o api-broadcom.o 102ifeq ($(RTCONFIG_DSL_TCLINUX),y) 103OBJS += api-tclinux.o 104endif 105ifeq ($(RTCONFIG_EXT_RTL8365MB),y) 106CFLAGS += -I$(LINUXDIR)/drivers/char/rtl8365mb 107OBJS += rtl_8365mb.o 108endif 109ifeq ($(RTCONFIG_EXT_RTL8370MB),y) 110CFLAGS += -I$(LINUXDIR)/drivers/char/rtl8365mb 111OBJS += rtl_8365mb.o 112endif 113endif 114 115ifeq ($(RTCONFIG_USB),y) 116OBJS += usb.o 117OBJS += $(TOP)/busybox/util-linux/volume_id/ext.o 118OBJS += $(TOP)/busybox/util-linux/volume_id/util2.o 119OBJS += $(TOP)/busybox/util-linux/volume_id/fat.o 120OBJS += $(TOP)/busybox/util-linux/volume_id/ntfs.o 121OBJS += $(TOP)/busybox/util-linux/volume_id/linux_swap.o 122OBJS += $(if $(HFS),$(TOP)/busybox/util-linux/volume_id/hfs.o) 123ifeq ($(RTCONFIG_USB_MODEM),y) 124OBJS += at_cmd.o 125endif 126endif 127 128ifeq ($(RTCONFIG_BCMARM),y) 129OBJS += ifaddrs.o 130endif 131 132ifeq ($(RTCONFIG_QTN),y) 133OBJS += web-qtn.o 134OBJS += rpc_raw.o 135OBJS += rpc_raw_clnt.o 136#OBJS += find_host_addr.o 137endif 138 139ifeq ($(RTCONFIG_BLINK_LED),y) 140CFLAGS += -I$(TOP)/bled 141OBJS += bled.o 142endif 143 144ifeq ($(RTCONFIG_QCA_PLC_UTILS),y) 145OBJS += plc_utils.o 146endif 147 148ifeq ($(RTCONFIG_TCODE),y) 149OBJS += tcode.o 150endif 151 152ifeq ($(RTCONFIG_BCM5301X_TRAFFIC_MONITOR),y) 153OBJS += private.o 154endif 155 156vpath %.c sysdeps $(SRCBASE)/shared/ $(WLAN_ComponentSrcDirs) 157ifeq ($(RTCONFIG_RALINK),y) 158vpath %.c sysdeps/ralink 159else ifeq ($(RTCONFIG_QCA),y) 160vpath %.c sysdeps/qca 161else ifeq ($(RTCONFIG_QTN),y) 162vpath %.c sysdeps sysdeps/broadcom sysdeps/qtn $(SRCBASE)/shared/ $(SRCBASE)/shared/bcmwifi/src $(WLAN_StdSrcDirsA) $(WLAN_ComponentSrcDirs) $(TOP)/libqcsapi_client/qcsapi_rpc_common/client $(TOP)/libqcsapi_client/qcsapi_rpc_common/common 163else 164vpath %.c sysdeps/broadcom $(SRCBASE)/shared/bcmwifi/src 165endif 166 167all: libshared.so libshared.a 168 169ifeq ($(CONFIG_BCMWL5),y) 170OBJS += wlif_utils.o UdpLib.o bcmutils.o 171OBJS += bcmwifi_channels.o 172endif 173 174libshared.so: $(OBJS) 175 @echo " [shared] LD $@" 176 @$(LD) $(LDFLAGS) -shared -o $@ $^ 177 178 $(SIZECHECK) 179 $(CPTMP) 180 181libshared.a: $(OBJS) 182 @echo " [shared] AR $@" 183 @rm -f $@ 184 @$(AR) cruv $@ $^ 185 186 187install: all 188 @echo " [shared] Installing as $(INSTALLDIR)/usr/lib/libshared.so" 189 @install -d $(INSTALLDIR)/usr/lib 190 @install -m 755 libshared.so $(INSTALLDIR)/usr/lib 191 @$(STRIP) $(INSTALLDIR)/usr/lib/libshared.so 192 193 194clean: 195 rm -f *.o *.so *.a .*.depend sysdeps/*.o sysdeps/broadcom/*.o sysdeps/ralink/*.o sysdeps/qtn/*.o 196 197ifeq ($(RTCONFIG_TCODE),y) 198ifneq ($(wildcard ./prebuild/tcode.o),) 199tcode.o: 200 @-cp -f ./prebuild/tcode.o . 201endif 202endif 203 204ifeq ($(RTCONFIG_BCM5301X_TRAFFIC_MONITOR),y) 205ifneq ($(wildcard ./prebuild/private.o),) 206private.o: 207 @-cp -f ./prebuild/private.o . 208endif 209endif 210 211%.o: %.c .%.depend 212 @echo " [shared] CC $@" 213 @$(CC) $(CFLAGS) -o $@ -c $< 214 215.depend: $(OBJS:%.o=%.c) 216 @$(CC) $(CFLAGS) -M $^ > .depend 217 218.%.depend: %.c 219 @$(CC) $(CFLAGS) -M $< > $@ 220 221#-include $(OBJS:%.o=.%.depend) 222 223