diff --git a/package/pkg-utils.mk b/package/pkg-utils.mk index 973eabe437..94e806963b 100644 --- a/package/pkg-utils.mk +++ b/package/pkg-utils.mk @@ -120,17 +120,17 @@ define _json-info-pkg "install_images": $(call yesno-to-bool,$($(1)_INSTALL_IMAGES))$(comma) \ ) "dependencies": [ - $(call make-comma-list,$(sort $($(1)_FINAL_ALL_DEPENDENCIES))) + $(call make-dq-comma-list,$(sort $($(1)_FINAL_ALL_DEPENDENCIES))) ], "reverse_dependencies": [ - $(call make-comma-list,$(sort $($(1)_RDEPENDENCIES))) + $(call make-dq-comma-list,$(sort $($(1)_RDEPENDENCIES))) ] $(if $($(1)_CPE_ID_VALID), \ $(comma) "cpe-id": "$($(1)_CPE_ID)" \ ) $(if $($(1)_IGNORE_CVES), $(comma) "ignore_cves": [ - $(call make-comma-list,$(sort $($(1)_IGNORE_CVES))) + $(call make-dq-comma-list,$(sort $($(1)_IGNORE_CVES))) ] ) endef @@ -144,7 +144,7 @@ define _json-info-pkg-details { "source": "$(notdir $(dl))", "uris": [ - $(call make-comma-list, + $(call make-dq-comma-list, $(subst \|,|, $(call DOWNLOAD_URIS,$(dl),$(1)) ) @@ -161,7 +161,7 @@ define _json-info-fs null \ ), "dependencies": [ - $(call make-comma-list,$(sort $($(1)_DEPENDENCIES))) + $(call make-dq-comma-list,$(sort $($(1)_DEPENDENCIES))) ] endef diff --git a/support/misc/utils.mk b/support/misc/utils.mk index dc60cad979..fdc22a2eef 100644 --- a/support/misc/utils.mk +++ b/support/misc/utils.mk @@ -84,13 +84,17 @@ finddirclauses = $(call notfirstword,$(patsubst %,-o -path '$(1)/%',$(2))) # notfirstword(wordlist): returns all but the first word in wordlist notfirstword = $(wordlist 2,$(words $(1)),$(1)) -# build a comma-separated list of quoted items, from a space-separated -# list of unquoted items: a b c d --> "a", "b", "c", "d" -make-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,"%",$(strip $(1)))) +# build a comma-separated list of items, from a space-separated +# list of items: a b c d --> a, b, c, d +make-comma-list = $(subst $(space),$(comma)$(space),$(strip $(1))) -# build a comma-separated list of single quoted items, from a space-separated +# build a comma-separated list of double-quoted items, from a space-separated +# list of unquoted items: a b c d --> "a", "b", "c", "d" +make-dq-comma-list = $(call make-comma-list,$(patsubst %,"%",$(strip $(1)))) + +# build a comma-separated list of single-quoted items, from a space-separated # list of unquoted items: a b c d --> 'a', 'b', 'c', 'd' -make-sq-comma-list = $(subst $(space),$(comma)$(space),$(patsubst %,'%',$(strip $(1)))) +make-sq-comma-list = $(call make-comma-list,$(patsubst %,'%',$(strip $(1)))) # Needed for the foreach loops to loop over the list of hooks, so that # each hook call is properly separated by a newline.