aboutsummaryrefslogtreecommitdiff
path: root/multimedia
diff options
context:
space:
mode:
authorPhilip van der Hoeven <philip@vd-hoeven.nl>2016-08-04 18:50:31 +0700
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2016-08-04 18:50:31 +0700
commit3ddc72a78693994c4e30780b8689d1a5bcf2f936 (patch)
tree710ca7ed66d567bec99c019321e5300642d18aa4 /multimedia
parent4ecd2ff5027a2f233aa12274ea2b8627061c814f (diff)
multimedia/OpenPHT: Added (Plex client).
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'multimedia')
-rw-r--r--multimedia/OpenPHT/OpenPHT7
-rw-r--r--multimedia/OpenPHT/OpenPHT.SlackBuild126
-rw-r--r--multimedia/OpenPHT/OpenPHT.desktop10
-rw-r--r--multimedia/OpenPHT/OpenPHT.info10
-rw-r--r--multimedia/OpenPHT/OpenPHT_512x512.pngbin0 -> 330319 bytes
-rw-r--r--multimedia/OpenPHT/README6
-rw-r--r--multimedia/OpenPHT/doinst.sh9
-rw-r--r--multimedia/OpenPHT/fix32bit.patch39
-rw-r--r--multimedia/OpenPHT/fribidi.patch47
-rw-r--r--multimedia/OpenPHT/slack-desc19
10 files changed, 273 insertions, 0 deletions
diff --git a/multimedia/OpenPHT/OpenPHT b/multimedia/OpenPHT/OpenPHT
new file mode 100644
index 0000000000000..6c4d5b4453fcc
--- /dev/null
+++ b/multimedia/OpenPHT/OpenPHT
@@ -0,0 +1,7 @@
+#!/bin/sh
+
+# disable PulseAudio
+export AE_ENGINE=Soft
+
+export XBMC_HOME=/opt/OpenPHT/share/XBMC
+exec /opt/OpenPHT/bin/plexhometheater
diff --git a/multimedia/OpenPHT/OpenPHT.SlackBuild b/multimedia/OpenPHT/OpenPHT.SlackBuild
new file mode 100644
index 0000000000000..db10fb31c49ca
--- /dev/null
+++ b/multimedia/OpenPHT/OpenPHT.SlackBuild
@@ -0,0 +1,126 @@
+#!/bin/sh
+
+# Slackware build script for "OpenPHT"
+
+# Copyright 2014-2015 Marcel Saegebarth <marc@mos6581.de>
+# Copyright 2016 Philip van der Hoeven, Almere, The Netherlands
+# All rights reserved.
+#
+# Redistribution and use in source and binary forms, with or without
+# modification, are permitted provided that the following conditions are
+# met:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+PRGNAM=OpenPHT
+VERSION=${VERSION:-1.6.2.123}
+REV=${REV:-e23a7eef}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i586 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i586" ]; then
+ SLKCFLAGS="-O2 -march=i586 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION-$REV
+tar xvf $CWD/$PRGNAM-$VERSION-$REV.tar.gz || tar xvf $CWD/v$VERSION-$REV.tar.gz
+cd $PRGNAM-$VERSION-$REV
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+# Fix 32bit build
+# patch -p1 < $CWD/fix32bit.patch
+
+# Find fribidi-0.19.7
+# https://raw.githubusercontent.com/foux/fouxlay/master/media-tv/plex-home-theater/files/fribidi.patch
+patch -p1 < $CWD/fribidi.patch
+
+mkdir build
+cd build
+
+cmake \
+ -DCMAKE_C_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_CXX_FLAGS="$SLKCFLAGS" \
+ -DCMAKE_INSTALL_PREFIX=/opt/$PRGNAM \
+ -DCMAKE_BUILD_TYPE=Release \
+ -DENABLE_AUTOUPDATE='FALSE' \
+ -DENABLE_DUMP_SYMBOLS='FALSE' \
+ -DENABLE_PYTHON='TRUE' \
+ -DUSE_INTERNAL_FFMPEG='TRUE' \
+ -DCREATE_BUNDLE='FALSE' \
+ -DENABLE_SHAIRPLAY=off \
+ ..
+
+# internal ffmpeg version doesn't build with multiple jobs
+make -j1
+make install DESTDIR=$PKG
+
+cd ..
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/bin
+install -D -m 0755 $CWD/OpenPHT $PKG/usr/bin
+
+mkdir -p $PKG/usr/share/applications
+install -D -m 0644 $CWD/$PRGNAM.desktop $PKG/usr/share/applications
+
+mkdir -p $PKG/usr/share/pixmaps
+install -D -m 0644 $CWD/${PRGNAM}_512x512.png $PKG/usr/share/pixmaps
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a CONTRIBUTORS LICENSE.GPL README README-BUILD-PLEX.md docs/README.* \
+ $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/multimedia/OpenPHT/OpenPHT.desktop b/multimedia/OpenPHT/OpenPHT.desktop
new file mode 100644
index 0000000000000..7200e1441c664
--- /dev/null
+++ b/multimedia/OpenPHT/OpenPHT.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=OpenPHT - Plex Home Theater
+GenericName=Media Center
+Comment=OpenPHT - Plex Home Theater
+Exec=OpenPHT
+StartupNotify=true
+Terminal=false
+Type=Application
+Icon=/usr/share/pixmaps/OpenPHT_512x512.png
+Categories=Audio;Music;Video;Player;Media;
diff --git a/multimedia/OpenPHT/OpenPHT.info b/multimedia/OpenPHT/OpenPHT.info
new file mode 100644
index 0000000000000..52bdc4e3639a9
--- /dev/null
+++ b/multimedia/OpenPHT/OpenPHT.info
@@ -0,0 +1,10 @@
+PRGNAM="OpenPHT"
+VERSION="1.6.2.123"
+HOMEPAGE="https://github.com/RasPlex/OpenPHT"
+DOWNLOAD="https://github.com/RasPlex/OpenPHT/archive/v1.6.2.123-e23a7eef.tar.gz"
+MD5SUM="075d697793b32d34c9ac57b94ae14821"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES="yajl libmicrohttpd tinyxml avahi libmpeg2 libass rtmpdump libmodplug lame openjdk libcec"
+MAINTAINER="Philip van der Hoeven"
+EMAIL="philip@vd-hoeven.nl"
diff --git a/multimedia/OpenPHT/OpenPHT_512x512.png b/multimedia/OpenPHT/OpenPHT_512x512.png
new file mode 100644
index 0000000000000..89f68bb64838e
--- /dev/null
+++ b/multimedia/OpenPHT/OpenPHT_512x512.png
Binary files differ
diff --git a/multimedia/OpenPHT/README b/multimedia/OpenPHT/README
new file mode 100644
index 0000000000000..5c581bf1eaad7
--- /dev/null
+++ b/multimedia/OpenPHT/README
@@ -0,0 +1,6 @@
+
+Plex Home Theater is optimized for the big screen and supports
+a wide variety of formats with high-definition audio, native
+framerates, and more.
+
+(Some) Optional dependencies: libbluray libcec libnfs
diff --git a/multimedia/OpenPHT/doinst.sh b/multimedia/OpenPHT/doinst.sh
new file mode 100644
index 0000000000000..3e5691a052b5b
--- /dev/null
+++ b/multimedia/OpenPHT/doinst.sh
@@ -0,0 +1,9 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
+
+if [ -e usr/share/icons/hicolor/icon-theme.cache ]; then
+ if [ -x /usr/bin/gtk-update-icon-cache ]; then
+ /usr/bin/gtk-update-icon-cache usr/share/icons/hicolor >/dev/null 2>&1
+ fi
+fi
diff --git a/multimedia/OpenPHT/fix32bit.patch b/multimedia/OpenPHT/fix32bit.patch
new file mode 100644
index 0000000000000..4b5bc5fcc9209
--- /dev/null
+++ b/multimedia/OpenPHT/fix32bit.patch
@@ -0,0 +1,39 @@
+From 0b36ed455bbffc19404095b568572e924d428316 Mon Sep 17 00:00:00 2001
+From: Jonas Karlman <jonas@kwiboo.se>
+Date: Sat, 2 Jul 2016 19:25:52 +0200
+Subject: [PATCH] Fix build on 32-bit linux
+
+---
+ lib/ffmpeg/CMakeLists.txt | 2 +-
+ plex/CMakeModules/PlatformConfigLINUX.cmake | 5 +++++
+ 2 files changed, 6 insertions(+), 1 deletion(-)
+
+diff --git a/lib/ffmpeg/CMakeLists.txt b/lib/ffmpeg/CMakeLists.txt
+index 3ea8fbc..ed3e745 100644
+--- a/lib/ffmpeg/CMakeLists.txt
++++ b/lib/ffmpeg/CMakeLists.txt
+@@ -13,7 +13,7 @@ if(TARGET_FREEBSD)
+ set(CONFIG_FLAGS --target-os=${OS} --cc=${CMAKE_C_COMPILER} --cxx=${CMAKE_CXX_COMPILER} --extra-cflags=-I${CMAKE_PREFIX_PATH}/include --extra-ldflags=-L${CMAKE_PREFIX_PATH}/lib --disable-altivec --disable-amd3dnow --disable-avisynth --disable-crystalhd --disable-debug --disable-decoder=mpeg_xvmc --disable-devices --disable-doc --disable-dxva2 --disable-encoders --disable-extra-warnings --disable-ffmpeg --disable-ffplay --disable-ffprobe --disable-ffserver --disable-frei0r --disable-gray --disable-hardcoded-tables --disable-indevs --disable-iwmmxt --disable-libdc1394 --disable-libdirac --disable-libfaac --disable-libfreetype --disable-libgsm --disable-libmp3lame --disable-libnut --disable-libopencore-amrnb --disable-libopencore-amrwb --disable-libopencv --disable-libopenjpeg --disable-librtmp --disable-libschroedinger --disable-libspeex --disable-libtheora --disable-libvo-aacenc --disable-libvo-amrwbenc --disable-libvorbis --disable-libvpx --disable-libx264 --disable-libxavs --disable-libxvid --disable-memalign-hack --disable-mlib --disable-mmi --disable-muxers --disable-nonfree --disable-outdevs --disable-small --disable-sram --disable-static --disable-symver --disable-vda --disable-version3 --disable-vis --disable-w32threads --disable-x11grab --enable-aandct --enable-asm --enable-avcodec --enable-avdevice --enable-avfilter --enable-avformat --enable-bsfs --enable-bzlib --enable-dct --enable-demuxers --enable-fastdiv --enable-fft --enable-filters --enable-golomb --enable-gpl --enable-huffman --enable-hwaccels --enable-libvorbis --enable-logging --enable-lpc --enable-mdct --enable-muxer=adts --enable-muxer=ogg --enable-muxer=spdif --enable-network --enable-optimizations --enable-parsers --enable-pic --enable-postproc --enable-protocol=http --enable-pthreads --enable-rdft --enable-runtime-cpudetect --enable-shared --enable-stripping --enable-swscale --enable-swscale-alpha --enable-vaapi --enable-vdpau --enable-yasm --enable-zlib --host-libs=-lm)
+ elseif(NOT TARGET_RPI)
+ # TODO: --enable-libdcadec
+- set(CONFIG_FLAGS --target-os=${OS} --cc=${CMAKE_C_COMPILER} --cxx=${CMAKE_CXX_COMPILER} --sysinclude="${CMAKE_PREFIX_PATH}/usr/include" --arch=${ARCH} --enable-pic --enable-shared --disable-static --disable-debug --disable-muxers --disable-encoders --disable-devices --disable-doc --disable-ffplay --disable-ffmpeg --disable-sdl --disable-ffprobe --disable-ffserver --enable-gpl --enable-runtime-cpudetect --enable-postproc --enable-pthreads --enable-muxer=spdif --enable-muxer=adts --enable-muxer=asf --enable-muxer=ipod --enable-encoder=ac3 --enable-encoder=aac --enable-protocol=http --enable-protocol=https --enable-gnutls --enable-vdpau --enable-vaapi --enable-libvorbis --enable-muxer=ogg --enable-encoder=libvorbis)
++ set(CONFIG_FLAGS --target-os=${OS} --cc=${CMAKE_C_COMPILER} --cxx=${CMAKE_CXX_COMPILER} --sysinclude="${CMAKE_PREFIX_PATH}/usr/include" --cpu=${CMAKE_SYSTEM_PROCESSOR} --enable-pic --enable-shared --disable-static --disable-debug --disable-muxers --disable-encoders --disable-devices --disable-doc --disable-ffplay --disable-ffmpeg --disable-sdl --disable-ffprobe --disable-ffserver --enable-gpl --enable-runtime-cpudetect --enable-postproc --enable-pthreads --enable-muxer=spdif --enable-muxer=adts --enable-muxer=asf --enable-muxer=ipod --enable-encoder=ac3 --enable-encoder=aac --enable-protocol=http --enable-protocol=https --enable-gnutls --enable-vdpau --enable-vaapi --enable-libvorbis --enable-muxer=ogg --enable-encoder=libvorbis)
+ else()
+ set(CONFIG_FLAGS --target-os=${OS} --disable-muxers --disable-encoders --disable-devices --disable-doc --disable-ffplay --disable-ffmpeg --disable-ffprobe --disable-ffserver --disable-vda --disable-crystalhd --disable-decoder=mpeg_xvmc --disable-debug --disable-amd3dnow --disable-libvorbis --enable-gpl --enable-postproc --enable-shared --disable-static --enable-pthreads --enable-muxer=spdif --enable-muxer=adts --enable-encoder=ac3 --enable-encoder=aac --enable-protocol=http --enable-runtime-cpudetect)
+
+diff --git a/plex/CMakeModules/PlatformConfigLINUX.cmake b/plex/CMakeModules/PlatformConfigLINUX.cmake
+index 0ba1a81..994ad2c 100644
+--- a/plex/CMakeModules/PlatformConfigLINUX.cmake
++++ b/plex/CMakeModules/PlatformConfigLINUX.cmake
+@@ -169,6 +169,11 @@ if(${CMAKE_HOST_SYSTEM_PROCESSOR} STREQUAL "x86_64")
+ set(ARCH "x86_64-linux")
+ else()
+ set(ARCH "i486-linux")
++ if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU")
++ if(CMAKE_CXX_COMPILER_VERSION VERSION_GREATER 4.8)
++ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -msse")
++ endif()
++ endif()
+ endif()
+
+ ## remove annying useless warnings
diff --git a/multimedia/OpenPHT/fribidi.patch b/multimedia/OpenPHT/fribidi.patch
new file mode 100644
index 0000000000000..3b135bdfc3ca3
--- /dev/null
+++ b/multimedia/OpenPHT/fribidi.patch
@@ -0,0 +1,47 @@
+--- a/plex/CMakeModules/FindFriBiDi.cmake
++++ b/plex/CMakeModules/FindFriBiDi.cmake
+@@ -10,43 +10,9 @@
+ # FRIBIDI_LIBRARY, where to find the FriBiDi library.
+
+ include(CheckSymbolExists)
++include(FindPkgConfig)
++pkg_check_modules(FRIBIDI fribidi)
+
+-SET(FRIBIDI_FOUND "NO")
+-
+-# Set variable in temp var, otherwise FIND_PATH might fail
+-# unset isn't present in the required version of cmake.
+-FIND_PATH(xFRIBIDI_INCLUDE_DIR fribidi.h
+- PATHS /usr/local/include
+- /usr/include
+- PATH_SUFFIXES fribidi
+- )
+-set(FRIBIDI_INCLUDE_DIR ${xFRIBIDI_INCLUDE_DIR})
+-
+-SET(FRIBIDI_NAMES ${FRIBIDI_NAMES} fribidi libfribidi)
+-FIND_LIBRARY(FRIBIDI_LIBRARY
+- NAMES ${FRIBIDI_NAMES}
+- PATHS /usr/lib /usr/local/lib
+- )
+-
+-IF (FRIBIDI_LIBRARY AND FRIBIDI_INCLUDE_DIR)
+- SET(CMAKE_REQUIRED_INCLUDES ${FRIBIDI_INCLUDE_DIR})
+- SET(CMAKE_REQUIRED_LIBRARIES ${FRIBIDI_LIBRARY})
+- CHECK_SYMBOL_EXISTS(fribidi_utf8_to_unicode fribidi.h FOUND_fribidi_utf8_to_unicode)
+- CHECK_SYMBOL_EXISTS(fribidi_charset_to_unicode fribidi.h FOUND_fribidi_charset_to_unicode)
+- if(FOUND_fribidi_charset_to_unicode)
+- SET(FRIBIDI_LIBRARIES ${FRIBIDI_LIBRARY})
+- SET(FRIBIDI_FOUND "YES")
+- elseif(FOUND_fribidi_utf8_to_unicode)
+- SET(FRIBIDI_LIBRARIES ${FRIBIDI_LIBRARY})
+- SET(FRIBIDI_FOUND "YES")
+- add_definitions(-DOLD_FRIBIDI)
+- MESSAGE(STATUS "Legacy FriBiDi: ${FRIBIDI_LIBRARY}")
+- else()
+- SET(FRIBIDI_LIBRARIES "NOTFOUND")
+- SET(FRIBIDI_INCLUDE_DIR "NOTFOUND")
+- SET(FRIBIDI_FOUND "NO")
+- endif()
+-ENDIF (FRIBIDI_LIBRARY AND FRIBIDI_INCLUDE_DIR)
+
+ IF (FRIBIDI_FOUND)
diff --git a/multimedia/OpenPHT/slack-desc b/multimedia/OpenPHT/slack-desc
new file mode 100644
index 0000000000000..1bf3791fe0560
--- /dev/null
+++ b/multimedia/OpenPHT/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+OpenPHT: OpenPHT (Plex client)
+OpenPHT:
+OpenPHT: OpenPHT is a fork of Plex Home Theater maintained by the folks
+OpenPHT: behind RasPlex.
+OpenPHT:
+OpenPHT: Homepage: https://github.com/RasPlex/OpenPHT
+OpenPHT:
+OpenPHT:
+OpenPHT:
+OpenPHT:
+OpenPHT: