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