PORTNAME= ${_MLT_PORTNAME} DISTVERSION= ${_MLT_VERSION} PORTREVISION?= 7 CATEGORIES?= multimedia # Don't use GitHub "fake" downloads that are auto-generated from a # tag; the project uploads tarballs for each release. # https://github.com/mltframework/mlt/releases/download/v6.26.1/mlt-6.26.1.tar.gz MASTER_SITES= https://github.com/mltframework/mlt/releases/download/v${DISTVERSION}/ DISTFILES= mlt-${DISTVERSION}${EXTRACT_SUFX} WRKSRC= ${WRKDIR}/mlt-${DISTVERSION} MAINTAINER= kde@FreeBSD.org COMMENT?= Multimedia framework for TV broadcasting WWW= https://www.mltframework.org/ LICENSE?= GPLv2 GPLv3 LGPL21 LICENSE_COMB?= multi USES+= alias cmake compiler:c++11-lang eigen:3 localbase pkgconfig DATADIR= ${PREFIX}/share/mlt .ifndef(SLAVEPORT) # Master port. CONFLICTS_INSTALL= mlt-6.* BROKEN_sparc64= does not compile on sparc64 (invokes i386 asm) USES+= mlt:6,nodepend # Explicitly disabled modules that are ouddated, unnecessary, or have # their own port. CMAKE_OFF= MOD_SDL1 MOD_QT \ SWIG_CSHARP SWIG_JAVA SWIG_LUA SWIG_NODEJS SWIG_PERL \ SWIG_PHP SWIG_PYTHON SWIG_RUBY SWIG_TCL PORTDOCS= AUTHORS NEWS README docs PORTEXAMPLES= demo OPTIONS_DEFINE= DOCS EXAMPLES OPTIONS_DEFAULT= AVFORMAT FREI0R GDK KDENLIVE OPENGL PLUS PLUSGPL RESAMPLE \ SDL2 SOX VIDSTAB VORBIS XML OPTIONS_GROUP= MODULES OPTIONS_GROUP_MODULES= AVFORMAT DECKLINK FEEDS FREI0R GDK GTK2 JACKRACK \ KDENLIVE LUMAS MOTION_EST NORMALIZE OLDFILM OPENCV \ OPENGL PLUS PLUSGPL RESAMPLE RTAUDIO RUBBERBAND \ SDL2 SOX VIDSTAB VMFX VORBIS XINE XML OPTIONS_SUB= yes AVFORMAT_DESC= Enable avformat module AVFORMAT_LIB_DEPENDS= libavformat.so:multimedia/ffmpeg AVFORMAT_CMAKE_BOOL= MOD_AVFORMAT DECKLINK_DESC= Enable decklink module DECKLINK_CMAKE_BOOL= MOD_DECKLINK FEEDS_DESC= Enable feeds module FEEDS_CMAKE_BOOL= MOD_FEEDS FREI0R_DESC= Enable frei0r module FREI0R_BUILD_DEPENDS= ${LOCALBASE}/include/frei0r.h:graphics/frei0r FREI0R_CMAKE_BOOL= MOD_FREI0R GDK_DESC= Enable gdk module GDK_LIB_DEPENDS= libexif.so:graphics/libexif \ libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 \ libharfbuzz.so:print/harfbuzz GDK_USES= gnome GDK_USE= gnome=gdkpixbuf2,pango GDK_CMAKE_BOOL= MOD_GDK GTK2_DESC= Enable gtk2 module GTK2_USES= gnome GTK2_USE= gnome=cairo,gtk20 GTK2_CMAKE_BOOL= MOD_GTK2 JACKRACK_DESC= Enable jackrack module JACKRACK_BUILD_DEPENDS= ${LOCALBASE}/include/ladspa.h:audio/ladspa JACKRACK_LIB_DEPENDS= libjack.so:audio/jack JACKRACK_USES= gnome JACKRACK_USE= gnome=glib20 JACKRACK_CMAKE_BOOL= MOD_JACKRACK KDENLIVE_DESC= Enable kdenlive module KDENLIVE_CMAKE_BOOL= MOD_KDENLIVE LUMAS_DESC= Enable lumas module LUMAS_CMAKE_BOOL= MOD_LUMAS MOTION_EST_DESC= Enable motion estimation module MOTION_EST_CMAKE_BOOL= MOD_MOTION_EST NORMALIZE_DESC= Enable normalize module NORMALIZE_CMAKE_BOOL= MOD_NORMALIZE OLDFILM_DESC= Enable oldfilm module OLDFILM_CMAKE_BOOL= MOD_OLDFILM OPENCV_DESC= Enable OpenCV module OPENCV_LIB_DEPENDS= libopencv_core.so:graphics/opencv OPENCV_CMAKE_BOOL= MOD_OPENCV OPENGL_DESC= Enable OpenGL module OPENGL_CMAKE_BOOL= MOD_OPENGL OPENGL_LIB_DEPENDS= libepoxy.so:graphics/libepoxy \ libmovit.so:graphics/movit OPENGL_USES= gl xorg OPENGL_USE= gl=gl xorg=x11 PLUSGPL_DESC= Enable plus GPL module PLUSGPL_CMAKE_BOOL= MOD_PLUSGPL PLUS_DESC= Enable plus module PLUS_LIB_DEPENDS= libfftw3.so:math/fftw3 PLUS_CMAKE_BOOL= MOD_PLUS RESAMPLE_DESC= Enable resample module RESAMPLE_LIB_DEPENDS= libsamplerate.so:audio/libsamplerate RESAMPLE_CMAKE_BOOL= MOD_RESAMPLE RTAUDIO_DESC= Enable RtAudio module RTAUDIO_LIB_DEPENDS= librtaudio.so:audio/rtaudio \ libpulse-simple.so:audio/pulseaudio RTAUDIO_CMAKE_BOOL= MOD_RTAUDIO RUBBERBAND_DESC= Enable rubberband module RUBBERBAND_LIB_DEPENDS= librubberband.so:audio/rubberband RUBBERBAND_CMAKE_BOOL= MOD_RUBBERBAND SDL2_DESC= Enable SDL2 module SDL2_USES= sdl SDL2_USE= sdl=image2 SDL2_CMAKE_BOOL= MOD_SDL2 SOX_DESC= Enable SoX module SOX_LIB_DEPENDS= libsox.so:audio/sox SOX_CMAKE_BOOL= MOD_SOX VIDSTAB_DESC= Enable vid.stab module VIDSTAB_LIB_DEPENDS= libvidstab.so:multimedia/vid.stab VIDSTAB_CMAKE_BOOL= MOD_VIDSTAB VMFX_DESC= Enable vmfx module VMFX_CMAKE_BOOL= MOD_VMFX VORBIS_DESC= Enable Vorbis module VORBIS_LIB_DEPENDS= libvorbis.so:audio/libvorbis libogg.so:audio/libogg VORBIS_CMAKE_BOOL= MOD_VORBIS XINE_DESC= Enable xine module XINE_CMAKE_BOOL= MOD_XINE XML_DESC= Enable XML module XML_USES= gnome XML_USE= gnome=libxml2 XML_CMAKE_BOOL= MOD_XML pre-configure: @${REINPLACE_CMD} -e 's,/usr/local,${LOCALBASE},' \ ${WRKSRC}/src/modules/frei0r/factory.c \ ${WRKSRC}/src/modules/jackrack/plugin_mgr.c common-post-install: ${INSTALL_MAN} ${WRKSRC}/docs/melt.1 ${STAGEDIR}${MANPREFIX}/share/man/man1/melt.1 @${RM} ${WRKSRC}/docs/melt.1 ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/melt ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libmlt.so.${PORTVERSION} ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/libmlt++.so.${PORTVERSION} post-install-DOCS-on: .for f in ${PORTDOCS} cd ${WRKSRC} && ${COPYTREE_SHARE} ${f} ${STAGEDIR}${DOCSDIR} .endfor post-install-EXAMPLES-on: .for f in ${PORTEXAMPLES} cd ${WRKSRC} && ${COPYTREE_SHARE} ${f} ${STAGEDIR}${EXAMPLESDIR} .endfor .else # Slave port. PORTSCOUT= ignore:1 # Depend on multimedia/mlt6 for child ports USES+= mlt:6 PLIST?= ${.CURDIR}/pkg-plist INSTALL_WRKSRC?= ${BUILD_WRKSRC} .endif post-install: common-post-install ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/* 2>/dev/null || ${TRUE} @${RMDIR} -p ${STAGEDIR}${PREFIX}/lib/${PORTNAME} 2>/dev/null || ${TRUE} .include