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