freebsd-ports/multimedia/plexhometheater/Makefile

138 lines
4.4 KiB
Makefile
Raw Normal View History

# $FreeBSD$
PORTNAME= plexhometheater
Upgrade multimedia/plexhometheater to v1.2.2 The attached patch upgrades multimedia/plexhometheater to v1.2.2. In addition, it removes the LIBDEPENDS on audio/lame and java as neither are actually used by plexhometheater, and adds a pkg-message to explain how to run plexhometheater from the command line when the package is installed. --- Plexhometheater is unable to play videos, with some of the following error messages appearing in the logs depending on the codec of the video being played. ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_h264dsp_init_x86" ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_mlp_init_x86" This is similar to PR181964 filed previously for multimedia/gstreamer-ffmpeg https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=181964 This issue is caused as during port build some variables not defined in MAKE_ENV/MAKE_ARGS are leaked to do-build target via .MAKEFLAGS rule in bsd.port.mk. According to make(1) man page variable assignments in MAKEFLAGS are treated as those on command line which means they override assignments in Makefiles. Unfortunately, this breaks building arch-specific code for libavcodec as $(ARCH) in config.mak is no longer honored. Fix: Rename the variable from ARCH to FFMPEG_ARCH, as is done in multimedia/ffmpeg. --- Add binutils as builddep on FreeBSD8 and use cmake compiler in ffmpeg configure --- Plexhometheater will fail to build from ports if ffmpeg is already installed on the system (via ports or package). --- Plexhometheater crashes at launch with: ERROR: Unable to create application. Exiting Segmentation fault (core dumped) FROM LOGS: ERROR: Unable to load /usr/local/bin/system/libcpluff-x86_64-freebsd.so, reason: Cannot open "/usr/local/bin/system/libcpluff-x86_64-freebsd.so PR: 193547, 193282, 193190, 193189, 193188 Submitted by: Ben Woods (maintainer)
2014-09-13 18:58:31 +02:00
PORTVERSION= 1.2.2
2015-01-19 20:33:21 +01:00
PORTREVISION= 7
CATEGORIES= multimedia
MAINTAINER= woodsb02@gmail.com
COMMENT= Media center frontend to multimedia/plexmediaserver
LICENSE= GPLv2
BUILD_DEPENDS= enca:${PORTSDIR}/converters/enca \
gawk:${PORTSDIR}/lang/gawk \
gperf:${PORTSDIR}/devel/gperf \
cmake:${PORTSDIR}/devel/cmake \
gmake:${PORTSDIR}/devel/gmake \
zip:${PORTSDIR}/archivers/zip \
unzip:${PORTSDIR}/archivers/unzip \
nasm:${PORTSDIR}/devel/nasm \
gtk-update-icon-cache:${PORTSDIR}/x11-toolkits/gtk20 \
swig2.0:${PORTSDIR}/devel/swig20
LIB_DEPENDS= libass.so:${PORTSDIR}/multimedia/libass \
libavahi-client.so:${PORTSDIR}/net/avahi-app \
libboost_thread.so:${PORTSDIR}/devel/boost-libs \
libcdio.so:${PORTSDIR}/sysutils/libcdio \
libcurl.so:${PORTSDIR}/ftp/curl \
libdbus-1.so:${PORTSDIR}/devel/dbus \
libenca.so:${PORTSDIR}/converters/enca \
libFLAC.so:${PORTSDIR}/audio/flac \
libfontconfig.so:${PORTSDIR}/x11-fonts/fontconfig \
libfreetype.so:${PORTSDIR}/print/freetype2 \
libfribidi.so:${PORTSDIR}/converters/fribidi \
libGLEW.so:${PORTSDIR}/graphics/glew \
libhal.so:${PORTSDIR}/sysutils/hal \
libjasper.so:${PORTSDIR}/graphics/jasper \
libjpeg.so:${PORTSDIR}/graphics/jpeg \
liblzo2.so:${PORTSDIR}/archivers/lzo2 \
libmad.so:${PORTSDIR}/audio/libmad \
libmicrohttpd.so:${PORTSDIR}/www/libmicrohttpd \
libmodplug.so:${PORTSDIR}/audio/libmodplug \
libmpeg2.so:${PORTSDIR}/multimedia/libmpeg2 \
libpcre.so:${PORTSDIR}/devel/pcre \
libplist.so:${PORTSDIR}/devel/libplist \
libpng.so:${PORTSDIR}/graphics/png \
librtmp.so:${PORTSDIR}/multimedia/librtmp \
libsamplerate.so:${PORTSDIR}/audio/libsamplerate \
libshairport.so:${PORTSDIR}/audio/libshairport \
libsqlite3.so:${PORTSDIR}/databases/sqlite3 \
libtag.so:${PORTSDIR}/audio/taglib \
libtiff.so:${PORTSDIR}/graphics/tiff \
libtinyxml.so:${PORTSDIR}/textproc/tinyxml \
libva.so:${PORTSDIR}/multimedia/libva \
libvdpau.so:${PORTSDIR}/multimedia/libvdpau \
libvorbis.so:${PORTSDIR}/audio/libvorbis \
libxslt.so:${PORTSDIR}/textproc/libxslt \
libyajl.so:${PORTSDIR}/devel/yajl \
libexecinfo.so:${PORTSDIR}/devel/libexecinfo
RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}sqlite3>0:${PORTSDIR}/databases/py-sqlite3 \
glxinfo:${PORTSDIR}/graphics/mesa-demos \
${PYTHON_PKGNAMEPREFIX}pillow>0:${PORTSDIR}/graphics/py-pillow \
xdpyinfo:${PORTSDIR}/x11/xdpyinfo
USE_GITHUB= yes
GH_ACCOUNT= plexinc
GH_PROJECT= plex-home-theater-public
Upgrade multimedia/plexhometheater to v1.2.2 The attached patch upgrades multimedia/plexhometheater to v1.2.2. In addition, it removes the LIBDEPENDS on audio/lame and java as neither are actually used by plexhometheater, and adds a pkg-message to explain how to run plexhometheater from the command line when the package is installed. --- Plexhometheater is unable to play videos, with some of the following error messages appearing in the logs depending on the codec of the video being played. ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_h264dsp_init_x86" ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_mlp_init_x86" This is similar to PR181964 filed previously for multimedia/gstreamer-ffmpeg https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=181964 This issue is caused as during port build some variables not defined in MAKE_ENV/MAKE_ARGS are leaked to do-build target via .MAKEFLAGS rule in bsd.port.mk. According to make(1) man page variable assignments in MAKEFLAGS are treated as those on command line which means they override assignments in Makefiles. Unfortunately, this breaks building arch-specific code for libavcodec as $(ARCH) in config.mak is no longer honored. Fix: Rename the variable from ARCH to FFMPEG_ARCH, as is done in multimedia/ffmpeg. --- Add binutils as builddep on FreeBSD8 and use cmake compiler in ffmpeg configure --- Plexhometheater will fail to build from ports if ffmpeg is already installed on the system (via ports or package). --- Plexhometheater crashes at launch with: ERROR: Unable to create application. Exiting Segmentation fault (core dumped) FROM LOGS: ERROR: Unable to load /usr/local/bin/system/libcpluff-x86_64-freebsd.so, reason: Cannot open "/usr/local/bin/system/libcpluff-x86_64-freebsd.so PR: 193547, 193282, 193190, 193189, 193188 Submitted by: Ben Woods (maintainer)
2014-09-13 18:58:31 +02:00
GH_COMMIT= 2d6426d
GH_TAGNAME= pht-v1.2.2
2015-01-19 20:33:21 +01:00
BUNDLE_LIBS= yes
USES= cmake:outsource iconv:wchar_t pkgconfig python:2
CMAKE_ARGS+= -DENABLE_AUTOUPDATE:BOOL=false
CMAKE_ARGS+= -DENABLE_DUMP_SYMBOLS:BOOL=false
CMAKE_ARGS+= -DENABLE_PYTHON:BOOL=false
CMAKE_ARGS+= -DUSE_INTERNAL_FFMPEG:BOOL=true
CMAKE_ARGS+= -DCREATE_BUNDLE:BOOL=false
CMAKE_ARGS+= -DCMAKE_PREFIX_PATH=${LOCALBASE}
Upgrade multimedia/plexhometheater to v1.2.2 The attached patch upgrades multimedia/plexhometheater to v1.2.2. In addition, it removes the LIBDEPENDS on audio/lame and java as neither are actually used by plexhometheater, and adds a pkg-message to explain how to run plexhometheater from the command line when the package is installed. --- Plexhometheater is unable to play videos, with some of the following error messages appearing in the logs depending on the codec of the video being played. ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_h264dsp_init_x86" ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_mlp_init_x86" This is similar to PR181964 filed previously for multimedia/gstreamer-ffmpeg https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=181964 This issue is caused as during port build some variables not defined in MAKE_ENV/MAKE_ARGS are leaked to do-build target via .MAKEFLAGS rule in bsd.port.mk. According to make(1) man page variable assignments in MAKEFLAGS are treated as those on command line which means they override assignments in Makefiles. Unfortunately, this breaks building arch-specific code for libavcodec as $(ARCH) in config.mak is no longer honored. Fix: Rename the variable from ARCH to FFMPEG_ARCH, as is done in multimedia/ffmpeg. --- Add binutils as builddep on FreeBSD8 and use cmake compiler in ffmpeg configure --- Plexhometheater will fail to build from ports if ffmpeg is already installed on the system (via ports or package). --- Plexhometheater crashes at launch with: ERROR: Unable to create application. Exiting Segmentation fault (core dumped) FROM LOGS: ERROR: Unable to load /usr/local/bin/system/libcpluff-x86_64-freebsd.so, reason: Cannot open "/usr/local/bin/system/libcpluff-x86_64-freebsd.so PR: 193547, 193282, 193190, 193189, 193188 Submitted by: Ben Woods (maintainer)
2014-09-13 18:58:31 +02:00
CFLAGS+= -isystem${LOCALBASE}/include
LDFLAGS+= -L${LOCALBASE}/lib
USE_XORG= xt xmu xtst xrandr
USE_GL= glu
USE_SDL= image sdl mixer
INSTALLS_ICONS= yes
ONLY_FOR_ARCHS= i386 amd64
Upgrade multimedia/plexhometheater to v1.2.2 The attached patch upgrades multimedia/plexhometheater to v1.2.2. In addition, it removes the LIBDEPENDS on audio/lame and java as neither are actually used by plexhometheater, and adds a pkg-message to explain how to run plexhometheater from the command line when the package is installed. --- Plexhometheater is unable to play videos, with some of the following error messages appearing in the logs depending on the codec of the video being played. ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_h264dsp_init_x86" ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_mlp_init_x86" This is similar to PR181964 filed previously for multimedia/gstreamer-ffmpeg https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=181964 This issue is caused as during port build some variables not defined in MAKE_ENV/MAKE_ARGS are leaked to do-build target via .MAKEFLAGS rule in bsd.port.mk. According to make(1) man page variable assignments in MAKEFLAGS are treated as those on command line which means they override assignments in Makefiles. Unfortunately, this breaks building arch-specific code for libavcodec as $(ARCH) in config.mak is no longer honored. Fix: Rename the variable from ARCH to FFMPEG_ARCH, as is done in multimedia/ffmpeg. --- Add binutils as builddep on FreeBSD8 and use cmake compiler in ffmpeg configure --- Plexhometheater will fail to build from ports if ffmpeg is already installed on the system (via ports or package). --- Plexhometheater crashes at launch with: ERROR: Unable to create application. Exiting Segmentation fault (core dumped) FROM LOGS: ERROR: Unable to load /usr/local/bin/system/libcpluff-x86_64-freebsd.so, reason: Cannot open "/usr/local/bin/system/libcpluff-x86_64-freebsd.so PR: 193547, 193282, 193190, 193189, 193188 Submitted by: Ben Woods (maintainer)
2014-09-13 18:58:31 +02:00
SUB_FILES= ${PORTNAME}.sh pkg-message
DESKTOP_ENTRIES="Plex Home Theater" \
"${COMMENT}" \
"${DATADIR}/media/plex-icon-120.png" \
"plexhometheater.sh" \
"AudioVideo;Video;" \
true
OPTIONS_SUB= yes
OPTIONS_DEFINE= CEC LIRC PULSEAUDIO
CEC_DESC= Control plexhometheater over HDMI with TV remote
OPTIONS_DEFAULT= CEC LIRC
CEC_BUILD_DEPENDS= libcec>=2.2.0:${PORTSDIR}/multimedia/libcec
CEC_LIB_DEPENDS= libcec.so:${PORTSDIR}/multimedia/libcec
CEC_CMAKE_OFF= -DCMAKE_DISABLE_FIND_PACKAGE_CEC:BOOL=true
LIRC_RUN_DEPENDS= lircd:${PORTSDIR}/comms/lirc
PULSEAUDIO_LIB_DEPENDS= libpulse.so:${PORTSDIR}/audio/pulseaudio
PULSEAUDIO_CMAKE_OFF= -DCMAKE_DISABLE_FIND_PACKAGE_PulseAudio:BOOL=true
.include <bsd.port.pre.mk>
.if ${ARCH} == i386
PLIST_SUB+= ARCH="x86"
.else
PLIST_SUB+= ARCH="x86_64"
.endif
Upgrade multimedia/plexhometheater to v1.2.2 The attached patch upgrades multimedia/plexhometheater to v1.2.2. In addition, it removes the LIBDEPENDS on audio/lame and java as neither are actually used by plexhometheater, and adds a pkg-message to explain how to run plexhometheater from the command line when the package is installed. --- Plexhometheater is unable to play videos, with some of the following error messages appearing in the logs depending on the codec of the video being played. ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_h264dsp_init_x86" ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_mlp_init_x86" This is similar to PR181964 filed previously for multimedia/gstreamer-ffmpeg https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=181964 This issue is caused as during port build some variables not defined in MAKE_ENV/MAKE_ARGS are leaked to do-build target via .MAKEFLAGS rule in bsd.port.mk. According to make(1) man page variable assignments in MAKEFLAGS are treated as those on command line which means they override assignments in Makefiles. Unfortunately, this breaks building arch-specific code for libavcodec as $(ARCH) in config.mak is no longer honored. Fix: Rename the variable from ARCH to FFMPEG_ARCH, as is done in multimedia/ffmpeg. --- Add binutils as builddep on FreeBSD8 and use cmake compiler in ffmpeg configure --- Plexhometheater will fail to build from ports if ffmpeg is already installed on the system (via ports or package). --- Plexhometheater crashes at launch with: ERROR: Unable to create application. Exiting Segmentation fault (core dumped) FROM LOGS: ERROR: Unable to load /usr/local/bin/system/libcpluff-x86_64-freebsd.so, reason: Cannot open "/usr/local/bin/system/libcpluff-x86_64-freebsd.so PR: 193547, 193282, 193190, 193189, 193188 Submitted by: Ben Woods (maintainer)
2014-09-13 18:58:31 +02:00
.if ${OPSYS} == "FreeBSD" && ${OSVERSION} < 900033
BUILD_DEPENDS+= ${LOCALBASE}/bin/as:${PORTSDIR}/devel/binutils
MAKE_ENV= COMPILER_PATH=${LOCALBASE}/bin
.endif
post-patch:
@${REINPLACE_CMD} 's/[[:<:]]ARCH[[:>:]]/FFMPEG_ARCH/' \
${WRKSRC}/lib/ffmpeg/Makefile \
${WRKSRC}/lib/ffmpeg/common.mak \
${WRKSRC}/lib/ffmpeg/configure \
${WRKSRC}/lib/ffmpeg/libavcodec/Makefile
@${REINPLACE_CMD} 's/iconv_open/libiconv_open/' \
${WRKSRC}/plex/CMakeModules/FindIconv.cmake
Upgrade multimedia/plexhometheater to v1.2.2 The attached patch upgrades multimedia/plexhometheater to v1.2.2. In addition, it removes the LIBDEPENDS on audio/lame and java as neither are actually used by plexhometheater, and adds a pkg-message to explain how to run plexhometheater from the command line when the package is installed. --- Plexhometheater is unable to play videos, with some of the following error messages appearing in the logs depending on the codec of the video being played. ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_h264dsp_init_x86" ERROR: Unable to load /usr/local/lib/plexhometheater/system/players/dvdplayer/avcodec-53-x86-freebsd.so, reason: /usr/local/bin/system/players/dvdplayer/avcodec-53-x86_64-freebsd.so: Undefined symbol "ff_mlp_init_x86" This is similar to PR181964 filed previously for multimedia/gstreamer-ffmpeg https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=181964 This issue is caused as during port build some variables not defined in MAKE_ENV/MAKE_ARGS are leaked to do-build target via .MAKEFLAGS rule in bsd.port.mk. According to make(1) man page variable assignments in MAKEFLAGS are treated as those on command line which means they override assignments in Makefiles. Unfortunately, this breaks building arch-specific code for libavcodec as $(ARCH) in config.mak is no longer honored. Fix: Rename the variable from ARCH to FFMPEG_ARCH, as is done in multimedia/ffmpeg. --- Add binutils as builddep on FreeBSD8 and use cmake compiler in ffmpeg configure --- Plexhometheater will fail to build from ports if ffmpeg is already installed on the system (via ports or package). --- Plexhometheater crashes at launch with: ERROR: Unable to create application. Exiting Segmentation fault (core dumped) FROM LOGS: ERROR: Unable to load /usr/local/bin/system/libcpluff-x86_64-freebsd.so, reason: Cannot open "/usr/local/bin/system/libcpluff-x86_64-freebsd.so PR: 193547, 193282, 193190, 193189, 193188 Submitted by: Ben Woods (maintainer)
2014-09-13 18:58:31 +02:00
post-install:
${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME}.sh ${STAGEDIR}${PREFIX}/bin
.include <bsd.port.post.mk>