da18b4b0fc6b86d869098299090eecfc85fd3829
[openwrt.git] / package / iproute2 / 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
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=iproute2
11 PKG_VERSION:=2.6.29-1
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
15 PKG_SOURCE_URL:=http://devresources.linux-foundation.org/dev/iproute2/download/
16 PKG_MD5SUM:=c1bc258a6c345905e79935ac7a3cc582
17
18 PKG_BUILD_DIR:=$(BUILD_DIR)/iproute2-$(PKG_VERSION)
19
20 include $(INCLUDE_DIR)/package.mk
21
22 define Package/iproute2/Default
23   SECTION:=net
24   CATEGORY:=Network
25   URL:=http://linux-net.osdl.org/index.php/Iproute2
26 endef
27
28 define Package/ip
29 $(call Package/iproute2/Default)
30   TITLE:=Routing control utility
31 endef
32
33 define Package/tc
34 $(call Package/iproute2/Default)
35   TITLE:=Traffic control utility
36 endef
37
38 define Package/genl
39 $(call Package/iproute2/Default)
40   TITLE:=General netlink utility frontend
41 endef
42
43 define Build/Configure
44         $(SED) "s:-O2:${TARGET_CFLAGS}:g" $(PKG_BUILD_DIR)/Makefile
45         $(SED) "s,-I/usr/include/db3,," $(PKG_BUILD_DIR)/Makefile
46         $(SED) "s,^KERNEL_INCLUDE.*,KERNEL_INCLUDE=$(LINUX_DIR)/include," \
47                 $(PKG_BUILD_DIR)/Makefile
48         $(SED) "s,^LIBC_INCLUDE.*,LIBC_INCLUDE=$(STAGING_DIR)/include," \
49                 $(PKG_BUILD_DIR)/Makefile
50         # For now disable compiling of the misc directory because it seems to fail
51         rm -rf $(PKG_BUILD_DIR)/misc 
52         $(SED) "s, misc,," $(PKG_BUILD_DIR)/Makefile
53 endef
54
55 define Build/Compile
56         $(MAKE) -C $(PKG_BUILD_DIR)/netem HOSTCC="$(HOSTCC)" CFLAGS="-D_GNU_SOURCE -O2 -Wstrict-prototypes -Wall -I ../include -DRESOLVE_HOSTNAMES"
57         $(MAKE) -C $(PKG_BUILD_DIR) $(TARGET_CONFIGURE_OPTS) KERNEL_INCLUDE=$(LINUX_DIR)/include all tc/tc ip/ip
58 endef
59
60 define Build/InstallDev
61         $(INSTALL_DIR) $(1)/usr/include
62         $(CP) $(PKG_BUILD_DIR)/include/libnetlink.h $(1)/usr/include/
63         $(INSTALL_DIR) $(1)/usr/lib
64         $(CP) $(PKG_BUILD_DIR)/lib/libnetlink.a $(1)/usr/lib/
65 endef
66
67 define Package/ip/install
68         $(INSTALL_DIR) $(1)/usr/sbin
69         $(INSTALL_DIR) $(1)/etc/iproute2
70         $(INSTALL_DATA) $(PKG_BUILD_DIR)/etc/iproute2/rt_tables $(1)/etc/iproute2
71         $(INSTALL_BIN) $(PKG_BUILD_DIR)/ip/ip $(1)/usr/sbin/
72 endef
73
74 define Package/tc/install
75         $(INSTALL_DIR) $(1)/usr/sbin
76         $(INSTALL_BIN) $(PKG_BUILD_DIR)/tc/tc $(1)/usr/sbin/
77 endef
78
79 define Package/genl/install
80         $(INSTALL_DIR) $(1)/usr/sbin
81         $(INSTALL_BIN) $(PKG_BUILD_DIR)/genl/genl $(1)/usr/sbin/
82 endef
83
84 $(eval $(call BuildPackage,ip))
85 $(eval $(call BuildPackage,tc))
86 $(eval $(call BuildPackage,genl))
87
88