linux-atm: package each available atm debug tool individually
[openwrt.git] / package / linux-atm / Makefile
1 #
2 # Copyright (C) 2006-2012 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:=linux-atm
12 PKG_VERSION:=2.5.2
13 PKG_RELEASE:=5
14
15 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
16 PKG_SOURCE_URL:=@SF/$(PKG_NAME)
17 PKG_MD5SUM:=d49499368c3cf15f73a05d9bce8824a8
18
19 PKG_INSTALL:=1
20 PKG_BUILD_PARALLEL:=1
21
22 include $(INCLUDE_DIR)/package.mk
23
24 ATM_DEBUG_BINS:=aread awrite atmdiag atmdump atmswitch saaldump \
25                 sonetdiag svc_recv svc_send ttcp_atm
26 ATM_DEBUG_SBINS:=atmaddr atmloop atmtcp esi atmsigd bus \
27                  ilmid ilmidiag lecs les mpcd zeppelin
28 ATM_DEBUG_TOOLS:=$(ATM_DEBUG_BINS) $(ATM_DEBUG_SBINS)
29
30 define Package/linux-atm
31   SECTION:=libs
32   CATEGORY:=Libraries
33   TITLE:=Linux ATM library
34   URL:=http://linux-atm.sourceforge.net/
35 endef
36
37 define Package/linux-atm/description
38   This package contains a library for accessing the Linux ATM subsystem.
39 endef
40
41 define Package/linux-atm/Default
42   SECTION:=net
43   CATEGORY:=Network
44   DEPENDS:=linux-atm
45   URL:=http://linux-atm.sourceforge.net/
46 endef
47
48 define Package/atm-tools
49   $(call Package/linux-atm/Default)
50   TITLE:=Linux ATM tools
51 endef
52
53 define Package/atm-tools/description
54   This package contains the Linux ATM tools.
55 endef
56
57 define Package/atm-diagnostics
58   $(call Package/linux-atm/Default)
59   TITLE:=Linux ATM Diagnostics
60 endef
61
62 define Package/atm-diagnostics/description
63   This package contains the Linux ATM diagnostics.
64 endef
65
66 define Package/atm-debug-tools
67   $(call Package/linux-atm/Default)
68   TITLE:=Linux ATM debugging tools
69 endef
70
71 define Package/atm-debug-tools/description
72   This package contains the Linux ATM debugging tools.
73 endef
74
75 define Package/br2684ctl
76   $(call Package/linux-atm/Default)
77   TITLE:=ATM Ethernet bridging configuration utility
78 endef
79
80 define Package/br2684ctl/description
81   Support for AAL5 encapsulation (RFC-1483/RFC-2684) over ATM.
82 endef
83
84 define GenAtmPlugin
85   define Package/$(1)
86      $(call Package/linux-atm/Default)
87      TITLE:=Linux ATM tool $(2)
88   endef
89
90   define Package/$(1)/description
91      Linux ATM tool $(2).
92   endef
93 endef
94
95 $(foreach t,$(ATM_DEBUG_TOOLS),$(eval $(call GenAtmPlugin,atm-$(t),$(t))))
96
97 define Build/Configure
98         $(call Build/Configure/Default)
99         # prevent autoheader invocation
100         touch $(PKG_BUILD_DIR)/stamp-h.in
101 endef
102
103 unexport PREFIX
104
105 define Build/Compile
106         # src/qgen is built with HOSTCC, which does not really like our LDFLAGS
107         +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)/src/qgen \
108                 LDFLAGS="" \
109                 all
110         +$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR) OBJCOPY=$(TARGET_CROSS)objcopy all
111 endef
112
113 define Build/InstallDev
114         $(INSTALL_DIR) $(1)/usr
115         $(CP) \
116                 $(PKG_INSTALL_DIR)/usr/include \
117                 $(PKG_INSTALL_DIR)/usr/lib \
118                 $(1)/usr/
119 endef
120
121 define Package/linux-atm/install
122         $(INSTALL_DIR) $(1)/usr/lib
123         $(CP) $(PKG_INSTALL_DIR)/usr/lib/libatm.so* $(1)/usr/lib/
124 endef
125
126 define Package/atm-tools/install
127         $(INSTALL_DIR) $(1)/usr/sbin/
128         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/atmarp{,d} $(1)/usr/sbin/
129 endef
130
131
132 define BuildAtmPlugin
133   define Package/$(1)/install
134         $(INSTALL_DIR) $$(1)/usr/$(3)
135         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/$(3)/$(2) $$(1)/$(3)
136   endef
137
138   $$(eval $$(call BuildPackage,$(1)))
139 endef
140
141 define Package/atm-debug-tools/install
142         $(INSTALL_DIR) $(1)/usr/bin/
143         $(INSTALL_DIR) $(1)/usr/sbin/
144         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/atmaddr $(1)/usr/sbin/
145         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/atmloop $(1)/usr/sbin/
146         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/atmtcp     $(1)/usr/sbin/
147         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/esi $(1)/usr/sbin/
148         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/aread $(1)/usr/bin/
149         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/awrite $(1)/usr/bin/
150         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/atmdiag $(1)/usr/bin/
151         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/atmdump $(1)/usr/bin/
152         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/atmsigd $(1)/usr/sbin/
153         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/bus $(1)/usr/sbin/
154         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ilmid $(1)/usr/sbin/
155         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/ilmidiag $(1)/usr/sbin/
156         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/lecs $(1)/usr/sbin/
157         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/les $(1)/usr/sbin/
158         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mpcd $(1)/usr/sbin/
159         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/zeppelin $(1)/usr/sbin/
160         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/atmswitch $(1)/usr/bin/
161         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/saaldump $(1)/usr/bin/
162         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/sonetdiag $(1)/usr/bin/
163         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/svc_recv $(1)/usr/bin/
164         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/svc_send $(1)/usr/bin/
165         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/ttcp_atm $(1)/usr/bin/
166 endef
167
168 define Package/atm-diagnostics/install
169         $(INSTALL_DIR) $(1)/usr/bin
170         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/aread $(1)/usr/bin/
171         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/awrite $(1)/usr/bin/
172         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/atmdiag $(1)/usr/bin/
173         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/atmdump $(1)/usr/bin/
174 endef
175
176 define Package/br2684ctl/install
177         $(INSTALL_DIR) $(1)/etc/init.d/
178         $(INSTALL_BIN) ./files/br2684ctl $(1)/etc/init.d/
179         $(INSTALL_DIR) $(1)/usr/sbin
180         $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/br2684ctl $(1)/usr/sbin/
181 endef
182
183 $(eval $(call BuildPackage,linux-atm))
184 $(eval $(call BuildPackage,atm-tools))
185 $(eval $(call BuildPackage,atm-debug-tools))
186 $(eval $(call BuildPackage,atm-diagnostics))
187 $(eval $(call BuildPackage,br2684ctl))
188 $(foreach t,$(ATM_DEBUG_BINS),$(eval $(call BuildAtmPlugin,atm-$(t),$(t),bin)))
189 $(foreach t,$(ATM_DEBUG_SBINS),$(eval $(call BuildAtmPlugin,atm-$(t),$(t),sbin)))