From bfb5d820bf3f7e50fdde9da759e7407b5d5763a2 Mon Sep 17 00:00:00 2001 From: Rosen Penev Date: Sun, 14 Apr 2024 16:44:08 -0700 Subject: [PATCH] ibrcommon: remove basename Can be replaced with regular C++. Signed-off-by: Rosen Penev --- libs/ibrcommon/Makefile | 2 +- .../patches/001-fix-build-with-musl.patch | 30 +++++++++++++------ 2 files changed, 22 insertions(+), 10 deletions(-) diff --git a/libs/ibrcommon/Makefile b/libs/ibrcommon/Makefile index b1adfd39fd..2b6f4c2ebe 100644 --- a/libs/ibrcommon/Makefile +++ b/libs/ibrcommon/Makefile @@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:=ibrcommon PKG_VERSION:=1.0.1 -PKG_RELEASE:=9 +PKG_RELEASE:=10 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz PKG_SOURCE_URL:=http://www.ibr.cs.tu-bs.de/projects/ibr-dtn/releases diff --git a/libs/ibrcommon/patches/001-fix-build-with-musl.patch b/libs/ibrcommon/patches/001-fix-build-with-musl.patch index c7b9a8c358..bee392d0d9 100644 --- a/libs/ibrcommon/patches/001-fix-build-with-musl.patch +++ b/libs/ibrcommon/patches/001-fix-build-with-musl.patch @@ -1,21 +1,33 @@ --- a/ibrcommon/data/File.cpp +++ b/ibrcommon/data/File.cpp -@@ -35,9 +35,7 @@ +@@ -35,10 +35,6 @@ #include #include -#if !defined(HAVE_FEATURES_H) || defined(ANDROID) - #include +-#include -#endif - +- #ifdef __WIN32__ #include -@@ -226,7 +224,7 @@ namespace ibrcommon + #define FILE_DELIMITER_CHAR '\\' +@@ -225,14 +221,11 @@ namespace ibrcommon + std::string File::getBasename() const { - #if !defined(ANDROID) && defined(HAVE_FEATURES_H) +-#if !defined(ANDROID) && defined(HAVE_FEATURES_H) - return std::string(basename(_path.c_str())); -+ return std::string(basename((char *)_path.c_str())); - #else - char path[_path.length()+1]; - ::memcpy(&path, _path.c_str(), _path.length()+1); +-#else +- char path[_path.length()+1]; +- ::memcpy(&path, _path.c_str(), _path.length()+1); +- +- return std::string(basename(path)); +-#endif ++ size_t found = _path.find_last_of('/'); ++ if (found != std::string::npos) ++ return _path.substr(found + 1); ++ else ++ return _path; + } + + File File::get(const std::string &filename) const