diff --git a/Mk/bsd.gecko.mk b/Mk/bsd.gecko.mk index fdc1effe8672..cd6707399bb4 100644 --- a/Mk/bsd.gecko.mk +++ b/Mk/bsd.gecko.mk @@ -1,406 +1,403 @@ #-*- tab-width: 4; -*- # ex:ts=4 # # Date created: 12 Nov 2005 # Whom: Michael Johnson # # 4 column tabs prevent hair loss and tooth decay! # bsd.gecko.mk abstracts the selection of gecko-based backends. It allows users # and porters to support any available gecko backend without needing to build # many conditional tests. ${USE_GECKO} is the list of backends that your port # can handle, and ${GECKO} is set by bsd.gecko.mk to be the chosen backend. # Users set ${WITH_GECKO} to the list of gecko backends they want on their # system. .if defined(USE_GECKO) .if !defined(_POSTMKINCLUDED) && !defined(Gecko_Pre_Include) Gecko_Pre_Include= bsd.gecko.mk # This file contains some reusable components for mozilla ports. It's of # use primarily to apps from the mozilla project itself (such as Firefox, # Thunderbird, etc.), and probably won't be of use for gecko-based ports # like epiphany, galeon, etc. # # You need to make sure to add USE_GECKO=gecko to for your port can uses # one of these options below. # # Ports can use the following: # # USE_MOZILLA By default, it enables every system dependency # listed in '_ALL_DEPENDS'. If your port doesn't # need one of those then you can use '-' like # 'USE_MOZILLA= -png -vpx' to subtract the # dependencies. Experimental deps use '+' like # 'USE_MOZILLA= +speex +theora'. # # MOZILLA_PLIST_DIRS List of directories to descend into when installing # and creating the plist # # MOZ_OPTIONS configure arguments (added to .mozconfig). If # NOMOZCONFIG is defined, you probably want to set # CONFIGURE_ARGS+=${MOZ_OPTIONS} # # MOZ_MK_OPTIONS The make(1) arguments (added to .mozconfig). If # NOMOZCONFIG is defined, you probably want to set # MAKE_ARGS+=${MOZ_MK_OPTIONS} # # MOZ_EXPORT Environment variables for the build process (added # to .mozconfig). If NOMOZCONFIG is defined, you # probably want to set MAKE_ENV+=${MOZ_EXPORT} # # NOMOZCONFIG Don't drop a customized .mozconfig into the build # directory. Options will have to be specified in # CONFIGURE_ARGS instead # MAINTAINER?= gecko@FreeBSD.org MOZILLA?= ${PORTNAME} MOZILLA_VER?= ${PORTVERSION} MOZILLA_BIN?= ${PORTNAME}-bin MOZILLA_EXEC_NAME?=${MOZILLA} USES+= compiler:c++17-lang cpe gl gmake gnome iconv localbase perl5 pkgconfig \ python:3.6+,build desktop-file-utils CPE_VENDOR?=mozilla USE_GL= gl USE_GNOME= cairo gdkpixbuf2 gtk30 USE_PERL5= build USE_XORG= x11 xcb xcomposite xdamage xext xfixes xrender xt .if ${MOZILLA_VER:R:R} >= 96 USE_XORG+= xrandr xtst .endif HAS_CONFIGURE= yes CONFIGURE_OUTSOURCE= yes LDFLAGS+= -Wl,--as-needed BINARY_ALIAS+= python3=${PYTHON_CMD} BUNDLE_LIBS= yes BUILD_DEPENDS+= llvm${LLVM_DEFAULT}>0:devel/llvm${LLVM_DEFAULT} \ rust-cbindgen>=0.19.0:devel/rust-cbindgen \ ${RUST_DEFAULT}>=1.58.1:lang/${RUST_DEFAULT} \ node:www/node LIB_DEPENDS+= libdrm.so:graphics/libdrm RUN_DEPENDS+= ${LOCALBASE}/lib/libpci.so:devel/libpci LIB_DEPENDS+= libepoll-shim.so:devel/libepoll-shim MOZ_EXPORT+= ${CONFIGURE_ENV} \ PERL="${PERL}" \ PYTHON3="${PYTHON_CMD}" \ RUSTFLAGS="${RUSTFLAGS}" MOZ_OPTIONS+= --prefix="${PREFIX}" MOZ_MK_OPTIONS+=MOZ_OBJDIR="${BUILD_WRKSRC}" MOZ_OPTIONS+= --with-libclang-path="${LOCALBASE}/llvm${LLVM_DEFAULT}/lib" .if !exists(/usr/bin/llvm-objdump) MOZ_EXPORT+= LLVM_OBJDUMP="${LOCALBASE}/bin/llvm-objdump${LLVM_DEFAULT}" .endif # Ignore Mk/bsd.default-versions.mk but respect make.conf(5) unless LTO is enabled .if !defined(DEFAULT_VERSIONS) || ! ${DEFAULT_VERSIONS:Mllvm*} || ${PORT_OPTIONS:MLTO} LLVM_DEFAULT= 13 # chase bundled LLVM in lang/rust for LTO LLVM_VERSION= 13.0.1 # keep in sync with devel/wasi-compiler-rt${LLVM_DEFAULT} .endif # Require newer Clang than what's in base system unless user opted out . if ${CC} == cc && ${CXX} == c++ && exists(/usr/lib/libc++.so) BUILD_DEPENDS+= ${LOCALBASE}/bin/clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} CPP= ${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT} CC= ${LOCALBASE}/bin/clang${LLVM_DEFAULT} CXX= ${LOCALBASE}/bin/clang++${LLVM_DEFAULT} USES:= ${USES:Ncompiler\:*} # XXX avoid warnings . endif MOZSRC?= ${WRKSRC} PLISTF?= ${WRKDIR}/plist_files MOZCONFIG?= ${WRKSRC}/.mozconfig MOZILLA_PLIST_DIRS?= bin lib share/pixmaps share/applications # Adjust -C target-cpu if -march/-mcpu is set by bsd.cpu.mk .if ${ARCH} == amd64 || ${ARCH} == i386 RUSTFLAGS+= ${CFLAGS:M-march=*:S/-march=/-C target-cpu=/} .elif ${ARCH:Mpowerpc64*} RUSTFLAGS+= ${CFLAGS:M-mcpu=*:S/-mcpu=/-C target-cpu=/:S/power/pwr/} .else RUSTFLAGS+= ${CFLAGS:M-mcpu=*:S/-mcpu=/-C target-cpu=/} .endif # Standard depends _ALL_DEPENDS= av1 event ffi graphite harfbuzz icu jpeg nspr nss png pixman sqlite vpx webp -# firefox 95 uses a dav1d snapshot > 0.9.2 -.if ${MOZILLA_VER:R:R} < 95 .if exists(${FILESDIR}/patch-bug1559213) av1_LIB_DEPENDS= libaom.so:multimedia/aom libdav1d.so:multimedia/dav1d av1_MOZ_OPTIONS= --with-system-av1 .endif -.endif event_LIB_DEPENDS= libevent.so:devel/libevent event_MOZ_OPTIONS= --with-system-libevent ffi_LIB_DEPENDS= libffi.so:devel/libffi ffi_MOZ_OPTIONS= --enable-system-ffi .if exists(${FILESDIR}/patch-bug847568) graphite_LIB_DEPENDS= libgraphite2.so:graphics/graphite2 graphite_MOZ_OPTIONS= --with-system-graphite2 harfbuzz_LIB_DEPENDS= libharfbuzz.so:print/harfbuzz harfbuzz_MOZ_OPTIONS= --with-system-harfbuzz .endif icu_LIB_DEPENDS= libicui18n.so:devel/icu icu_MOZ_OPTIONS= --with-system-icu --with-intl-api -jpeg_BUILD_DEPENDS=yasm:devel/yasm jpeg_USES= jpeg jpeg_MOZ_OPTIONS= --with-system-jpeg=${LOCALBASE} nspr_LIB_DEPENDS= libnspr4.so:devel/nspr nspr_MOZ_OPTIONS= --with-system-nspr nss_LIB_DEPENDS= libnss3.so:security/nss nss_MOZ_OPTIONS= --with-system-nss pixman_LIB_DEPENDS= libpixman-1.so:x11/pixman pixman_MOZ_OPTIONS= --enable-system-pixman png_LIB_DEPENDS= libpng.so:graphics/png png_MOZ_OPTIONS= --with-system-png=${LOCALBASE} .if ${MOZILLA_VER:R:R} >= 97 png_MOZ_OPTIONS= --with-system-png .endif sqlite_LIB_DEPENDS= libsqlite3.so:databases/sqlite3 sqlite_MOZ_OPTIONS= --enable-system-sqlite -vpx_BUILD_DEPENDS= yasm:devel/yasm vpx_LIB_DEPENDS= libvpx.so:multimedia/libvpx vpx_MOZ_OPTIONS= --with-system-libvpx webp_LIB_DEPENDS= libwebp.so:graphics/webp webp_MOZ_OPTIONS= --with-system-webp .for use in ${USE_MOZILLA} ${use:S/-/_WITHOUT_/}= ${TRUE} .endfor LIB_DEPENDS+= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 .for dep in ${_ALL_DEPENDS} ${USE_MOZILLA:M+*:S/+//} .if !defined(_WITHOUT_${dep}) BUILD_DEPENDS+= ${${dep}_BUILD_DEPENDS} LIB_DEPENDS+= ${${dep}_LIB_DEPENDS} RUN_DEPENDS+= ${${dep}_RUN_DEPENDS} USES+= ${${dep}_USES} MOZ_OPTIONS+= ${${dep}_MOZ_OPTIONS} .else BUILD_DEPENDS+= ${-${dep}_BUILD_DEPENDS} .endif .endfor # Standard options MOZ_OPTIONS+= \ --enable-update-channel=${PKGNAMESUFFIX:Urelease:S/^-//} \ --disable-updater \ --with-system-zlib # API keys from www/chromium # http://www.chromium.org/developers/how-tos/api-keys # Note: these are for FreeBSD use ONLY. For your own distribution, # please get your own set of keys. MOZ_EXPORT+= MOZ_GOOGLE_LOCATION_SERVICE_API_KEY=AIzaSyBsp9n41JLW8jCokwn7vhoaMejDFRd1mp8 MOZ_EXPORT+= MOZ_GOOGLE_SAFEBROWSING_API_KEY=AIzaSyBsp9n41JLW8jCokwn7vhoaMejDFRd1mp8 .if ${PORT_OPTIONS:MOPTIMIZED_CFLAGS} CFLAGS+= -O3 MOZ_EXPORT+= MOZ_OPTIMIZE_FLAGS="${CFLAGS:M-O*}" MOZ_OPTIONS+= --enable-optimize .else MOZ_OPTIONS+= --disable-optimize . if ${/usr/bin/ld:L:tA} != /usr/bin/ld.lld # ld 2.17 barfs on Stylo built with -C opt-level=0 USE_BINUTILS= yes LDFLAGS+= -B${LOCALBASE}/bin . endif .endif .if ${PORT_OPTIONS:MCANBERRA} RUN_DEPENDS+= libcanberra>0:audio/libcanberra .endif .if ${PORT_OPTIONS:MDBUS} BUILD_DEPENDS+= libnotify>0:devel/libnotify LIB_DEPENDS+= libdbus-1.so:devel/dbus \ libdbus-glib-1.so:devel/dbus-glib .else MOZ_OPTIONS+= --disable-dbus .endif .if ${PORT_OPTIONS:MFFMPEG} # dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp RUN_DEPENDS+= ffmpeg>=0.8,1:multimedia/ffmpeg .endif .if ${PORT_OPTIONS:MLIBPROXY} LIB_DEPENDS+= libproxy.so:net/libproxy MOZ_OPTIONS+= --enable-libproxy .else MOZ_OPTIONS+= --disable-libproxy .endif .if ${PORT_OPTIONS:MLTO} MOZ_OPTIONS+= --enable-lto=cross .endif .if ${PORT_OPTIONS:MALSA} BUILD_DEPENDS+= ${LOCALBASE}/include/alsa/asoundlib.h:audio/alsa-lib MOZ_OPTIONS+= --enable-alsa .endif .if ${PORT_OPTIONS:MJACK} BUILD_DEPENDS+= ${LOCALBASE}/include/jack/jack.h:audio/jack MOZ_OPTIONS+= --enable-jack .endif .if ${PORT_OPTIONS:MPULSEAUDIO} BUILD_DEPENDS+= ${LOCALBASE}/include/pulse/pulseaudio.h:audio/pulseaudio MOZ_OPTIONS+= --enable-pulseaudio .else MOZ_OPTIONS+= --disable-pulseaudio .endif .if ${PORT_OPTIONS:MSNDIO} BUILD_DEPENDS+= ${LOCALBASE}/include/sndio.h:audio/sndio post-patch-SNDIO-on: @${REINPLACE_CMD} -e 's|OpenBSD|${OPSYS}|g' \ -e '/DISABLE_LIBSNDIO_DLOPEN/d' \ ${MOZSRC}/media/libcubeb/src/moz.build .endif .if ${PORT_OPTIONS:MDEBUG} MOZ_OPTIONS+= --enable-debug --disable-release STRIP= # ports/184285 .else MOZ_OPTIONS+= --disable-debug --disable-debug-symbols --enable-release . if ${ARCH:Maarch64} || (defined(MACHINE_CPU) && ${MACHINE_CPU:Msse2}) MOZ_OPTIONS+= --enable-rust-simd . endif .endif .if ${PORT_OPTIONS:MPROFILE} MOZ_OPTIONS+= --enable-profiling STRIP= .else MOZ_OPTIONS+= --disable-profiling .endif .if ${PORT_OPTIONS:MTEST} USE_XORG+= xscrnsaver MOZ_OPTIONS+= --enable-tests .else MOZ_OPTIONS+= --disable-tests .endif .if !defined(STRIP) || ${STRIP} == "" MOZ_OPTIONS+= --disable-strip --disable-install-strip .else MOZ_OPTIONS+= --enable-strip --enable-install-strip .endif # _MAKE_JOBS is only available after bsd.port.post.mk, thus cannot be # used in .mozconfig. And client.mk automatically uses -jN where N # is what multiprocessing.cpu_count() returns. .if defined(DISABLE_MAKE_JOBS) || defined(MAKE_JOBS_UNSAFE) MAKE_JOBS_NUMBER= 1 .endif .if defined(MAKE_JOBS_NUMBER) MOZ_MAKE_FLAGS+=-j${MAKE_JOBS_NUMBER} .endif .if defined(MOZ_MAKE_FLAGS) MOZ_MK_OPTIONS+=MOZ_MAKE_FLAGS="${MOZ_MAKE_FLAGS}" .endif .if ${ARCH} == amd64 . if ${USE_MOZILLA:M-nss} USE_BINUTILS= # intel-gcm.s CFLAGS+= -B${LOCALBASE}/bin LDFLAGS+= -B${LOCALBASE}/bin . endif .elif ${ARCH:Mpowerpc*} BUILD_DEPENDS+= as:devel/binutils . if ${ARCH} == "powerpc64" MOZ_EXPORT+= UNAME_m="${ARCH}" . endif .endif .else # bsd.port.post.mk post-patch: gecko-post-patch gecko-post-patch: @${RM} ${MOZCONFIG} .if !defined(NOMOZCONFIG) .for arg in ${MOZ_OPTIONS} @${ECHO_CMD} ac_add_options ${arg:Q} >> ${MOZCONFIG} .endfor .for arg in ${MOZ_MK_OPTIONS} @${ECHO_CMD} mk_add_options ${arg:Q} >> ${MOZCONFIG} .endfor .for var in ${MOZ_EXPORT} @${ECHO_CMD} export ${var:Q} >> ${MOZCONFIG} .endfor .endif # .if !defined(NOMOZCONFIG) .if ${USE_MOZILLA:M-nspr} @${ECHO_MSG} "===> Applying NSPR patches" @for i in ${.CURDIR}/../../devel/nspr/files/patch-*; do \ ${PATCH} ${PATCH_ARGS} -d ${MOZSRC}/nsprpub < $$i; \ done .endif .if ${USE_MOZILLA:M-nss} @${ECHO_MSG} "===> Applying NSS patches" @for i in ${.CURDIR}/../../security/nss/files/patch-*; do \ ${PATCH} ${PATCH_ARGS} -d ${MOZSRC}/security/nss < $$i; \ done .endif @if [ -f ${WRKSRC}/config/baseconfig.mk ] ; then \ ${REINPLACE_CMD} -e 's|%%MOZILLA%%|${MOZILLA}|g' \ ${WRKSRC}/config/baseconfig.mk; \ fi @${REINPLACE_CMD} -e 's|%%MOZILLA%%|${MOZILLA}|g' \ ${MOZSRC}/config/baseconfig.mk @${REINPLACE_CMD} -e 's|/usr/local/netscape|${LOCALBASE}|g ; \ s|/usr/local/lib/netscape|${LOCALBASE}/lib|g' \ ${MOZSRC}/xpcom/io/SpecialSystemDirectory.cpp @${REINPLACE_CMD} -e 's|/etc|${PREFIX}&|g' \ ${MOZSRC}/xpcom/build/nsXPCOMPrivate.h @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ -e 's|mozilla/plugins|browser_plugins|g' \ -e 's|share/mozilla/extensions|lib/xpi|g' \ ${MOZSRC}/xpcom/io/nsAppFileLocationProvider.cpp \ ${MOZSRC}/toolkit/xre/nsXREDirProvider.cpp # Disable vendor checksums like lang/rust @${REINPLACE_CMD} 's,"files":{[^}]*},"files":{},' \ ${MOZSRC}/third_party/rust/*/.cargo-checksum.json pre-configure-script: # Check that the running kernel has COMPAT_FREEBSD11 required by lang/rust post-ino64 @${SETENV} CC="${CC}" OPSYS="${OPSYS}" OSVERSION="${OSVERSION}" WRKDIR="${WRKDIR}" \ ${SH} ${SCRIPTSDIR}/rust-compat11-canary.sh post-install-script: gecko-create-plist gecko-create-plist: # Create the plist ${RM} ${PLISTF} .for dir in ${MOZILLA_PLIST_DIRS} @cd ${STAGEDIR}${PREFIX}/${dir} && ${FIND} -H -s * ! -type d | \ ${SED} -e 's|^|${dir}/|' >> ${PLISTF} .endfor ${CAT} ${PLISTF} | ${SORT} >> ${TMPPLIST} .endif .endif # HERE THERE BE TACOS -- adamw diff --git a/cad/opencascade/Makefile b/cad/opencascade/Makefile index 7c34082f9c5b..7a7cef679aab 100644 --- a/cad/opencascade/Makefile +++ b/cad/opencascade/Makefile @@ -1,177 +1,177 @@ # Created by: Thierry Thomas PORTNAME= opencascade PORTVERSION= 7.6.0 -PORTREVISION= 2 +PORTREVISION= 3 CATEGORIES= cad science MASTER_SITES= LOCAL/thierry MAINTAINER= thierry@FreeBSD.org COMMENT= Open CASCADE Technology, 3D modeling & numerical simulation LICENSE= OCTPL LICENSE_NAME= LGPL21 with exception LICENSE_FILE= ${WRKSRC}/OCCT_LGPL_EXCEPTION.txt LICENSE_PERMS= dist-mirror dist-sell pkg-mirror pkg-sell auto-accept BUILD_DEPENDS= rapidjson>0:devel/rapidjson \ ${LOCALBASE}/lib/qt5/bin/qmake:devel/qt5-qmake \ ${LOCALBASE}/lib/qt5/bin/moc:devel/qt5-buildtools LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libexpat.so:textproc/expat2 \ libpng16.so:graphics/png \ libvtksys-${VTKVER}.so:math/vtk${VTKVER:R} RUN_DEPENDS= bash:shells/bash # Check ${WRKSRC}/dox/overview/overview.md # and ${WRKSRC}/dox/dev_guides/building USES= alias:10 cmake compiler:c++14-lang dos2unix gettext-runtime \ gl gnome localbase python qt:5 shebangfix tk tar:tgz xorg USE_XORG= ice sm x11 xau xcb xdmcp xext xft xi xmu xrender xscrnsaver xt USE_GL= egl gl glesv2 glu USE_GNOME= libxml2 DOS2UNIX_FILES= adm/templates/* SHEBANG_FILES= adm/templates/*.sh \ adm/templates/*.sh.in \ adm/templates/*.sh.main \ adm/genconf.tcl \ adm/start.tcl \ gendoc ENVSH= adm/templates/env.sh VTKVER= 9.1 OPTIONS_DEFINE= DOCS DOXYGEN FFMPEG VIS VIS_DESC= Build Visualizazion module (requires OpenGL, freetype, ftgl) OPTIONS_DEFAULT=FFMPEG VIS OPTIONS_SUB= yes REINPLACE_ARGS= -i "" LDFLAGS+= -Wl,--allow-shlib-undefined -lexecinfo CMAKE_ARGS+= -DINSTALL_DIR=${OCCROOT} \ -DINSTALL_DIR_INCLUDE=${PREFIX}/include/OpenCASCADE \ -DINSTALL_DIR_LIB=${PREFIX}/lib \ -DINSTALL_DIR_CMAKE=${PREFIX}/lib/cmake \ -DINSTALL_DIR_DATA=${OCCROOT}/data \ -DINSTALL_DIR_RESOURCE=${OCCROOT}/resources \ -DINSTALL_DIR_SAMPLES=${OCCROOT}/samples \ -DINSTALL_DIR_TESTS=${OCCROOT}/tests \ -DINSTALL_TEST_CASES:BOOL=ON \ -DUSE_FREETYPE:BOOL=ON \ -DUSE_TBB:BOOL=OFF \ -DUSE_RAPIDJSON:BOOL=ON \ -DUSE_VTK:BOOL=ON \ -D3RDPARTY_VTK_INCLUDE_DIR:PATH=${LOCALBASE}/include/vtk-${VTKVER} # TODO: TBB to be replaced by onetbb later #CMAKE_ARGS+= -DUSE_EIGEN:BOOL=ON -DUSE_TBB:BOOL=ON #USES+= eigen:3 #LIB_DEPENDS+= libtbb.so:devel/tbb USE_LDCONFIG= yes LOCCROOT= OpenCAS OCCROOT= ${PREFIX}/${LOCCROOT} PLIST_SUB= OCCROOT="${LOCCROOT}" BITS=${BITS} CC=${CHOSEN_COMPILER_TYPE} \ VE=${PORTVERSION:R:R} VER=${PORTVERSION} FFMPEG_CMAKE_ON= -DUSE_FFMPEG:BOOL=ON FFMPEG_CMAKE_OFF= -DUSE_FFMPEG:BOOL=OFF FFMPEG_LIB_DEPENDS= libavcodec.so:multimedia/ffmpeg \ libtheoraenc.so:multimedia/libtheora \ libunistring.so:devel/libunistring \ libvdpau.so:multimedia/libvdpau \ libxvidcore.so:multimedia/xvid \ libp11-kit.so:security/p11-kit \ libx264.so:multimedia/libx264 \ libtasn1.so:security/libtasn1 \ libvorbis.so:audio/libvorbis \ libdav1d.so:multimedia/dav1d \ libnettle.so:security/nettle \ libgnutls.so:security/gnutls \ libvpx.so:multimedia/libvpx \ libx265.so:multimedia/x265 \ libdrm.so:graphics/libdrm \ libva.so:multimedia/libva \ libaom.so:multimedia/aom \ libmp3lame.so:audio/lame \ libffi.so:devel/libffi \ libidn2.so:dns/libidn2 \ libogg.so:audio/libogg \ libopus.so:audio/opus \ libgmp.so:math/gmp VIS_CMAKE_ON= -DUSE_FREEIMAGE:BOOL=ON \ -DUSE_GLES2:BOOL=ON \ -D3RDPARTY_FREETYPE_DIR=${LOCALBASE} VIS_CMAKE_OFF= -DUSE_FREEIMAGE:BOOL=OFF \ -DUSE_GLES2:BOOL=OFF VIS_LIB_DEPENDS= libftgl.so:graphics/ftgl \ libfreeimageplus.so:graphics/freeimage VIS_USE= GL=glesv2 DOXYGEN_IMPLIES= DOCS DOXYGEN_USE= TEX=latex:build DOXYGEN_BUILD_DEPENDS= bash:shells/bash \ doxygen:devel/doxygen \ dot:graphics/graphviz \ pdftex:print/tex-basic-engines \ inkscape:graphics/inkscape DOXYGEN_RUN_DEPENDS= ${LOCALBASE}/www/MathJax/MathJax.js:www/mathjax .include .if ${ARCH} == armv6 || ${ARCH} == armv7 || ${ARCH} == mips || ${ARCH} == powerpc || ${ARCH} == powerpcspe || ${ARCH} == "i386" BITS= 32 .else BITS= 64 .endif pre-everything:: @${ECHO_MSG} @${ECHO_MSG} "Warning: to build OpenCascade, you should have at least" @${ECHO_MSG} "2.6 Gb of free disk space in build area!" @${ECHO_MSG} pre-patch: ${REINPLACE_CMD} 's|||' \ ${WRKSRC}/src/BRepMesh/delabella.cpp\ ${WRKSRC}/src/OSD/OSD_MemInfo.cxx pre-configure: ${REINPLACE_CMD} -e 's|tclsh|${TCLSH}|' ${WRKSRC}/gendoc ${REINPLACE_CMD} -e 's|/usr/bin/|${LOCALBASE}/bin/|' ${WRKSRC}/adm/genconfdeps.tcl ${GREP} -rl x86_64 ${WRKSRC} | ${XARGS} ${REINPLACE_CMD} \ -e 's|x86_64|amd64|' .for es in ${ENVSH} ${REINPLACE_CMD} -e 's|lin|bsd|' ${WRKSRC}/${es} .endfor post-build-DOXYGEN-on: (cd ${WRKSRC} && ./gendoc -overview) post-install: ${MV} ${STAGEDIR}${OCCROOT}/bin/DRAWEXE-${PORTVERSION} ${STAGEDIR}${PREFIX}/bin/DRAWEXE (cd ${STAGEDIR}${PREFIX}/bin && \ ${LN} -sf DRAWEXE ${STAGEDIR}${OCCROOT}/bin/DRAWEXE) post-install-DOXYGEN-on: ${MKDIR} ${STAGEDIR}${DOCSDIR} (cd ${WRKSRC}/doc/overview && ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}) ${RM} -r ${STAGEDIR}${DOCSDIR}/latex ${RM} ${STAGEDIR}${DOCSDIR}/html/build_upgrade_building_3rdparty.html.bak .if defined(MAINTAINER_MODE) regression-test: install ${RM} -rf /tmp/testOCC ${MKDIR} /tmp/testOCC bash -c "\ cd ${OCCROOT} && . ${OCCROOT}/bin/env.sh && \ CSF_TestScriptsPath=${OCCROOT}/tests \ CSF_TestDataPath=${OCCROOT}/data \ DRAWEXE -f ${FILESDIR}/regtest " .endif .include diff --git a/graphics/libavif/Makefile b/graphics/libavif/Makefile index 30a6588d8e41..ad84a30c6fd2 100644 --- a/graphics/libavif/Makefile +++ b/graphics/libavif/Makefile @@ -1,59 +1,60 @@ PORTNAME= libavif DISTVERSIONPREFIX= v DISTVERSION= 0.9.3 +PORTREVISION= 1 CATEGORIES= graphics PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ PATCHFILES+= 2340cdb5f0c2.patch:-p1 # https://github.com/AOMediaCodec/libavif/pull/296 PATCHFILES+= dce4c2a5f4bb.patch:-p1 # https://github.com/AOMediaCodec/libavif/pull/783 MAINTAINER= jbeich@FreeBSD.org COMMENT= Library for encoding and decoding .avif files LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE LIB_DEPENDS= libpng.so:graphics/png USES= cmake:testing compiler:c11 cpe jpeg pkgconfig CPE_VENDOR= aomedia USE_GITHUB= yes USE_LDCONFIG= yes GH_ACCOUNT= AOMediaCodec CMAKE_ON= AVIF_BUILD_APPS CMAKE_TESTING_ON= AVIF_BUILD_TESTS CMAKE_TESTING_TARGET= avif_test_all OPTIONS_DEFINE= AOM DAV1D GAV1 LIBYUV PIXBUF RAV1E SVTAV1 OPTIONS_DEFAULT=AOM DAV1D PIXBUF OPTIONS_SUB= yes AOM_DESC= AV1 encoding/decoding via libaom AOM_LIB_DEPENDS= libaom.so:multimedia/aom AOM_CMAKE_BOOL= AVIF_CODEC_AOM DAV1D_DESC= AV1 decoding via libdav1d DAV1D_LIB_DEPENDS= libdav1d.so:multimedia/dav1d DAV1D_CMAKE_BOOL= AVIF_CODEC_DAV1D GAV1_DESC= AV1 decoding via libgav1 GAV1_LIB_DEPENDS= libgav1.so:multimedia/libgav1 GAV1_CMAKE_BOOL= AVIF_CODEC_LIBGAV1 LIBYUV_DESC= Colorspace conversion via libyuv LIBYUV_BUILD_DEPENDS= libyuv>=0.0.1774:graphics/libyuv LIBYUV_LIB_DEPENDS= libyuv.so:graphics/libyuv PIXBUF_USES= gnome PIXBUF_USE= GNOME=gdkpixbuf2 PIXBUF_CMAKE_BOOL= AVIF_BUILD_GDK_PIXBUF RAV1E_DESC= AV1 encoding via librav1e RAV1E_LIB_DEPENDS= librav1e.so:multimedia/librav1e RAV1E_CMAKE_BOOL= AVIF_CODEC_RAV1E SVTAV1_DESC= AV1 encoding via SVT-AV1 SVTAV1_LIB_DEPENDS= libSvtAv1Enc.so:multimedia/svt-av1 SVTAV1_CMAKE_BOOL= AVIF_CODEC_SVT .include diff --git a/graphics/libheif/Makefile b/graphics/libheif/Makefile index 3f761e8f08cc..06aa30faff61 100644 --- a/graphics/libheif/Makefile +++ b/graphics/libheif/Makefile @@ -1,52 +1,52 @@ PORTNAME= libheif DISTVERSIONPREFIX= v DISTVERSION= 1.10.0 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= graphics PATCH_SITES= https://github.com/${GH_ACCOUNT}/${GH_PROJECT}/commit/ PATCHFILES= b7caef96e012f6e516fee2e50a836b07b7c5a8fc.patch:-p1 \ 7976e1858a857e33200cd33d01689fd040de6d3d.patch:-p1 MAINTAINER= freebsd@sebastiansteinmetz.ch COMMENT= ISO/IEC 23008-12:2017 HEIF file format de- and encoder LICENSE= LGPL3+ LICENSE_FILE= ${WRKSRC}/COPYING USES= cmake compiler:c++11-lang cpe gettext-runtime gnome \ localbase:ldflags pkgconfig CPE_VENDOR= struktur USE_GNOME= gdkpixbuf2 glib20 USE_LDCONFIG= yes CMAKE_OFF= WITH_EXAMPLES USE_GITHUB= yes GH_ACCOUNT= strukturag OPTIONS_DEFINE= AOM DAV1D LIBDE265 RAV1E X265 OPTIONS_DEFAULT= AOM DAV1D LIBDE265 RAV1E X265 OPTIONS_SUB= yes AOM_DESC= AV1 encoding/decoding via libaom AOM_CMAKE_BOOL= WITH_AOM AOM_LIB_DEPENDS= libaom.so:multimedia/aom DAV1D_DESC= Build dav1e decoder DAV1D_CMAKE_BOOL= WITH_DAV1D DAV1D_LIB_DEPENDS= libdav1d.so:multimedia/dav1d LIBDE265_DESC= Use libde265 (support for HEVC decoding) LIBDE265_CMAKE_BOOL= WITH_LIBDE265 LIBDE265_LIB_DEPENDS= libde265.so:multimedia/libde265 RAV1E_DESC= Build rav1e encoder RAV1E_CMAKE_BOOL= WITH_RAV1E RAV1E_LIB_DEPENDS= librav1e.so:multimedia/librav1e X265_DESC= Use x265 (support for HEVC encoding) X265_CMAKE_BOOL= WITH_X265 X265_LIB_DEPENDS= libx265.so:multimedia/x265 .include diff --git a/mail/thunderbird/Makefile b/mail/thunderbird/Makefile index 0a4df0bb821e..fdd2d26f7d8a 100644 --- a/mail/thunderbird/Makefile +++ b/mail/thunderbird/Makefile @@ -1,73 +1,74 @@ # Created by: Joe Marcus Clarke PORTNAME= thunderbird DISTVERSION= 91.7.0 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= mail news net-im MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build2/source DISTFILES= ${DISTNAME}.source${EXTRACT_SUFX} MAINTAINER= gecko@FreeBSD.org COMMENT= Mozilla Thunderbird is standalone mail and news that stands above BUILD_DEPENDS= nspr>=4.32:devel/nspr \ nss>=3.68:security/nss \ icu>=67.1,1:devel/icu \ libevent>=2.1.8:devel/libevent \ harfbuzz>=2.8.1:print/harfbuzz \ graphite2>=1.3.14:graphics/graphite2 \ png>=1.6.37:graphics/png \ + dav1d>=1.0.0:multimedia/dav1d \ libvpx>=1.8.2:multimedia/libvpx \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \ v4l_compat>0:multimedia/v4l_compat \ autoconf-2.13:devel/autoconf213 \ nasm:devel/nasm \ yasm:devel/yasm \ zip:archivers/zip LIB_DEPENDS= libjson-c.so:devel/json-c \ libbotan-2.so:security/botan2 SSP_UNSAFE= yes USE_GECKO= gecko USE_MOZILLA= -sqlite CFLAGS_powerpc64le= -DSQLITE_BYTEORDER=1234 USES= tar:xz MOZ_OPTIONS= --enable-application=comm/mail --enable-official-branding MOZ_OPTIONS+= --with-system-bz2 --with-system-jsonc --with-system-botan MOZ_MK_OPTIONS= MOZ_THUNDERBIRD=1 MAIL_PKG_SHARED=1 MOZ_EXPORT= MOZ_THUNDERBIRD=1 MAIL_PKG_SHARED=1 PORTNAME_ICON= ${MOZILLA}.png PORTNAME_ICON_SRC= ${PREFIX}/lib/${MOZILLA}/chrome/icons/default/default48.png SYSTEM_PREFS= ${FAKEDIR}/lib/${PORTNAME}/defaults/pref/${PORTNAME}.js OPTIONS_DEFAULT=CANBERRA .include "${.CURDIR}/../../www/firefox/Makefile.options" .include post-extract: @${SED} -e 's|@PORTNAME_ICON@|${PORTNAME_ICON:R}|;s|@MOZILLA@|${MOZILLA}|' \ <${FILESDIR}/thunderbird.desktop.in >${WRKDIR}/${MOZILLA_EXEC_NAME}.desktop post-patch: @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/comm/mail/app/nsMailApp.cpp pre-configure: (cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13) (cd ${MOZSRC} && ${LOCALBASE}/bin/autoconf-2.13) (cd ${MOZSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13) port-pre-install: ${MKDIR} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/defaults post-install: ${INSTALL_DATA} ${WRKDIR}/${MOZILLA_EXEC_NAME}.desktop ${STAGEDIR}${PREFIX}/share/applications ${LN} -sf ${PORTNAME_ICON_SRC} ${STAGEDIR}${PREFIX}/share/pixmaps/${PORTNAME_ICON} .include diff --git a/mail/thunderbird/files/patch-bug1734058 b/mail/thunderbird/files/patch-bug1734058 new file mode 100644 index 000000000000..c3c16f135cba --- /dev/null +++ b/mail/thunderbird/files/patch-bug1734058 @@ -0,0 +1,45 @@ +commit 874adf9b96df +Author: Jon Bauman +Date: Tue Oct 26 17:11:36 2021 +0000 + + Bug 1734058 - Update dav1d to new version f52aee04fbd711cddab23d0aa9b196e9c963e7b8 from 2021-10-04 21:58:36. r=mjf,haik + + This is a fairly significant update, so required a few changes to Gecko code, but I've commented on the interesting details, so they should be easy to find + + Differential Revision: https://phabricator.services.mozilla.com/D129465 +--- + dom/media/platforms/agnostic/DAV1DDecoder.cpp | 7 +------ + image/decoders/nsAVIFDecoder.cpp | 1 + + 2 files changed, 2 insertions(+), 6 deletions(-) + +diff --git dom/media/platforms/agnostic/DAV1DDecoder.cpp dom/media/platforms/agnostic/DAV1DDecoder.cpp +index 459531fe8cf0..3c596b1fefe1 100644 +--- dom/media/platforms/agnostic/DAV1DDecoder.cpp ++++ dom/media/platforms/agnostic/DAV1DDecoder.cpp +@@ -37,13 +37,8 @@ RefPtr DAV1DDecoder::Init() { + } else if (mInfo.mDisplay.width >= 1024) { + decoder_threads = 4; + } +- settings.n_frame_threads = ++ settings.n_threads = + static_cast(std::min(decoder_threads, GetNumberOfProcessors())); +- // There is not much improvement with more than 2 tile threads at least with +- // the content being currently served. The ideal number of tile thread would +- // much the tile count of the content. Maybe dav1d can help to do that in the +- // future. +- settings.n_tile_threads = 2; + + int res = dav1d_open(&mContext, &settings); + if (res < 0) { +diff --git image/decoders/nsAVIFDecoder.cpp image/decoders/nsAVIFDecoder.cpp +index 9d1b7496a129..3bb9e8f8d08a 100644 +--- image/decoders/nsAVIFDecoder.cpp ++++ image/decoders/nsAVIFDecoder.cpp +@@ -581,6 +581,7 @@ class Dav1dDecoder final : AVIFDecoderInterface { + Dav1dSettings settings; + dav1d_default_settings(&settings); + settings.all_layers = 0; ++ settings.max_frame_delay = 1; + // TODO: tune settings a la DAV1DDecoder for AV1 (Bug 1681816) + + return dav1d_open(&mContext, &settings); diff --git a/multimedia/dav1d/Makefile b/multimedia/dav1d/Makefile index 8b2f8d3aa6b8..e10da65b57a0 100644 --- a/multimedia/dav1d/Makefile +++ b/multimedia/dav1d/Makefile @@ -1,49 +1,49 @@ PORTNAME= dav1d -DISTVERSION= 0.9.2 +DISTVERSION= 1.0.0 CATEGORIES= multimedia MAINTAINER= jbeich@FreeBSD.org COMMENT= Small and fast AV1 decoder LICENSE= BSD2CLAUSE LICENSE_FILE= ${WRKSRC}/COPYING BUILD_DEPENDS= ${BUILD_DEPENDS_${ARCH}} BUILD_DEPENDS_amd64= nasm:devel/nasm BUILD_DEPENDS_i386= nasm:devel/nasm USES= compiler:c11 meson USE_GITLAB= yes USE_LDCONFIG= yes GL_SITE= https://code.videolan.org GL_ACCOUNT= videolan -GL_COMMIT= 7b433e077298d0f4faf8da6d6eb5774e29bffa54 +GL_COMMIT= 99172b11470776177939c3d2bc366fe8d904eab7 LDFLAGS_i386= -Wl,-z,notext OPTIONS_DEFINE= SDL TEST OPTIONS_SUB= yes SDL_USES= pkgconfig sdl SDL_USE= SDL=sdl2 SDL_BUILD_DEPENDS= ${LOCALBASE}/include/vulkan/vulkan.h:graphics/vulkan-headers SDL_LIB_DEPENDS= libplacebo.so:graphics/libplacebo \ libvulkan.so:graphics/vulkan-loader SDL_MESON_TRUE= enable_examples -TEST_GL_TUPLE= videolan:dav1d-test-data:4fd8f87d7df509fda1af51e5e2f7c415692afaef:testdata/tests/dav1d-test-data +TEST_GL_TUPLE= videolan:dav1d-test-data:0214ee7342c646b238f98267adf8503c56d9df53:testdata/tests/dav1d-test-data TEST_MESON_TRUE=enable_tests testdata_tests .if make(makesum) # for optional distfiles .MAKEFLAGS: WITH="${OPTIONS_DEFINE}" .endif # https://bugs.llvm.org/show_bug.cgi?id=40635 .if !empty(CFLAGS:M-flto*) MESON_ARGS+= ${MESON_ARGS_${CHOSEN_COMPILER_TYPE}_${ARCH}} MESON_ARGS_clang_amd64= -Dstack_alignment=16 MESON_ARGS_clang_i386= -Dstack_alignment=4 .endif pre-install-TEST-on: do-test .include diff --git a/multimedia/dav1d/distinfo b/multimedia/dav1d/distinfo index e4f97bd645a7..ee9d1c38a8c4 100644 --- a/multimedia/dav1d/distinfo +++ b/multimedia/dav1d/distinfo @@ -1,5 +1,5 @@ -TIMESTAMP = 1630680156 -SHA256 (videolan-dav1d-7b433e077298d0f4faf8da6d6eb5774e29bffa54_GL0.tar.gz) = 0dd8de308248282f5743b2ceee0a8d57cc6cf4afcbd15708059c3ac2f600914a -SIZE (videolan-dav1d-7b433e077298d0f4faf8da6d6eb5774e29bffa54_GL0.tar.gz) = 1186989 -SHA256 (videolan-dav1d-test-data-4fd8f87d7df509fda1af51e5e2f7c415692afaef_GL0.tar.gz) = cc9247a79b9bd0231418dcd31f4d9fe29ac51bfae5d3cea1a131bb3e89835bd0 -SIZE (videolan-dav1d-test-data-4fd8f87d7df509fda1af51e5e2f7c415692afaef_GL0.tar.gz) = 50361909 +TIMESTAMP = 1647610281 +SHA256 (videolan-dav1d-99172b11470776177939c3d2bc366fe8d904eab7_GL0.tar.gz) = 411211625f44301c03858c395061ac87af6b3a0f02bdd3d599b4c87b123ccb27 +SIZE (videolan-dav1d-99172b11470776177939c3d2bc366fe8d904eab7_GL0.tar.gz) = 1375242 +SHA256 (videolan-dav1d-test-data-0214ee7342c646b238f98267adf8503c56d9df53_GL0.tar.gz) = 1399a5a8ddfc8b22c320e30d731c82fce6d962fa28cd16236a742903c969ebe7 +SIZE (videolan-dav1d-test-data-0214ee7342c646b238f98267adf8503c56d9df53_GL0.tar.gz) = 50909709 diff --git a/multimedia/dav1d/pkg-plist b/multimedia/dav1d/pkg-plist index 6a48c23511f3..18128a512c72 100644 --- a/multimedia/dav1d/pkg-plist +++ b/multimedia/dav1d/pkg-plist @@ -1,12 +1,12 @@ bin/dav1d %%SDL%%bin/dav1dplay include/dav1d/common.h include/dav1d/data.h include/dav1d/dav1d.h include/dav1d/headers.h include/dav1d/picture.h include/dav1d/version.h lib/libdav1d.so -lib/libdav1d.so.5 -lib/libdav1d.so.5.1.1 +lib/libdav1d.so.6 +lib/libdav1d.so.6.6.0 libdata/pkgconfig/dav1d.pc diff --git a/multimedia/emby-server/Makefile b/multimedia/emby-server/Makefile index 358f6ea46a72..330969b909fb 100644 --- a/multimedia/emby-server/Makefile +++ b/multimedia/emby-server/Makefile @@ -1,125 +1,126 @@ PORTNAME= emby-server DISTVERSION= 4.6.7.0 +PORTREVISION= 1 CATEGORIES= multimedia MASTER_SITES= https://github.com/MediaBrowser/Emby.Releases/releases/download/${PORTVERSION}/ \ https://mediabrowser.github.io/embytools/ DISTNAME= embyserver-netframework_${PORTVERSION} DISTFILES= ${DISTNAME}.zip \ ffdetect-${FFVERSION}-x64_freebsd13.tar.xz \ ffmpeg-${FFVERSION}.tar.gz \ license.docx DIST_SUBDIR= ${PORTNAME} EXTRACT_ONLY= ${DISTNAME}.zip \ ffdetect-${FFVERSION}-x64_freebsd13.tar.xz \ ffmpeg-${FFVERSION}.tar.gz MAINTAINER= driesm@FreeBSD.org COMMENT= Media server to organize, play & stream audio/video to various devices LICENSE= UNKNOWN LICENSE_NAME= custom LICENSE_FILE= ${DISTDIR}/${DIST_SUBDIR}/license.docx LICENSE_PERMS= dist-mirror no-dist-sell pkg-mirror no-pkg-sell auto-accept ONLY_FOR_ARCHS= amd64 BUILD_DEPENDS= nasm:devel/nasm LIB_DEPENDS= libass.so:multimedia/libass \ libdav1d.so:multimedia/dav1d \ libdrm.so:graphics/libdrm \ libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libfribidi.so:converters/fribidi \ libgnutls.so:security/gnutls \ libmfx.so:multimedia/intel-media-sdk \ libogg.so:audio/libogg \ libopus.so:audio/opus \ libpng.so:graphics/png \ libraw.so:graphics/libraw \ libtheora.so:multimedia/libtheora \ libva.so:multimedia/libva \ libvorbis.so:audio/libvorbis \ libvpx.so:multimedia/libvpx \ libwebp.so:graphics/webp \ libx264.so:multimedia/libx264 \ libx265.so:multimedia/x265 \ libzvbi.so:devel/libzvbi RUN_DEPENDS= mono6.8>0:lang/mono6.8 USES= compiler:c11 gmake iconv localbase:ldflags pkgconfig sqlite USE_RC_SUBR= ${PORTNAME} HAS_CONFIGURE= yes CONFIGURE_ARGS= --cc="${CC}" \ --disable-alsa \ --disable-doc \ --disable-ffplay \ --disable-libxcb \ --disable-outdev=xv \ --disable-sdl2 \ --disable-shared \ --disable-sndio \ --disable-v4l2-m2m \ --disable-vdpau \ --disable-xlib \ --enable-fontconfig \ --enable-gnutls \ --enable-gpl \ --enable-iconv \ --enable-libass \ --enable-libdav1d \ --enable-libdrm \ --enable-libfreetype \ --enable-libfribidi \ --enable-libmfx \ --enable-libopus \ --enable-libtheora \ --enable-libvorbis \ --enable-libvpx \ --enable-libwebp \ --enable-libx264 \ --enable-libx265 \ --enable-libzvbi \ --enable-optimizations \ --enable-static \ --enable-vaapi \ --enable-version3 MAKE_ENV= V=1 NOPRECIOUSMAKEVARS= yes SUB_FILES= ImageMagickSharp.dll.config \ SQLitePCLRaw.provider.sqlite3.dll.config SUB_LIST= GROUP=${GROUPS} \ PORTNAME=${PORTNAME} \ RC_NAME=emby_server \ USER=${USERS} WRKSRC= ${WRKDIR}/ffmpeg-${FFVERSION}_public USERS= emby GROUPS= emby OPTIONS_DEFINE= LAME X11 OPTIONS_DEFAULT= LAME X11 LAME_LIB_DEPENDS= libmp3lame.so:audio/lame LAME_CONFIGURE_ENABLE= libmp3lame X11_USES= xorg magick:6 X11_USES_OFF= magick:6,nox11 X11_USE= xorg=x11 FFVERSION= 2021_02_27 do-install: @${MKDIR} ${STAGEDIR}${PREFIX}/lib/emby-server/system (${INSTALL_DATA} ${WRKDIR}/ImageMagickSharp.dll.config ${STAGEDIR}${PREFIX}/lib/emby-server/system) (${INSTALL_DATA} ${WRKDIR}/SQLitePCLRaw.provider.sqlite3.dll.config ${STAGEDIR}${PREFIX}/lib/emby-server/system) (cd ${WRKDIR}/system && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/lib/emby-server/system) @${MKDIR} ${STAGEDIR}${PREFIX}/lib/emby-server/bin (${INSTALL_PROGRAM} ${WRKDIR}/bin/ffdetect ${STAGEDIR}${PREFIX}/lib/emby-server/bin) (${INSTALL_PROGRAM} ${WRKSRC}/ffmpeg ${STAGEDIR}${PREFIX}/lib/emby-server/bin) (${INSTALL_PROGRAM} ${WRKSRC}/ffprobe ${STAGEDIR}${PREFIX}/lib/emby-server/bin) .include diff --git a/multimedia/ffmpeg/Makefile b/multimedia/ffmpeg/Makefile index 2391d0ec85a3..1563cbd91338 100644 --- a/multimedia/ffmpeg/Makefile +++ b/multimedia/ffmpeg/Makefile @@ -1,648 +1,648 @@ # Created by: Martin Matuska PORTNAME= ffmpeg PORTVERSION= 4.4.1 -PORTREVISION= 4 +PORTREVISION= 5 PORTEPOCH= 1 CATEGORIES= multimedia audio net MASTER_SITES= https://ffmpeg.org/releases/ MAINTAINER= multimedia@FreeBSD.org COMMENT= Realtime audio/video encoder/converter and streaming server LICENSE= GPLv2+ LGPL21+ LICENSE_COMB= multi BUILD_DEPENDS= ${BUILD_DEPENDS_${ARCH}} BUILD_DEPENDS_aarch64= as:devel/binutils BUILD_DEPENDS_amd64= nasm:devel/nasm BUILD_DEPENDS_armv6= as:devel/binutils BUILD_DEPENDS_armv7= as:devel/binutils BUILD_DEPENDS_i386= nasm:devel/nasm BUILD_DEPENDS_powerpc64=as:devel/binutils BUILD_DEPENDS_powerpc= as:devel/binutils HAS_CONFIGURE= yes CONFIGURE_LOG= ffbuild/config.log USES= compiler:c11 cpe gmake localbase:ldflags perl5 \ pkgconfig shebangfix tar:xz USE_LDCONFIG= yes USE_PERL5= build SHEBANG_FILES= doc/texi2pod.pl NOPRECIOUSMAKEVARS= yes # ARCH PORTSCOUT= limit:^4\. # Option CHROMAPRINT disabled, it cannot work and people are baffled. OPTIONS_DEFINE= ALSA AMR_NB AMR_WB AOM ARIBB24 ASM ASS BS2B CACA CDIO \ CODEC2 DAV1D DAVS2 DC1394 DEBUG DOCS DRM FDK_AAC FLITE \ FONTCONFIG FREETYPE FREI0R FRIBIDI GLSLANG GME GSM ICONV ILBC \ JACK KLVANC KVAZAAR LADSPA LAME LENSFUN LIBBLURAY LIBRSVG2 \ LIBXML2 LTO LV2 MFX MODPLUG MYSOFA OPENAL OPENCL OPENGL \ OPENH264 OPENJPEG OPENMPT OPENVINO OPTIMIZED_CFLAGS OPUS POCKETSPHINX \ PULSEAUDIO RAV1E RABBITMQ RIST RTCPU RUBBERBAND SDL SMB SNAPPY \ SNDIO SOXR SPEEX SRT SSH SVTAV1 SVTHEVC SVTVP9 TENSORFLOW \ TESSERACT THEORA TWOLAME UAVS3D V4L VAAPI VAPOURSYNTH VDPAU VIDSTAB \ VMAF VO_AMRWBENC VORBIS VPX VULKAN WEBP X264 X265 \ XAVS2 XCB XVID XVIDEO ZIMG ZMQ ZVBI OPTIONS_DEFAULT= AOM ASM ASS DAV1D DRM FONTCONFIG FREETYPE FREI0R GMP \ GNUTLS ICONV LAME LIBXML2 OPTIMIZED_CFLAGS OPUS RTCPU \ THEORA V4L VAAPI VDPAU VMAF VORBIS VPX X264 X265 XCB XVID # i386 is too register-starved for LTO (PR257124) OPTIONS_EXCLUDE_i386= LTO .if !exists(${.CURDIR:H:H}/multimedia/aribb24) # https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/100bfac6d6ec OPTIONS_EXCLUDE+= ARIBB24 .endif .if !exists(${.CURDIR:H:H}/multimedia/davs2) # https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/5985a1bf7233 OPTIONS_EXCLUDE+= DAVS2 .endif .if !exists(${.CURDIR:H:H}/multimedia/uavs3d) # https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/c952db9d68d3 OPTIONS_EXCLUDE+= UAVS3D .endif .if !exists(${.CURDIR:H:H}/multimedia/xavs2) # https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/85a921f4618 OPTIONS_EXCLUDE+= XAVS2 .endif .if !exists(${.CURDIR:H:H}/multimedia/klvanc) # https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/8732dfa9954 OPTIONS_EXCLUDE+= KLVANC .endif .if !exists(${.CURDIR:H:H}/science/openvino) # https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/ff37ebaf30e6 OPTIONS_EXCLUDE+= OPENVINO .endif .if !exists(${.CURDIR:H:H}/science/tensorflow) # https://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff/d8c0bbb0aa4 OPTIONS_EXCLUDE+= TENSORFLOW .endif OPTIONS_RADIO= RTMP SSL OPTIONS_RADIO_RTMP= GCRYPT GMP LIBRTMP OPTIONS_RADIO_SSL= GNUTLS MBEDTLS OPENSSL OPTIONS_GROUP= LICENSE OPTIONS_GROUP_LICENSE= GPL3 NONFREE ASS_DESC= Subtitles rendering via libass AOM_DESC= AV1 video encoding/decoding via libaom ARIBB24_DESC= ARIB text and caption decoding via libaribb24 BS2B_DESC= Bauer Stereophonic-to-Binaural filter CHROMAPRINT_DESC= Audio fingerprinting with chromaprint CODEC2_DESC= Codec 2 audio encoding/decoding via libcodec2 DAV1D_DESC= AV1 video decoding via libdav1d DAVS2_DESC= AVS2 decoding via libdavs2 DC1394_DESC= IIDC-1394 grabbing using libdc1394 DRM_DESC= KMS grabbing using libdrm FDK_AAC_DESC= AAC audio encoding via Fraunhofer FDK FLITE_DESC= Voice synthesis support via libflite GLSLANG_DESC= GLSL->SPIRV compilation via libglslang GME_DESC= Game Music Emu demuxer GPL3_DESC= Allow (L)GPL version 3 code(cs) ILBC_DESC= Internet Low Bit Rate codec KLVANC_DESC= Kernel Labs VANC processing KVAZAAR_DESC= H.265 video codec support via Kvazaar LICENSE_DESC= Licensing options LV2_DESC= LV2 audio filtering MFX_DESC= Intel MediaSDK (aka Quick Sync Video) MYSOFA_DESC= SOFAlizer binaural filter NONFREE_DESC= Allow use of nonfree code OPENMPT_DESC= Decoding tracked files via libopenmpt OPENH264_DESC= H.264 video codec support via OpenH264 OPENVINO_DESC= OpenVINO as a DNN module backend for DNN based filters like dnn_processing POCKETSPHINX_DESC= Automatic Speech Recognition via PocketSphinx RAV1E_DESC= AV1 encoding via librav1e RABBITMQ_DESC= AMQP 0-9-1 protocol via RabbitMQ RIST_DESC= Reliable Internet Stream Transport protocol via librist RUBBERBAND_DESC=Time-stretching and pitch-shifting with librubberband RTCPU_DESC= Detect CPU capabilities at runtime RTMP_DESC= RTMP(T)E protocol support SRT_DESC= Haivision SRT protocol via libsrt SVTAV1_DESC= AV1 encoding via SVT-AV1 SVTHEVC_DESC= HEVC encoding via SVT-HEVC SVTVP9_DESC= VP9 encoding via SVT-VP9 LIBRTMP_DESC= ${RTMP_DESC} via librtmp TENSORFLOW_DESC=TensorFlow as a DNN module backend for DNN based filters like sr TESSERACT_DESC= Optical Character Recognition via Tesseract UAVS3D_DESC= AVS3 decoding via libuavs3d VAPOURSYNTH_DESC= VapourSynth demuxer VIDSTAB_DESC= Video stabilization filter VMAF_DESC= VMAF filter via libvmaf VULKAN_DESC= Vulkan filters XAVS2_DESC= AVS2 encoding via libxavs2 XCB_DESC= X11 grabbing using XCB ZIMG_DESC= "z" library video scaling filter ZMQ_DESC= Message passing via libzmq${ZMQ_VERSION} ZVBI_DESC= Teletext support via libzvbi OPTIONS_SUB= yes # alsa ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_CONFIGURE_ENABLE= alsa # Opencore AMR NB AMR_NB_LIB_DEPENDS= libopencore-amrnb.so:audio/opencore-amr AMR_NB_CONFIGURE_ENABLE= libopencore-amrnb AMR_NB_IMPLIES= GPL3 # Opencore AMR WB AMR_WB_LIB_DEPENDS= libopencore-amrwb.so:audio/opencore-amr AMR_WB_CONFIGURE_ENABLE= libopencore-amrwb AMR_WB_IMPLIES= GPL3 # aom AOM_LIB_DEPENDS= libaom.so:multimedia/aom AOM_CONFIGURE_ENABLE= libaom # arib ARIBB24_LIB_DEPENDS= libaribb24.so:multimedia/aribb24 ARIBB24_CONFIGURE_ENABLE= libaribb24 # asm support ASM_CONFIGURE_ENABLE= asm # ass ASS_LIB_DEPENDS= libass.so:multimedia/libass ASS_CONFIGURE_ENABLE= libass # bs2b BS2B_LIB_DEPENDS= libbs2b.so:audio/libbs2b BS2B_CONFIGURE_ENABLE= libbs2b # caca CACA_LIB_DEPENDS= libcaca.so:graphics/libcaca CACA_CONFIGURE_ENABLE= libcaca # cdio CDIO_LIB_DEPENDS= libcdio_paranoia.so:sysutils/libcdio-paranoia CDIO_CONFIGURE_ENABLE= libcdio # chromaprint CHROMAPRINT_BROKEN= Dependency loop CHROMAPRINT_LIB_DEPENDS= libchromaprint.so:audio/chromaprint CHROMAPRINT_CONFIGURE_ENABLE= chromaprint # codec2 CODEC2_LIB_DEPENDS= libcodec2.so:audio/codec2 CODEC2_CONFIGURE_ENABLE= libcodec2 # dav1d DAV1D_LIB_DEPENDS= libdav1d.so:multimedia/dav1d DAV1D_CONFIGURE_ENABLE= libdav1d # davs2 DAVS2_LIB_DEPENDS= libdavs2.so:multimedia/davs2 DAVS2_CONFIGURE_ENABLE= libdavs2 # dc1394 DC1394_LIB_DEPENDS= libdc1394.so:multimedia/libdc1394 DC1394_CONFIGURE_ENABLE= libdc1394 # debugging DEBUG_CONFIGURE_ON= --disable-stripping DEBUG_CONFIGURE_OFF= --disable-debug # docs DOCS_BUILD_DEPENDS= texi2html:textproc/texi2html DOCS_CONFIGURE_ENABLE= htmlpages # drm DRM_LIB_DEPENDS= libdrm.so:graphics/libdrm DRM_CONFIGURE_ENABLE= libdrm # fdk_aac FDK_AAC_LIB_DEPENDS= libfdk-aac.so:audio/fdk-aac FDK_AAC_CONFIGURE_ENABLE= libfdk-aac FDK_AAC_IMPLIES= NONFREE # flite FLITE_LIB_DEPENDS= libflite.so:audio/flite FLITE_CONFIGURE_ENABLE= libflite # fontconfig FONTCONFIG_LIB_DEPENDS= libfontconfig.so:x11-fonts/fontconfig FONTCONFIG_CONFIGURE_ENABLE= fontconfig # freetype FREETYPE_LIB_DEPENDS= libfreetype.so:print/freetype2 FREETYPE_CONFIGURE_ENABLE= libfreetype # frei0r FREI0R_BUILD_DEPENDS= ${LOCALBASE}/include/frei0r.h:graphics/frei0r FREI0R_CONFIGURE_ENABLE= frei0r # fribidi FRIBIDI_LIB_DEPENDS= libfribidi.so:converters/fribidi FRIBIDI_CONFIGURE_ENABLE= libfribidi # gcrypt GCRYPT_LIB_DEPENDS= libgcrypt.so:security/libgcrypt GCRYPT_CONFIGURE_ENABLE= gcrypt # glslang GLSLANG_BUILD_DEPENDS= glslang>0:graphics/glslang \ spirv-tools>0:graphics/spirv-tools GLSLANG_CONFIGURE_ENABLE= libglslang GLSLANG_LDFLAGS= -lm # gnutls GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls GNUTLS_CONFIGURE_ENABLE= gnutls # gme GME_LIB_DEPENDS= libgme.so:audio/libgme GME_CONFIGURE_ENABLE= libgme # gmp GMP_LIB_DEPENDS= libgmp.so:math/gmp GMP_CONFIGURE_ENABLE= gmp GMP_IMPLIES= GPL3 # gsm GSM_LIB_DEPENDS= libgsm.so:audio/gsm GSM_CONFIGURE_ENABLE= libgsm # iconv ICONV_USES= iconv ICONV_CONFIGURE_ENABLE= iconv # ilbc ILBC_LIB_DEPENDS= libilbc.so:net/libilbc ILBC_CONFIGURE_ENABLE= libilbc # jack JACK_LIB_DEPENDS= libjack.so:audio/jack JACK_CONFIGURE_ENABLE= libjack # klvanc KLVANC_LIB_DEPENDS= libklvanc.so:multimedia/libklvanc KLVANC_CONFIGURE_ENABLE= libklvanc # kvazaar KVAZAAR_LIB_DEPENDS= libkvazaar.so:multimedia/kvazaar KVAZAAR_CONFIGURE_ENABLE= libkvazaar # ladspa LADSPA_BUILD_DEPENDS= ${LOCALBASE}/include/ladspa.h:audio/ladspa LADSPA_RUN_DEPENDS= ${LOCALBASE}/lib/ladspa/amp.so:audio/ladspa LADSPA_CONFIGURE_ENABLE= ladspa # lame LAME_LIB_DEPENDS= libmp3lame.so:audio/lame LAME_CONFIGURE_ENABLE= libmp3lame # lensfun LENSFUN_LIB_DEPENDS= liblensfun.so:graphics/lensfun LENSFUN_CONFIGURE_ENABLE= liblensfun # libbluray LIBBLURAY_LIB_DEPENDS= libbluray.so:multimedia/libbluray LIBBLURAY_CONFIGURE_ENABLE= libbluray # librsvg LIBRSVG2_USES= gnome LIBRSVG2_USE= GNOME=cairo,librsvg2 LIBRSVG2_CONFIGURE_ENABLE= librsvg # libxml LIBXML2_LIB_DEPENDS= libxml2.so:textproc/libxml2 LIBXML2_CONFIGURE_ENABLE= libxml2 # lto LTO_CONFIGURE_ENABLE= lto # lv2 LV2_BUILD_DEPENDS= lv2>0:audio/lv2 LV2_LIB_DEPENDS= liblilv-0.so:audio/lilv LV2_CONFIGURE_ENABLE= lv2 # libv4l V4L_BUILD_DEPENDS= v4l_compat>0:multimedia/v4l_compat V4L_LIB_DEPENDS= libv4l2.so:multimedia/libv4l V4L_CONFIGURE_ENABLE= libv4l2 V4L_CONFIGURE_OFF= --disable-indev=v4l2 \ --disable-outdev=v4l2 # mbedtls MBEDTLS_LIB_DEPENDS= libmbedtls.so:security/mbedtls MBEDTLS_CONFIGURE_ENABLE= mbedtls # mfx MFX_LIB_DEPENDS= libmfx.so:multimedia/intel-media-sdk MFX_CONFIGURE_ENABLE= libmfx # modplug MODPLUG_LIB_DEPENDS= libmodplug.so:audio/libmodplug MODPLUG_CONFIGURE_ENABLE= libmodplug # mysofa MYSOFA_LIB_DEPENDS= libmysofa.so:audio/libmysofa MYSOFA_CONFIGURE_ENABLE= libmysofa # OpenAL OPENAL_LIB_DEPENDS= libopenal.so:audio/openal-soft OPENAL_CONFIGURE_ENABLE= openal # opencl OPENCL_BUILD_DEPENDS= ${LOCALBASE}/include/CL/opencl.h:devel/opencl OPENCL_LIB_DEPENDS= libOpenCL.so:devel/ocl-icd OPENCL_CONFIGURE_ENABLE= opencl # opengl OPENGL_USES= gl OPENGL_USE= GL=gl OPENGL_CONFIGURE_ENABLE= opengl # openh264 OPENH264_LIB_DEPENDS= libopenh264.so:multimedia/openh264 OPENH264_CONFIGURE_ENABLE= libopenh264 # openjpeg OPENJPEG_LIB_DEPENDS= libopenjp2.so:graphics/openjpeg OPENJPEG_CONFIGURE_ENABLE= libopenjpeg # openmpt OPENMPT_LIB_DEPENDS= libopenmpt.so:audio/libopenmpt OPENMPT_CONFIGURE_ENABLE= libopenmpt # openssl/libtls OPENSSL_USES= ssl OPENSSL_CONFIGURE_ENABLE= ${"${SSL_DEFAULT:Mlibressl*}"!="":?libtls:openssl} OPENSSL_IMPLIES= NONFREE # openvino OPENVINO_LIB_DEPENDS= libinference_engine_c_api.so:science/openvino OPENVINO_CONFIGURE_ENABLE= libopenvino # optimizations OPTIMIZED_CFLAGS_CONFIGURE_ENABLE= optimizations # opus OPUS_LIB_DEPENDS= libopus.so:audio/opus OPUS_CONFIGURE_ENABLE= libopus # pocketsphinx POCKETSPHINX_LIB_DEPENDS= libpocketsphinx.so:audio/pocketsphinx POCKETSPHINX_CONFIGURE_ENABLE= pocketsphinx POCKETSPHINX_BROKEN= pocketsphinx < 5prealpha is not supported # pulseaudio PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CONFIGURE_ENABLE= libpulse # rav1e RAV1E_LIB_DEPENDS= librav1e.so:multimedia/librav1e RAV1E_CONFIGURE_ENABLE= librav1e # rabbitmq RABBITMQ_LIB_DEPENDS= librabbitmq.so:net/rabbitmq-c RABBITMQ_CONFIGURE_ENABLE= librabbitmq # rist RIST_LIB_DEPENDS= librist.so:multimedia/librist RIST_CONFIGURE_ENABLE= librist # rubberband RUBBERBAND_LIB_DEPENDS= librubberband.so:audio/rubberband RUBBERBAND_CONFIGURE_ENABLE= librubberband # rtcpu RTCPU_CONFIGURE_ENABLE= runtime-cpudetect # rtmp LIBRTMP_LIB_DEPENDS= librtmp.so:multimedia/librtmp LIBRTMP_CONFIGURE_ENABLE= librtmp # sdl SDL_USES= sdl SDL_USE= SDL=sdl2 SDL_CONFIGURE_ENABLE= sdl2 # smbclient SMB_USES= samba:lib SMB_CONFIGURE_ENABLE= libsmbclient SMB_IMPLIES= GPL3 # snappy SNAPPY_LIB_DEPENDS= libsnappy.so:archivers/snappy SNAPPY_CONFIGURE_ENABLE= libsnappy # sndio SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_CONFIGURE_ENABLE= sndio # soxr SOXR_LIB_DEPENDS= libsoxr.so:audio/libsoxr SOXR_CONFIGURE_ENABLE= libsoxr # speex SPEEX_LIB_DEPENDS= libspeex.so:audio/speex SPEEX_CONFIGURE_ENABLE= libspeex # ssh SSH_LIB_DEPENDS= libssh.so:security/libssh SSH_CONFIGURE_ENABLE= libssh # srt SRT_LIB_DEPENDS= libsrt.so:www/srt SRT_CONFIGURE_ENABLE= libsrt # svt-av1 SVTAV1_LIB_DEPENDS= libSvtAv1Enc.so:multimedia/svt-av1 SVTAV1_CONFIGURE_ON= --enable-libsvtav1 # svt-hevc SVTHEVC_LIB_DEPENDS= libSvtHevcEnc.so:multimedia/svt-hevc SVTHEVC_CONFIGURE_ON= --enable-libsvthevc SVTHEVC_PATCH_SITES= https://github.com/OpenVisualCloud/SVT-HEVC/raw/v1.5.0-3-g86b58f77/ffmpeg_plugin/:svthevc SVTHEVC_PATCHFILES= 0001-lavc-svt_hevc-add-libsvt-hevc-encoder-wrapper.patch:-p1:svthevc \ 0002-doc-Add-libsvt_hevc-encoder-docs.patch:-p1:svthevc .if make(makesum) .MAKEFLAGS: WITH+=SVTHEVC .endif # svt-vp9 SVTVP9_LIB_DEPENDS= libSvtVp9Enc.so:multimedia/svt-vp9 SVTVP9_CONFIGURE_ON= --enable-libsvtvp9 SVTVP9_PATCH_SITES= https://github.com/OpenVisualCloud/SVT-VP9/raw/v0.3.0-4-gabd5c59/ffmpeg_plugin/:svtvp9 SVTVP9_PATCHFILES= master-0001-Add-ability-for-ffmpeg-to-run-svt-vp9.patch:-p1:svtvp9 .if make(makesum) .MAKEFLAGS: WITH+=SVTVP9 .endif # tensorflow TENSORFLOW_LIB_DEPENDS= libtensorflow.so:science/tensorflow TENSORFLOW_CONFIGURE_ENABLE= libtensorflow # tesseract TESSERACT_LIB_DEPENDS= libtesseract.so:graphics/tesseract TESSERACT_CONFIGURE_ENABLE= libtesseract # theora THEORA_LIB_DEPENDS= libtheora.so:multimedia/libtheora THEORA_CONFIGURE_ENABLE= libtheora # twolame TWOLAME_LIB_DEPENDS= libtwolame.so:audio/twolame TWOLAME_CONFIGURE_ENABLE= libtwolame # uavs3d UAVS3D_LIB_DEPENDS= libuavs3d.so:multimedia/uavs3d UAVS3D_CONFIGURE_ENABLE= libuavs3d # vaapi VAAPI_LIB_DEPENDS= libva.so:multimedia/libva VAAPI_CONFIGURE_ENABLE= vaapi # vapoursynth VAPOURSYNTH_LIB_DEPENDS= libvapoursynth-script.so:multimedia/vapoursynth VAPOURSYNTH_CONFIGURE_ENABLE= vapoursynth # vdpau VDPAU_USES= xorg VDPAU_USE= XORG=x11 VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau VDPAU_CONFIGURE_ENABLE= vdpau # vmaf VMAF_LIB_DEPENDS= libvmaf.so:multimedia/vmaf VMAF_CONFIGURE_ENABLE= libvmaf # vo-amrwbenc VO_AMRWBENC_LIB_DEPENDS= libvo-amrwbenc.so:audio/vo-amrwbenc VO_AMRWBENC_CONFIGURE_ENABLE= libvo-amrwbenc VO_AMRWBENC_IMPLIES= GPL3 # vid.stab VIDSTAB_LIB_DEPENDS= libvidstab.so:multimedia/vid.stab VIDSTAB_CONFIGURE_ENABLE= libvidstab # vorbis VORBIS_LIB_DEPENDS= libvorbisenc.so:audio/libvorbis VORBIS_CONFIGURE_ENABLE= libvorbis # vp8 VPX_LIB_DEPENDS= libvpx.so:multimedia/libvpx VPX_CONFIGURE_ENABLE= libvpx # vulkan VULKAN_BUILD_DEPENDS= vulkan-headers>0:graphics/vulkan-headers VULKAN_LIB_DEPENDS= libvulkan.so:graphics/vulkan-loader VULKAN_CONFIGURE_ENABLE= vulkan VULKAN_IMPLIES= GLSLANG # webp WEBP_LIB_DEPENDS= libwebp.so:graphics/webp WEBP_CONFIGURE_ENABLE= libwebp # x264 X264_LIB_DEPENDS= libx264.so:multimedia/libx264 X264_CONFIGURE_ENABLE= libx264 # x265 X265_LIB_DEPENDS= libx265.so:multimedia/x265 X265_CONFIGURE_ENABLE= libx265 # xavs2 XAVS2_LIB_DEPENDS= libxavs2.so:multimedia/xavs2 XAVS2_CONFIGURE_ENABLE= libxavs2 # xcb XCB_USES= xorg XCB_USE= XORG=xcb XCB_CONFIGURE_ENABLE= libxcb # xvid XVID_LIB_DEPENDS= libxvidcore.so:multimedia/xvid XVID_CONFIGURE_ENABLE= libxvid # xv XVIDEO_USES= xorg XVIDEO_USE= XORG=x11,xext,xv XVIDEO_CONFIGURE_OFF= --disable-outdev=xv # zimg ZIMG_LIB_DEPENDS= libzimg.so:graphics/sekrit-twc-zimg ZIMG_CONFIGURE_ENABLE= libzimg # zmq ZMQ_LIB_DEPENDS= libzmq.so:net/libzmq${ZMQ_VERSION} ZMQ_CONFIGURE_ENABLE= libzmq ZMQ_VERSION?= 4 # zvbi ZVBI_LIB_DEPENDS= libzvbi.so:devel/libzvbi ZVBI_CONFIGURE_ENABLE= libzvbi # License knobs GPL3_CONFIGURE_ENABLE= version3 GPL3_VARS= LICENSE="GPLv3+ LGPL3+" LICENSE_FILE_GPLv3+ = ${WRKSRC}/COPYING.GPLv3 LICENSE_FILE_LGPL3+ = ${WRKSRC}/COPYING.LGPLv3 NONFREE_CONFIGURE_ENABLE=nonfree INSTALL_TARGET= install-progs install-doc install-data \ install-libs install-headers install-examples DATADIR= ${PREFIX}/share/${PORTNAME}${PKGNAMESUFFIX} DOCSDIR= ${PREFIX}/share/doc/${PORTNAME}${PKGNAMESUFFIX} MAKE_ENV+= V=1 LDFLAGS_aarch64=-Wl,-z,notext LDFLAGS_armv6= -Wl,-z,notext LDFLAGS_armv7= -Wl,-z,notext LDFLAGS_i386= -Wl,-z,notext CONFIGURE_ARGS+=--prefix="${PREFIX}" \ --mandir="${PREFIX}/man" \ --datadir="${DATADIR}" \ --pkgconfigdir="${PREFIX}/libdata/pkgconfig" \ --disable-static \ --disable-libcelt \ --enable-shared \ --enable-pic \ --enable-gpl \ --enable-avresample \ --cc="${CC}" \ --cxx="${CXX}" DOC_FILES= Changelog CREDITS INSTALL.md LICENSE.md MAINTAINERS \ README.md RELEASE_NOTES # under doc subdirectory DOC_DOCFILES= APIchanges *.txt PORTDOCS= * .include .if ${PORT_OPTIONS:MNONFREE} LICENSE+= NONFREE LICENSE_COMB= multi LICENSE_NAME_NONFREE= Non free code LICENSE_TEXT_NONFREE= enabling OPENSSL or FDK_AAC restricts redistribution LICENSE_PERMS_NONFREE= auto-accept .endif .include .if ${ARCH} == powerpc64 && ${PORT_OPTIONS:MLTO} && ${CHOSEN_COMPILER_TYPE} == clang USE_GCC= yes .endif post-install: (cd ${WRKSRC} && ${COPYTREE_SHARE} \ "${DOC_FILES}" ${STAGEDIR}${DOCSDIR}) (cd ${WRKSRC}/doc && ${COPYTREE_SHARE} \ "${DOC_DOCFILES}" ${STAGEDIR}${DOCSDIR}) .include diff --git a/multimedia/gstreamer1-plugins-rust/Makefile b/multimedia/gstreamer1-plugins-rust/Makefile index e047d18687f9..2d45b6bc34cc 100644 --- a/multimedia/gstreamer1-plugins-rust/Makefile +++ b/multimedia/gstreamer1-plugins-rust/Makefile @@ -1,438 +1,438 @@ PORTNAME= gstreamer1-plugins-rust DISTVERSION= 0.7.2 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= multimedia MAINTAINER= jbeich@FreeBSD.org COMMENT= Various GStreamer plugins written in Rust LICENSE= LGPL21+ MIT LICENSE_COMB= multi LICENSE_FILE_MIT= ${WRKSRC}/LICENSE-MIT LICENSE_FILE_LGPL21+ = ${WRKSRC}/LICENSE-LGPLv2 BUILD_DEPENDS= cargo-cbuild:devel/cargo-c USES= cargo gnome meson pkgconfig ssl USE_GITLAB= yes USE_GNOME= glib20 USE_GSTREAMER1= yes GL_SITE= https://gitlab.freedesktop.org GL_ACCOUNT= gstreamer GL_PROJECT= gst-plugins-rs GL_COMMIT= d0466b3eee114207f851b37cae0015c0e718f021 MAKE_ENV= ${CARGO_ENV} CARGO_CRATES= adler-1.0.2 \ adler32-1.2.0 \ aho-corasick-0.7.18 \ ansi_term-0.11.0 \ ansi_term-0.12.1 \ anyhow-1.0.43 \ arbitrary-0.4.7 \ arg_enum_proc_macro-0.3.1 \ array-init-2.0.0 \ arrayvec-0.5.2 \ async-compression-0.3.8 \ async-trait-0.1.51 \ async-tungstenite-0.14.0 \ atk-0.14.0 \ atk-sys-0.14.0 \ atomic_refcell-0.1.7 \ atty-0.2.14 \ autocfg-1.0.1 \ base-x-0.2.8 \ base64-0.13.0 \ bincode-1.3.3 \ bindgen-0.58.1 \ bitflags-1.3.2 \ bitstream-io-1.2.0 \ bitvec-0.19.5 \ block-buffer-0.9.0 \ bumpalo-3.7.0 \ byte-slice-cast-1.0.0 \ bytemuck-1.7.2 \ byteorder-1.4.3 \ bytes-0.5.6 \ bytes-1.1.0 \ cairo-rs-0.14.3 \ cairo-sys-rs-0.14.0 \ cc-1.0.69 \ cdg-0.1.0 \ cdg_renderer-0.6.0 \ cexpr-0.4.0 \ cfg-expr-0.7.4 \ cfg-if-0.1.10 \ cfg-if-1.0.0 \ chrono-0.4.19 \ clang-sys-1.2.1 \ clap-2.33.3 \ claxon-0.4.3 \ color_quant-1.1.0 \ const_fn-0.4.8 \ cookie-0.14.4 \ cookie_store-0.12.0 \ core-foundation-0.9.1 \ core-foundation-sys-0.8.2 \ cpufeatures-0.2.1 \ crc-2.0.0 \ crc-catalog-1.1.1 \ crc32fast-1.2.1 \ crossbeam-channel-0.5.1 \ crossbeam-deque-0.8.1 \ crossbeam-epoch-0.9.5 \ crossbeam-utils-0.8.5 \ crypto-mac-0.11.1 \ csound-0.1.8 \ csound-sys-0.1.2 \ ctor-0.1.20 \ dasp_frame-0.11.0 \ dasp_sample-0.11.0 \ dav1d-0.6.0 \ dav1d-sys-0.3.4 \ deflate-0.9.1 \ diff-0.1.12 \ digest-0.9.0 \ dirs-next-2.0.0 \ dirs-sys-next-0.1.2 \ discard-1.0.4 \ ebur128-0.1.6 \ ed25519-1.2.0 \ either-1.6.1 \ encoding_rs-0.8.28 \ env_logger-0.8.4 \ field-offset-0.3.4 \ flate2-1.0.20 \ fnv-1.0.7 \ foreign-types-0.3.2 \ foreign-types-shared-0.1.1 \ form_urlencoded-1.0.1 \ fst-0.4.7 \ fuchsia-zircon-0.3.3 \ fuchsia-zircon-sys-0.3.3 \ funty-1.1.0 \ futures-0.3.16 \ futures-channel-0.3.16 \ futures-core-0.3.16 \ futures-executor-0.3.16 \ futures-io-0.3.16 \ futures-macro-0.3.16 \ futures-sink-0.3.16 \ futures-task-0.3.16 \ futures-util-0.3.16 \ gdk-0.14.0 \ gdk-pixbuf-0.14.0 \ gdk-pixbuf-sys-0.14.0 \ gdk-sys-0.14.0 \ generic-array-0.14.4 \ getrandom-0.2.3 \ gif-0.11.2 \ gio-0.14.3 \ gio-sys-0.14.0 \ glib-0.14.4 \ glib-macros-0.14.1 \ glib-sys-0.14.0 \ glob-0.3.0 \ gobject-sys-0.14.0 \ gstreamer-0.17.3 \ gstreamer-app-0.17.2 \ gstreamer-app-sys-0.17.0 \ gstreamer-audio-0.17.2 \ gstreamer-audio-sys-0.17.0 \ gstreamer-base-0.17.2 \ gstreamer-base-sys-0.17.0 \ gstreamer-check-0.17.0 \ gstreamer-check-sys-0.17.0 \ gstreamer-net-0.17.0 \ gstreamer-net-sys-0.17.0 \ gstreamer-rtp-0.17.0 \ gstreamer-rtp-sys-0.17.0 \ gstreamer-sys-0.17.3 \ gstreamer-video-0.17.2 \ gstreamer-video-sys-0.17.0 \ gtk-0.14.1 \ gtk-sys-0.14.0 \ gtk3-macros-0.14.0 \ h2-0.3.4 \ hashbrown-0.11.2 \ headers-0.3.4 \ headers-core-0.2.0 \ heck-0.3.3 \ hermit-abi-0.1.19 \ hex-0.4.3 \ hmac-0.11.0 \ http-0.2.4 \ http-body-0.4.3 \ httparse-1.5.1 \ httpdate-1.0.1 \ humantime-2.1.0 \ hyper-0.14.12 \ hyper-tls-0.5.0 \ hyphenation-0.8.4 \ hyphenation_commons-0.8.4 \ idna-0.2.3 \ image-0.23.14 \ indexmap-1.7.0 \ input_buffer-0.4.0 \ instant-0.1.10 \ interpolate_name-0.2.3 \ iovec-0.1.4 \ ipnet-2.3.1 \ itertools-0.10.1 \ itoa-0.4.8 \ js-sys-0.3.53 \ kernel32-sys-0.2.2 \ lazy_static-1.4.0 \ lazycell-1.3.0 \ lewton-0.10.2 \ lexical-core-0.7.6 \ libc-0.2.101 \ libfuzzer-sys-0.3.5 \ libloading-0.7.0 \ libsodium-sys-0.2.7 \ libwebp-sys2-0.1.2 \ lock_api-0.4.5 \ log-0.4.14 \ matches-0.1.9 \ md-5-0.9.1 \ memchr-2.4.1 \ memoffset-0.6.4 \ mime-0.3.16 \ minimal-lexical-0.1.2 \ miniz_oxide-0.4.4 \ mio-0.6.23 \ mio-0.7.13 \ miow-0.2.2 \ miow-0.3.7 \ muldiv-1.0.0 \ native-tls-0.2.8 \ net2-0.2.37 \ nnnoiseless-0.3.2 \ nom-5.1.2 \ nom-6.1.2 \ nom-7.0.0 \ noop_proc_macro-0.3.0 \ ntapi-0.3.6 \ num-0.4.0 \ num-bigint-0.4.1 \ num-complex-0.3.1 \ num-complex-0.4.0 \ num-derive-0.3.3 \ num-integer-0.1.44 \ num-iter-0.1.42 \ num-rational-0.3.2 \ num-rational-0.4.0 \ num-traits-0.2.14 \ num_cpus-1.13.0 \ once_cell-1.8.0 \ opaque-debug-0.3.0 \ openssl-0.10.36 \ openssl-probe-0.1.4 \ openssl-sys-0.9.66 \ output_vt100-0.1.2 \ pango-0.14.3 \ pango-sys-0.14.0 \ pangocairo-0.14.0 \ pangocairo-sys-0.14.0 \ parking_lot-0.11.2 \ parking_lot_core-0.8.5 \ paste-1.0.5 \ peeking_take_while-0.1.2 \ percent-encoding-2.1.0 \ pest-2.1.3 \ pin-project-1.0.8 \ pin-project-internal-1.0.8 \ pin-project-lite-0.1.12 \ pin-project-lite-0.2.7 \ pin-utils-0.1.0 \ pkg-config-0.3.19 \ png-0.17.1 \ pocket-resources-0.3.2 \ ppv-lite86-0.2.10 \ pretty-hex-0.2.1 \ pretty_assertions-0.7.2 \ primal-check-0.3.1 \ proc-macro-crate-1.0.0 \ proc-macro-error-1.0.4 \ proc-macro-error-attr-1.0.4 \ proc-macro-hack-0.5.19 \ proc-macro-nested-0.1.7 \ proc-macro2-1.0.28 \ publicsuffix-1.5.6 \ quote-1.0.9 \ radium-0.5.3 \ rand-0.8.4 \ rand_chacha-0.3.1 \ rand_core-0.6.3 \ rand_hc-0.3.1 \ rav1e-0.4.1 \ rayon-1.5.1 \ rayon-core-1.9.1 \ redox_syscall-0.2.10 \ redox_users-0.4.0 \ regex-1.5.4 \ regex-syntax-0.6.25 \ remove_dir_all-0.5.3 \ reqwest-0.11.4 \ rusoto_core-0.47.0 \ rusoto_credential-0.47.0 \ rusoto_s3-0.47.0 \ rusoto_signature-0.47.0 \ rust_hawktracer-0.7.0 \ rust_hawktracer_normal_macro-0.4.1 \ rust_hawktracer_proc_macro-0.4.1 \ rustc-hash-1.1.0 \ rustc_version-0.2.3 \ rustc_version-0.3.3 \ rustc_version-0.4.0 \ rustfft-5.1.1 \ ryu-1.0.5 \ same-file-1.0.6 \ schannel-0.1.19 \ scopeguard-1.1.0 \ security-framework-2.4.1 \ security-framework-sys-2.4.1 \ semver-0.9.0 \ semver-0.11.0 \ semver-1.0.4 \ semver-parser-0.7.0 \ semver-parser-0.10.2 \ serde-1.0.130 \ serde_bytes-0.11.5 \ serde_derive-1.0.130 \ serde_json-1.0.67 \ serde_urlencoded-0.7.0 \ sha-1-0.9.8 \ sha1-0.6.0 \ sha2-0.9.6 \ shlex-1.1.0 \ signal-hook-registry-1.4.0 \ signature-1.3.1 \ simd_helpers-0.1.0 \ slab-0.4.4 \ smallvec-1.6.1 \ smawk-0.3.1 \ socket2-0.4.1 \ sodiumoxide-0.2.7 \ standback-0.2.17 \ static_assertions-1.1.0 \ stdweb-0.4.20 \ stdweb-derive-0.5.3 \ stdweb-internal-macros-0.2.9 \ stdweb-internal-runtime-0.1.5 \ strength_reduce-0.2.3 \ strsim-0.8.0 \ strum-0.21.0 \ strum_macros-0.21.1 \ subtle-2.4.1 \ syn-1.0.75 \ system-deps-3.1.2 \ tap-1.0.1 \ tempfile-3.2.0 \ termcolor-1.1.2 \ textwrap-0.11.0 \ textwrap-0.14.2 \ thiserror-1.0.28 \ thiserror-impl-1.0.28 \ time-0.1.43 \ time-0.2.27 \ time-macros-0.1.1 \ time-macros-impl-0.1.2 \ tinyvec-1.3.1 \ tinyvec_macros-0.1.0 \ tokio-1.10.1 \ tokio-macros-1.3.0 \ tokio-native-tls-0.3.0 \ tokio-util-0.6.7 \ toml-0.5.8 \ tower-service-0.3.1 \ tracing-0.1.26 \ tracing-core-0.1.19 \ transpose-0.2.1 \ try-lock-0.2.3 \ tungstenite-0.13.0 \ typenum-1.13.0 \ ucd-trie-0.1.3 \ unicode-bidi-0.3.6 \ unicode-linebreak-0.1.2 \ unicode-normalization-0.1.19 \ unicode-segmentation-1.8.0 \ unicode-width-0.1.8 \ unicode-xid-0.2.2 \ url-2.2.2 \ utf-8-0.7.6 \ uuid-0.8.2 \ v_frame-0.2.2 \ va_list-0.1.3 \ vcpkg-0.2.15 \ vec_map-0.8.2 \ vergen-3.2.0 \ version-compare-0.0.11 \ version_check-0.9.3 \ walkdir-2.3.2 \ want-0.3.0 \ wasi-0.10.2+wasi-snapshot-preview1 \ wasm-bindgen-0.2.76 \ wasm-bindgen-backend-0.2.76 \ wasm-bindgen-futures-0.4.26 \ wasm-bindgen-macro-0.2.76 \ wasm-bindgen-macro-support-0.2.76 \ wasm-bindgen-shared-0.2.76 \ web-sys-0.3.53 \ weezl-0.1.5 \ which-3.1.1 \ winapi-0.2.8 \ winapi-0.3.9 \ winapi-build-0.1.1 \ winapi-i686-pc-windows-gnu-0.4.0 \ winapi-util-0.1.5 \ winapi-x86_64-pc-windows-gnu-0.4.0 \ winreg-0.7.0 \ ws2_32-sys-0.2.1 \ wyz-0.2.0 \ xml-rs-0.8.4 \ zeroize-1.4.1 \ tokio,tokio-macros@git+https://github.com/fengalin/tokio\#2fd1551867c145cabe4548da2e37adc3bdf457a4 \ flavors@git+https://github.com/rust-av/flavors\#ceb65b8ce94e183c4cf4011da0a40e3a4892c2c0 CARGO_BUILD= no CARGO_INSTALL= no CARGO_TEST= no OPTIONS_DEFINE= CSOUND DAV1D PANGO SODIUM OPTIONS_DEFAULT=CSOUND DAV1D PANGO SODIUM OPTIONS_EXCLUDE_aarch64= CSOUND # https://github.com/neithanmo/csound-rs/commit/8962b89d7bda OPTIONS_EXCLUDE_powerpc64le= CSOUND OPTIONS_EXCLUDE_powerpc64= CSOUND OPTIONS_EXCLUDE_powerpc= CSOUND DAV1D OPTIONS_SUB= yes CSOUND_DESC= Audio filtering via Csound CSOUND_LIB_DEPENDS= libcsound64.so:audio/csound CSOUND_CONFIGURE_ENV= CSOUND_LIB_DIR="${LOCALBASE}/lib" CSOUND_MESON_ENABLED= csound DAV1D_DESC= AV1 video decoding via libdav1d DAV1D_BUILD_DEPENDS= llvm${LLVM_DEFAULT}>0:devel/llvm${LLVM_DEFAULT} DAV1D_LIB_DEPENDS= libdav1d.so:multimedia/dav1d DAV1D_MESON_ENABLED= dav1d PANGO_USE= GNOME=cairo,pango PANGO_MESON_ENABLED= closedcaption SODIUM_DESC= File encryption and decryption via libsodium SODIUM_LIB_DEPENDS= libsodium.so:security/libsodium SODIUM_MESON_ON= -Dsodium=system SODIUM_MESON_OFF= -Dsodium=disabled post-patch: @${REINPLACE_CMD} -e 's,"llvm-config,&${LLVM_DEFAULT},' \ ${WRKSRC}/cargo-crates/clang-sys-*/build/common.rs \ ${WRKSRC}/cargo-crates/clang-sys-*/src/support.rs # Make each cargo subcommand very verbose @${REINPLACE_CMD} -e "/'cargo'/s/, '--/&verbose'&verbose'&/" \ ${WRKSRC}/cargo_wrapper.py post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/gstreamer-1.0/*.so .include diff --git a/multimedia/kodi/Makefile b/multimedia/kodi/Makefile index 5e1a82dd3ecc..f490dd759c6e 100644 --- a/multimedia/kodi/Makefile +++ b/multimedia/kodi/Makefile @@ -1,292 +1,292 @@ PORTNAME= kodi DISTVERSION= 19.3 DISTVERSIONSUFFIX= -${KODI_CODENAME} -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= multimedia java MAINTAINER= yzrh@noema.org COMMENT= Award winning media center application LICENSE= GPLv2+ ONLY_FOR_ARCHS= aarch64 amd64 armv6 armv7 i386 powerpc64 powerpc64le BUILD_DEPENDS= flatbuffers>0:devel/flatbuffers \ rapidjson>0:devel/rapidjson \ swig>0:devel/swig 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 \ libdav1d.so:multimedia/dav1d \ libdvdnav.so:multimedia/libdvdnav \ libdvdread.so:multimedia/libdvdread \ libexpat.so:textproc/expat2 \ libfmt.so:devel/libfmt \ libfreetype.so:print/freetype2 \ libfribidi.so:converters/fribidi \ libfstrcmp.so:devel/fstrcmp \ libgif.so:graphics/giflib \ liblzo2.so:archivers/lzo2 \ libpcre.so:devel/pcre \ libpng.so:graphics/png \ libpostproc.so:multimedia/ffmpeg \ libspdlog.so:devel/spdlog \ libswresample.so:multimedia/ffmpeg \ libswscale.so:multimedia/ffmpeg \ libtag.so:audio/taglib \ libtinyxml.so:textproc/tinyxml \ libuuid.so:misc/e2fsprogs-libuuid USES= cpe cmake compiler:c++14-lang gettext \ gnome iconv jpeg pkgconfig python:3.5+ sqlite ssl KODI_CODENAME= Matrix USE_GITHUB= yes GH_ACCOUNT= xbmc GH_PROJECT= xbmc KODI_ARCH_aarch64= aarch64 KODI_ARCH_amd64= x86_64 KODI_ARCH_i386= x86 KODI_ARCH_armv7= armv7 KODI_ARCH_armv6= armv6 KODI_ARCH_powerpc64= powerpc64 KODI_ARCH_powerpc64le= powerpc64le PLIST_SUB= ARCH=${KODI_ARCH_${ARCH}} USE_LDCONFIG= yes USE_JAVA= yes JAVA_BUILD= jre USE_GNOME= libxml2 CMAKE_ARGS= -DGIT_VERSION="${GH_TAGNAME}" \ -DDVDNAV_LIBRARY="${LOCALBASE}/lib/libdvdnav.so" \ -DDVDREAD_LIBRARY="${LOCALBASE}/lib/libdvdread.so" \ -DLIBDVD_INCLUDE_DIRS="${LOCALBASE}/include" CMAKE_OFF= ENABLE_INTERNAL_CROSSGUID CONFIGURE_ENV= _CPU_FEATURE="${CPU_FEATURE}" OPTIONS_SUB= yes # Broken: BLUETOOTH OPTIONS_DEFINE= AIRPLAY AVAHI LIBBLURAY CEC DBUS DVDCSS LCMS2 \ LIRC WEBSERVER NFS DVD SMB TEST UDEV UPNP \ VAAPI VDPAU XSLT DOCS OPTIONS_DEFAULT= LIBBLURAY CEC LCMS2 WEBSERVER \ DVD UPNP VAAPI VDPAU XSLT WAYLAND X11 GL OPTIONS_DEFAULT_amd64= SSE SSE2 SSE3 SSSE3 SSE4_1 SSE4_2 OPTIONS_DEFAULT_i386= SSE SSE2 SSE3 OPTIONS_SINGLE= RENDER OPTIONS_SINGLE_RENDER= GL GLES OPTIONS_RADIO= DATABASE OPTIONS_RADIO_DATABASE= MARIADB MYSQL OPTIONS_GROUP= SOUND FEATURE PLATFORM # Broken: ALSA OPTIONS_GROUP_SOUND= PULSEAUDIO SNDIO OPTIONS_GROUP_FEATURE= SSE SSE2 SSE3 SSSE3 SSE4_1 SSE4_2 AVX AVX2 OPTIONS_GROUP_PLATFORM=GBM WAYLAND X11 OPTIONS_EXCLUDE_aarch64=FEATURE OPTIONS_EXCLUDE_armv7= FEATURE OPTIONS_EXCLUDE_armv6= FEATURE PLATFORM_DESC= Kodi platform DATABASE_DESC= Database FEATURE_DESC= X86 CPU feature AIRPLAY_DESC= AirPlay support BLUETOOTH_DESC= Bluetooth support CEC_DESC= CEC adapter support DVD_DESC= DVD support UDEV_DESC= Use libudev-devd XSLT_DESC= Use libxslt RENDER_DESC= Render system GL_DESC= OpenGL GLES_DESC= OpenGL ES GBM_DESC= GBM support MARIADB_DESC= MariaDB database support SSE2_DESC= Use SSE2 optimized routines SSE3_DESC= Use SSE3 optimized routines SSSE3_DESC= Use SSSE3 optimized routines SSE4_1_DESC= Use SSE4.1 optimized routines SSE4_2_DESC= Use SSE4.2 optimized routines AVX_DESC= Use AVX optimized routines AVX2_DESC= Use AVX2 optimized routines AIRPLAY_LIB_DEPENDS= libplist-2.0.so:devel/libplist \ libshairplay.so:audio/shairplay AIRPLAY_CMAKE_BOOL= ENABLE_PLIST \ ENABLE_AIRTUNES AVAHI_LIB_DEPENDS= libavahi-client.so:net/avahi-app AVAHI_CMAKE_BOOL= ENABLE_AVAHI BLUETOOTH_CMAKE_BOOL= ENABLE_BLUETOOTH BLUETOOTH_CMAKE_ON= -DBLUETOOTH_INCLUDE_DIR="${LOCALBASE}/include" LIBBLURAY_LIB_DEPENDS= libbluray.so:multimedia/libbluray LIBBLURAY_CMAKE_BOOL= ENABLE_BLURAY 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 DVDCSS_LIB_DEPENDS= libdvdcss.so:multimedia/libdvdcss DVDCSS_CMAKE_BOOL= ENABLE_DVDCSS DVDCSS_CMAKE_ON= -DDVDCSS_LIBRARY="${LOCALBASE}/lib/libdvdcss.so" LCMS2_LIB_DEPENDS= liblcms2.so.2:graphics/lcms2 LCMS2_CMAKE_BOOL= ENABLE_LCMS2 LIRC_LIB_DEPENDS= liblirc_client.so:comms/lirc LIRC_CMAKE_BOOL= ENABLE_LIRCCLIENT WEBSERVER_LIB_DEPENDS= libmicrohttpd.so:www/libmicrohttpd WEBSERVER_CMAKE_BOOL= ENABLE_MICROHTTPD NFS_LIB_DEPENDS= libnfs.so:net/libnfs NFS_CMAKE_BOOL= ENABLE_NFS DVD_CMAKE_BOOL= ENABLE_OPTICAL SMB_USES= samba:lib SMB_CMAKE_BOOL= ENABLE_SMBCLIENT TEST_LIB_DEPENDS= libgtest.so:devel/googletest TEST_CMAKE_BOOL= ENABLE_TESTING UDEV_LIB_DEPENDS= libudev.so:devel/libudev-devd UDEV_CMAKE_BOOL= ENABLE_UDEV UPNP_CMAKE_BOOL= ENABLE_UPNP VAAPI_LIB_DEPENDS= libva.so:multimedia/libva VAAPI_CMAKE_BOOL= ENABLE_VAAPI VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau VDPAU_CMAKE_BOOL= ENABLE_VDPAU XSLT_LIB_DEPENDS= libxslt.so:textproc/libxslt XSLT_CMAKE_BOOL= ENABLE_XSLT GL_CMAKE_ON= -DAPP_RENDER_SYSTEM:STRING="gl" GLES_CMAKE_ON= -DAPP_RENDER_SYSTEM:STRING="gles" MARIADB_USES= mysql:105m MARIADB_CMAKE_BOOL= ENABLE_MARIADBCLIENT MARIADB_CMAKE_ON= -DMARIADBCLIENT_INCLUDE_DIR="${LOCALBASE}/include" MYSQL_USES= mysql MYSQL_CMAKE_BOOL= ENABLE_MYSQLCLIENT ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_CMAKE_BOOL= ENABLE_ALSA PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CMAKE_BOOL= ENABLE_PULSEAUDIO SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_CMAKE_BOOL= ENABLE_SNDIO SSE_VARS= CPU_FEATURE+=SSE SSE2_VARS= CPU_FEATURE+=SSE2 SSE3_VARS= CPU_FEATURE+=SSE3 SSSE3_VARS= CPU_FEATURE+=SSSE3 SSE4_1_VARS= CPU_FEATURE+=SSE4.1 SSE4_2_VARS= CPU_FEATURE+=SSE4.2 AVX_VARS= CPU_FEATURE+=AVX AVX2_VARS= CPU_FEATURE+=AVX2 GBM_IMPLIES= UDEV GBM_USES= gl GBM_USE= GL=egl,gbm,glu GBM_CFLAGS= -I${LOCALBASE}/include/libepoll-shim GBM_LDFLAGS= -L${LOCALBASE}/lib -lepoll-shim GBM_BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto GBM_LIB_DEPENDS= libepoll-shim.so:devel/libepoll-shim \ libdrm.so:graphics/libdrm \ libxkbcommon.so:x11/libxkbcommon \ libinput.so:x11/libinput WAYLAND_USES= gl WAYLAND_USE= GL=egl,glu WAYLAND_BUILD_DEPENDS= evdev-proto>0:devel/evdev-proto \ wayland-protocols>0:graphics/wayland-protocols WAYLAND_LIB_DEPENDS= libdrm.so:graphics/libdrm \ libxkbcommon.so:x11/libxkbcommon \ libinput.so:x11/libinput \ libwayland-client++.so:graphics/waylandpp X11_USES= xorg gl X11_USE= XORG=x11,xext,xrandr GL=egl,gbm,gl,glu X11_LIB_DEPENDS= libdrm.so:graphics/libdrm .include .if !empty(PORT_OPTIONS:MGBM) && !empty(PORT_OPTIONS:MWAYLAND) && !empty(PORT_OPTIONS:MX11) CMAKE_ARGS+= -DCORE_PLATFORM_NAME:STRING="gbm wayland x11" .elif empty(PORT_OPTIONS:MGBM) && !empty(PORT_OPTIONS:MWAYLAND) && !empty(PORT_OPTIONS:MX11) CMAKE_ARGS+= -DCORE_PLATFORM_NAME:STRING="wayland x11" .elif !empty(PORT_OPTIONS:MGBM) && empty(PORT_OPTIONS:MWAYLAND) && !empty(PORT_OPTIONS:MX11) CMAKE_ARGS+= -DCORE_PLATFORM_NAME:STRING="gbm x11" .elif !empty(PORT_OPTIONS:MGBM) && !empty(PORT_OPTIONS:MWAYLAND) && empty(PORT_OPTIONS:MX11) CMAKE_ARGS+= -DCORE_PLATFORM_NAME:STRING="gbm wayland" .elif empty(PORT_OPTIONS:MGBM) && empty(PORT_OPTIONS:MWAYLAND) && !empty(PORT_OPTIONS:MX11) CMAKE_ARGS+= -DCORE_PLATFORM_NAME:STRING="x11" .elif empty(PORT_OPTIONS:MGBM) && !empty(PORT_OPTIONS:MWAYLAND) && empty(PORT_OPTIONS:MX11) CMAKE_ARGS+= -DCORE_PLATFORM_NAME:STRING="wayland" .elif !empty(PORT_OPTIONS:MGBM) && empty(PORT_OPTIONS:MWAYLAND) && empty(PORT_OPTIONS:MX11) CMAKE_ARGS+= -DCORE_PLATFORM_NAME:STRING="gbm" .endif .if !empty(PORT_OPTIONS:MGBM) && !empty(PORT_OPTIONS:MWAYLAND) || !empty(PORT_OPTIONS:MGBM) && !empty(PORT_OPTIONS:MX11) || !empty(PORT_OPTIONS:MWAYLAND) && !empty(PORT_OPTIONS:MX11) PLIST_SUB+= KODICOMBINED="" \ KODIGBM="@comment " \ KODIWAYLAND="@comment " \ KODIX11="@comment " .else PLIST_SUB+= KODICOMBINED="@comment " .if !empty(PORT_OPTIONS:MGBM) PLIST_SUB+= KODIGBM="" .else PLIST_SUB+= KODIGBM="@comment " .endif .if !empty(PORT_OPTIONS:MWAYLAND) PLIST_SUB+= KODIWAYLAND="" .else PLIST_SUB+= KODIWAYLAND="@comment " .endif .if !empty(PORT_OPTIONS:MX11) PLIST_SUB+= KODIX11="" .else PLIST_SUB+= KODIX11="@comment " .endif .endif post-patch: ${REINPLACE_CMD} 's|KODI_DEPENDSBUILD|true|' \ ${WRKSRC}/cmake/modules/FindLibDvd.cmake ${REINPLACE_CMD} 's|/usr/share|${LOCALBASE}/share|' \ ${WRKSRC}/xbmc/platform/linux/input/LibInputSettings.cpp post-install: ${INSTALL_MAN} ${WRKSRC}/docs/manpages/kodi.bin.1 ${STAGEDIR}${MAN1PREFIX}/man/man1 cd ${STAGEDIR}${MAN1PREFIX}/man/man1 && ${LN} -s kodi.bin.1.gz kodi.1.gz cd ${STAGEDIR}${PREFIX}/bin && ${STRIP_CMD} TexturePacker JsonSchemaBuilder ${FIND} ${STAGEDIR}${PREFIX}/lib/kodi -type f -name '*.so' -print0 | ${XARGS} -0 ${STRIP_CMD} ${RM} -rf ${STAGEDIR}${PREFIX}/lib/firewalld .include diff --git a/multimedia/libxine/Makefile b/multimedia/libxine/Makefile index 1e2e561232d3..82afdad954d7 100644 --- a/multimedia/libxine/Makefile +++ b/multimedia/libxine/Makefile @@ -1,186 +1,186 @@ # Created by: alex PORTNAME= xine DISTVERSION= 1.2.11 -PORTREVISION= 7 +PORTREVISION= 8 CATEGORIES= multimedia MASTER_SITES= SF/${PORTNAME}/${PORTNAME}-lib/${PORTVERSION} PKGNAMEPREFIX= lib DISTNAME= ${PORTNAME}-lib-${PORTVERSION} MAINTAINER= ports@FreeBSD.org COMMENT= Libraries for xine multimedia player LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= libFLAC.so:audio/flac \ liba52.so:audio/liba52 \ libvorbis.so:audio/libvorbis \ libspeex.so:audio/speex \ libmng.so:graphics/libmng \ libpng.so:graphics/png \ libdvdread.so:multimedia/libdvdread \ libfreetype.so:print/freetype2 \ libfame.so:multimedia/libfame \ libcdio_paranoia.so:sysutils/libcdio-paranoia \ libmodplug.so:audio/libmodplug \ libvcdinfo.so:multimedia/vcdimager \ libtheora.so:multimedia/libtheora \ libmad.so:audio/libmad \ libdca.so:multimedia/libdca \ libavcodec.so:multimedia/ffmpeg \ libfaad.so:audio/faad \ libvdpau.so:multimedia/libvdpau \ libvpx.so:multimedia/libvpx \ libiso9660.so:sysutils/libcdio \ libogg.so:audio/libogg \ libdvdnav.so:multimedia/libdvdnav USES= compiler cpe gl gmake gnome iconv libtool:keepla jpeg \ localbase pathfix perl5 pkgconfig tar:xz xorg LLD_UNSAFE= yes CPE_PRODUCT= xine-lib CPE_VENDOR= xine GNU_CONFIGURE= yes USE_XORG= x11 xcb xv xinerama xext sm ice USE_GL= gl glu USE_PERL5= build USE_LDCONFIG= yes CONFIGURE_ARGS= --with-libflac \ --enable-musepack \ --enable-real-codecs \ --without-esound MAKE_ENV= V=1 MAKE_ARGS= pkgdatadir="${DATADIR}" \ datadir="${DATADIR}" \ libdir="${PREFIX}/lib" CFLAGS_i386= -fomit-frame-pointer DOCSDIR= ${PREFIX}/share/doc/xine-lib # Please sync with XINE_PLUGINSDIR in multimedia/xine # and multimedia/vdr-plugin-xineliboutput PLUGINSDIR= lib/xine/plugins/2.9 PLIST_SUB= PLUGINSDIR="${PLUGINSDIR}" OPTIONS_DEFINE= AALIB ALSA AOM CACA DAV1D DOCS DMX_IMAGE DVB \ IMAGEMAGICK IPV6 JACK LIBBLURAY NFS NLS PIXBUF PULSEAUDIO \ SDL SFTP SMB SNDIO V4L VAAPI WAVPACK WAYLAND XVMC OPTIONS_DEFAULT= DVB OPENSSL PIXBUF VAAPI OPTIONS_DEFINE_i386= W32DLL OPTIONS_DEFAULT_i386= W32DLL OPTIONS_GROUP= TLS OPTIONS_GROUP_TLS= GNUTLS OPENSSL OPTIONS_SUB= yes AOM_DESC= Enable libaom AV1 decoder support DAV1D_DESC= Enable dav1d AV1 decoder support DMX_IMAGE_DESC= DMX image plugin DVB_DESC= DVB plugin NFS_DESC= Enable NFS support using libnfs SDL_DESC= Enable support for SDL 1 video output SFTP_DESC= Enable SFTP support using libssh2 TLS_DESC= Enable TLS support for https and ftps W32DLL_DESC= Win32 codec support WAYLAND_DESC= Enable Wayland support AALIB_LIB_DEPENDS= libaa.so:graphics/aalib AALIB_CONFIGURE_ENABLE= aalib ALSA_LIB_DEPENDS= libasound.so:audio/alsa-lib ALSA_CONFIGURE_WITH= alsa AOM_LIB_DEPENDS= libaom.so:multimedia/aom AOM_CONFIGURE_WITH= libaom CACA_LIB_DEPENDS= libcaca.so:graphics/libcaca CACA_CONFIGURE_WITH= caca DAV1D_LIB_DEPENDS= libdav1d.so:multimedia/dav1d DAV1D_CONFIGURE_WITH= dav1d DVB_BUILD_DEPENDS= v4l_compat>=1.0.20100321:multimedia/v4l_compat DVB_CONFIGURE_ENABLE= dvb GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls GNUTLS_CONFIGURE_ON= --enable-tls IMAGEMAGICK_USES= magick IMAGEMAGICK_CONFIGURE_WITH= imagemagick IMAGEMAGICK_IMPLIES= DMX_IMAGE IPV6_CONFIGURE_ENABLE= ipv6 JACK_LIB_DEPENDS= libjack.so:audio/jack JACK_CONFIGURE_WITH= jack LIBBLURAY_LIB_DEPENDS= libbluray.so:multimedia/libbluray LIBBLURAY_CONFIGURE_ENABLE= bluray NLS_USES= gettext NLS_CONFIGURE_ENABLE= nls NFS_LIB_DEPENDS= libnfs.so:net/libnfs NFS_CONFIGURE_ENABLE= nfs OPENSSL_CONFIGURE_ON= --enable-tls OPENSSL_CONFIGURE_ENV= OPENSSL_LIBS="-L${OPENSSLLIB} -lcrypto -lssl" \ OPENSSL_CFLAGS="-I${OPENSSLINC}" OPENSSL_USES= ssl PIXBUF_CONFIGURE_ENABLE= gdkpixbuf PIXBUF_IMPLIES= DMX_IMAGE PIXBUF_USE= GNOME=gdkpixbuf2,glib20 PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CONFIGURE_WITH= pulseaudio SDL_CONFIGURE_WITH= sdl SDL_USES= sdl SDL_USE= SDL=sdl SFTP_LIB_DEPENDS= libssh2.so:security/libssh2 SFTP_CONFIGURE_ENABLE= sftp SMB_USES= samba:lib SMB_CONFIGURE_ENV= LIBSMBCLIENT_LIBS="-L${SAMBALIBS} -lsmbclient" \ LIBSMBCLIENT_CFLAGS="-I${SAMBAINCLUDES}" SMB_CONFIGURE_ENABLE= samba SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_CONFIGURE_ENABLE= sndio VAAPI_LIB_DEPENDS= libva.so:multimedia/libva \ libva-glx.so:multimedia/libva-glx VAAPI_CONFIGURE_ENABLE= vaapi V4L_BUILD_DEPENDS= v4l_compat>=1.0.20100321:multimedia/v4l_compat V4L_LIB_DEPENDS= libv4l2.so:multimedia/libv4l V4L_CONFIGURE_ENABLE= libv4l v4l v4l2 W32DLL_CONFIGURE_ENABLE= w32dll W32DLL_PLIST_FILES= ${PLUGINSDIR}/xineplug_decode_w32dll.so WAVPACK_LIB_DEPENDS= libwavpack.so:audio/wavpack WAVPACK_CONFIGURE_WITH= wavpack WAYLAND_LIB_DEPENDS= libwayland-egl.so:graphics/wayland \ libwayland-client.so:graphics/wayland WAYLAND_CONFIGURE_ENABLE= wayland .if defined(WITH_NVIDIA304_GL) || exists(${LOCALBASE}/lib/libXvMCNVIDIA.so.1) XVMC_CONFIGURE_WITH= xvmc-lib=XvMCNVIDIA XVMC_LIB_DEPENDS= libXvMCNVIDIA.so:x11/nvidia-driver-304 .else XVMC_CONFIGURE_WITH= xvmc-lib=XvMCW XVMC_LIB_DEPENDS= libXvMC.so:x11/libXvMC .endif XVMC_CONFIGURE_ENABLE= xvmc .include .if ${ARCH} == aarch64 BUILD_DEPENDS+= as:devel/binutils .elif ${ARCH} == powerpc BUILD_DEPENDS+= as:devel/binutils CFLAGS+= -fno-integrated-as .endif .if !${PORT_OPTIONS:MGNUTLS} && !${PORT_OPTIONS:MOPENSSL} CONFIGURE_ARGS+= --disable-tls .endif pre-configure-GNUTLS-off: @${REINPLACE_CMD} -e 's|have_gnutls=yes|have_gnutls=no|' \ ${WRKSRC}/configure post-patch: .if ${COMPILER_TYPE} == "clang" @${REINPLACE_CMD} -e 's|-fno-rename-registers||' \ ${WRKSRC}/src/libw32dll/Makefile.in .endif post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/*.so @${STRIP_CMD} ${STAGEDIR}${PREFIX}/${PLUGINSDIR}/*.so @${STRIP_CMD} ${STAGEDIR}${PREFIX}/${PLUGINSDIR}/post/*.so .include diff --git a/multimedia/mythtv/Makefile b/multimedia/mythtv/Makefile index 508091e28e06..3cd15abf1e63 100644 --- a/multimedia/mythtv/Makefile +++ b/multimedia/mythtv/Makefile @@ -1,252 +1,252 @@ # Created by: Stacey Son , Ari Maniatis PORTNAME= mythtv DISTVERSIONPREFIX= v DISTVERSION= 31.0 -PORTREVISION= 4 +PORTREVISION= 5 PORTEPOCH= 1 CATEGORIES= multimedia MAINTAINER?= ahicks@p-o.co.uk COMMENT?= Homebrew PVR project LICENSE= GPLv2+ LICENSE_FILE= ${WRKSRC}/COPYING ONLY_FOR_ARCHS= aarch64 amd64 i386 powerpc64 powerpc64le .if ${/usr/bin/ld:L:tA} == /usr/bin/ld.lld BROKEN_i386= ld: error: can't create dynamic relocation R_386_32 against local symbol in readonly segment .endif LIB_DEPENDS= liblzo2.so:archivers/lzo2 \ libmp3lame.so:audio/lame \ libsamplerate.so:audio/libsamplerate \ libtag.so:audio/taglib \ libexiv2.so:graphics/exiv2 \ libva.so:multimedia/libva \ libva-glx.so:multimedia/libva-glx \ libbluray.so:multimedia/libbluray \ libass.so:multimedia/libass \ libfftw3_threads.so:math/fftw3 \ libfftw3f.so:math/fftw3-float \ libfreetype.so:print/freetype2 \ libxml2.so:textproc/libxml2 \ libdav1d.so:multimedia/dav1d \ libaom.so:multimedia/aom \ libdrm.so:graphics/libdrm BUILD_DEPENDS= yasm:devel/yasm \ ${LOCALBASE}/include/linux/input.h:devel/evdev-proto USES= compiler:c++11-lang gmake gl iconv libtool pkgconfig pathfix \ qmake:no_env qt:5 ssl xorg USE_GITHUB= yes GH_ACCOUNT= MythTV USE_GL= gl USE_LDCONFIG= yes USE_QT= buildtools_build core dbus gui imageformats_run \ linguist_build network opengl qmake_build script sql \ sql-mysql_run webkit widgets xml USE_XORG= x11 xv xrandr xxf86vm xinerama xext xcb HAS_CONFIGURE= yes CONFIGURE_ARGS= --prefix="${PREFIX}" --cc="${CC}" --cxx="${CXX}" \ --libxml2-path="${LOCALBASE}/include/libxml2" \ --disable-audio-alsa CONFIGURE_ENV= QMAKESPEC="${QMAKESPEC}" MOC="${MOC}" \ QTDIR="${PREFIX}" PKG_CONFIG_PATH="${LOCALBASE}/libdata/pkgconfig" MAKE_ENV= QTDIR="${PREFIX}" \ QMAKESPEC="${QMAKESPEC}" NOPRECIOUSMAKEVARS= # don't override ARCH in ffmpeg makefiles DESTDIRNAME= INSTALL_ROOT CPPFLAGS+= ${QTCPPFLAGS} LDFLAGS+= -L${LOCALBASE}/lib LDFLAGS_aarch64=-Wl,-z,notext REINPLACE_ARGS= -i "" WRKSRC_SUBDIR= ${PORTNAME} DESKTOP_ENTRIES="MythTV Frontend" "MythTV is a homebrew PVR project" "" \ "mythfrontend" "AudioVideo;Video;" false .if defined(SLAVEPORT) && ${SLAVEPORT} == "frontend" CONFLICTS_INSTALL= mythtv CONFIGURE_ARGS+=--disable-dvb --disable-firewire --disable-hdhomerun \ --disable-hdpvr --disable-ivtv \ --without-bindings=perl,python EXTRA_PATCHES= ${.CURDIR}/../../multimedia/mythtv/files/extrapatch-programs_programs.pro OPTIONS_EXCLUDE+= BINDINGS LIRC MYSQL .else CONFLICTS_INSTALL= mythtv-frontend RUN_DEPENDS+= tv_check:textproc/p5-xmltv \ wget:ftp/wget USES+= perl5 python:3.5+ shebangfix USE_PERL5= run build USE_RC_SUBR= mythbackend SHEBANG_FILES= programs/scripts/database/*.pl \ programs/scripts/internetcontent/*.py \ programs/scripts/internetcontent/*.pl \ programs/scripts/internetcontent/nv_python_libs/*.py \ programs/scripts/hardwareprofile/*.py \ programs/scripts/metadata/Television/ttvdb.py \ programs/scripts/metadata/Movie/tmdb3.py \ programs/scripts/metadata/Music/mbutils.py CONFIGURE_ARGS+=--dvb-path="${WRKSRC}/media_tree/include/uapi" \ --enable-ivtv --enable-v4l2 USERS= mythtv GROUPS= mythtv DATADIR= ${PREFIX}/share/mythtv SUB_FILES= pkg-message .endif OPTIONS_DEFINE= BINDINGS HDHOMERUN JACK LIRC MYSQL PULSEAUDIO VDPAU OPTIONS_DEFAULT= BINDINGS HDHOMERUN VDPAU OPTIONS_SUB= yes BINDINGS_DESC= Perl and Python bindings BINDINGS_BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mysqlclient>=0:databases/py-mysqlclient@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}future>=0:devel/py-future@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests>=0:www/py-requests@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}simplejson>=0:devel/py-simplejson@${PY_FLAVOR} \ p5-DBI>=0:databases/p5-DBI \ p5-DBD-mysql>0:databases/p5-DBD-mysql \ p5-Net-UPnP>=0:multimedia/p5-Net-UPnP \ p5-IO-Socket-INET6>=2.51:net/p5-IO-Socket-INET6 \ p5-XML-Simple>=0:textproc/p5-XML-Simple \ p5-HTTP-Request-Params>=0:www/p5-HTTP-Request-Params \ p5-LWP-UserAgent-Determined>=0:www/p5-LWP-UserAgent-Determined BINDINGS_RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}mysqlclient>=1.2.2:databases/py-mysqlclient@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}lxml>=0:devel/py-lxml@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests>0:www/py-requests@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}requests-cache>0:www/py-requests-cache@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}simplejson>=3:devel/py-simplejson@${PY_FLAVOR} \ p5-DBI>=0:databases/p5-DBI \ p5-DBD-mysql>0:databases/p5-DBD-mysql \ p5-Net-UPnP>=0:multimedia/p5-Net-UPnP \ p5-IO-Socket-INET6>=2.51:net/p5-IO-Socket-INET6 \ p5-XML-Simple>=0:textproc/p5-XML-Simple \ p5-HTTP-Request-Params>=0:www/p5-HTTP-Request-Params \ p5-LWP-UserAgent-Determined>=0:www/p5-LWP-UserAgent-Determined BINDINGS_CONFIGURE_ON= --python="${PYTHON_CMD}" --with-bindings=perl,python HDHOMERUN_DESC= Native support for HDHomeRun network tuners HDHOMERUN_LIB_DEPENDS= libhdhomerun.so:multimedia/libhdhomerun HDHOMERUN_CONFIGURE_OFF= --disable-hdhomerun JACK_LIB_DEPENDS= libjack.so:audio/jack JACK_CONFIGURE_OFF= --disable-audio-jack LIRC_LIB_DEPENDS= liblirc_client.so:comms/lirc LIRC_CONFIGURE_OFF= --disable-lirc MYSQL_DESC= Install MySQL server in addition to client MYSQL_USES= mysql:client,server MYSQL_USES_OFF= mysql PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CONFIGURE_OFF= --disable-audio-pulseoutput VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau VDPAU_CONFIGURE_OFF= --disable-vdpau LINUXDVB= ${WRKSRC}/media_tree/include/uapi/linux/dvb post-patch: @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ ${WRKSRC}/configure \ ${WRKSRC}/libs/libmythtv/libmythtv.pro \ ${WRKSRC}/bindings/perl/MythTV/Recording.pm \ ${WRKSRC}/programs/mythtranscode/external/replex/Makefile.standalone \ ${WRKSRC}/programs/scripts/database/mythconverg_backup.pl \ ${WRKSRC}/programs/scripts/database/mythconverg_restore.pl \ ${WRKSRC}/programs/mythcommflag/mythcommflag-analyze .if !defined(SLAVEPORT) # Header file from: # https://git.linuxtv.org/media_tree.git/tree/include/uapi/linux/dvb @${MKDIR} ${LINUXDVB} @${CP} ${FILESDIR}/audio.h ${LINUXDVB} @${CP} ${FILESDIR}/ca.h ${LINUXDVB} @${CP} ${FILESDIR}/dmx.h ${LINUXDVB} @${CP} ${FILESDIR}/frontend.h ${LINUXDVB} @${CP} ${FILESDIR}/net.h ${LINUXDVB} @${CP} ${FILESDIR}/osd.h ${LINUXDVB} @${CP} ${FILESDIR}/version.h ${LINUXDVB} @${CP} ${FILESDIR}/video.h ${LINUXDVB} # Linux to BSD from multimedia/libv4l/Makefile @${FIND} ${LINUXDVB} -type f -name "*.h" | \ ${XARGS} -n 1 ${REINPLACE_CMD} \ -e 's|#include |#include |'\ -e 's|__inline__|inline|g' \ -e 's|__u8|uint8_t|g' \ -e 's|__s8|int8_t|g' \ -e 's|__le16|uint16_t|g' \ -e 's|__be16|uint16_t|g' \ -e 's|__u16|uint16_t|g' \ -e 's|__s16|int16_t|g' \ -e 's|__le32|uint32_t|g' \ -e 's|__be32|uint32_t|g' \ -e 's|__u32|uint32_t|g' \ -e 's|__s32|int32_t|g' \ -e 's|__le64|uint64_t|g' \ -e 's|__be64|uint64_t|g' \ -e 's|__u64|uint64_t|g' \ -e 's|__s64|int64_t|g' \ -e 's|uint16_t_to_cpu|letoh16|g' \ -e 's|uint32_t_to_cpu|letoh32|g' \ -e 's|uint64_t_to_cpu|letoh64|g' \ -e 's|error_t|int|g' \ -e 's|"gettext.h"||g' \ -e 's|MSG_MORE|0|g' \ -e 's|EBADR|EFAULT|g' \ -e 's|ENONET|EHOSTDOWN|g' \ -e 's|_IOC_READ|IOC_OUT|g' \ -e 's|_IOC_WRITE|IOC_IN|g' \ -e 's|_IOC_NONE|IOC_VOID|g' \ -e 's|||g' \ -e 's|||g' \ -e 's|||g' \ -e 's|||g' \ -e '/^.*\.*/d' \ -e 's|||g' \ -e 's|||g' \ -e 's|||g' \ -e 's|||g' \ -e 's|||g' \ -e 's|/usr/bin/perl|${LOCALBASE}/bin/perl|g' \ -e 's|__user||g' \ ${LINUXDVB}/frontend.h .endif post-install: .if !defined(SLAVEPORT) @${MKDIR} ${STAGEDIR}${PREFIX}/share/mythtv/database ${INSTALL_DATA} ${WRKSRC}/database/mc.sql ${STAGEDIR}${PREFIX}/share/mythtv/database .endif @${FIND} ${STAGEDIR}${PREFIX}/bin -type f -exec ${SH} -c "${FILE} -i '{}' | \ ${GREP} -q 'x-executable; charset=binary'" \; -print | ${XARGS} ${STRIP_CMD} @${FIND} ${STAGEDIR}${PREFIX}/lib -type f -name lib\*.so.\* | ${XARGS} ${STRIP_CMD} # Apply additional substitutions to pkg-plist generated by the 'makeplist' target create-plist: stage @(cd ${.CURDIR} && ${MAKE} makeplist > pkg-plist && \ ${REINPLACE_CMD} -E \ -e '1d' -e '/etc\/rc.d\/mythbackend/d' -e '/[.]packlist$$/d' \ -e '/[.]bak$$/d' \ -e '/[.]gitignore$$/d' \ -e 's#^bin/mythpython#%%BINDINGS%%bin/mythpython#' \ -e 's#^bin/mythwikiscripts#%%BINDINGS%%bin/mythwikiscripts#' \ -e 's#^%%PYTHON_SITELIBDIR%%#%%BINDINGS%%%%PYTHON_SITELIBDIR%%#' \ -e 's#^%%DATADIR%%hardwareprofile#%%BINDINGS%%hardwareprofile#' \ -e 's#^%%DATADIR%%internetcontent#%%BINDINGS%%internetcontent#' \ -e 's#^%%SITE_PERL%%#%%BINDINGS%%%%SITE_PERL%%#' \ pkg-plist) .include diff --git a/multimedia/vlc/Makefile b/multimedia/vlc/Makefile index 59693e01c440..251009c51fce 100644 --- a/multimedia/vlc/Makefile +++ b/multimedia/vlc/Makefile @@ -1,411 +1,411 @@ # Created by: Brian Somers PORTNAME= vlc DISTVERSION= 3.0.16 -PORTREVISION= 8 +PORTREVISION= 9 PORTEPOCH= 4 CATEGORIES= multimedia audio net www MASTER_SITES= http://download.videolan.org/pub/videolan/${PORTNAME}/${DISTVERSION:S/a$//}/ \ http://ftp.snt.utwente.nl/pub/software/videolan/${PORTNAME}/${DISTVERSION:S/a$//}/ \ ftp://ftp.crans.org/pub/videolan/${PORTNAME}/${DISTVERSION:S/a$//}/ MAINTAINER= multimedia@FreeBSD.org COMMENT= Qt based multimedia player and streaming server LICENSE= GPLv2 LIB_DEPENDS= libgcrypt.so:security/libgcrypt \ libdvbpsi.so:multimedia/libdvbpsi \ libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libidn.so:dns/libidn \ libmatroska.so:multimedia/libmatroska \ libgpg-error.so:security/libgpg-error \ libebml.so:textproc/libebml BUILD_DEPENDS= gsed:textproc/gsed \ ffmpeg>=3.4.1,1:multimedia/ffmpeg \ yasm:devel/yasm RUN_DEPENDS= ffmpeg>=3.4.1,1:multimedia/ffmpeg USES= compiler:c++17-lang cpe desktop-file-utils gettext-tools gmake gnome \ iconv:wchar_t libtool localbase pathfix pkgconfig tar:xz CPE_VENDOR= videolan # VLC git (post 2.2.4) requires C++11 support and passes the appropriate flag # to the compiler. Until the port is updated, we explicitly pass -std=c++11 to # the compiler because Qt 5.7+ requires C++11 support, and FreeBSD 10's clang # does not default to C++11 mode. # USE_CXXSTD= c++11 USE_GNOME= libxml2 USE_LDCONFIG= yes INSTALL_TARGET= install-strip GNU_CONFIGURE= yes BINARY_ALIAS= sed=${LOCALBASE}/bin/gsed CONFIGURE_ARGS= --enable-avcodec --enable-avformat --enable-dvbpsi \ --enable-fontconfig --enable-freetype --enable-libgcrypt \ --enable-libxml2 --enable-oss --enable-postproc \ --enable-swscale --enable-vlc \ --disable-alsa --disable-archive --disable-chromaprint --disable-crystalhd \ --disable-dc1394 --disable-decklink --disable-dsm \ --disable-dv1394 --disable-fdkaac --disable-gst-decode \ --disable-gles2 --disable-kai --disable-kva --disable-mpg123 \ --disable-vnc --disable-opencv --disable-projectm \ --disable-secret --disable-soxr --disable-telx \ --disable-tiger --disable-tremor --disable-udev \ --disable-update-check --disable-vsxu \ --disable-wasapi --disable-x26410b \ --with-kde-solid=${PREFIX}/share/solid/actions \ ac_cv_search_pthread_rwlock_init=-pthread \ BUILDCC="${CC}" .if defined(WITH_DEBUG) CONFIGURE_ARGS+=--enable-debug .endif CFLAGS_i386= -fomit-frame-pointer OPTIONS_DEFINE= A52 AALIB AOM ASS AVAHI CACA CHROMECAST DAV1D DBUS DCA DOCS DVDREAD \ DEBUG DVDNAV FAAD FLAC FLUID FREERDP FRIBIDI GME GNUTLS \ GOOM HARFBUZZ JACK JPEG KATE LIBBLURAY LIBPLACEBO LIBRSVG2 LIBSSH2 LIRC \ LIVEMEDIA LUA MAD MFX MODPLUG MPEG2 MTP MUSEPACK \ NCURSES NFS NLS NOTIFY OGG OGGSPOTS OPTIMIZED_CFLAGS OPUS PNG PULSEAUDIO \ QT5 REALRTSP RUNROOT SAMPLERATE SIDPLAY SCHROEDINGER \ SDL SHOUTCAST SKINS SMB SNDIO STREAM SPEEX TAGLIB THEORA \ TWOLAME UPNP V4L VAAPI VCD VDPAU VPX VORBIS WAYLAND X11 X264 X265 ZVBI OPTIONS_DEFINE_powerpc= ALTIVEC OPTIONS_DEFINE_powerpc64= ALTIVEC OPTIONS_DEFAULT=ASS AVAHI DAV1D DBUS DVDREAD DVDNAV GNUTLS HARFBUZZ JPEG \ LIVEMEDIA LUA OGG OPTIMIZED_CFLAGS \ OPUS PNG QT5 SAMPLERATE STREAM SPEEX TAGLIB THEORA TWOLAME \ V4L VAAPI VCD VDPAU VORBIS WAYLAND X11 OPTIONS_DEFAULT_powerpc= ALTIVEC OPTIONS_DEFAULT_powerpc64= ALTIVEC OPTIONS_SUB= yes AOM_DESC= AV1 video encoding/decoding via libaom ASS_DESC= ASS/SSA subtitle rendering CHROMECAST_DESC=Streaming to Chromecast devices DAV1D_DESC= AV1 video decoding via libdav1d DVDREAD_DESC= DVD Playback support DVDNAV_DESC= DVD menu navigation FLUID_DESC= Fluidsynth MIDI support FREERDP_DESC= RDP support GME_DESC= Game Music Emu (libgme) support GOOM_DESC= Goom visualisation plugin HARFBUZZ_DESC= OpenType text shaping engine KATE_DESC= Kate codec support LIBPLACEBO_DESC=HDR tonemapping support through libplacebo LIBSSH2_DESC= SCP/SFTP support via libssh2 MFX_DESC= Intel MediaSDK (aka Quick Sync Video) OGGSPOTS_DESC= Experimental OggSpots codec REALRTSP_DESC= Real RTSP access module RUNROOT_DESC= Enable running as root SIDPLAY_DESC= C64 sid demux support SKINS_DESC= Skins interface module STREAM_DESC= stream output TAGLIB_DESC= ID3 tag and Ogg comment support VCD_DESC= Audio/Video CD support ZVBI_DESC= VBI decoding support A52_CONFIGURE_ENABLE= a52 A52_CONFIGURE_ON= --with-a52=${LOCALBASE} A52_LIB_DEPENDS= liba52.so:audio/liba52 AALIB_LIB_DEPENDS= libaa.so:graphics/aalib AALIB_CONFIGURE_ENABLE= aa ASS_LIB_DEPENDS= libass.so:multimedia/libass ASS_CONFIGURE_ENABLE= libass ALTIVEC_CONFIGURE_ENABLE= altivec AOM_LIB_DEPENDS= libaom.so:multimedia/aom AOM_CONFIGURE_ENABLE= aom AVAHI_LIB_DEPENDS= libavahi-common.so:net/avahi-app AVAHI_CONFIGURE_ENABLE= avahi CACA_LIB_DEPENDS= libcaca.so:graphics/libcaca CACA_CONFIGURE_ENABLE= caca CHROMECAST_LIB_DEPENDS= libprotobuf-lite.so:devel/protobuf CHROMECAST_CONFIGURE_ENABLE= chromecast DAV1D_LIB_DEPENDS= libdav1d.so:multimedia/dav1d DAV1D_CONFIGURE_ENABLE= dav1d DBUS_LIB_DEPENDS= libdbus-1.so:devel/dbus DBUS_CONFIGURE_ENABLE= dbus DCA_LIB_DEPENDS= libdca.so:multimedia/libdca DCA_CONFIGURE_ENABLE= dca DVDREAD_LIB_DEPENDS= libdvdread.so:multimedia/libdvdread DVDREAD_CONFIGURE_ENABLE= dvdread DVDNAV_LIB_DEPENDS= libdvdnav.so:multimedia/libdvdnav DVDNAV_CONFIGURE_ENABLE=dvdnav FAAD_LIB_DEPENDS= libfaad.so:audio/faad FAAD_CONFIGURE_ENABLE= faad FAAD_CONFIGURE_ENV= CPPFLAGS_faad="-I${LOCALBASE}/include" \ LIBS_faad="-L${LOCALBASE}/lib" FLAC_LIB_DEPENDS= libFLAC.so:audio/flac FLAC_CONFIGURE_ENABLE= flac FLUID_LIB_DEPENDS= libfluidsynth.so:audio/fluidsynth FLUID_CONFIGURE_ENABLE= fluidsynth FREERDP_LIB_DEPENDS= libfreerdp2.so:net/freerdp FREERDP_CONFIGURE_ENABLE= freerdp FREERDP_CONFIGURE_ENV= FREERDP_CFLAGS="-I${LOCALBASE}/include/freerdp2 \ -I${LOCALBASE}/include/winpr2" \ FREERDP_LIBS="-L${LOCALBASE}/lib" FRIBIDI_LIB_DEPENDS= libfribidi.so:converters/fribidi FRIBIDI_CONFIGURE_ENABLE= fribidi GME_LIB_DEPENDS= libgme.so:audio/libgme GME_CONFIGURE_ENABLE= gme GME_CONFIGURE_ENV= LIBS_gme="-L${LOCALBASE}/lib -lgme" GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls GNUTLS_CONFIGURE_ENABLE=gnutls GOOM_LIB_DEPENDS= libgoom2.so:graphics/goom GOOM_CONFIGURE_ENABLE= goom HARFBUZZ_LIB_DEPENDS= libharfbuzz.so:print/harfbuzz HARFBUZZ_CONFIGURE_ENABLE= harfbuzz JACK_LIB_DEPENDS= libjack.so:audio/jack JACK_CONFIGURE_ENABLE= jack JPEG_USES= jpeg JPEG_CONFIGURE_ENABLE= jpeg KATE_LIB_DEPENDS= libkate.so:multimedia/libkate KATE_CONFIGURE_ENABLE= kate LIBBLURAY_LIB_DEPENDS= libbluray.so:multimedia/libbluray LIBBLURAY_CONFIGURE_ENABLE= bluray LIBPLACEBO_LIB_DEPENDS= libplacebo.so:graphics/libplacebo LIBPLACEBO_CONFIGURE_ENABLE= libplacebo LIBRSVG2_USE= GNOME=librsvg2,cairo LIBRSVG2_CONFIGURE_ENABLE= svg LIBSSH2_LIB_DEPENDS= libssh2.so:security/libssh2 LIBSSH2_CONFIGURE_ENABLE= sftp LIRC_LIB_DEPENDS= liblirc_client.so:comms/lirc LIRC_CONFIGURE_ENABLE= lirc LIRC_CONFIGURE_ENV= LIBS_lirc="-L${LOCALBASE}/lib -llirc_client" LIVEMEDIA_USES= ssl LIVEMEDIA_LIB_DEPENDS= libliveMedia.so:net/liveMedia LIVEMEDIA_CONFIGURE_ENABLE= live555 LIVEMEDIA_CONFIGURE_ENV= \ LIVE555_CFLAGS="-I${LOCALBASE}/include/liveMedia \ -I${LOCALBASE}/include/UsageEnvironment \ -I${LOCALBASE}/include/groupsock \ -I${LOCALBASE}/include/BasicUsageEnvironment" \ LIVE555_LIBS="-L${LOCALBASE}/lib -lliveMedia \ -lgroupsock -lBasicUsageEnvironment \ -lUsageEnvironment \ -L${OPENSSLLIB} -lssl -lcrypto" LUA_USES= lua LUA_CONFIGURE_ENABLE= lua LUA_CONFIGURE_ON= LUAC=${LUAC_CMD} LUA_CFLAGS="-I${LUA_INCDIR}" \ LUA_LIBS="-L${LUA_LIBDIR} -llua-${LUA_VER}" MAD_LIB_DEPENDS= libmad.so:audio/libmad MAD_CONFIGURE_ENABLE= mad MAD_CONFIGURE_ON= --with-mad=${LOCALBASE} MFX_LIB_DEPENDS= libmfx.so:multimedia/intel-media-sdk MFX_CONFIGURE_ENABLE= mfx MODPLUG_LIB_DEPENDS= libmodplug.so:audio/libmodplug MODPLUG_CONFIGURE_ENABLE= mod MPEG2_LIB_DEPENDS= libmpeg2.so:multimedia/libmpeg2 MPEG2_CONFIGURE_ENABLE= libmpeg2 MTP_LIB_DEPENDS= libmtp.so:multimedia/libmtp MTP_CONFIGURE_ENABLE= mtp MUSEPACK_LIB_DEPENDS= libmpcdec.so:audio/musepack MUSEPACK_CONFIGURE_ENABLE= mpc MUSEPACK_CONFIGURE_ENV= LIBS_mpc="-L${LOCALBASE}/lib -lmpcdec" NCURSES_USES= ncurses NCURSES_CONFIGURE_ENV= NCURSES_CFLAGS="-I${NCURSESINC}" \ NCURSES_LIBS="-L${NCURSESLIB} -lncursesw" NCURSES_CONFIGURE_ENABLE= ncurses NFS_LIB_DEPENDS= libnfs.so:net/libnfs NFS_CONFIGURE_ENABLE= nfs NLS_USES= gettext NLS_CONFIGURE_ENABLE= nls NOTIFY_LIB_DEPENDS= libnotify.so:devel/libnotify NOTIFY_USE= GNOME=gtk30,cairo NOTIFY_CONFIGURE_ENABLE=notify OGG_LIB_DEPENDS= libogg.so:audio/libogg OGG_CONFIGURE_ENABLE= ogg OGGSPOTS_CONFIGURE_ENABLE= oggspots OGGSPOTS_IMPLIES= OGG OPTIMIZED_CFLAGS_CONFIGURE_ENABLE= optimizations OPUS_LIB_DEPENDS= libopus.so:audio/opus OPUS_CONFIGURE_ENABLE= opus PNG_LIB_DEPENDS= libpng.so:graphics/png PNG_CONFIGURE_ENABLE= png PULSEAUDIO_LIB_DEPENDS= libpulse.so:audio/pulseaudio PULSEAUDIO_CONFIGURE_ENABLE= pulse QT5_USES= qt:5 QT5_USE= QT=gui,core,svg,widgets,x11extras,buildtools_build QT5_CONFIGURE_ENABLE= qt QT5_IMPLIES= X11 REALRTSP_CONFIGURE_ENABLE= realrtsp RUNROOT_CONFIGURE_ENABLE= run-as-root SAMPLERATE_LIB_DEPENDS= libsamplerate.so:audio/libsamplerate SAMPLERATE_CONFIGURE_ENABLE= samplerate SCHROEDINGER_LIB_DEPENDS= libschroedinger-1.0.so:multimedia/schroedinger SCHROEDINGER_CONFIGURE_ENABLE= schroedinger SDL_USES= sdl SDL_USE= SDL=image SDL_CONFIGURE_ENABLE= sdl-image SIDPLAY_LIB_DEPENDS= libsidplay2.so:audio/libsidplay2 SIDPLAY_LDFLAGS= -L${LOCALBASE}/lib/sidplay/builders SIDPLAY_CONFIGURE_ENABLE= sid CONFIGURE_ARGS+= --disable-sid SKINS_USE= XORG=xext,xinerama,xpm SKINS_LIB_DEPENDS= libminizip.so:archivers/minizip \ libtar.so:devel/libtar SKINS_CONFIGURE_ENABLE= skins2 libtar SKINS_IMPLIES= QT5 SHOUTCAST_LIB_DEPENDS= libshout.so:audio/libshout SHOUTCAST_CONFIGURE_ENABLE= shout SNDIO_LIB_DEPENDS= libsndio.so:audio/sndio SNDIO_CONFIGURE_ENABLE= sndio SMB_USES= samba:lib SMB_CONFIGURE_ENABLE= smbclient STREAM_CONFIGURE_ENABLE=sout SPEEX_LIB_DEPENDS= libspeex.so:audio/speex \ libspeexdsp.so:audio/speexdsp SPEEX_CONFIGURE_ENABLE= speex TAGLIB_LIB_DEPENDS= libtag.so:audio/taglib TAGLIB_CONFIGURE_ENABLE=taglib THEORA_LIB_DEPENDS= libtheora.so:multimedia/libtheora THEORA_CONFIGURE_ENABLE=theora TWOLAME_LIB_DEPENDS= libtwolame.so:audio/twolame TWOLAME_CONFIGURE_ENABLE= twolame UPNP_LIB_DEPENDS= libupnp.so:devel/upnp UPNP_CONFIGURE_ENABLE= upnp V4L_BUILD_DEPENDS= v4l_compat>=0:multimedia/v4l_compat V4L_LIB_DEPENDS= libv4l2.so:multimedia/libv4l V4L_CONFIGURE_ENABLE= v4l2 VAAPI_LIB_DEPENDS= libva.so:multimedia/libva VAAPI_CONFIGURE_ENABLE= libva VCD_LIB_DEPENDS= libcddb.so:audio/libcddb VCD_CONFIGURE_ENABLE= vcd libcddb VDPAU_LIB_DEPENDS= libvdpau.so:multimedia/libvdpau VDPAU_CONFIGURE_ENABLE= vdpau VDPAU_IMPLIES= X11 VPX_LIB_DEPENDS= libvpx.so:multimedia/libvpx VPX_CONFIGURE_ENABLE= vpx VORBIS_LIB_DEPENDS= libvorbis.so:audio/libvorbis VORBIS_CONFIGURE_ENABLE=vorbis WAYLAND_BUILD_DEPENDS= wayland-protocols>=0:graphics/wayland-protocols WAYLAND_LIB_DEPENDS= libwayland-client.so:graphics/wayland WAYLAND_CONFIGURE_ENABLE= wayland X11_USE= GL=gl XORG=xcb,xorgproto,sm,ice,x11 X11_USES= gl xorg X11_LIB_DEPENDS= libxcb-keysyms.so:x11/xcb-util-keysyms X11_CONFIGURE_ENABLE= xcb xvideo X11_CONFIGURE_WITH= x X264_LIB_DEPENDS= libx264.so:multimedia/libx264 X264_CONFIGURE_ENABLE= x264 X265_LIB_DEPENDS= libx265.so:multimedia/x265 X265_CONFIGURE_ENABLE= x265 ZVBI_LIB_DEPENDS= libzvbi.so:devel/libzvbi ZVBI_CONFIGURE_ENABLE= zvbi PORTDATA= * PORTDOCS= * WITH_CDROM_DEVICE?=/dev/cd0 WITH_DVD_DEVICE?=/dev/cd0 .include .if ${PORT_OPTIONS:MX11} .endif .if ${PORT_OPTIONS:MDEBUG} WITH_DEBUG=yes CONFIGURE_ARGS+=--enable-debug --disable-optimizations CFLAGS+=-g -O0 CXXFLAGS+=-g -O0 .endif post-patch: @${REINPLACE_CMD} \ -e '\|LIBS|s|-lrt||' \ -e 's|LIBS="-llirc_client|LIBS="$$LIBS_lirc|' \ ${WRKSRC}/configure @${REINPLACE_CMD} -e 's|/dev/cdrom|${WITH_CDROM_DEVICE}|g' \ -e 's|/dev/dvd|${WITH_DVD_DEVICE}|g' \ ${WRKSRC}/src/libvlc-module.c @${RM} -r ${WRKSRC}/modules/access/v4l2/linux # XXX FreeBSD doesn't have strerror_l() - use the android version of error.c @${CP} ${WRKSRC}/src/android/error.c ${WRKSRC}/src/posix post-install: @(cd ${STAGEDIR}${PREFIX} && ${FIND} -s lib/vlc -not -name '*.la' \ -type f -o -type l >> ${TMPPLIST}) @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/vlc/plugins/*/*.so # plugin cache becomes stale after strip. Regenerate it: ${WRKSRC}/bin/vlc-cache-gen ${STAGEDIR}${PREFIX}/lib/vlc/plugins .include diff --git a/www/firefox-esr/Makefile b/www/firefox-esr/Makefile index e784ec95b375..aa05825aaff7 100644 --- a/www/firefox-esr/Makefile +++ b/www/firefox-esr/Makefile @@ -1,62 +1,64 @@ # Created by: Alan Eldridge PORTNAME= firefox DISTVERSION= 91.7.1 +PORTREVISION= 1 PORTEPOCH= 1 CATEGORIES= www MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}esr/source \ MOZILLA/${PORTNAME}/candidates/${DISTVERSION}esr-candidates/build2/source PKGNAMESUFFIX= -esr DISTFILES= ${DISTNAME}esr.source${EXTRACT_SUFX} MAINTAINER= gecko@FreeBSD.org COMMENT= Web browser based on the browser portion of Mozilla BUILD_DEPENDS= nspr>=4.32:devel/nspr \ nss>=3.68:security/nss \ icu>=67.1,1:devel/icu \ libevent>=2.1.8:devel/libevent \ harfbuzz>=2.8.1:print/harfbuzz \ graphite2>=1.3.14:graphics/graphite2 \ png>=1.6.37:graphics/png \ + dav1d>=1.0.0:multimedia/dav1d \ libvpx>=1.8.2:multimedia/libvpx \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \ v4l_compat>0:multimedia/v4l_compat \ autoconf-2.13:devel/autoconf213 \ nasm:devel/nasm \ yasm:devel/yasm \ zip:archivers/zip USE_GECKO= gecko CPE_PRODUCT= ${PORTNAME}_esr CONFLICTS_INSTALL= firefox USE_MOZILLA= -sqlite CFLAGS_powerpc64le= -DSQLITE_BYTEORDER=1234 USES= tar:xz FIREFOX_ICON= ${MOZILLA}.png FIREFOX_ICON_SRC= ${PREFIX}/lib/${MOZILLA}/browser/chrome/icons/default/default48.png FIREFOX_DESKTOP= ${MOZSRC}/taskcluster/docker/${MOZILLA}-snap/${MOZILLA}.desktop MOZ_OPTIONS= --enable-application=browser \ --enable-official-branding .include "${.CURDIR}/../../www/firefox/Makefile.options" post-patch: @${REINPLACE_CMD} -e 's/%u/%U/' -e '/X-MultipleArgs/d' \ -e '/^Icon/s/=.*/=${FIREFOX_ICON:R}/' \ ${FIREFOX_DESKTOP} @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/browser/app/nsBrowserApp.cpp pre-configure: (cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13) (cd ${WRKSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13) post-install: ${INSTALL_DATA} ${FIREFOX_DESKTOP} ${STAGEDIR}${PREFIX}/share/applications/ ${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps ${LN} -sf ${FIREFOX_ICON_SRC} ${STAGEDIR}${PREFIX}/share/pixmaps/${FIREFOX_ICON} .include diff --git a/www/firefox-esr/files/patch-bug1734058 b/www/firefox-esr/files/patch-bug1734058 new file mode 100644 index 000000000000..c3c16f135cba --- /dev/null +++ b/www/firefox-esr/files/patch-bug1734058 @@ -0,0 +1,45 @@ +commit 874adf9b96df +Author: Jon Bauman +Date: Tue Oct 26 17:11:36 2021 +0000 + + Bug 1734058 - Update dav1d to new version f52aee04fbd711cddab23d0aa9b196e9c963e7b8 from 2021-10-04 21:58:36. r=mjf,haik + + This is a fairly significant update, so required a few changes to Gecko code, but I've commented on the interesting details, so they should be easy to find + + Differential Revision: https://phabricator.services.mozilla.com/D129465 +--- + dom/media/platforms/agnostic/DAV1DDecoder.cpp | 7 +------ + image/decoders/nsAVIFDecoder.cpp | 1 + + 2 files changed, 2 insertions(+), 6 deletions(-) + +diff --git dom/media/platforms/agnostic/DAV1DDecoder.cpp dom/media/platforms/agnostic/DAV1DDecoder.cpp +index 459531fe8cf0..3c596b1fefe1 100644 +--- dom/media/platforms/agnostic/DAV1DDecoder.cpp ++++ dom/media/platforms/agnostic/DAV1DDecoder.cpp +@@ -37,13 +37,8 @@ RefPtr DAV1DDecoder::Init() { + } else if (mInfo.mDisplay.width >= 1024) { + decoder_threads = 4; + } +- settings.n_frame_threads = ++ settings.n_threads = + static_cast(std::min(decoder_threads, GetNumberOfProcessors())); +- // There is not much improvement with more than 2 tile threads at least with +- // the content being currently served. The ideal number of tile thread would +- // much the tile count of the content. Maybe dav1d can help to do that in the +- // future. +- settings.n_tile_threads = 2; + + int res = dav1d_open(&mContext, &settings); + if (res < 0) { +diff --git image/decoders/nsAVIFDecoder.cpp image/decoders/nsAVIFDecoder.cpp +index 9d1b7496a129..3bb9e8f8d08a 100644 +--- image/decoders/nsAVIFDecoder.cpp ++++ image/decoders/nsAVIFDecoder.cpp +@@ -581,6 +581,7 @@ class Dav1dDecoder final : AVIFDecoderInterface { + Dav1dSettings settings; + dav1d_default_settings(&settings); + settings.all_layers = 0; ++ settings.max_frame_delay = 1; + // TODO: tune settings a la DAV1DDecoder for AV1 (Bug 1681816) + + return dav1d_open(&mContext, &settings); diff --git a/www/firefox/Makefile b/www/firefox/Makefile index 7dbc700f2334..7ebe6b8d5ca2 100644 --- a/www/firefox/Makefile +++ b/www/firefox/Makefile @@ -1,74 +1,76 @@ # Created by: Alan Eldridge PORTNAME= firefox DISTVERSION= 98.0.1 +PORTREVISION= 1 PORTEPOCH= 2 CATEGORIES= www MASTER_SITES= MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \ MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build2/source DISTFILES= ${DISTNAME}.source${EXTRACT_SUFX} MAINTAINER= gecko@FreeBSD.org COMMENT= Web browser based on the browser portion of Mozilla BUILD_DEPENDS= nspr>=4.32:devel/nspr \ nss>=3.75:security/nss \ icu>=70.1:devel/icu \ libevent>=2.1.8:devel/libevent \ harfbuzz>=3.1.2:print/harfbuzz \ graphite2>=1.3.14:graphics/graphite2 \ png>=1.6.37:graphics/png \ + dav1d>=1.0.0:multimedia/dav1d \ libvpx>=1.8.2:multimedia/libvpx \ ${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \ v4l_compat>0:multimedia/v4l_compat \ autoconf-2.13:devel/autoconf213 \ nasm:devel/nasm \ yasm:devel/yasm \ zip:archivers/zip USE_GECKO= gecko CONFLICTS_INSTALL= firefox-esr USE_MOZILLA= -sqlite CFLAGS_powerpc64le= -DSQLITE_BYTEORDER=1234 # work around bindgen not finding ICU, e.g. # dist/include/mozilla/intl/ICU4CGlue.h:8:10: fatal error: 'unicode/uenum.h' file not found, err: true CONFIGURE_ENV+= BINDGEN_CFLAGS="-I${LOCALBASE}/include" USES= tar:xz FIREFOX_ICON= ${MOZILLA}.png FIREFOX_ICON_SRC= ${PREFIX}/lib/${MOZILLA}/browser/chrome/icons/default/default48.png FIREFOX_DESKTOP= ${MOZSRC}/taskcluster/docker/${MOZILLA}-snap/${MOZILLA}.desktop MOZ_OPTIONS= --enable-application=browser \ --enable-official-branding .include "${.CURDIR}/../../www/firefox/Makefile.options" .include .if ${ARCH} == powerpc64 MOZ_OPTIONS+= --without-wasm-sandboxed-libraries .else BUILD_DEPENDS+= ${LOCALBASE}/share/wasi-sysroot/lib/wasm32-wasi/libc++abi.a:devel/wasi-libcxx \ ${LOCALBASE}/share/wasi-sysroot/lib/wasm32-wasi/libc.a:devel/wasi-libc \ ${LOCALBASE}/llvm${LLVM_DEFAULT}/lib/clang/${LLVM_VERSION}/lib/wasi/libclang_rt.builtins-wasm32.a:devel/wasi-compiler-rt${LLVM_DEFAULT} MOZ_OPTIONS+= --with-wasi-sysroot=${LOCALBASE}/share/wasi-sysroot .endif post-patch: @${REINPLACE_CMD} -e 's/%u/%U/' -e '/X-MultipleArgs/d' \ -e '/^Icon/s/=.*/=${FIREFOX_ICON:R}/' \ ${FIREFOX_DESKTOP} @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${WRKSRC}/browser/app/nsBrowserApp.cpp pre-configure: (cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13) (cd ${WRKSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13) post-install: ${INSTALL_DATA} ${FIREFOX_DESKTOP} ${STAGEDIR}${PREFIX}/share/applications/ ${MKDIR} ${STAGEDIR}${PREFIX}/share/pixmaps ${LN} -sf ${FIREFOX_ICON_SRC} ${STAGEDIR}${PREFIX}/share/pixmaps/${FIREFOX_ICON} .include diff --git a/www/firefox/files/patch-bug1559213 b/www/firefox/files/patch-bug1559213 index ceaba53522aa..09b4dcc58e83 100644 --- a/www/firefox/files/patch-bug1559213 +++ b/www/firefox/files/patch-bug1559213 @@ -1,100 +1,122 @@ commit 717bba28411c Author: Jory A. Pratt Date: Thu Jun 13 11:53:00 2019 -0700 Bug 1559213 - Allow to use system av1 libs instead of bundled. --- config/external/moz.build | 5 +++-- config/system-headers.mozbuild | 8 ++++++++ dom/media/platforms/moz.build | 5 +++++ toolkit/moz.configure | 19 ++++++++++++++++++- 4 files changed, 34 insertions(+), 3 deletions(-) diff --git config/external/moz.build config/external/moz.build index ab77121..75595d9 100644 --- config/external/moz.build +++ config/external/moz.build @@ -49,8 +49,9 @@ if not CONFIG["MOZ_SYSTEM_LIBVPX"]: external_dirs += ["media/libvpx"] if CONFIG["MOZ_AV1"]: - external_dirs += ["media/libaom"] - external_dirs += ["media/libdav1d"] + if not CONFIG["MOZ_SYSTEM_AV1"]: + external_dirs += ["media/libaom"] + external_dirs += ["media/libdav1d"] if not CONFIG["MOZ_SYSTEM_PNG"]: external_dirs += ["media/libpng"] diff --git config/system-headers.mozbuild config/system-headers.mozbuild index a1b58eb..65729f9 100644 --- config/system-headers.mozbuild +++ config/system-headers.mozbuild @@ -1289,6 +1289,14 @@ if CONFIG['MOZ_ENABLE_LIBPROXY']: 'proxy.h', ] +if CONFIG['MOZ_SYSTEM_AV1']: + system_headers += [ + 'aom/aom_decoder.h', + 'aom/aomdx.h', + 'aom/aom_image.h', + 'dav1d/dav1d.h', + ] + if CONFIG['MOZ_SYSTEM_LIBVPX']: system_headers += [ 'vpx_mem/vpx_mem.h', diff --git dom/media/platforms/moz.build dom/media/platforms/moz.build index 8509aec..eb6f129 100644 --- dom/media/platforms/moz.build +++ dom/media/platforms/moz.build @@ -78,6 +78,11 @@ if CONFIG["MOZ_AV1"]: "agnostic/AOMDecoder.cpp", "agnostic/DAV1DDecoder.cpp", ] + if CONFIG['MOZ_SYSTEM_AV1']: + CXXFLAGS += CONFIG['MOZ_SYSTEM_LIBAOM_CFLAGS'] + OS_LIBS += CONFIG['MOZ_SYSTEM_LIBAOM_LIBS'] + CXXFLAGS += CONFIG['MOZ_SYSTEM_LIBDAV1D_CFLAGS'] + OS_LIBS += CONFIG['MOZ_SYSTEM_LIBDAV1D_LIBS'] if CONFIG["MOZ_OMX"]: EXPORTS += [ +diff --git media/ffvpx/libavcodec/moz.build media/ffvpx/libavcodec/moz.build +index 0069865..e806fc8 100644 +--- media/ffvpx/libavcodec/moz.build ++++ media/ffvpx/libavcodec/moz.build +@@ -112,9 +112,15 @@ if not CONFIG['MOZ_FFVPX_AUDIOONLY']: + 'vaapi_vp8.c', + 'vaapi_vp9.c', + ] ++ if CONFIG["MOZ_SYSTEM_AV1"]: ++ CFLAGS += CONFIG['MOZ_SYSTEM_LIBDAV1D_CFLAGS'] ++ OS_LIBS += CONFIG['MOZ_SYSTEM_LIBDAV1D_LIBS'] ++ else: ++ USE_LIBS += [ ++ 'dav1d', ++ 'media_libdav1d_asm', ++ ] + USE_LIBS += [ +- 'dav1d', +- 'media_libdav1d_asm', + 'mozva' + ] + diff --git toolkit/moz.configure toolkit/moz.configure index 0069865..e806fc8 100644 --- toolkit/moz.configure +++ toolkit/moz.configure @@ -523,7 +523,23 @@ def av1(value): return True -@depends(target, when=av1 & compile_environment) +option("--with-system-av1", + help="Use system av1 (located with pkgconfig)") + +system_libaom_info = pkg_check_modules("MOZ_SYSTEM_LIBAOM", "aom >= 1.0.0", + when="--with-system-av1") + +system_libdav1d_info = pkg_check_modules("MOZ_SYSTEM_LIBDAV1D", "dav1d >= 0.1.1", + when="--with-system-av1") + +@depends(system_libaom_info, system_libdav1d_info) +def system_av1(system_libaom_info, system_libdav1d_info): + has_av1_libs = False + if system_libaom_info and system_libdav1d_info: + has_av1_libs = True + return has_av1_libs + +@depends(target, when=av1 & depends(system_av1)(lambda v: not v) & compile_environment) def dav1d_asm(target): if target.cpu in ("aarch64", "x86", "x86_64"): return True @@ -539,6 +555,7 @@ set_config("MOZ_DAV1D_ASM", dav1d_asm) set_define("MOZ_DAV1D_ASM", dav1d_asm) set_config("MOZ_AV1", av1) set_define("MOZ_AV1", av1) +set_config("MOZ_SYSTEM_AV1", depends_if(system_av1)(lambda _: True)) # JXL Image Codec Support # ==============================================================