USB/IP: Fix building for linux 3.0
[packages.git] / net / usbip / Makefile
1 #
2 # Copyright (C) 2010 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9 include $(INCLUDE_DIR)/kernel.mk
10
11 PKG_NAME:=usbip
12 PKG_VERSION:=0.1.7
13 PKG_RELEASE:=1
14
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
16 PKG_SOURCE_URL:=@SF/usbip
17 PKG_MD5SUM:=d1094b6d4449787864f8be001639232c
18
19 PKG_FIXUP:=libtool
20 PKG_INSTALL:=1
21
22 include $(INCLUDE_DIR)/package.mk
23 include $(INCLUDE_DIR)/nls.mk
24
25 define Package/usbip/Common
26   TITLE:=USB-over-IP
27   URL:=http://usbip.sourceforge.net/
28   DEPENDS:=@!LINUX_2_4 @USB_SUPPORT +glib2 +sysfsutils
29   MAINTAINER:=Nuno Goncalves <nunojpg@gmail.com>
30 endef
31
32 define Package/usbip/Default
33 $(call Package/usbip/Common)
34   SECTION:=net
35   CATEGORY:=Network
36 endef
37
38 define Package/usbip
39 $(call Package/usbip/Default)
40   TITLE+= (common)
41   DEPENDS+= +glib2 +sysfsutils +libwrap +kmod-usbip
42 endef
43
44 define Package/usbip-client
45 $(call Package/usbip/Default)
46   TITLE+= (client)
47   DEPENDS+= usbip +kmod-usbip-client
48 endef
49
50 define Package/usbip-server
51 $(call Package/usbip/Default)
52   TITLE+= (server)
53   DEPENDS+= usbip +kmod-usbip-server
54 endef
55
56 define KernelPackage/usbip/Default
57 $(call Package/usbip/Common)
58   SUBMENU:=USB Support
59 endef
60
61 define KernelPackage/usbip
62 $(call KernelPackage/usbip/Default)
63   TITLE+= (kernel support)
64   KCONFIG:= \
65         CONFIG_USB_IP_COMMON CONFIG_USB_IP_DEBUG_ENABLE=n \
66         CONFIG_USBIP_CORE CONFIG_USBIP_DEBUG=n
67  ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),le,2.6.39)),1)
68   FILES:=$(LINUX_DIR)/drivers/staging/usbip/usbip_common_mod.$(LINUX_KMOD_SUFFIX)
69   AUTOLOAD:=$(call AutoLoad,98,usbip_common_mod)
70  else
71   FILES:=$(LINUX_DIR)/drivers/staging/usbip/usbip-core.ko
72   AUTOLOAD:=$(call AutoLoad,98,usbip-core)
73  endif
74 endef
75
76 define KernelPackage/usbip-client
77 $(call KernelPackage/usbip/Default)
78   SUBMENU:=USB Support
79   TITLE+= (kernel client driver)
80   DEPENDS+= kmod-usbip
81   KCONFIG:= CONFIG_USB_IP_VHCI_HCD CONFIG_USBIP_VHCI_HCD
82   FILES:=$(LINUX_DIR)/drivers/staging/usbip/vhci-hcd.$(LINUX_KMOD_SUFFIX)
83   AUTOLOAD:=$(call AutoLoad,99,vhci-hcd)
84 endef
85
86 define KernelPackage/usbip-server
87 $(call KernelPackage/usbip/Default)
88   SUBMENU:=USB Support
89   TITLE+= (kernel host driver)
90   DEPENDS+= kmod-usbip
91   KCONFIG:= CONFIG_USB_IP_HOST CONFIG_USBIP_HOST
92  ifeq ($(strip $(call CompareKernelPatchVer,$(KERNEL_PATCHVER),le,2.6.39)),1)
93   FILES:=$(LINUX_DIR)/drivers/staging/usbip/usbip.$(LINUX_KMOD_SUFFIX)
94   AUTOLOAD:=$(call AutoLoad,99,usbip)
95  else
96   FILES:=$(LINUX_DIR)/drivers/staging/usbip/usbip-host.ko
97   AUTOLOAD:=$(call AutoLoad,99,usbip-host)
98  endif
99 endef
100
101 include $(INCLUDE_DIR)/kernel-defaults.mk
102
103 CONFIGURE_PATH:=./src
104 MAKE_PATH:=./src
105 LIBTOOL_PATHS:=./src
106
107 CFLAGS+="$(TARGET_CFLAGS) -I$(STAGING_DIR)/usr/include"
108
109 define Build/Prepare
110 $(call Build/Prepare/Default)
111         (cd $(PKG_BUILD_DIR)/src; autoreconf -v --install || exit 1 )
112 endef
113
114 define Build/Compile/kmod
115         $(MAKE) $(KERNEL_MAKEOPTS) \
116                 SUBDIRS="$(LINUX_DIR)/drivers/staging/usbip" \
117                 CONFIG_USB_IP_COMMON=m \
118                 CONFIG_USB_IP_VHCI_HCD=m \
119                 CONFIG_USB_IP_HOST=m \
120                 CONFIG_USBIP_CORE=m \
121                 CONFIG_USBIP_VHCI_HCD=m \
122                 CONFIG_USBIP_HOST=m \
123                 modules
124 endef
125
126 define Build/Compile
127 $(call Build/Compile/Default)
128 $(call Build/Compile/kmod)
129 endef
130
131 define Package/usbip/install
132         $(INSTALL_DIR) $(1)/usr/lib
133         $(CP) \
134                 $(PKG_INSTALL_DIR)/usr/lib/libusbip.so.* \
135                 $(1)/usr/lib/
136         $(INSTALL_DIR) $(1)/usr/share/hwdata
137         $(CP) \
138                 $(PKG_INSTALL_DIR)/usr/share/usbip/usb.ids \
139                 $(1)/usr/share/hwdata/
140 endef
141
142 define Package/usbip-client/install
143         $(INSTALL_DIR) $(1)/usr/bin
144         $(CP) \
145                 $(PKG_INSTALL_DIR)/usr/bin/usbip \
146                 $(1)/usr/bin/
147 endef
148
149 define Package/usbip-server/install
150         $(INSTALL_DIR) $(1)/usr/bin
151         $(CP) \
152                 $(PKG_INSTALL_DIR)/usr/bin/usbipd \
153                 $(1)/usr/bin/
154         $(CP) \
155                 $(PKG_INSTALL_DIR)/usr/bin/bind_driver \
156                 $(1)/usr/bin/usbip_bind_driver
157 endef
158
159 $(eval $(call BuildPackage,usbip))
160 $(eval $(call BuildPackage,usbip-client))
161 $(eval $(call BuildPackage,usbip-server))
162 $(eval $(call KernelPackage,usbip))
163 $(eval $(call KernelPackage,usbip-client))
164 $(eval $(call KernelPackage,usbip-server))