fix a kconfig usage bug
[openwrt/openwrt.git] / package / hostap / Makefile
1 #
2 # Copyright (C) 2006 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id$
8
9 include $(TOPDIR)/rules.mk
10 include $(INCLUDE_DIR)/kernel.mk
11
12 PKG_NAME:=hostap-driver
13 PKG_VERSION:=0.4.9
14 PKG_RELEASE:=1
15
16 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
17 PKG_SOURCE_URL:=http://hostap.epitest.fi/releases/
18 PKG_MD5SUM:=c7534dc040ab90218257a78488ecd378
19
20 include $(INCLUDE_DIR)/package.mk
21 ifeq ($(DUMP),)
22 -include $(LINUX_DIR)/.config
23 endif
24
25 define KernelPackage/hostap/Default/2.4
26 VERSION:=$(LINUX_VERSION)+$(PKG_VERSION)-$(BOARD)-$(PKG_RELEASE)
27 endef
28 define KernelPackage/hostap/Default/2.6
29 VERSION:=$(LINUX_VERSION)-$(BOARD)-$(PKG_RELEASE)
30 endef
31 define KernelPackage/hostap/Default
32 SUBMENU:=Wireless Drivers
33 DESCRIPTION:=\
34 Host AP is a driver for 802.11b wireless cards based on Intersil \\\
35 Prism2/2.5/3 chipset. It supports so called Host AP mode that allows the \\\
36 card to act as an IEEE 802.11 access point.
37 URL:=http://hostap.epitest.fi/
38 $(call KernelPackage/hostap/Default/$(KERNEL))
39 endef
40
41
42 define KernelPackage/hostap
43 $(call KernelPackage/hostap/Default)
44 DEPENDS:=@PCI_SUPPORT||PCMCIA_SUPPORT +kmod-ieee80211 +kmod-crypto
45 TITLE:=Host AP support for Prism2/2.5/3
46 DESCRIPTION+=\\\
47 \\\
48 This package contains the base Host AP driver code that is shared by \\\
49 different hardware models. You will also need to enable support for \\\
50 PLX/PCI/CS version of the driver to actually use the driver.
51 endef
52 define KernelPackage/hostap/2.4
53 DEPENDS:=+kmod-crypto
54 FILES:= \
55 $(PKG_BUILD_DIR)/driver/modules/hostap.$(LINUX_KMOD_SUFFIX) \
56 $(PKG_BUILD_DIR)/driver/modules/hostap_crypt_ccmp.$(LINUX_KMOD_SUFFIX) \
57 $(PKG_BUILD_DIR)/driver/modules/hostap_crypt_tkip.$(LINUX_KMOD_SUFFIX) \
58 $(PKG_BUILD_DIR)/driver/modules/hostap_crypt_wep.$(LINUX_KMOD_SUFFIX)
59 AUTOLOAD:=$(call AutoLoad,60,hostap hostap_crypt_wep hostap_crypt_tkip hostap_crypt_ccmp)
60 endef
61 define KernelPackage/hostap/2.6
62 KCONFIG:=$(CONFIG_HOSTAP)
63 FILES:= \
64 $(LINUX_DIR)/drivers/net/wireless/hostap/hostap.$(LINUX_KMOD_SUFFIX)
65 AUTOLOAD:=$(call AutoLoad,60,hostap)
66 endef
67
68
69 define KernelPackage/hostap-pci
70 $(call KernelPackage/hostap/Default)
71 DEPENDS:=kmod-hostap
72 TITLE:=Host AP driver for PCI adaptors
73 DESCRIPTION+=\\\
74 \\\
75 This package contains the Host AP driver for Prism2.5 PCI adaptors.
76 AUTOLOAD:=$(call AutoLoad,60,hostap_pci)
77 endef
78 define KernelPackage/hostap-pci/2.4
79 FILES:= \
80 $(PKG_BUILD_DIR)/driver/modules/hostap_pci.$(LINUX_KMOD_SUFFIX)
81 endef
82 define KernelPackage/hostap-pci/2.6
83 KCONFIG:=$(CONFIG_HOSTAP_PCI)
84 FILES:= \
85 $(LINUX_DIR)/drivers/net/wireless/hostap/hostap_pci.$(LINUX_KMOD_SUFFIX)
86 endef
87
88
89 define KernelPackage/hostap-plx
90 $(call KernelPackage/hostap/Default)
91 DEPENDS:=kmod-hostap
92 TITLE:=Host AP driver for PLX9052 based PCI adaptors
93 DESCRIPTION+=\\\
94 \\\
95 This package contains the Host AP driver for Prism2/2.5/3 in PLX9052 \\\
96 based PCI adaptors.
97 AUTOLOAD:=$(call AutoLoad,60,hostap_plx)
98 endef
99 define KernelPackage/hostap-plx/2.4
100 FILES:= \
101 $(PKG_BUILD_DIR)/driver/modules/hostap_plx.$(LINUX_KMOD_SUFFIX)
102 endef
103 define KernelPackage/hostap-plx/2.6
104 KCONFIG:=$(CONFIG_HOSTAP_PLX)
105 FILES:= \
106 $(LINUX_DIR)/drivers/net/wireless/hostap/hostap_plx.$(LINUX_KMOD_SUFFIX)
107 endef
108
109
110 ifeq ($(KERNEL),2.4)
111 define Build/Compile
112 $(MAKE) -C $(LINUX_DIR)/ \
113 ARCH="$(LINUX_KARCH)" \
114 CROSS_COMPILE="$(TARGET_CROSS)" \
115 SUBDIRS="$(PKG_BUILD_DIR)/driver/modules" \
116 modules
117 endef
118 else
119 define Build/Prepare
120 mkdir -p $(PKG_BUILD_DIR)
121 endef
122
123 define Build/Configure
124 endef
125
126 define Build/Compile
127 endef
128 endif
129
130
131 $(eval $(call KernelPackage,hostap))
132 $(eval $(call KernelPackage,hostap-pci))
133 $(eval $(call KernelPackage,hostap-plx))