diff options
author | Nick Hainke <vincent@systemli.org> | 2022-09-11 14:31:33 +0200 |
---|---|---|
committer | Rosen Penev <rosenp@gmail.com> | 2022-09-14 02:37:44 -0700 |
commit | ae48be8e2157bc7c352b3b6d30c026fafdae4867 (patch) | |
tree | cbfb40c4b257831573c923d09c041f6d9c601acb /net/iperf3/Makefile | |
parent | b8bfdc5cd66fed3b3e946db402a464fe1dc0e32e (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/Makefile | 30 |
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)) |