btop: fix compilation with musl 1.2.4

_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.

Fixes errors in the form of:
Compiling src/linux/btop_collect.cpp
src/linux/btop_collect.cpp: In function 'Mem::mem_info& Mem::collect(bool)':
src/linux/btop_collect.cpp:1082:58: error: aggregate 'Mem::collect(bool)::statvfs64 vfs' has incomplete type and cannot be defined
 1082 |                                         struct statvfs64 vfs;
      |                                                          ^~~
src/linux/btop_collect.cpp:1083:79: error: invalid use of incomplete type 'struct Mem::collect(bool)::statvfs64'
 1083 |                                         if (statvfs64(mountpoint.c_str(), &vfs) < 0) {
      |                                                                               ^
src/linux/btop_collect.cpp:1082:48: note: forward declaration of 'struct Mem::collect(bool)::statvfs64'
 1082 |                                         struct statvfs64 vfs;
      |                                                ^~~~~~~~~
make[3]: *** [Makefile:274: obj/linux/btop_collect.o] Error 1
make[3]: Leaving directory '/home/nick/openwrt/build_dir/target-aarch64_cortex-a53_musl/btop-1.2.13'
make[2]: *** [Makefile:53: /home/nick/openwrt/build_dir/target-aarch64_cortex-a53_musl/btop-1.2.13/.built] Error 2
make[2]: Leaving directory '/home/nick/openwrt/feeds/packages/admin/btop'
time: package/feeds/packages/btop/compile#2.57#0.17#3.02
    ERROR: package/feeds/packages/btop failed to build.

Signed-off-by: Nick Hainke <vincent@systemli.org>
This commit is contained in:
Nick Hainke 2023-05-17 00:08:36 +02:00 committed by Tianling Shen
parent 0f40d9f404
commit feaba4f52b
1 changed files with 5 additions and 1 deletions

View File

@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=btop
PKG_VERSION:=1.2.13
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL=https://codeload.github.com/aristocratos/btop/tar.gz/v$(PKG_VERSION)?
@ -37,6 +37,10 @@ MAKE_FLAGS+= \
OPTFLAGS="$(TARGET_CXXFLAGS)" \
LDCXXFLAGS="$(TARGET_LDFLAGS) -pthread"
ifneq ($(CONFIG_USE_MUSL),)
TARGET_CFLAGS += -D_LARGEFILE64_SOURCE
endif
define Package/btop/install
$(INSTALL_DIR) $(1)/usr/bin
$(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/local/bin/btop $(1)/usr/bin/