blob: 270cbf131f9b6b3f920c0f108646c7877a7542d1 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
|
include $(TOPDIR)/rules.mk
PKG_NAME:=libteam
PKG_VERSION:=1.32
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/jpirko/libteam/tar.gz/refs/tags/v$(PKG_VERSION)?
PKG_HASH:=7ad90555db8aecdcaf002f543d330408501600edf7065e0ca398fce9b1e64820
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
PKG_BUILD_PARALLEL:=1
PKG_BUILD_FLAGS:=lto
PKG_MAINTAINER:=Qingfang Deng <dqfext@gmail.com>
PKG_LICENSE:=LGPL-2.1-only
PKG_LICENSE_FILES:=COPYING
include $(INCLUDE_DIR)/package.mk
CONFIGURE_ARGS+=\
--disable-static \
--disable-dbus \
--disable-zmq
define Package/libteam/default
SECTION:=libs
CATEGORY:=Libraries
URL:=https://github.com/jpirko/libteam
endef
define Package/libteam
$(call Package/libteam/default)
TITLE:=Team common library
DEPENDS:=+kmod-team +libnl-cli \
+kmod-team-mode-activebackup \
+kmod-team-mode-broadcast \
+kmod-team-mode-loadbalance \
+kmod-team-mode-random \
+kmod-team-mode-roundrobin
ABI_VERSION:=5
endef
define Package/libteam/description
Libteam lib is a userspace wrapper of Team Netlink communication.
endef
define Package/libteamdctl
$(call Package/libteam/default)
TITLE:=Team daemon control library
ABI_VERSION:=0
endef
define Package/libteamdctl/description
Common library for teamdctl.
endef
define Package/teamd/default
SECTION:=net
CATEGORY:=Network
URL:=https://github.com/jpirko/libteam
endef
define Package/teamd
$(call Package/teamd/default)
TITLE:=Team daemon
DEPENDS:=+libteam +libdaemon +jansson
endef
define Package/teamd/description
teamd is a daemon to control a given team network device, during runtime,
as a puppeteer controls a puppet. It uses libteam to communicate with the
kernel team device instance via Netlink sockets. The behaviour depends on
the selected runner and its configuration.
endef
define Package/teamdctl
$(call Package/teamd/default)
TITLE:=Team daemon control tool
DEPENDS:=+teamd +libteamdctl
endef
define Package/teamdctl/description
teamdctl is a tool that allows a user to interact with a running teamd instance.
endef
define Package/teamnl
$(call Package/teamd/default)
TITLE:=Team Netlink interface tool
DEPENDS:=+libteam
endef
define Package/teamnl/description
teamnl is a tool enabling interaction with a team device via the team driver
Netlink interface. This tools serves mainly for debugging purposes. Note that
it makes no sense to use this tool to change options on team device controlled
by a teamd instance.
endef
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr
$(CP) $(PKG_INSTALL_DIR)/usr/include $(1)/usr
$(CP) $(PKG_INSTALL_DIR)/usr/lib $(1)/usr
endef
define Package/libteam/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libteam.so.$(ABI_VERSION)* $(1)/usr/lib/
endef
define Package/libteamdctl/install
$(INSTALL_DIR) $(1)/usr/lib
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libteamdctl.so.$(ABI_VERSION)* $(1)/usr/lib/
endef
define Package/teamd/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/teamd $(1)/usr/bin/
endef
define Package/teamdctl/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/teamdctl $(1)/usr/bin/
endef
define Package/teamnl/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/teamnl $(1)/usr/bin/
endef
$(eval $(call BuildPackage,libteam))
$(eval $(call BuildPackage,libteamdctl))
$(eval $(call BuildPackage,teamd))
$(eval $(call BuildPackage,teamdctl))
$(eval $(call BuildPackage,teamnl))
|