mtr: bump version to 0.95, split package for JSON and non-JSON variants
authorMarc Egerton <marc@malloc.me>
Mon, 14 Mar 2022 20:16:47 +0000 (20:16 +0000)
committerRosen Penev <rosenp@gmail.com>
Thu, 17 Mar 2022 02:45:29 +0000 (19:45 -0700)
As per the discussion in PR #18047, split the MTR package into
two, one with jansson enabled for JSON output, and one without.

This commit also bumps the version to 0.95. Since the MTR project
website does not seem to be updated with builds any longer, switch
to GitHub Codeload instead.

Also enable PKG_FIXUP:=autoreconf so that MTRs bootstrap.sh process
is executed properly.

Signed-off-by: Marc Egerton <marc@malloc.me>
net/mtr/Makefile

index 67b1e1b1855f079200b0dda9064ed73252c54b8d..5e20e4faacee26bc0c832e68d03639df8674775f 100644 (file)
@@ -8,12 +8,12 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=mtr
-PKG_VERSION:=0.94
-PKG_RELEASE:=1
+PKG_VERSION:=0.95
+PKG_RELEASE:=$(AUTORELEASE)
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
-PKG_SOURCE_URL:=https://www.bitwizard.nl/mtr/files
-PKG_HASH:=cb5ffc803d136f7136b49b950abbc2a27d2a5ba62195de5b70f8ef9f0fcf2791
+PKG_SOURCE_URL:=https://codeload.github.com/traviscross/mtr/tar.gz/v$(PKG_VERSION)?
+PKG_HASH:=12490fb660ba5fb34df8c06a0f62b4f9cbd11a584fc3f6eceda0a99124e8596f
 
 PKG_MAINTAINER:=Jonathan McCrohan <jmccrohan@gmail.com>
 PKG_LICENSE:=GPL-2.0-or-later
@@ -22,17 +22,41 @@ PKG_CPE_ID:=cpe:/a:matt_kimball_and_roger_wolff:mtr
 
 PKG_INSTALL:=1
 PKG_BUILD_PARALLEL:=1
+PKG_FIXUP:=autoreconf
+
+CONFIGURE_ARGS += \
+       --without-gtk \
+       $(call autoconf_bool,CONFIG_IPV6,ipv6)
 
 include $(INCLUDE_DIR)/package.mk
 
-define Package/mtr
-  SECTION:=net
-  CATEGORY:=Network
-  DEPENDS:=+libncurses
-  TITLE:=Full screen ncurses traceroute tool
-  URL:=https://www.bitwizard.nl/mtr/
+define Package/mtr/Default
+       SECTION:=net
+       CATEGORY:=Network
+       DEPENDS:=+libncurses
+       TITLE:=Full screen ncurses traceroute tool
+       URL:=https://www.bitwizard.nl/mtr/
+       PROVIDES:=mtr
+endef
+
+define Package/mtr-nojson
+       $(Package/mtr/Default)
+       TITLE+= Without JSON
+       VARIANT:=nojson
+       DEFAULT_VARIANT:=1
+endef
+
+define Package/mtr-json
+       $(Package/mtr/Default)
+       TITLE+= With JSON
+       VARIANT:=json
+       DEPENDS+=+jansson
 endef
 
+ifeq ($(BUILD_VARIANT),nojson)
+       CONFIGURE_ARGS += --without-jansson
+endif
+
 define Package/mtr/description
        mtr combines the functionality of the 'traceroute' and 'ping' programs
        in a single network diagnostic tool.
@@ -47,17 +71,16 @@ endef
 TARGET_CFLAGS += -ffunction-sections -fdata-sections
 TARGET_LDFLAGS += -Wl,--gc-sections,--as-needed
 
-CONFIGURE_ARGS += \
-       --without-gtk \
-       --without-jansson \
-       $(call autoconf_bool,CONFIG_IPV6,ipv6)
-
 CONFIGURE_VARS += ac_cv_lib_cap_cap_set_proc=no
 
-define Package/mtr/install
+define Package/mtr/install/Default
        $(INSTALL_DIR) $(1)/usr/sbin
        $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mtr $(1)/usr/sbin/
        $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/sbin/mtr-packet $(1)/usr/sbin/
 endef
 
-$(eval $(call BuildPackage,mtr))
+Package/mtr-nojson/install = $(Package/mtr/install/Default)
+Package/mtr-json/install = $(Package/mtr/install/Default)
+
+$(eval $(call BuildPackage,mtr-nojson))
+$(eval $(call BuildPackage,mtr-json))