summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/package-version-override.mk21
1 files changed, 21 insertions, 0 deletions
diff --git a/include/package-version-override.mk b/include/package-version-override.mk
new file mode 100644
index 0000000000..7e3e5729a6
--- /dev/null
+++ b/include/package-version-override.mk
@@ -0,0 +1,21 @@
+PKG_VERSION_ORGINAL:=$(PKG_VERSION)
+
+ifeq ($(CONFIG_$(PKG_NAME)_USE_OTHER_VERSION),y)
+PKG_VERSION:= $(strip $(subst ",, $(CONFIG_$(PKG_NAME)_OTHER_VERSION)))
+PKG_MD5SUM:=
+PKG_SOURCE:=$(subst $(PKG_VERSION_ORGINAL),$(PKG_VERSION),$(PKG_SOURCE))
+endif
+
+define Package/$(PKG_NAME)/config
+ menu "overwrite package version"
+ depends on PACKAGE_$(PKG_NAME)
+ config $(PKG_NAME)_USE_OTHER_VERSION
+ depends on PACKAGE_$(PKG_NAME)
+ bool "Use other source version"
+ default n
+ config $(PKG_NAME)_OTHER_VERSION
+ depends on $(PKG_NAME)_USE_OTHER_VERSION
+ string "$(PKG_BASE_NAME) version as string (default version: $(PKG_VERSION_ORGINAL))"
+ default "$(PKG_VERSION_ORGINAL)"
+ endmenu
+endef