1# 2# Miscellaneous utilities Makefile 3# 4# Copyright (C) 2009, Broadcom Corporation 5# All Rights Reserved. 6# 7# THIS SOFTWARE IS OFFERED "AS IS", AND BROADCOM GRANTS NO WARRANTIES OF ANY 8# KIND, EXPRESS OR IMPLIED, BY STATUTE, COMMUNICATION OR OTHERWISE. BROADCOM 9# SPECIFICALLY DISCLAIMS ANY IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS 10# FOR A SPECIFIC PURPOSE OR NONINFRINGEMENT CONCERNING THIS SOFTWARE. 11# 12# $Id: Makefile 382640 2013-02-03 04:35:49Z $ 13# 14 15include $(SRCBASE)/router/.config 16 17WLU_OBJS := wlu.o wlu_cmd.o wlu_iov.o wlu_linux.o bcmutils.o bcmwifi_channels.o wlu_client_shared.o wlu_pipe.o wlu_pipe_linux.o miniopt.o bcm_app_utils.o wlu_rates_matrix.o wlc_ppr.o 18ifneq ($(wildcard $(SRCBASE)/wl/exe/wlu_common.c),) 19WLU_OBJS += wlu_common.o 20endif 21WLU_OBJS += wlc_clm_data.o 22 23ifeq ($(RWL),1) 24WL_OBJS := $(WLU_OBJS) 25SERVER_OBJS := wlu_server_linux.o wlu_pipe_linux.o wlu_pipe.o wlu_server_shared.o shellproc_linux.o 26APUT_OBJS := wfa_apcmdproc.o wfa_apcmdlib.o wfa_apcs.o wfa_apcmdresp.o wfa_apcmdvalid.o wfa_apcmdtbls.o wfa_apcmdcvt.o wfa_val2str.o wfa_apdiy.o wfa_sock.o wfa_aput_all.o 27 28SOCKET_OBJS := $(SERVER_OBJS:%.o=socket/%.o) 29WIFI_OBJS := $(SERVER_OBJS:%.o=wifi/%.o) 30WL_OBJS := $(WL_OBJS:%.o=wl_obj/%.o) 31WFA_APUT_OBJS := $(APUT_OBJS:%.o=aput/%.o) 32 33SERVER_SOCKET := wl_server_socket 34SERVER_WIFI := wl_server_wifi 35WFA_APUT_ALL := wfa_aput_all 36WL_EXE := wl 37endif 38 39UTILS := epi_ttcp 40CFLAGS += -s -I$(SRCBASE)/include -I$(SRCBASE)/common/include 41CFLAGS += $(if $(WLAN_ComponentIncPath),$(WLAN_ComponentIncPath),$(addprefix -I,$(wildcard $(SRCBASE)/shared/bcmwifi/include))) 42ifeq ($(CONFIG_RTR_OPTIMIZE_SIZE),y) 43CFLAGS += -Os 44else 45CFLAGS += -O2 46endif 47CFLAGS += -DBCMINTERNAL -DBCMDBG 48 49CFLAGS += -DLINUX -I$(SRCBASE)/wl/exe 50 51# Use newer 11ac ratespec for wl command line 52CFLAGS += -DD11AC_IOTYPES -DPPR_API 53 54#ifdef WLCNT 55CFLAGS += -DWLCNT 56#endif 57 58ifeq ($(CONFIG_TRAFFIC_MGMT),y) 59CFLAGS += -DTRAFFIC_MGMT 60endif 61 62vpath %.c $(SRCBASE)/tools/misc $(WLAN_ComponentSrcDirs) 63 64ifneq ($(wildcard $(SRCBASE)/et/linux/et.c),) 65UTILS += et 66vpath %.c $(SRCBASE)/et/linux 67endif 68 69ifneq ($(wildcard $(SRCBASE)/wl/exe),) 70CFLAGS += -I$(SRCBASE)/wl/exe 71UTILS += wl 72vpath %.c $(SRCBASE)/wl/exe $(SRCBASE)/wl/clm/src $(SRCBASE)/shared 73endif 74 75ifeq ($(RWL),1) 76ifeq ($(BUILD_WFA_APUT),1) 77ifneq ($(wildcard $(SRCBASE)/router/aput),) 78CFLAGS += -I$(SRCBASE)/router/aput 79UTILS += $(WFA_APUT_ALL) 80vpath %.c $(SRCBASE)/router/aput 81endif 82endif 83 84ifneq ($(wildcard $(SRCBASE)/wl/exe),) 85UTILS += $(SERVER_SOCKET) 86vpath %.c $(SRCBASE)/wl/exe $(SRCBASE)/shared 87endif 88 89ifneq ($(wildcard $(SRCBASE)/wl/exe),) 90UTILS += $(SERVER_WIFI) 91vpath %.c $(SRCBASE)/wl/exe $(SRCBASE)/shared 92endif 93endif 94 95ifeq ($(RTCONFIG_5301X),y) 96CFLAGS += -DBCM5301X 97endif 98UTILS += robocfg 99 100all: $(UTILS) 101 102ifeq ($(wildcard $(SRCBASE)/wl/exe/*.c),) 103wl: 104 -cp -f $(SRCBASE)/wl/exe/prebuilt/wl wl 105else 106wl: $(WLU_OBJS) 107 $(CC) $^ -o $@ $(LDFLAGS) 108endif 109 110ifeq ($(RWL),1) 111$(WFA_APUT_ALL): $(WFA_APUT_OBJS) 112 $(CC) $(LDFLAGS) -o $@ $^ 113 114aput/%.o: %.c 115 @mkdir -p aput 116 $(CC) -c $(CFLAGS) -o $@ $^ 117$(SERVER_SOCKET): $(SOCKET_OBJS) 118 $(CC) $(LDFLAGS) -o $@ $^ 119 120socket/%.o: %.c 121 @mkdir -p socket 122 $(CC) -c $(CFLAGS) -DRWL_SOCKET -o $@ $^ 123 124$(SERVER_WIFI): $(WIFI_OBJS) 125 $(CC) $(LDFLAGS) -o $@ $^ 126 127wifi/%.o: %.c 128 @mkdir -p wifi 129 $(CC) -c $(CFLAGS) -DRWL_WIFI -o $@ $^ 130endif 131 132ifeq ($(wildcard $(SRCBASE)/router/utils/robocfg.c),) 133robocfg: 134 -cp -f $(SRCBASE)/wl/exe/prebuilt/robocfg robocfg 135else 136robocfg: robocfg.c etc53xx.h 137endif 138 139clean: 140 rm -f *.o *~ $(UTILS) 141 rm -rf socket wifi 142 143install: all 144 install -d $(INSTALLDIR)/usr/sbin 145 install $(UTILS) $(INSTALLDIR)/usr/sbin 146 $(STRIP) $(foreach file,$(UTILS),$(INSTALLDIR)/usr/sbin/$(file)) 147