aboutsummaryrefslogtreecommitdiff
path: root/net/iperf3/Makefile
diff options
context:
space:
mode:
authorNick Hainke <vincent@systemli.org>2022-09-11 14:31:33 +0200
committerRosen Penev <rosenp@gmail.com>2022-09-14 02:37:44 -0700
commitae48be8e2157bc7c352b3b6d30c026fafdae4867 (patch)
treecbfb40c4b257831573c923d09c041f6d9c601acb /net/iperf3/Makefile
parentb8bfdc5cd66fed3b3e946db402a464fe1dc0e32e (diff)
iperf3: add shared libiperf library and link iperf3 dynamically
Add library for creating own functions with iperf3 functionality. Example: https://github.com/esnet/iperf/blob/master/examples/mis.c This library is needed by python3-iperf3. Build iperf3 binary with dynamically linked libiperf3. However, still build iperf3-ssl as static binary due to a lack of shipping two libiperf versions. Signed-off-by: Nick Hainke <vincent@systemli.org>
Diffstat (limited to 'net/iperf3/Makefile')
-rw-r--r--net/iperf3/Makefile30
1 files changed, 27 insertions, 3 deletions
diff --git a/net/iperf3/Makefile b/net/iperf3/Makefile
index de17f81c2..db3b6e432 100644
--- a/net/iperf3/Makefile
+++ b/net/iperf3/Makefile
@@ -32,6 +32,7 @@ define Package/iperf3/default
CATEGORY:=Network
TITLE:=Internet Protocol bandwidth measuring tool
URL:=https://github.com/esnet/iperf
+ DEPENDS:=+libiperf3
endef
define Package/iperf3
@@ -43,14 +44,20 @@ define Package/iperf3-ssl
$(call Package/iperf3/default)
TITLE+= with iperf_auth support
VARIANT:=ssl
- DEPENDS:= +libopenssl
+ DEPENDS+=+libopenssl
+endef
+
+define Package/libiperf3
+ SECTION:=libs
+ CATEGORY:=Libraries
+ TITLE:=Internet Protocol bandwidth measuring library
+ URL:=https://github.com/esnet/iperf
endef
TARGET_CFLAGS += -D_GNU_SOURCE
-CONFIGURE_ARGS += --disable-shared
ifeq ($(BUILD_VARIANT),ssl)
- CONFIGURE_ARGS += --with-openssl="$(STAGING_DIR)/usr"
+ CONFIGURE_ARGS += --with-openssl="$(STAGING_DIR)/usr" --disable-shared
else
CONFIGURE_ARGS += --without-openssl
endif
@@ -63,6 +70,17 @@ define Package/iperf3/description
characteristics.
endef
+define Package/libiperf3/description
+ Libiperf is a library providing an API for iperf3 functionality.
+endef
+
+define Build/InstallDev
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(INSTALL_DIR) $(1)/usr/include
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libiperf.* $(1)/usr/lib/
+ $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
+endef
+
# autoreconf fails if the README file isn't present
define Build/Prepare
$(call Build/Prepare/Default)
@@ -79,5 +97,11 @@ define Package/iperf3-ssl/install
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/iperf3 $(1)/usr/bin/
endef
+define Package/iperf3/install
+ $(INSTALL_DIR) $(1)/usr/lib
+ $(CP) $(PKG_INSTALL_DIR)/usr/lib/libiperf.so.* $(1)/usr/lib
+endef
+
$(eval $(call BuildPackage,iperf3))
$(eval $(call BuildPackage,iperf3-ssl))
+$(eval $(call BuildPackage,libiperf3))