perl: fix compilation with musl 1.2.4
authorRobert Marko <robimarko@gmail.com>
Wed, 17 May 2023 08:18:57 +0000 (10:18 +0200)
committerRosen Penev <rosenp@gmail.com>
Thu, 18 May 2023 07:27:20 +0000 (10:27 +0300)
musl 1.2.4 deprecated legacy "LFS64" ("large file support") interfaces so
just having _GNU_SOURCE defined is not enough anymore.

_LARGEFILE64_SOURCE has to be defined in the source, or CFLAGS can be used
to pass -D_LARGEFILE64_SOURCE to allow to keep using LFS64 definitions.

Signed-off-by: Robert Marko <robimarko@gmail.com>
lang/perl/Makefile

index 99302cb1a4414c309b238342d3f1b8bc7f43dd47..40532b5f0163ffffc3ce8dfb697592c3a81e0af0 100644 (file)
@@ -11,7 +11,7 @@ include perlver.mk
 
 PKG_NAME:=perl
 PKG_VERSION:=$(PERL_VERSION)
-PKG_RELEASE:=7
+PKG_RELEASE:=8
 
 PKG_SOURCE_URL:=\
                https://cpan.metacpan.org/src/5.0 \
@@ -40,6 +40,10 @@ HOST_BUILD_PARALLEL:=1
 # Variables used during configuration/build
 HOST_PERL_PREFIX:=$(STAGING_DIR_HOSTPKG)/usr
 
+ifneq ($(CONFIG_USE_MUSL),)
+  TARGET_CFLAGS += -D_LARGEFILE64_SOURCE
+endif
+
 # Filter -g3, it will break Compress-Raw-Zlib
 TARGET_CFLAGS_PERL:=$(patsubst -g3,-g,$(TARGET_CFLAGS))
 TARGET_CPPFLAGS_PERL:=$(patsubst -g3,-g,$(TARGET_CPPFLAGS))