Index: head/multimedia/kodi-devel/Makefile =================================================================== --- head/multimedia/kodi-devel/Makefile (revision 473656) +++ head/multimedia/kodi-devel/Makefile (revision 473657) @@ -1,201 +1,206 @@ # $FreeBSD$ PORTNAME= kodi DISTVERSION= 18.0.g201806300625 +PORTREVISION= 1 CATEGORIES= multimedia PKGNAMESUFFIX?= -devel MAINTAINER= tobik@FreeBSD.org COMMENT= Award winning media center application LICENSE= GPLv2 LICENSE_FILE= ${WRKSRC}/LICENSE.GPL BROKEN_FreeBSD_10= does not build ONLY_FOR_ARCHS= amd64 armv6 armv7 i386 BUILD_DEPENDS= rapidjson>=0:devel/rapidjson \ swig3.0:devel/swig30 LIB_DEPENDS= libass.so:multimedia/libass \ libavcodec.so:multimedia/ffmpeg \ libavfilter.so:multimedia/ffmpeg \ libavformat.so:multimedia/ffmpeg \ libavutil.so:multimedia/ffmpeg \ libcdio.so:sysutils/libcdio \ libcrossguid.so:devel/libcrossguid \ libcurl.so:ftp/curl \ libdvdnav.so:multimedia/libdvdnav \ libdvdread.so:multimedia/libdvdread \ libexpat.so:textproc/expat2 \ libfmt.so:devel/libfmt \ libfreetype.so:print/freetype2 \ libfribidi.so:converters/fribidi \ libgif.so:graphics/giflib \ libgnutls.so:security/gnutls \ liblcms2.so:graphics/lcms2 \ liblzo2.so:archivers/lzo2 \ libpcre.so:devel/pcre \ libpcrecpp.so:devel/pcre \ libpng.so:graphics/png \ libpostproc.so:multimedia/ffmpeg \ libswresample.so:multimedia/ffmpeg \ libswscale.so:multimedia/ffmpeg \ libtag.so:audio/taglib \ libtinyxml.so:textproc/tinyxml \ libudev.so:devel/libudev-devd \ libuuid.so:misc/e2fsprogs-libuuid # Building libcpluff.a requires autoreconf and gmake. Using ninja # leads to dependency problems where libcpluff.a is not yet finished # building when it's required. USES= autoreconf:build cmake:outsource,noninja compiler:c++11-lib \ gettext gmake iconv:wchar_t jpeg libtool pkgconfig python:-2.7 \ ssl sqlite USE_GITHUB= yes GH_ACCOUNT= xbmc GH_PROJECT= xbmc GH_TAGNAME= 8063088ceecc6674763c83a63356fe0296b005a8 USE_GNOME= libxslt libxml2 USE_JAVA= yes JAVA_BUILD= yes USE_LDCONFIG= yes CONFLICTS_INSTALL= kodi-[0-9]* CMAKE_ARGS= -DLIBDVD_INCLUDE_DIRS="${LOCALBASE}/include" \ -DDVDREAD_LIBRARY="${LOCALBASE}/lib/libdvdread.so" \ -DDVDNAV_LIBRARY="${LOCALBASE}/lib/libdvdnav.so" CMAKE_OFF= ENABLE_ALSA \ ENABLE_DVDCSS \ ENABLE_INTERNAL_FFMPEG \ ENABLE_INTERNAL_CROSSGUID -CONFIGURE_ENV= OPENSSL_LIBS="-L${OPENSSLLIB}" OPENSSL_CFLAGS="-I${OPENSSLINC}" +CONFIGURE_ENV= OPENSSL_LIBS="-L${OPENSSLLIB}" OPENSSL_CFLAGS="-I${OPENSSLINC}" \ + CPU_FEATURES=" Features=0xdeadbeef<${CPU_FEATURES:ts,}>" KODIARCH_i386= x86 KODIARCH_amd64= x86_64 PLIST_SUB= ARCH=${KODIARCH_${ARCH}:U${ARCH}} OPSYS=${OPSYS:tl} -OPTIONS_DEFINE= AVAHI CEC DBUS LIBBLURAY MYSQL NFS SMB SSH UPNP VAAPI \ - VDPAU WEBSERVER -OPTIONS_DEFAULT= LIBBLURAY SSH UPNP VAAPI VDPAU WEBSERVER X11 +OPTIONS_DEFINE= AVAHI CEC DBUS LIBBLURAY MYSQL NFS SMB UPNP VAAPI VDPAU WEBSERVER +OPTIONS_DEFINE_amd64= SSE +OPTIONS_DEFINE_i386= SSE +OPTIONS_DEFAULT= LIBBLURAY UPNP VAAPI VDPAU WEBSERVER X11 +OPTIONS_DEFAULT_amd64= SSE OPTIONS_SINGLE= PLATFORM OPTIONS_SINGLE_PLATFORM= GBM RPI WAYLAND X11 OPTIONS_EXCLUDE_amd64= RPI OPTIONS_EXCLUDE_i386= RPI OPTIONS_SUB= yes OPTIONS_GROUP= SOUND OPTIONS_GROUP_SOUND= PULSEAUDIO SNDIO CEC_DESC= CEC adapter support GBM_DESC= GBM support (requires a kernel with evdev support) PLATFORM_DESC= Platform RPI_DESC= Raspberry Pi support AVAHI_LIB_DEPENDS= libavahi-client.so:net/avahi-app AVAHI_CMAKE_BOOL= ENABLE_AVAHI CEC_LIB_DEPENDS= libcec.so:multimedia/libcec CEC_CMAKE_BOOL= ENABLE_CEC DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus DBUS_CMAKE_BOOL= ENABLE_DBUS GBM_BUILD_DEPENDS= v4l_compat>=0:multimedia/v4l_compat GBM_CMAKE_ON= -DCORE_PLATFORM_NAME:STRING="gbm" GBM_LIB_DEPENDS= libinput.so:x11/libinput \ libxkbcommon.so:x11/libxkbcommon LIBBLURAY_LIB_DEPENDS= libbluray.so:multimedia/libbluray LIBBLURAY_CMAKE_BOOL= ENABLE_BLURAY MYSQL_USES= mysql MYSQL_CMAKE_BOOL= ENABLE_MYSQLCLIENT NFS_LIB_DEPENDS= libnfs.so:net/libnfs NFS_CMAKE_BOOL= ENABLE_NFS PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CMAKE_BOOL= ENABLE_PULSEAUDIO # For RPI, disable VAAPI in multimedia/ffmpeg too, so that mesa-libs # is *not* installed via libva in the build environment. Both # mesa-libs and raspberrypi-userland conflict with each other. RPI_CMAKE_ON= -DCORE_PLATFORM_NAME:STRING="rbpi" RPI_LIB_DEPENDS= libbrcmEGL.so:misc/raspberrypi-userland RPI_LIB_DEPENDS_OFF= libdrm.so:graphics/libdrm RPI_PREVENTS= VAAPI VDPAU RPI_USE_OFF= GL=egl,gl,glu SMB_USES= samba:lib SMB_CMAKE_BOOL= ENABLE_SMBCLIENT SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_CMAKE_BOOL= ENABLE_SNDIO -SSH_LIB_DEPENDS= libssh.so:security/libssh -SSH_CMAKE_BOOL= ENABLE_SSH +SSE_CPU_FEATURES= SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 +SSE_CMAKE_BOOL= ${SSE_CPU_FEATURES:S/./_/g:S/^/ENABLE_/} +SSE_VARS= CPU_FEATURES+=${SSE_CPU_FEATURES:ts,} UPNP_CMAKE_BOOL= ENABLE_UPNP # XXX: Upstream is https://github.com/plutinosoft/Neptune UPNP_CXXFLAGS= -DNPT_CONFIG_HAVE_ARPA_INET_H \ -DNPT_CONFIG_HAVE_GETADDRINFO \ -DNPT_CONFIG_HAVE_GETIFADDRS \ -DNPT_CONFIG_HAVE_INET_NTOP \ -DNPT_CONFIG_HAVE_INET_PTON \ -DNPT_CONFIG_HAVE_NET_IF_DL_H \ -DNPT_CONFIG_HAVE_SOCKADDR_DL \ -DNPT_CONFIG_HAVE_SOCKADDR_IN_SIN_LEN VAAPI_CMAKE_BOOL= ENABLE_VAAPI VAAPI_LIB_DEPENDS= libva.so:multimedia/libva VDPAU_CMAKE_BOOL= ENABLE_VDPAU VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau WAYLAND_BUILD_DEPENDS= v4l_compat>=0:multimedia/v4l_compat \ wayland-protocols>=0:graphics/wayland-protocols WAYLAND_CMAKE_ON= -DCORE_PLATFORM_NAME:STRING="wayland" \ -DWAYLAND_RENDER_SYSTEM:STRING="gl" WAYLAND_LIB_DEPENDS= libinput.so:x11/libinput \ libwayland-client++.so:graphics/waylandpp \ libwayland-client.so:graphics/wayland \ libxkbcommon.so:x11/libxkbcommon WEBSERVER_LIB_DEPENDS= libmicrohttpd.so:www/libmicrohttpd WEBSERVER_CMAKE_BOOL= ENABLE_MICROHTTPD X11_CMAKE_ON= -DCORE_PLATFORM_NAME:STRING="x11" X11_USE= XORG=x11,xext,xrandr .include .if ${SLAVE_PORT} == no PORTDATA= * .endif post-patch: # Do not try to download dvdnav/dvdread during the build, instead # we'll manually point the build to the system's libdvd{nav,read}.so # (see CMAKE_ARGS). @${REINPLACE_CMD} 's@KODI_DEPENDSBUILD@true@' \ ${WRKSRC}/cmake/modules/FindLibDvd.cmake # Make sure freebsd.xml is in sync with linux.xml since the # upstream devs do not sync them @${CP} ${WRKSRC}/system/settings/linux.xml \ ${WRKSRC}/system/settings/freebsd.xml .if ${SLAVE_PORT} == no post-install: ${INSTALL_MAN} ${WRKSRC}/docs/manpages/kodi.bin.1 ${STAGEDIR}${MAN1PREFIX}/man/man1 @cd ${STAGEDIR}${MAN1PREFIX}/man/man1 && ${LN} -sf kodi.bin.1.gz kodi.1.gz @${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/TexturePacker @${FIND} ${STAGEDIR}${PREFIX}/lib/kodi -name '*.so' | ${XARGS} ${STRIP_CMD} # Nothing useful here... @${RM} -r ${STAGEDIR}${DOCSDIR} # No firewalld on FreeBSD... @${RM} -r ${STAGEDIR}${PREFIX}/lib/firewalld .endif .include Index: head/multimedia/kodi-devel/files/patch-cmake_modules_FindSSE.cmake =================================================================== --- head/multimedia/kodi-devel/files/patch-cmake_modules_FindSSE.cmake (nonexistent) +++ head/multimedia/kodi-devel/files/patch-cmake_modules_FindSSE.cmake (revision 473657) @@ -0,0 +1,15 @@ +/var/run/dmesg.boot is not available in Poudriere jails and reading +it at build time also doesn't allow for any control, so pass in the +CPU features through the CPU_FEATURES environment variable. + +--- cmake/modules/FindSSE.cmake.orig 2018-07-01 06:58:49 UTC ++++ cmake/modules/FindSSE.cmake +@@ -42,7 +42,7 @@ if(CMAKE_SYSTEM_NAME MATCHES "Linux") + endif() + elseif(CMAKE_SYSTEM_NAME MATCHES "FreeBSD") + if(CPU MATCHES "amd64" OR CPU MATCHES "i.86") +- exec_program(cat ARGS "/var/run/dmesg.boot | grep Features" OUTPUT_VARIABLE CPUINFO) ++ exec_program(echo ARGS "$CPU_FEATURES" OUTPUT_VARIABLE CPUINFO) + + string(REGEX REPLACE "^.*(SSE).*$" "\\1" _SSE_THERE ${CPUINFO}) + string(COMPARE EQUAL "SSE" "${_SSE_THERE}" _SSE_TRUE) Property changes on: head/multimedia/kodi-devel/files/patch-cmake_modules_FindSSE.cmake ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/multimedia/kodi-devel/pkg-plist =================================================================== --- head/multimedia/kodi-devel/pkg-plist (revision 473656) +++ head/multimedia/kodi-devel/pkg-plist (revision 473657) @@ -1,85 +1,86 @@ bin/TexturePacker bin/kodi bin/kodi-standalone include/kodi/AEChannelData.h include/kodi/ActionIDs.h include/kodi/AddonBase.h include/kodi/DemuxCrypto.h include/kodi/DemuxPacket.h include/kodi/Filesystem.h include/kodi/General.h include/kodi/IFileTypes.h include/kodi/Network.h include/kodi/StreamCodec.h include/kodi/StreamCrypto.h include/kodi/TimingConstants.h include/kodi/XBMC_vkeys.h include/kodi/addon-instance/AudioDecoder.h include/kodi/addon-instance/AudioEncoder.h include/kodi/addon-instance/ImageDecoder.h include/kodi/addon-instance/Inputstream.h include/kodi/addon-instance/Peripheral.h include/kodi/addon-instance/PeripheralUtils.h include/kodi/addon-instance/Screensaver.h include/kodi/addon-instance/VFS.h include/kodi/addon-instance/VideoCodec.h include/kodi/addon-instance/Visualization.h include/kodi/gui/General.h include/kodi/gui/ListItem.h include/kodi/gui/Window.h include/kodi/gui/controls/Button.h include/kodi/gui/controls/Edit.h include/kodi/gui/controls/FadeLabel.h include/kodi/gui/controls/Image.h include/kodi/gui/controls/Label.h include/kodi/gui/controls/Progress.h include/kodi/gui/controls/RadioButton.h include/kodi/gui/controls/Rendering.h include/kodi/gui/controls/SettingsSlider.h include/kodi/gui/controls/Slider.h include/kodi/gui/controls/Spin.h include/kodi/gui/controls/TextBox.h include/kodi/gui/definitions.h include/kodi/gui/dialogs/ContextMenu.h include/kodi/gui/dialogs/ExtendedProgress.h include/kodi/gui/dialogs/FileBrowser.h include/kodi/gui/dialogs/Keyboard.h include/kodi/gui/dialogs/Numeric.h include/kodi/gui/dialogs/OK.h include/kodi/gui/dialogs/Progress.h include/kodi/gui/dialogs/Select.h include/kodi/gui/dialogs/TextViewer.h include/kodi/gui/dialogs/YesNo.h include/kodi/kodi_game_dll.h include/kodi/kodi_game_types.h include/kodi/kodi_vfs_types.h include/kodi/libKODI_game.h include/kodi/libKODI_guilib.h include/kodi/libXBMC_addon.h include/kodi/libXBMC_pvr.h include/kodi/platform/android/System.h include/kodi/tools/DllHelper.h include/kodi/versions.h include/kodi/xbmc_addon_dll.h include/kodi/xbmc_addon_types.h include/kodi/xbmc_epg_types.h include/kodi/xbmc_pvr_dll.h include/kodi/xbmc_pvr_types.h %%GBM%%lib/kodi/kodi-gbm %%RPI%%lib/kodi/kodi-rbpi %%WAYLAND%%lib/kodi/kodi-wayland %%X11%%lib/kodi/kodi-x11 %%X11%%lib/kodi/kodi-xrandr lib/kodi/system/players/VideoPlayer/libdvdnav-%%ARCH%%-%%OPSYS%%.so +%%SSE%%lib/kodi/system/libsse4-%%ARCH%%-%%OPSYS%%.so man/man1/kodi.1.gz man/man1/kodi.bin.1.gz share/applications/kodi.desktop share/icons/hicolor/128x128/apps/kodi.png share/icons/hicolor/16x16/apps/kodi.png share/icons/hicolor/22x22/apps/kodi.png share/icons/hicolor/24x24/apps/kodi.png share/icons/hicolor/256x256/apps/kodi.png share/icons/hicolor/32x32/apps/kodi.png share/icons/hicolor/48x48/apps/kodi.png share/icons/hicolor/64x64/apps/kodi.png share/xsessions/kodi.desktop