[Buildroot] [PATCH] package/perl: fix configure when BR2_VERSION_FULL contains a '/'
Yann E. MORIN
yann.morin.1998 at free.fr
Sat Mar 27 22:42:20 UTC 2021
When BR2_VERSION_FULL contains one or more '/', injection our version
in the perl patch-level fails:
/usr/bin/sed: -e expression #1, char 27: unknown option to `s'
When the build is done in a git tree, and HEAD is a tag, BR2_VERSION_FULL
will contain that tag name. Even if not widely common, it is not unusual
for a tag to contain a '/', and this is perfectly legit in git.
So, mangle BR2_VERSION_FULL to escape all '/' with a backslash '\', so
that the sed expression is correct, and so that we eventually have a
correct pathclevel string in perl's --version output.
Signed-off-by: Yann E. MORIN <yann.morin.1998 at free.fr>
Cc: Francois Perrad <francois.perrad at gadz.org>
---
package/perl/perl.mk | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/package/perl/perl.mk b/package/perl/perl.mk
index 0ff288db0e..a77686f951 100644
--- a/package/perl/perl.mk
+++ b/package/perl/perl.mk
@@ -79,7 +79,7 @@ endif
define PERL_CONFIGURE_CMDS
(cd $(@D); $(TARGET_MAKE_ENV) HOSTCC='$(HOSTCC_NOCCACHE)' \
./configure $(PERL_CONF_OPTS))
- $(SED) 's/UNKNOWN-/Buildroot $(BR2_VERSION_FULL) /' $(@D)/patchlevel.h
+ $(SED) 's/UNKNOWN-/Buildroot $(subst /,\/,$(BR2_VERSION_FULL)) /' $(@D)/patchlevel.h
endef
define PERL_BUILD_CMDS
--
2.25.1
More information about the buildroot
mailing list