diff --git a/config/functions b/config/functions index c8306ffd85..fd3e678b7f 100644 --- a/config/functions +++ b/config/functions @@ -1042,6 +1042,7 @@ install_addon_images() { create_addon_xml() { local addon_xml addon_version addon_name provider_name requires requires_addonname requires_addonversion screenshots + local tmp_changelog addon_xml="$1/addon.xml" @@ -1065,11 +1066,14 @@ done fi if [ -f $PKG_DIR/changelog.txt ]; then + tmp_changelog="$(mktemp)" + cat ${PKG_DIR}/changelog.txt | xmlstarlet esc >"${tmp_changelog}" sed -e "/@PKG_ADDON_NEWS@/ \ { - r $PKG_DIR/changelog.txt + r ${tmp_changelog} d }" -i "$addon_xml" + rm -f "${tmp_changelog}" else sed -e "s|@PKG_ADDON_NEWS@||g" -i "$addon_xml" fi diff --git a/packages/addons/addon-depends/ffmpegx-depends/fdk-aac/package.mk b/packages/addons/addon-depends/ffmpegx-depends/fdk-aac/package.mk deleted file mode 100644 index 5e676d1560..0000000000 --- a/packages/addons/addon-depends/ffmpegx-depends/fdk-aac/package.mk +++ /dev/null @@ -1,12 +0,0 @@ -# SPDX-License-Identifier: GPL-2.0-or-later -# Copyright (C) 2017-present Team LibreELEC (https://libreelec.tv) - -PKG_NAME="fdk-aac" -PKG_VERSION="0.1.6" -PKG_SHA256="adbcd793e406e1b88b3c1c41382d49f8c27371485b823c0fdab69c9124fd2ce3" -PKG_LICENSE="other" -PKG_SITE="https://sourceforge.net/projects/opencore-amr/" -PKG_URL="https://github.com/mstorsjo/fdk-aac/archive/v${PKG_VERSION}.tar.gz" -PKG_DEPENDS_TARGET="toolchain" -PKG_LONGDESC="A standalone library of the Fraunhofer FDK AAC code from Android." -PKG_TOOLCHAIN="autotools" diff --git a/packages/addons/addon-depends/ffmpegx-depends/x264/package.mk b/packages/addons/addon-depends/ffmpegx-depends/x264/package.mk index 7b1f663d92..2f295e4b55 100644 --- a/packages/addons/addon-depends/ffmpegx-depends/x264/package.mk +++ b/packages/addons/addon-depends/ffmpegx-depends/x264/package.mk @@ -20,7 +20,6 @@ pre_configure_target() { if [ "$TARGET_ARCH" = "x86_64" ]; then export AS="$TOOLCHAIN/bin/nasm" - PKG_X264_ASM="--enable-asm" else PKG_X264_ASM="--disable-asm" fi diff --git a/packages/addons/addon-depends/ffmpegx/package.mk b/packages/addons/addon-depends/ffmpegx/package.mk index 6471c227a2..af24251ec5 100644 --- a/packages/addons/addon-depends/ffmpegx/package.mk +++ b/packages/addons/addon-depends/ffmpegx/package.mk @@ -7,7 +7,7 @@ PKG_SHA256="7afb163d6974693cdad742aa1224c33683c50845c67ee5ae35506efc631ac121" PKG_LICENSE="LGPLv2.1+" PKG_SITE="https://ffmpeg.org" PKG_URL="https://github.com/FFmpeg/FFmpeg/archive/n${PKG_VERSION}.tar.gz" -PKG_DEPENDS_TARGET="toolchain aom bzip2 fdk-aac libvorbis openssl opus x264 x265 zlib" +PKG_DEPENDS_TARGET="toolchain aom bzip2 gnutls libvorbis opus x264 zlib" PKG_LONGDESC="FFmpegx is an complete FFmpeg build to support encoding and decoding." PKG_BUILD_FLAGS="-gold" @@ -19,7 +19,7 @@ if [ "$KODIPLAYER_DRIVER" == "bcm2835-driver" ]; then fi if [ "$TARGET_ARCH" = "x86_64" ]; then - PKG_DEPENDS_TARGET+=" nasm:host" + PKG_DEPENDS_TARGET+=" nasm:host x265" fi if [[ ! $TARGET_ARCH = arm ]] || target_has_feature neon; then @@ -34,6 +34,11 @@ fi pre_configure_target() { cd $PKG_BUILD rm -rf .$TARGET_NAME + + # pass gnutls to build + PKG_CONFIG_PATH="$(get_build_dir gnutls)/.INSTALL_PKG/usr/lib/pkgconfig" + CFLAGS="$CFLAGS -I$(get_build_dir gnutls)/.INSTALL_PKG/usr/include" + LDFLAGS="$LDFLAGS -L$(get_build_dir gnutls)/.INSTALL_PKG/usr/lib" if [ "$KODIPLAYER_DRIVER" == "bcm2835-driver" ]; then CFLAGS="-DRPI=1 -I$SYSROOT_PREFIX/usr/include/IL -I$SYSROOT_PREFIX/usr/include/interface/vcos/pthreads -I$SYSROOT_PREFIX/usr/include/interface/vmcs_host/linux $CFLAGS" @@ -97,10 +102,9 @@ pre_configure_target() { --enable-encoder=libaom_av1 \ \ `#Audio encoders` \ + --enable-encoder=aac \ --enable-encoder=ac3 \ --enable-encoder=eac3 \ - --enable-libfdk-aac \ - --enable-encoder=libfdk-aac \ --enable-encoder=flac \ --enable-libmp3lame \ --enable-encoder=libmp3lame \ @@ -134,7 +138,7 @@ configure_target() { \ `#Licensing options` \ --enable-gpl \ - --enable-nonfree \ + --disable-nonfree \ \ `#Documentation options` \ --disable-doc \ @@ -171,7 +175,8 @@ configure_target() { --extra-ldflags="$LDFLAGS" \ --extra-libs="$PKG_FFMPEG_LIBS" \ --enable-pic \ - --enable-openssl \ + --enable-gnutls \ + --disable-openssl \ \ `#Advanced options` \ --disable-hardcoded-tables \ diff --git a/packages/addons/addon-depends/tvh-dtv-scan-tables/package.mk b/packages/addons/addon-depends/tvh-dtv-scan-tables/package.mk index 9718f8bc29..55ff74c5f2 100644 --- a/packages/addons/addon-depends/tvh-dtv-scan-tables/package.mk +++ b/packages/addons/addon-depends/tvh-dtv-scan-tables/package.mk @@ -2,8 +2,8 @@ # Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) PKG_NAME="tvh-dtv-scan-tables" -PKG_VERSION="421c08b31b24e0cd5d8fb54e6f3278a1ef9d3666" -PKG_SHA256="2377c0edec0997d320f121a8f7944b37935e0fd40249252d4098b7002df82693" +PKG_VERSION="68f86b42272fc364cdd53d7cfeaa2a78d676dbfa" +PKG_SHA256="2bb102094696bbaf440b9319a9e8a4c93e2ecbcf2d2c556fb719b1febf1a7d3b" PKG_LICENSE="GPL" PKG_SITE="https://github.com/tvheadend" PKG_URL="https://github.com/tvheadend/dtv-scan-tables/archive/$PKG_VERSION.tar.gz" diff --git a/packages/addons/service/tvheadend42/changelog.txt b/packages/addons/service/tvheadend42/changelog.txt index 0b30761331..ceffabb08c 100644 --- a/packages/addons/service/tvheadend42/changelog.txt +++ b/packages/addons/service/tvheadend42/changelog.txt @@ -1,3 +1,7 @@ +118 +- update to 4.2.7-44 +- fix tv_grab_file usage of & in urls + 117 - update to 4.2.7-34 - added hint to FRITZ!Box support (not needed anymore since FW 7.0) diff --git a/packages/addons/service/tvheadend42/package.mk b/packages/addons/service/tvheadend42/package.mk index df63d8ee88..ea2cc9af76 100644 --- a/packages/addons/service/tvheadend42/package.mk +++ b/packages/addons/service/tvheadend42/package.mk @@ -2,10 +2,10 @@ # Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv) PKG_NAME="tvheadend42" -PKG_VERSION="036b9cbab12ea9f76ea8ffd2d704163e5e43427c" -PKG_SHA256="adc1a74790aac532f8bf4a10e662ad30e55f1eb083fd690205e4ac2c26230627" -PKG_VERSION_NUMBER="4.2.7-34" -PKG_REV="117" +PKG_VERSION="5c218500579d5bd1c1f7e7a4b5f7f0fb35baa626" +PKG_SHA256="a9fe5a4c36aa185e3f0a73a709f0dc05794ae9c12f5d888985b559ff68a2508d" +PKG_VERSION_NUMBER="4.2.7-44" +PKG_REV="118" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="http://www.tvheadend.org" @@ -61,7 +61,7 @@ pre_configure_target() { --enable-bundle \ --disable-dbus_1 \ --enable-dvbcsa \ - --enable-dvben50221 \ + --disable-dvben50221 \ --disable-dvbscan \ --enable-hdhomerun_client \ --disable-hdhomerun_static \ @@ -86,6 +86,9 @@ pre_configure_target() { CFLAGS="$CFLAGS -I$(get_build_dir ffmpegx)/.INSTALL_PKG/usr/local/include" LDFLAGS="$LDFLAGS -L$(get_build_dir ffmpegx)/.INSTALL_PKG/usr/local/lib" +# pass gnutls to build + LDFLAGS="$LDFLAGS -L$(get_build_dir gnutls)/.INSTALL_PKG/usr/lib" + # pass libhdhomerun to build CFLAGS="$CFLAGS -I$(get_build_dir libhdhomerun)" @@ -106,6 +109,14 @@ addon() { cp $PKG_DIR/addon.xml $ADDON_BUILD/$PKG_ADDON_ID + # copy gnutls lib that is needed for ffmpeg + mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/lib + cp -PL $(get_build_dir gnutls)/.INSTALL_PKG/usr/lib/libgnutls.so.30 $ADDON_BUILD/$PKG_ADDON_ID/lib + cp -PL $(get_build_dir nettle)/.install_pkg/usr/lib/libnettle.so.6 $ADDON_BUILD/$PKG_ADDON_ID/lib + cp -PL $(get_build_dir nettle)/.install_pkg/usr/lib/libhogweed.so.4 $ADDON_BUILD/$PKG_ADDON_ID/lib + cp -PL $(get_build_dir libidn2)/.install_pkg/usr/lib/libidn2.so.4 $ADDON_BUILD/$PKG_ADDON_ID/lib + cp -PL $(get_build_dir gmp)/.install_pkg/usr/lib/libgmp.so.10 $ADDON_BUILD/$PKG_ADDON_ID/lib + # set only version (revision will be added by buildsystem) sed -e "s|@ADDON_VERSION@|$ADDON_VERSION|g" \ -i $ADDON_BUILD/$PKG_ADDON_ID/addon.xml @@ -114,7 +125,7 @@ addon() { cp -P $PKG_BUILD/capmt_ca.so $ADDON_BUILD/$PKG_ADDON_ID/bin cp -P $(get_build_dir comskip)/.install_pkg/usr/bin/comskip $ADDON_BUILD/$PKG_ADDON_ID/bin - #dvb-scan files + # dvb-scan files mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/dvb-scan cp -r $(get_build_dir tvh-dtv-scan-tables)/atsc \ $(get_build_dir tvh-dtv-scan-tables)/dvb-* \ diff --git a/packages/addons/service/tvheadend42/source/bin/tv_grab_file b/packages/addons/service/tvheadend42/source/bin/tv_grab_file index 27e7cc089a..fe1c58187c 100755 --- a/packages/addons/service/tvheadend42/source/bin/tv_grab_file +++ b/packages/addons/service/tvheadend42/source/bin/tv_grab_file @@ -13,12 +13,12 @@ then if [ "$XML_SETTINGS_VER" = "2" ]; then XMLTV_TYPE="$(xmlstarlet sel -t -v '/settings/setting[@id="XMLTV_TYPE"]' $ADDON_SETTINGS)" XMLTV_LOCATION_FILE="$(xmlstarlet sel -t -v '/settings/setting[@id="XMLTV_LOCATION_FILE"]' $ADDON_SETTINGS)" - XMLTV_LOCATION_WEB="$(xmlstarlet sel -t -v '/settings/setting[@id="XMLTV_LOCATION_WEB"]' $ADDON_SETTINGS)" + XMLTV_LOCATION_WEB="$(xmlstarlet sel -t -v '/settings/setting[@id="XMLTV_LOCATION_WEB"]' $ADDON_SETTINGS | xmlstarlet unesc)" XMLTV_LOCATION_SCRIPT="$(xmlstarlet sel -t -v '/settings/setting[@id="XMLTV_LOCATION_SCRIPT"]' $ADDON_SETTINGS)" else XMLTV_TYPE="$(xmlstarlet sel -t -m '/settings/setting[@id="XMLTV_TYPE"]' -v @value $ADDON_SETTINGS)" XMLTV_LOCATION_FILE="$(xmlstarlet sel -t -m '/settings/setting[@id="XMLTV_LOCATION_FILE"]' -v @value $ADDON_SETTINGS)" - XMLTV_LOCATION_WEB="$(xmlstarlet sel -t -m '/settings/setting[@id="XMLTV_LOCATION_WEB"]' -v @value $ADDON_SETTINGS)" + XMLTV_LOCATION_WEB="$(xmlstarlet sel -t -m '/settings/setting[@id="XMLTV_LOCATION_WEB"]' -v @value $ADDON_SETTINGS | xmlstarlet unesc)" XMLTV_LOCATION_SCRIPT="$(xmlstarlet sel -t -m '/settings/setting[@id="XMLTV_LOCATION_SCRIPT"]' -v @value $ADDON_SETTINGS)" fi diff --git a/packages/addons/tools/ffmpeg-tools/changelog.txt b/packages/addons/tools/ffmpeg-tools/changelog.txt index 472d86463e..349ed13ce1 100644 --- a/packages/addons/tools/ffmpeg-tools/changelog.txt +++ b/packages/addons/tools/ffmpeg-tools/changelog.txt @@ -1,3 +1,8 @@ +105 +- Removed FDK-AAC +- Build with GNUTLS +- Update AV1 to 2019-01-09 + 104 - Update aom to d2a592e - Update FFmpeg to 4.1 diff --git a/packages/addons/tools/ffmpeg-tools/package.mk b/packages/addons/tools/ffmpeg-tools/package.mk index 5f75961a12..4ae9c69c9b 100644 --- a/packages/addons/tools/ffmpeg-tools/package.mk +++ b/packages/addons/tools/ffmpeg-tools/package.mk @@ -3,7 +3,7 @@ PKG_NAME="ffmpeg-tools" PKG_VERSION="1.0" -PKG_REV="104" +PKG_REV="105" PKG_ARCH="any" PKG_LICENSE="GPL" PKG_SITE="https://libreelec.tv" @@ -20,4 +20,12 @@ PKG_ADDON_TYPE="xbmc.python.script" addon() { mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/bin/ cp -L $(get_build_dir ffmpegx)/.INSTALL_PKG/usr/local/bin/* $ADDON_BUILD/$PKG_ADDON_ID/bin + + # copy gnutls lib that is needed for ffmpeg + mkdir -p $ADDON_BUILD/$PKG_ADDON_ID/lib + cp -PL $(get_build_dir gmp)/.install_pkg/usr/lib/libgmp.so.10 $ADDON_BUILD/$PKG_ADDON_ID/lib + cp -PL $(get_build_dir gnutls)/.INSTALL_PKG/usr/lib/libgnutls.so.30 $ADDON_BUILD/$PKG_ADDON_ID/lib + cp -PL $(get_build_dir libidn2)/.install_pkg/usr/lib/libidn2.so.4 $ADDON_BUILD/$PKG_ADDON_ID/lib + cp -PL $(get_build_dir nettle)/.install_pkg/usr/lib/libhogweed.so.4 $ADDON_BUILD/$PKG_ADDON_ID/lib + cp -PL $(get_build_dir nettle)/.install_pkg/usr/lib/libnettle.so.6 $ADDON_BUILD/$PKG_ADDON_ID/lib } diff --git a/packages/compress/xz/package.mk b/packages/compress/xz/package.mk index b0ef00e305..0974846d8d 100644 --- a/packages/compress/xz/package.mk +++ b/packages/compress/xz/package.mk @@ -10,6 +10,7 @@ PKG_SITE="http://tukaani.org/xz/" PKG_URL="http://tukaani.org/xz/$PKG_NAME-$PKG_VERSION.tar.bz2" PKG_DEPENDS_HOST="ccache:host" PKG_LONGDESC="A free general-purpose data compression software with high compression ratio." +PKG_BUILD_FLAGS="+pic" # never build shared or k0p happens when building # on fedora due to host selinux/liblzma diff --git a/packages/multimedia/aom/package.mk b/packages/multimedia/aom/package.mk index 9533e24a69..641c2222cd 100644 --- a/packages/multimedia/aom/package.mk +++ b/packages/multimedia/aom/package.mk @@ -2,8 +2,8 @@ # Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) PKG_NAME="aom" -PKG_VERSION="9284af62c37d62117c007d100e0442f144220ab8" -PKG_SHA256="86599f93ac375b21b2cc8fea3b5c1dac4d4b86a72eda0771c2b214435d49a4d3" +PKG_VERSION="06e2c4fa33edb7f27702fbe2ad2311622da956b4" +PKG_SHA256="9c4d7943de97af0153a38151f40c7a926f331d4a3b7dceea4e179173ce51c654" PKG_LICENSE="BSD" PKG_SITE="https://www.webmproject.org" PKG_URL="http://repo.or.cz/aom.git/snapshot/${PKG_VERSION}.tar.gz" diff --git a/packages/security/gnutls/package.mk b/packages/security/gnutls/package.mk new file mode 100644 index 0000000000..4eaf98ecb6 --- /dev/null +++ b/packages/security/gnutls/package.mk @@ -0,0 +1,30 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv) +# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) + +PKG_NAME="gnutls" +PKG_VERSION="3.6.5" +PKG_SHA256="073eced3acef49a3883e69ffd5f0f0b5f46e2760ad86eddc6c0866df4e7abb35" +PKG_LICENSE="LGPL2.1" +PKG_SITE="https://gnutls.org" +PKG_URL="https://www.gnupg.org/ftp/gcrypt/gnutls/v${PKG_VERSION%.*}/gnutls-$PKG_VERSION.tar.xz" +PKG_DEPENDS_TARGET="toolchain libidn2 nettle zlib" +PKG_LONGDESC="A library which provides a secure layer over a reliable transport layer." + +PKG_CONFIGURE_OPTS_TARGET="--disable-doc \ + --disable-full-test-suite \ + --disable-guile \ + --disable-libdane \ + --disable-padlock \ + --disable-tests \ + --disable-tools \ + --disable-valgrind-tests \ + --enable-local-libopts \ + --with-idn \ + --with-included-libtasn1 \ + --with-included-unistring \ + --without-p11-kit \ + --without-tpm" +makeinstall_target() { + make install DESTDIR="$INSTALL/../.INSTALL_PKG" +} diff --git a/packages/security/nettle/package.mk b/packages/security/nettle/package.mk new file mode 100644 index 0000000000..459d976d0d --- /dev/null +++ b/packages/security/nettle/package.mk @@ -0,0 +1,23 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# Copyright (C) 2009-2014 Stephan Raue (stephan@openelec.tv) +# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) + +PKG_NAME="nettle" +PKG_VERSION="3.4.1" +PKG_SHA256="f941cf1535cd5d1819be5ccae5babef01f6db611f9b5a777bae9c7604b8a92ad" +PKG_LICENSE="GPL2" +PKG_SITE="http://www.lysator.liu.se/~nisse/nettle" +PKG_URL="http://ftpmirror.gnu.org/gnu/nettle/nettle-$PKG_VERSION.tar.gz" +PKG_DEPENDS_TARGET="toolchain gmp" +PKG_LONGDESC="A low-level cryptographic library." + +PKG_CONFIGURE_OPTS_TARGET="--disable-documentation \ + --disable-openssl" + +if target_has_feature neon; then + PKG_CONFIGURE_OPTS_TARGET+=" --enable-arm-neon" +fi + +post_makeinstall_target() { + rm -rf $INSTALL/usr/bin +} diff --git a/packages/textproc/libidn2/package.mk b/packages/textproc/libidn2/package.mk new file mode 100644 index 0000000000..95e8b46f2b --- /dev/null +++ b/packages/textproc/libidn2/package.mk @@ -0,0 +1,11 @@ +# SPDX-License-Identifier: GPL-2.0-or-later +# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv) + +PKG_NAME="libidn2" +PKG_VERSION="2.1.0" +PKG_SHA256="032398dbaa9537af43f51a8d94e967e3718848547b1b2a4eb3138b20cad11d32" +PKG_LICENSE="LGPL3" +PKG_SITE="https://www.gnu.org/software/libidn/" +PKG_URL="http://ftpmirror.gnu.org/gnu/libidn/libidn2-$PKG_VERSION.tar.gz" +PKG_DEPENDS_TARGET="toolchain" +PKG_LONGDESC="Free software implementation of IDNA2008, Punycode and TR46."