# Makefile
#
# Copyright (C) 1999 AbsoluteValue Systems, Inc.  All Rights Reserved.
# --------------------------------------------------------------------
#
# linux-wlan
#
#   The contents of this file are subject to the Mozilla Public
#   License Version 1.1 (the "License"); you may not use this file
#   except in compliance with the License. You may obtain a copy of
#   the License at http://www.mozilla.org/MPL/
#
#   Software distributed under the License is distributed on an "AS
#   IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
#   implied. See the License for the specific language governing
#   rights and limitations under the License.
#
#   Alternatively, the contents of this file may be used under the
#   terms of the GNU Public License version 2 (the "GPL"), in which
#   case the provisions of the GPL are applicable instead of the
#   above.  If you wish to allow the use of your version of this file
#   only under the terms of the GPL and not to allow others to use
#   your version of this file under the MPL, indicate your decision
#   by deleting the provisions above and replace them with the notice
#   and other provisions required by the GPL.  If you do not delete
#   the provisions above, a recipient may use your version of this
#   file under either the MPL or the GPL.
#
# --------------------------------------------------------------------
#
# Inquiries regarding the linux-wlan Open Source project can be
# made directly to:
#
# AbsoluteValue Systems Inc.
# info@linux-wlan.com
# http://www.linux-wlan.com
#
# --------------------------------------------------------------------
#
# Portions of the development of this software were funded by 
# Intersil Corporation as part of PRISM(R) chipset product development.
#
# --------------------------------------------------------------------

ifneq ($(WLAN_SRC),)
-include $(WLAN_SRC)/../config.mk
else
-include ../../config.mk
endif

# Build options (just comment out the ones you don't want)
WLAN_EXTRA_DEFINE := -DWLAN_TXMGMT_MINBRATE -DRSN_INTERNAL_ROAM -DWLAN_HOSTIF=WLAN_NONE
ifeq ($(WLAN_DEBUG), y)
WLAN_EXTRA_DEFINE += -DWLAN_INCLUDE_DEBUG
endif

obj-m := 

ifeq ($(KERN_25), y)   # kbuild 2.5/2.6

obj-m := p80211.o

p80211-objs := p80211mod.o \
		p80211conv.o \
		p80211req.o \
		p80211wep.o \
		p80211wext.o \
		p80211netdev.o

else  # kbuild 2.4

O_TARGET := p80211.o
obj-m := $(O_TARGET)
obj-y := p80211mod.o \
		p80211conv.o \
		p80211req.o \
		p80211wep.o \
		p80211wext.o \
		p80211netdev.o

export-objs := p80211mod.o
endif # kbuild switch

ifneq ($(KERNELRELEASE),)

EXTRA_CFLAGS += -I$(WLAN_SRC)/include $(WLAN_EXTRA_DEFINE)

ifneq ($(KERN_25), y)
include $(TOPDIR)/Rules.make
endif

else  # KERNRELEASE is set

PWD := $(shell pwd)
default:
ifeq ($(KERN_25), y)
 ifeq ($(KERN_2_6_5), y)
  ifeq ($(KERN_2_6_17), y)  # >= 2.6.17
	$(MAKE) -C $(LINUX_SRC) M='$(PWD)' WLAN_SRC=$(WLAN_SRC) modules
  else # 2.6.5 <-> 2.6.16
	$(MAKE) -C $(LINUX_SRC) M='$(WLAN_SRC) $(PWD)' WLAN_SRC=$(WLAN_SRC) modules
  endif
 else # < 2.6.5
	$(MAKE) -C $(LINUX_SRC) SUBDIRS='$(WLAN_SRC) $(PWD)' WLAN_SRC=$(WLAN_SRC) modules
 endif
else # kbuild 2.4
	$(MAKE) -C $(LINUX_SRC) SUBDIRS=$(PWD) WLAN_SRC=$(WLAN_SRC) modules
endif # kbuild switch

endif  #KERNELRELEASE

clean:
	rm -Rf *.o *.ko .*.cmd *.mod.c *.flags .*.flags .tmp_versions Module*.symvers

install:
	mkdir -p $(TARGET_MODDIR)
ifeq ($(KERN_25), y)
	cp $(obj-m:.o=.ko)	$(TARGET_MODDIR)
else
	cp $(obj-m)		$(TARGET_MODDIR)
endif

