kodi: fold kodi-rpi into it, rebuild for libfmt.so.8
We don't want to maintain kodi 18.x into eternity (which would start
with patching it correctly for libfmt.so.8), and, as explained in
9f8647640b, current kodi can't be built
for rpi specifically anymore. We will assume normal kodi is enough.
This commit is contained in:
committed by
Érico Nogueira Rolim
parent
66dcd8fb0c
commit
afdf4a9b75
1
srcpkgs/kodi-rpi
Symbolic link
1
srcpkgs/kodi-rpi
Symbolic link
@@ -0,0 +1 @@
|
||||
kodi
|
||||
@@ -1,6 +0,0 @@
|
||||
case "${ACTION}" in
|
||||
post)
|
||||
mkdir -p var/lib/xbmc
|
||||
chown xbmc:xbmc var/lib/xbmc
|
||||
;;
|
||||
esac
|
||||
@@ -1,5 +0,0 @@
|
||||
case "${ACTION}" in
|
||||
purge)
|
||||
rm -rf var/lib/xbmc
|
||||
;;
|
||||
esac
|
||||
@@ -1,3 +0,0 @@
|
||||
#!/bin/sh
|
||||
PATH=$PATH:/opt/vc/bin
|
||||
exec chpst -P sudo LD_LIBRARY_PATH=/opt/vc/lib -u xbmc -- /usr/lib/kodi/kodi-rbpi --standalone
|
||||
@@ -1,20 +0,0 @@
|
||||
--- a/xbmc/windowing/GraphicContext.cpp 2019-11-16 12:12:49.000000000 +0100
|
||||
+++ b/xbmc/windowing/GraphicContext.cpp 2020-01-16 21:15:35.293001948 +0100
|
||||
@@ -6,6 +6,7 @@
|
||||
* See LICENSES/README.md for more information.
|
||||
*/
|
||||
|
||||
+#include <cassert>
|
||||
#include "GraphicContext.h"
|
||||
#include "WinSystem.h"
|
||||
#include "Application.h"
|
||||
--- a/xbmc/profiles/dialogs/GUIDialogProfileSettings.cpp 2019-11-16 12:12:49.000000000 +0100
|
||||
+++ b/xbmc/profiles/dialogs/GUIDialogProfileSettings.cpp 2020-01-16 21:47:47.500101629 +0100
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
#include "GUIDialogProfileSettings.h"
|
||||
|
||||
+#include <cassert>
|
||||
#include <utility>
|
||||
|
||||
#include "dialogs/GUIDialogFileBrowser.h"
|
||||
@@ -1,10 +0,0 @@
|
||||
--- a/xbmc/filesystem/ZipManager.h.orig
|
||||
+++ b/xbmc/filesystem/ZipManager.h
|
||||
@@ -33,6 +33,7 @@
|
||||
#include <string>
|
||||
#include <vector>
|
||||
#include <map>
|
||||
+#include <stdint.h>
|
||||
|
||||
class CURL;
|
||||
|
||||
@@ -1,37 +0,0 @@
|
||||
--- a/cmake/modules/FindCrossGUID.cmake 2019-01-30 18:31:51.519546398 +0100
|
||||
+++ b/cmake/modules/FindCrossGUID.cmake 2019-01-30 18:32:51.197608565 +0100
|
||||
@@ -49,10 +49,10 @@
|
||||
set(CROSSGUID_LIBRARIES ${CROSSGUID_LIBRARY})
|
||||
set(CROSSGUID_INCLUDE_DIRS ${CROSSGUID_INCLUDE_DIR})
|
||||
else()
|
||||
- find_path(CROSSGUID_INCLUDE_DIR NAMES guid.h)
|
||||
+ find_path(CROSSGUID_INCLUDE_DIR NAMES Guid.hpp)
|
||||
|
||||
- find_library(CROSSGUID_LIBRARY_RELEASE NAMES crossguid)
|
||||
- find_library(CROSSGUID_LIBRARY_DEBUG NAMES crossguidd)
|
||||
+ find_library(CROSSGUID_LIBRARY_RELEASE NAMES xg)
|
||||
+ find_library(CROSSGUID_LIBRARY_DEBUG NAMES xg)
|
||||
|
||||
include(SelectLibraryConfigurations)
|
||||
select_library_configurations(CROSSGUID)
|
||||
--- a/xbmc/utils/StringUtils.cpp 2019-01-30 18:35:42.588517593 +0100
|
||||
+++ b/xbmc/utils/StringUtils.cpp 2019-01-30 18:37:38.058555463 +0100
|
||||
@@ -16,7 +16,7 @@
|
||||
//
|
||||
//------------------------------------------------------------------------
|
||||
|
||||
-#include <guid.h>
|
||||
+#include <Guid.hpp>
|
||||
|
||||
#if defined(TARGET_ANDROID)
|
||||
#include <androidjni/JNIThreading.h>
|
||||
@@ -1126,8 +1126,7 @@
|
||||
|
||||
std::string StringUtils::CreateUUID()
|
||||
{
|
||||
- static GuidGenerator guidGenerator;
|
||||
- auto guid = guidGenerator.newGuid();
|
||||
+ auto guid = xg::newGuid();
|
||||
|
||||
std::stringstream strGuid; strGuid << guid;
|
||||
return strGuid.str();
|
||||
@@ -1,11 +0,0 @@
|
||||
--- a/tools/depends/native/TexturePacker/Makefile 2016-04-24 08:48:30.000000000 +0200
|
||||
+++ b/tools/depends/native/TexturePacker/Makefile 2016-07-16 15:12:39.875911293 +0200
|
||||
@@ -36,7 +36,7 @@
|
||||
-rm -rf $(PLATFORM)/*; mkdir -p $(PLATFORM)
|
||||
cd $(PLATFORM); cp -a $(SOURCE)/* .
|
||||
cd $(PLATFORM); ./autogen.sh
|
||||
- cd $(PLATFORM); ./configure --prefix=$(PREFIX) $(EXTRA_CONFIGURE) EXTRA_DEFINES="$(NATIVE_ARCH_DEFINES)"
|
||||
+ cd $(PLATFORM); ./configure --prefix=$(PREFIX) EXTRA_DEFINES="$(NATIVE_ARCH_DEFINES)"
|
||||
|
||||
|
||||
$(APP): $(PLATFORM)
|
||||
@@ -1,74 +0,0 @@
|
||||
--- a/xbmc/cores/DllLoader/exports/emu_msvcrt.h 2019-01-30 19:20:09.336910851 +0100
|
||||
+++ b/xbmc/cores/DllLoader/exports/emu_msvcrt.h 2019-01-30 19:20:25.423668836 +0100
|
||||
@@ -12,7 +12,7 @@
|
||||
#define _onexit_t void*
|
||||
#endif
|
||||
|
||||
-#if defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
|
||||
+#if defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID) || !defined(__GLIBC__)
|
||||
typedef off_t __off_t;
|
||||
typedef int64_t off64_t;
|
||||
typedef off64_t __off64_t;
|
||||
--- a/xbmc/cores/DllLoader/exports/wrapper.c 2019-01-30 19:24:16.396348561 +0100
|
||||
+++ b/xbmc/cores/DllLoader/exports/wrapper.c 2019-01-30 19:25:38.562176774 +0100
|
||||
@@ -27,7 +27,7 @@
|
||||
#endif
|
||||
#include <dlfcn.h>
|
||||
|
||||
-#if defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
|
||||
+#if defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID) || !defined(__GLIBC__)
|
||||
typedef off_t __off_t;
|
||||
typedef int64_t off64_t;
|
||||
typedef off64_t __off64_t;
|
||||
--- a/xbmc/cores/DllLoader/exports/emu_msvcrt.cpp 2019-01-30 19:29:02.249253971 +0100
|
||||
+++ b/xbmc/cores/DllLoader/exports/emu_msvcrt.cpp 2019-01-30 19:39:34.911053272 +0100
|
||||
@@ -38,6 +38,7 @@
|
||||
#include <fcntl.h>
|
||||
#include <time.h>
|
||||
#include <signal.h>
|
||||
+#include <paths.h>
|
||||
#ifdef TARGET_POSIX
|
||||
#include "PlatformDefs.h" // for __stat64
|
||||
#include "XFileUtils.h"
|
||||
@@ -1480,7 +1481,7 @@
|
||||
int ret;
|
||||
|
||||
ret = dll_fgetpos64(stream, &tmpPos);
|
||||
-#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
|
||||
+#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID) || !defined(__GLIBC__)
|
||||
*pos = (fpos_t)tmpPos;
|
||||
#else
|
||||
pos->__pos = (off_t)tmpPos.__pos;
|
||||
@@ -1493,8 +1494,9 @@
|
||||
CFile* pFile = g_emuFileWrapper.GetFileXbmcByStream(stream);
|
||||
if (pFile != NULL)
|
||||
{
|
||||
-#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
|
||||
- *pos = pFile->GetPosition();
|
||||
+#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID) || !defined(__GLIBC__)
|
||||
+ uint64_t *ppos = (uint64_t *) pos;
|
||||
+ *ppos = pFile->GetPosition();
|
||||
#else
|
||||
pos->__pos = pFile->GetPosition();
|
||||
#endif
|
||||
@@ -1509,8 +1511,9 @@
|
||||
int fd = g_emuFileWrapper.GetDescriptorByStream(stream);
|
||||
if (fd >= 0)
|
||||
{
|
||||
-#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
|
||||
- if (dll_lseeki64(fd, *pos, SEEK_SET) >= 0)
|
||||
+#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID) || !defined(__GLIBC__)
|
||||
+ const uint64_t *ppos = (const uint64_t *) pos;
|
||||
+ if (dll_lseeki64(fd, *ppos, SEEK_SET) >= 0)
|
||||
#else
|
||||
if (dll_lseeki64(fd, (__off64_t)pos->__pos, SEEK_SET) >= 0)
|
||||
#endif
|
||||
@@ -1532,7 +1535,7 @@
|
||||
if (fd >= 0)
|
||||
{
|
||||
fpos64_t tmpPos;
|
||||
-#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID)
|
||||
+#if !defined(TARGET_POSIX) || defined(TARGET_DARWIN) || defined(TARGET_FREEBSD) || defined(TARGET_ANDROID) || !defined(__GLIBC__)
|
||||
tmpPos= *pos;
|
||||
#else
|
||||
tmpPos.__pos = (off64_t)(pos->__pos);
|
||||
@@ -1,11 +0,0 @@
|
||||
--- a/xbmc/cores/DllLoader/ldt_keeper.c 2019-01-30 20:08:15.532823846 +0100
|
||||
+++ b/xbmc/cores/DllLoader/ldt_keeper.c 2019-01-30 20:08:34.139580225 +0100
|
||||
@@ -49,7 +49,7 @@
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
-#if defined(TARGET_ANDROID) && defined(__i386__) && !defined(modify_ldt)
|
||||
+#if defined(__linux__) && !defined(__GLIBC__) && !defined(modify_ldt)
|
||||
#define modify_ldt(a,b,c) syscall( __NR_modify_ldt, a, b, c);
|
||||
#else
|
||||
int modify_ldt(int func, void *ptr, unsigned long bytecount);
|
||||
@@ -1,11 +0,0 @@
|
||||
--- a/xbmc/cores/DllLoader/exports/wrapper.c.orig
|
||||
+++ b/xbmc/cores/DllLoader/exports/wrapper.c
|
||||
@@ -462,7 +462,7 @@
|
||||
// are actually #defines which are inlined when compiled with -O. Those defines
|
||||
// actally call __*chk (for example, __fread_chk). We need to bypass this whole
|
||||
// thing to actually call our wrapped functions.
|
||||
-#if _FORTIFY_SOURCE > 1
|
||||
+#if defined(__GLIBC__) && _FORTIFY_SOURCE > 1
|
||||
|
||||
size_t __wrap___fread_chk(void * ptr, size_t ptrlen, size_t size, size_t n, FILE * stream)
|
||||
{
|
||||
@@ -1,15 +0,0 @@
|
||||
--- a/cmake/scripts/linux/ArchSetup.cmake 2019-01-30 21:03:03.146025973 +0100
|
||||
+++ b/cmake/scripts/linux/ArchSetup.cmake 2019-01-30 21:03:47.810441038 +0100
|
||||
@@ -32,6 +32,12 @@
|
||||
elseif(CPU MATCHES aarch64 OR CPU MATCHES arm64)
|
||||
set(ARCH aarch64)
|
||||
set(NEON True)
|
||||
+ elseif(CPU MATCHES ppc64le)
|
||||
+ set(ARCH ppc64le-linux)
|
||||
+ set(NEON False)
|
||||
+ elseif(CPU MATCHES ppc64)
|
||||
+ set(ARCH ppc64-linux)
|
||||
+ set(NEON False)
|
||||
else()
|
||||
message(SEND_ERROR "Unknown CPU: ${CPU}")
|
||||
endif()
|
||||
@@ -1,40 +0,0 @@
|
||||
--- a/xbmc/platform/posix/utils/PosixInterfaceForCLog.cpp 2019-01-30 19:51:15.744119125 +0100
|
||||
+++ b/xbmc/platform/posix/utils/PosixInterfaceForCLog.cpp 2019-01-30 19:54:51.940377340 +0100
|
||||
@@ -17,10 +17,6 @@
|
||||
#include "platform/android/activity/XBMCApp.h"
|
||||
#endif // TARGET_ANDROID
|
||||
|
||||
-struct FILEWRAP : public FILE
|
||||
-{};
|
||||
-
|
||||
-
|
||||
CPosixInterfaceForCLog::CPosixInterfaceForCLog() :
|
||||
m_file(NULL)
|
||||
{ }
|
||||
@@ -40,7 +36,7 @@
|
||||
(void)remove(backupOldLogToFilename.c_str()); // if it's failed, try to continue
|
||||
(void)rename(logFilename.c_str(), backupOldLogToFilename.c_str()); // if it's failed, try to continue
|
||||
|
||||
- m_file = (FILEWRAP*)fopen(logFilename.c_str(), "wb");
|
||||
+ m_file = fopen(logFilename.c_str(), "wb");
|
||||
if (!m_file)
|
||||
return false; // error, can't open log file
|
||||
|
||||
--- a/xbmc/platform/posix/utils/PosixInterfaceForCLog.h 2019-01-30 19:55:21.460002043 +0100
|
||||
+++ b/xbmc/platform/posix/utils/PosixInterfaceForCLog.h 2019-01-30 19:55:36.156814572 +0100
|
||||
@@ -10,8 +10,6 @@
|
||||
|
||||
#include <string>
|
||||
|
||||
-struct FILEWRAP; // forward declaration, wrapper for FILE
|
||||
-
|
||||
class CPosixInterfaceForCLog
|
||||
{
|
||||
public:
|
||||
@@ -23,5 +21,5 @@
|
||||
void PrintDebugString(const std::string& debugString);
|
||||
static void GetCurrentLocalTime(int& hour, int& minute, int& second, double& millisecond);
|
||||
private:
|
||||
- FILEWRAP* m_file;
|
||||
+ FILE* m_file;
|
||||
};
|
||||
@@ -1,119 +0,0 @@
|
||||
# Template file for 'kodi-rpi'
|
||||
pkgname=kodi-rpi
|
||||
version=18.8
|
||||
revision=6
|
||||
_codename="Leia"
|
||||
wrksrc="xbmc-${version}-${_codename}"
|
||||
build_style=cmake
|
||||
short_desc="Software media player and entertainment hub for digital media (RPi)"
|
||||
maintainer="Orphaned <orphan@voidlinux.org>"
|
||||
license="GPL-2.0-or-later"
|
||||
homepage="http://www.kodi.tv/"
|
||||
distfiles="https://github.com/xbmc/xbmc/archive/${version}-${_codename}.tar.gz"
|
||||
checksum=6deb28f725880b1ab6c5920b55ef1190a79b0684ffb30b6e13b199d23a0af296
|
||||
LDFLAGS+=" -Wl,-z,stack-size=1048576"
|
||||
python_version=2
|
||||
|
||||
nopie=yes
|
||||
archs="armv6l* armv7l*"
|
||||
|
||||
hostmakedepends="
|
||||
automake libtool pkg-config gperf cmake zip unzip nasm yasm
|
||||
gettext-devel libltdl-devel python-devel libmariadbclient-devel
|
||||
SDL2_image-devel lzo-devel flatbuffers swig openjdk11"
|
||||
makedepends="
|
||||
libatomic-devel eudev-libudev-devel pcre-devel expat-devel libpng-devel
|
||||
libjpeg-turbo-devel avahi-libs-devel alsa-lib-devel samba-devel tiff-devel
|
||||
libmariadbclient-devel libmpeg2-devel wavpack-devel zlib-devel lzo-devel
|
||||
fribidi-devel sqlite-devel freetype-devel jasper-devel faac-devel
|
||||
faad2-devel libmodplug-devel openssl-devel libass-devel libmad-devel
|
||||
fontconfig-devel libsamplerate-devel libmms-devel libcurl-devel ffmpeg-devel
|
||||
enca-devel boost-devel libbluetooth-devel yajl-devel libplist-devel
|
||||
librtmp-devel tinyxml-devel taglib-devel libcap-devel lame-devel libnfs-devel
|
||||
libxslt-devel libuuid-devel giflib-devel libcec-devel libmicrohttpd-devel
|
||||
libcdio-devel python-devel libssh-devel rpi-userland-devel dcadec-devel
|
||||
flatbuffers-devel fmt-devel lcms2-devel libfstrcmp-devel rapidjson crossguid
|
||||
libinput-devel libxkbcommon-devel libcdio-paranoia"
|
||||
|
||||
# gold broken with musl
|
||||
case "$XBPS_MACHINE" in
|
||||
*-musl) configure_args+=" -DENABLE_LDGOLD=Off";;
|
||||
esac
|
||||
|
||||
configure_args="
|
||||
-DCORE_PLATFORM_NAME=rbpi
|
||||
-DENABLE_OPENGL=OFF
|
||||
-DENABLE_OPENGLES=ON
|
||||
-DENABLE_X11=OFF
|
||||
-DENABLE_INTERNAL_CROSSGUID=OFF
|
||||
-DENABLE_VAAPI=OFF
|
||||
-DENABLE_VDPAU=OFF
|
||||
-DWITH_FFMPEG=/usr
|
||||
-DCMAKE_PREFIX_PATH=${XBPS_CROSS_BASE}/opt/vc
|
||||
-DCMAKE_INSTALL_RPATH=/opt/vc/lib
|
||||
"
|
||||
case "$XBPS_TARGET_MACHINE" in
|
||||
armv6*) configure_args+=" -DWITH_CPU=arm1176jzf-s -DCMAKE_EXE_LINKER_FLAGS=-latomic"
|
||||
LDFLAGS+=" -latomic";;
|
||||
armv7*) configure_args+=" -DWITH_CPU=cortex-a7";;
|
||||
aarch64*) configure_args+=" -DWITH_CPU=cortex-a53";;
|
||||
esac
|
||||
|
||||
# The following dependencies are dlopen(3)ed.
|
||||
depends="libmad libogg libcurl libflac libmodplug libass libmpeg2 lame
|
||||
librtmp libnfs>=1.9.7 libplist>=1.12 libssh"
|
||||
depends+=" hicolor-icon-theme desktop-file-utils"
|
||||
|
||||
provides="kodi-${version}_${revision}"
|
||||
|
||||
# Create xbmc system user to launch xbmc-standalone.
|
||||
system_accounts="xbmc"
|
||||
xbmc_homedir="/var/lib/xbmc"
|
||||
xbmc_groups="audio,input,video"
|
||||
|
||||
pre_configure() {
|
||||
find -type f | \
|
||||
grep "configure\.ac\|Makefile\|cmake\|config\.site" | \
|
||||
xargs sed -i -e "s;-isystem;-I;g"
|
||||
|
||||
. /etc/profile.d/10_openjdk11.sh
|
||||
|
||||
if [ "$CROSS_BUILD" ]; then
|
||||
for i in JsonSchemaBuilder TexturePacker; do
|
||||
cat > cmake/modules/Find$i.cmake <<EOF
|
||||
add_executable($i::$i IMPORTED GLOBAL)
|
||||
set_target_properties($i::$i PROPERTIES
|
||||
IMPORTED_LOCATION "\${CORE_SOURCE_DIR}/tools/depends/native/$i/bin/$i")
|
||||
set_target_properties($i::$i PROPERTIES FOLDER Tools)
|
||||
EOF
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
pre_build() {
|
||||
if [ "$CROSS_BUILD" ]; then
|
||||
for i in JsonSchemaBuilder TexturePacker; do
|
||||
CC= LD= CXX= LDFLAGS= CFLAGS= CXXFLAGS= \
|
||||
make -C tools/depends/native/$i
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
post_build() {
|
||||
# Rebuild for target
|
||||
if [ "$CROSS_BUILD" ]; then
|
||||
for i in JsonSchemaBuilder TexturePacker; do
|
||||
make -C tools/depends/native/$i clean all \
|
||||
CC="$CC" CXX="$CXX" LD="$LD" AR="$AR" RANLIB="$RANLIB" \
|
||||
CPP="$CPP" AS="$AS" OBJDUMP="$OBJDUMP" \
|
||||
CFLAGS="$CFLAGS" LDFLAGS="$LDFLAGS"
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
post_install() {
|
||||
# remove unused stuff
|
||||
rm -rf ${DESTDIR}/usr/include
|
||||
find ${DESTDIR}/usr/lib -name "*.cmake" -delete
|
||||
vsv xbmc-standalone
|
||||
}
|
||||
@@ -1 +0,0 @@
|
||||
pattern="\d+\.[\d.]+(?=-\w+\.tar\.gz)"
|
||||
7
srcpkgs/kodi/patches/fmt8-support.patch
Normal file
7
srcpkgs/kodi/patches/fmt8-support.patch
Normal file
@@ -0,0 +1,7 @@
|
||||
--- a/xbmc/utils/StringUtils.h 2021-02-19 02:17:59.000000000 +0400
|
||||
+++ b/xbmc/utils/StringUtils.h 2021-07-29 01:23:03.569130175 +0400
|
||||
@@ -39,0 +40,4 @@
|
||||
+#if FMT_VERSION >= 80000
|
||||
+#include <fmt/xchar.h>
|
||||
+#endif
|
||||
+
|
||||
@@ -1,7 +1,7 @@
|
||||
# Template file for 'kodi'
|
||||
pkgname=kodi
|
||||
version=19.0
|
||||
revision=2
|
||||
revision=3
|
||||
_codename="Matrix"
|
||||
wrksrc="xbmc-${version}-${_codename}"
|
||||
build_style=cmake
|
||||
@@ -156,3 +156,9 @@ kodi-devel_package() {
|
||||
vmove usr/share/kodi/cmake
|
||||
}
|
||||
}
|
||||
|
||||
kodi-rpi_package() {
|
||||
build_style=meta
|
||||
short_desc+=" (transitional dummy package)"
|
||||
depends="${sourcepkg}>=${version}_${revision}"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user