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,v 1.41 2011/01/20 03:08:08 Exp $ 13# 14 15WLU_OBJS := wlu.o wlu_cmd.o wlu_iov.o wlu_linux.o bcmutils.o bcmwifi.o wlu_client_shared.o wlu_pipe.o wlu_pipe_linux.o miniopt.o bcm_app_utils.o 16ifneq ($(wildcard $(SRCBASE)/wl/exe/wlu_common.c),) 17WLU_OBJS += wlu_common.o 18endif 19 20ifeq ($(RWL),1) 21WL_OBJS := $(WLU_OBJS) 22SERVER_OBJS := wlu_server_linux.o wlu_pipe_linux.o wlu_pipe.o wlu_server_shared.o shellproc_linux.o 23APUT_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 24 25SOCKET_OBJS := $(SERVER_OBJS:%.o=socket/%.o) 26WIFI_OBJS := $(SERVER_OBJS:%.o=wifi/%.o) 27WL_OBJS := $(WL_OBJS:%.o=wl_obj/%.o) 28WFA_APUT_OBJS := $(APUT_OBJS:%.o=aput/%.o) 29 30SERVER_SOCKET := wl_server_socket 31SERVER_WIFI := wl_server_wifi 32WFA_APUT_ALL := wfa_aput_all 33WL_EXE := wl 34endif 35 36UTILS := epi_ttcp 37CFLAGS += -s -I$(SRCBASE)/include 38ifeq ($(CONFIG_RTR_OPTIMIZE_SIZE),y) 39CFLAGS += -Os 40else 41CFLAGS += -O2 42endif 43CFLAGS += -DBCMINTERNAL -DBCMDBG 44 45CFLAGS += -DLINUX -I$(SRCBASE)/wl/exe 46 47#ifdef WLCNT 48CFLAGS += -DWLCNT 49#endif 50 51vpath %.c $(SRCBASE)/tools/misc 52 53ifneq ($(wildcard $(SRCBASE)/et/linux/et.c),) 54UTILS += et 55vpath %.c $(SRCBASE)/et/linux 56endif 57 58ifneq ($(wildcard $(SRCBASE)/wl/exe),) 59CFLAGS += -I$(SRCBASE)/wl/exe 60UTILS += wl 61vpath %.c $(SRCBASE)/wl/exe $(SRCBASE)/shared 62endif 63 64ifeq ($(RWL),1) 65ifeq ($(BUILD_WFA_APUT),1) 66ifneq ($(wildcard $(SRCBASE)/router/aput),) 67CFLAGS += -I$(SRCBASE)/router/aput 68UTILS += $(WFA_APUT_ALL) 69vpath %.c $(SRCBASE)/router/aput 70endif 71endif 72 73ifneq ($(wildcard $(SRCBASE)/wl/exe),) 74UTILS += $(SERVER_SOCKET) 75vpath %.c $(SRCBASE)/wl/exe $(SRCBASE)/shared 76endif 77 78ifneq ($(wildcard $(SRCBASE)/wl/exe),) 79UTILS += $(SERVER_WIFI) 80vpath %.c $(SRCBASE)/wl/exe $(SRCBASE)/shared 81endif 82endif 83 84all: $(UTILS) 85 86wl: $(WLU_OBJS) 87 $(CC) $^ -o $@ $(LDFLAGS) 88 89ifeq ($(RWL),1) 90$(WFA_APUT_ALL): $(WFA_APUT_OBJS) 91 $(CC) $(LDFLAGS) -o $@ $^ 92 93aput/%.o: %.c 94 @mkdir -p aput 95 $(CC) -c $(CFLAGS) -o $@ $^ 96$(SERVER_SOCKET): $(SOCKET_OBJS) 97 $(CC) $(LDFLAGS) -o $@ $^ 98 99socket/%.o: %.c 100 @mkdir -p socket 101 $(CC) -c $(CFLAGS) -DRWL_SOCKET -o $@ $^ 102 103$(SERVER_WIFI): $(WIFI_OBJS) 104 $(CC) $(LDFLAGS) -o $@ $^ 105 106wifi/%.o: %.c 107 @mkdir -p wifi 108 $(CC) -c $(CFLAGS) -DRWL_WIFI -o $@ $^ 109endif 110 111clean: 112 rm -f *.o *~ $(UTILS) 113 rm -rf socket wifi 114 115install: all 116 install -d $(INSTALLDIR)/usr/sbin 117 install $(UTILS) $(INSTALLDIR)/usr/sbin 118 $(STRIP) $(foreach file,$(UTILS),$(INSTALLDIR)/usr/sbin/$(file)) 119