From 43455f1075855d9ed2760f70b2d8acbe8e8bb16c Mon Sep 17 00:00:00 2001 From: Christian Marangi Date: Sun, 17 Nov 2024 19:09:31 +0100 Subject: [PATCH] include/package-pack: escape package description for APK mkpkg Escape special char for package description for APK mkpkg as the description is passed as an args to mkpkg with --info option and can easily escape from the "". Currently escaped char `, $, ", \. Signed-off-by: Christian Marangi --- include/package-pack.mk | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/include/package-pack.mk b/include/package-pack.mk index 9d06c8b647..830b39f8d7 100644 --- a/include/package-pack.mk +++ b/include/package-pack.mk @@ -8,6 +8,10 @@ endif IPKG_STATE_DIR:=$(TARGET_DIR)/usr/lib/opkg +define description_escape +$(subst `,\`,$(subst $$,\$$,$(subst ",\",$(subst \,\\,$(1))))) +endef + # Generates a make statement to return a wildcard for candidate ipkg files # 1: package name define gen_package_wildcard @@ -339,7 +343,7 @@ else $(FAKEROOT) $(STAGING_DIR_HOST)/bin/apk mkpkg \ --info "name:$(1)$$(ABIV_$(1))" \ --info "version:$(VERSION)" \ - --info "description:$$(strip $$(Package/$(1)/description))" \ + --info "description:$$(call description_escape,$$(strip $$(Package/$(1)/description)))" \ --info "arch:$(PKGARCH)" \ --info "license:$(LICENSE)" \ --info "origin:$(SOURCE)" \