1# 2# Linux NVRAM Makefile 3# 4# Copyright (C) 2010, 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,v 1.14 2011/01/20 03:52:00 Exp $ 19# 20 21include $(TOP)/.config 22 23ifeq ($(CONFIG_ACOS_MODULES),y) 24ACOSTOPDIR= $(SRCBASE)/../ap/acos 25ACOSNVRAM= $(ACOSTOPDIR)/nvram 26endif 27 28CFLAGS += -DLINUX26 29 30CFLAGS += -I. -I$(SRCBASE)/include -Wall -DINCLUDE_WAN_LAN_SUBNET 31CFLAGS += -DINCLUDE_WDS -DINCLUDE_QOS -DBANDWIDTH_DETECT_17 32 33#water, @usb porting 34ifeq ($(PROFILE),WNR3500U) 35CFLAGS += -DSAMBA_ENABLE 36CFLAGS += -DMULTIPLE_SSID 37endif 38 39ifeq ($(PROFILE),WNDR3400) 40CFLAGS += -DX_ST_ML 41endif 42 43ifeq ($(PROFILE),WNDR4500REV) 44CFLAGS += -DX_ST_ML 45endif 46 47#CFLAGS += -g -DDEBUG 48CFLAGS += -s -O2 49LDFLAGS += -L. 50 51ifeq ($(CONFIG_ACOS_MODULES),y) 52CFLAGS += -DACOS_MODULES_ENABLE 53CFLAGS += -I$(ACOSTOPDIR)/nvram -I$(ACOSTOPDIR)/include 54LDFLAGS += -L$(ACOSTOPDIR)/include -L$(ACOSTOPDIR)/nvram 55endif 56 57OBJS := nvram_linux.o 58ifeq ($(CONFIG_ACOS_MODULES),y) 59OBJS += $(ACOSNVRAM)/acosNvramConfig.o 60 61OBJS += $(ACOSNVRAM)/defaults.o 62 63endif 64 65vpath %.c $(SRCBASE)/shared/nvram 66 67all: libnvram.so $(if $(CONFIG_NVRAM_UTILITY),nvram) 68 69install: all 70 install -D libnvram.so $(INSTALLDIR)/usr/lib/libnvram.so 71 $(STRIP) $(INSTALLDIR)/usr/lib/libnvram.so 72ifneq ($(CONFIG_NVRAM_UTILITY),) 73 install -D nvram $(INSTALLDIR)/usr/sbin/nvram 74 $(STRIP) $(INSTALLDIR)/usr/sbin/nvram 75else 76 # Utility not wanted: get rid of any leftover one 77 rm -f $(INSTALLDIR)/usr/sbin/nvram 78endif 79 80 81clean: 82 rm -f *.o *.a *.so nvram 83#ifeq ($(CONFIG_ACOS_MODULES),y) 84# rm -f $(ACOSNVRAM)/*.o 85#endif 86 87libnvram.so: $(OBJS) 88 $(LD) -shared -o $@ $^ 89 90nvram: main.o 91 $(CC) $(CFLAGS) -o $@ $< $(LDFLAGS) -lnvram 92