diff options
author | ILMostro <ilmostro7@gmail.com> | 2018-08-28 21:32:31 -0500 |
---|---|---|
committer | ILMostro <ilmostro7@gmail.com> | 2018-08-28 21:32:31 -0500 |
commit | 3cb9d9e6a70b1cb5aba3fbffd632d48a073b366e (patch) | |
tree | 719ac8a82a84f69a70678b88fb519bf2c9ece5d6 /media-video | |
parent | dev-lang/luajit-2.0.2: stable keywords (diff) | |
download | ag-ops-3cb9d9e6a70b1cb5aba3fbffd632d48a073b366e.tar.gz ag-ops-3cb9d9e6a70b1cb5aba3fbffd632d48a073b366e.tar.bz2 ag-ops-3cb9d9e6a70b1cb5aba3fbffd632d48a073b366e.zip |
media-video/vlc: added vlc ebuilds
Diffstat (limited to 'media-video')
-rw-r--r-- | media-video/vlc/Manifest | 13 | ||||
-rw-r--r-- | media-video/vlc/files/vlc-2.1.0-fix-libtremor-libs.patch | 11 | ||||
-rw-r--r-- | media-video/vlc/files/vlc-2.2.4-libav-11.7.patch | 10 | ||||
-rw-r--r-- | media-video/vlc/files/vlc-2.2.8-freerdp-2.patch | 131 | ||||
-rw-r--r-- | media-video/vlc/files/vlc-2.2.8-libupnp-slot-1.8.patch | 24 | ||||
-rw-r--r-- | media-video/vlc/files/vlc-3.0.1-qt-5.11.patch | 10 | ||||
-rw-r--r-- | media-video/vlc/files/vlc-3.0.3-fix-disable-vlm.patch | 42 | ||||
-rw-r--r-- | media-video/vlc/files/vlc-3.0.3-fribidi-1.patch | 80 | ||||
-rw-r--r-- | media-video/vlc/files/vlc-9999-libupnp-slot-1.8.patch | 24 | ||||
-rw-r--r-- | media-video/vlc/metadata.xml | 63 | ||||
-rw-r--r-- | media-video/vlc/vlc-3.0.3-r1.ebuild | 500 | ||||
-rw-r--r-- | media-video/vlc/vlc-3.0.9999.ebuild | 493 | ||||
-rw-r--r-- | media-video/vlc/vlc-9999.ebuild | 493 |
13 files changed, 1894 insertions, 0 deletions
diff --git a/media-video/vlc/Manifest b/media-video/vlc/Manifest new file mode 100644 index 0000000..aaa0ac5 --- /dev/null +++ b/media-video/vlc/Manifest @@ -0,0 +1,13 @@ +AUX vlc-2.1.0-fix-libtremor-libs.patch 453 BLAKE2B 526934642617384224faee8d26c0a7fa4dec9891f718816e44fd08970a5477cdc7ae34510b26af9971fe5d20b25c96595901117c804c7679341e1e8cd5309a14 SHA512 6c25995a518aeb1d501fa217d897962e1e81f66a4f28b6bb164dde3afe7f91772bb608f946d802857fa9a272cab1f88d3990d582be89ab8e37b1a8b6681798ae +AUX vlc-2.2.4-libav-11.7.patch 291 BLAKE2B 9ad8bac7897976ba50b98ce1063baab311f0ad8e267cbad751b1378280b2f8238e22096448889b4eb69bbec34d08225269c7d2f653676828dc7a7d755fe676bf SHA512 f216833dc1ad5ddbf6a19b497238e9c850582f16eae452862a4c7c9acd110a0033879b3e3555177ac0ef30663cdd3f72d1a1020999c44e1f577ef665dd658315 +AUX vlc-2.2.8-freerdp-2.patch 4478 BLAKE2B 24b34ae2015de5197a275e393a761535d3386138ca1cdd67f0254a8bb916c9b0b40e553846299036882da5e5389fd8b8722f6f0cdf3e114a05fe1d445b48801c SHA512 e71bf81d87e7d0daf6d5820ba8e6a365cb8041eca82674ef69cc0d1eabbb29349a9ac193b0c2ad212e6d231dda7cf07a71e76317b8e8fc44b5ef0467d8f86b2f +AUX vlc-2.2.8-libupnp-slot-1.8.patch 725 BLAKE2B eb217ef57f0709fa1d0bdf1644610588f373e17d18c2642ee6489ca00311772307d8fc67a07ecc8d29810b80aa8f14c40298285c3319d8ddede2552d28d2837e SHA512 890b91405cbf6105c932566fd7799fdccd1b27f1e0df0c6dae1511aeead2c28eb5fea7642b01af1abbcf546aae0559408c0ddf2ec82c92809f3b02d1d477bb51 +AUX vlc-3.0.1-qt-5.11.patch 350 BLAKE2B e0980ebbefa94d9388785c12fa5cba666eb3681fa94b0c512018475477974502ce0df4aa4939865f43c2bf393654db902df5f070edd802296f1d3ef71b8caeb0 SHA512 66aad0ec32d1a96f65566b04eb9c0b4574824e281940fe5c0de54ac5f92189693a9f2576203d2c8562d7174ec5315cbbd683d93c481d16119d3038e30a58cbf5 +AUX vlc-3.0.3-fix-disable-vlm.patch 1366 BLAKE2B a0ebb75f8b171063dfc4490ed8abfcad515cac85a618bcd0e157fda71a6673023d45682a5c5507ffbc1412e15f1edb3cd0e3f1e5095d9d5ce5dfb0ae51488e36 SHA512 544c3f57112e7c37c1fc3a853e45b6ca3c186ee70734cd755365b233cbd481257ec0a7be8e8213c55ee6c6110a2ee8c0d4bce50eab67cdd57cb4e74a9edab862 +AUX vlc-3.0.3-fribidi-1.patch 3406 BLAKE2B d7c670a57a442a1f093f4ca72c84b633bafcf5a631f0a31af45109cf0cedc1761f93817c26b412fc1af0a7ee8a9f84b5e318d210d4e78c95a989af37d99410f4 SHA512 403524d92607e8862836fbbdd4f32c064ee67dac521fbbfdd474d4b057b76e006cca6e9541d95765451eb147320111ef1774b6399e05ce9d32db61430ab4ef2a +AUX vlc-9999-libupnp-slot-1.8.patch 763 BLAKE2B 6bc8cf46f029db27d6d30d96e871d3bcfddee004e4e8469e1526a6a38fb5cc11a24a19888443e5f9062d7145665d594e142c12f3a9693967f195bab3b33ada38 SHA512 dd3375997a1935d3a227231785f35e300e3f992034da6a9c3019e28c68c1f005cbdd67190672264b342abc719e69005f965599f7af975e2bbd4cfccd89e3770d +DIST vlc-3.0.3.tar.xz 24941592 BLAKE2B dd6e27b10064ecae1c6f64459d2ed172d09f8dc1414c4d96bf66e8b3104154154229bb5d638955c855b6cf471b8630196b170db94b61506c7e0dd42bec8fbb20 SHA512 1569cefa6623b2631a832679bc9a63ebeba222901e5221d254e896a68d2ee467054da8de9eda566924e80a11bb29a673a9f0c4243793845547d8027b58a238ab +EBUILD vlc-3.0.3-r1.ebuild 13450 BLAKE2B 90c0942f1018dc8bae1bc15c4417bb7555aede9e6ec7d3a87ddd048af03d816855cc3f96e1042a2f6c0d2949ca76dd8b9d80b240509413af3bb61e212ffd11ad SHA512 072af5095c8fda41fe7c29d4254a4147687b64a8593b117d37466dc8012d1c64bb7291ecf6a5ef0f806f6de0522dd90eb796568f73201cd1a327d85efd3f7218 +EBUILD vlc-3.0.9999.ebuild 13261 BLAKE2B b014ff22f70752b739d22521c06a642093d25037cc2355dcd19dda351b4d4c8cbc44ff0e8b86e2410a15ca8529048f6c61601c412e83cbfd32188ead64a3fcfd SHA512 e6f34bb0e1c9f0c31fcd46f5f2e22e6ebf5834ad1140ee2178cae581049bb99b0c1fd6d96bca4765ec38c0611d1ca4740b3dc4e550b62a85642716df3af2af01 +EBUILD vlc-9999.ebuild 13209 BLAKE2B 47add64565abb5e7f4fc44729f67de84d6bfe7bc025819d3f986d9497207bdb12c4a27462d917ae18197fe31899a252eed8aaf3efd80a0350e7c2c32d21e7706 SHA512 86bfd49188514a5ccd813590f8ec8eff9bd55d751b8c2f6057d250031bbcbe3dade0a18a55bfaba07ea7b11f42208d431fe04dc7c79a500679268a9cdf4fc49b +MISC metadata.xml 5187 BLAKE2B 43c8474284bb05268e6846e646ff382a1cb0f3ffa1a9ee65aa5beb95c157c427cef3df82abdaafa60f3ede953506987342de284a06fad2fcf83b5fc3b7054ca2 SHA512 c518a431a420a40e0f627e0cc713980b660db1acfb837bf20bf80220df1773bdea325998e5b8270dc7d4ad2af6290bdefb45c30a1ed07f62c73c99d57a5ca77a diff --git a/media-video/vlc/files/vlc-2.1.0-fix-libtremor-libs.patch b/media-video/vlc/files/vlc-2.1.0-fix-libtremor-libs.patch new file mode 100644 index 0000000..8a58969 --- /dev/null +++ b/media-video/vlc/files/vlc-2.1.0-fix-libtremor-libs.patch @@ -0,0 +1,11 @@ +--- a/modules/codec/Makefile.am ++++ b/modules/codec/Makefile.am +@@ -215,7 +215,7 @@ + libtremor_plugin_la_SOURCES = codec/vorbis.c + libtremor_plugin_la_CPPFLAGS = $(AM_CPPFLAGS) -DMODULE_NAME_IS_tremor + libtremor_plugin_la_LDFLAGS = $(AM_LDFLAGS) -rpath '$(codecdir)' +-libtremor_plugin_la_LIBADD = -lvorbisdec -logg ++libtremor_plugin_la_LIBADD = $(VORBIS_LIBS) $(OGG_LIBS) + EXTRA_LTLIBRARIES += libtremor_plugin.la + codec_LTLIBRARIES += $(LTLIBtremor) + diff --git a/media-video/vlc/files/vlc-2.2.4-libav-11.7.patch b/media-video/vlc/files/vlc-2.2.4-libav-11.7.patch new file mode 100644 index 0000000..9322236 --- /dev/null +++ b/media-video/vlc/files/vlc-2.2.4-libav-11.7.patch @@ -0,0 +1,10 @@ +--- a/modules/codec/avcodec/audio.c 2016-09-10 13:46:51.066453337 -0700 ++++ a/modules/codec/avcodec/audio.c 2016-09-10 13:42:26.061451090 -0700 +@@ -38,6 +38,7 @@ + + #include <libavcodec/avcodec.h> + #include <libavutil/mem.h> ++#include <libavutil/channel_layout.h> + + #include "avcodec.h" + diff --git a/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch b/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch new file mode 100644 index 0000000..5cee133 --- /dev/null +++ b/media-video/vlc/files/vlc-2.2.8-freerdp-2.patch @@ -0,0 +1,131 @@ +--- a/configure.ac ++++ b/configure.ac +@@ -1957,7 +1957,7 @@ PKG_ENABLE_MODULES_VLC([VNC], [vnc], [li + + dnl RDP/Remote Desktop access module + dnl +-PKG_ENABLE_MODULES_VLC([FREERDP], [rdp], [freerdp >= 1.0.1], (RDP/Remote Desktop client support) ) ++PKG_ENABLE_MODULES_VLC([FREERDP], [rdp], [freerdp2 >= 1.0.1], (RDP/Remote Desktop client support) ) + + dnl + dnl Real RTSP plugin +--- a/modules/access/rdp.c 2017-12-25 17:45:32.964429170 +0100 ++++ b/modules/access/rdp.c 2017-12-25 17:53:15.114093670 +0100 +@@ -45,18 +45,6 @@ + # include <freerdp/version.h> + #endif + +-#if !defined(FREERDP_VERSION_MAJOR) || \ +- (defined(FREERDP_VERSION_MAJOR) && !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 1))) +-# define SoftwareGdi sw_gdi +-# define Fullscreen fullscreen +-# define ServerHostname hostname +-# define Username username +-# define Password password +-# define ServerPort port +-# define EncryptionMethods encryption +-# define ContextSize context_size +-#endif +- + #include <errno.h> + #ifdef HAVE_POLL + # include <poll.h> +@@ -140,6 +128,7 @@ + vlcrdp_context_t * p_vlccontext = (vlcrdp_context_t *) p_context; + demux_sys_t *p_sys = p_vlccontext->p_demux->p_sys; + rdpGdi *p_gdi = p_context->gdi; ++ unsigned bytesPerPixel; + + if ( p_sys->es ) + { +@@ -149,19 +138,23 @@ + + /* Now init and fill es format */ + vlc_fourcc_t i_chroma; +- switch( p_gdi->bytesPerPixel ) ++ switch( p_gdi->dstFormat ) + { + default: +- case 16: ++ msg_Dbg( p_vlccontext->p_demux, "unhandled dstFormat %x bpp", p_gdi->dstFormat); ++ case PIXEL_FORMAT_BGR16: + i_chroma = VLC_CODEC_RGB16; ++ bytesPerPixel = 16; + break; +- case 24: ++ case PIXEL_FORMAT_BGR24: + i_chroma = VLC_CODEC_RGB24; ++ bytesPerPixel = 24; + break; +- case 32: ++ case PIXEL_FORMAT_BGRA32: + i_chroma = VLC_CODEC_RGB32; ++ bytesPerPixel = 32; + break; + } + es_format_t fmt; + es_format_Init( &fmt, VIDEO_ES, i_chroma ); + +@@ -172,7 +165,7 @@ + fmt.video.i_height = p_gdi->height; + fmt.video.i_frame_rate_base = 1000; + fmt.video.i_frame_rate = 1000 * p_sys->f_fps; +- p_sys->i_framebuffersize = p_gdi->width * p_gdi->height * p_gdi->bytesPerPixel; ++ p_sys->i_framebuffersize = p_gdi->width * p_gdi->height * bytesPerPixel; + + if ( p_sys->p_block ) + p_sys->p_block = block_Realloc( p_sys->p_block, 0, p_sys->i_framebuffersize ); +@@ -233,28 +226,19 @@ + vlcrdp_context_t * p_vlccontext = (vlcrdp_context_t *) p_instance->context; + + msg_Dbg( p_vlccontext->p_demux, "connected to desktop %dx%d (%d bpp)", +-#if defined(FREERDP_VERSION_MAJOR) && (FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 1)) + p_instance->settings->DesktopWidth, + p_instance->settings->DesktopHeight, + p_instance->settings->ColorDepth +-#else +- p_instance->settings->width, +- p_instance->settings->height, +- p_instance->settings->color_depth +-#endif + ); + + p_instance->update->DesktopResize = desktopResizeHandler; + p_instance->update->BeginPaint = beginPaintHandler; + p_instance->update->EndPaint = endPaintHandler; + +- gdi_init( p_instance, +- CLRBUF_16BPP | +-#if defined(FREERDP_VERSION_MAJOR) && defined(FREERDP_VERSION_MINOR) && \ +- !(FREERDP_VERSION_MAJOR > 1 || (FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR >= 2)) +- CLRBUF_24BPP | +-#endif +- CLRBUF_32BPP, NULL ); ++ if ( p_instance->settings->ColorDepth > 16 ) ++ gdi_init( p_instance, PIXEL_FORMAT_XRGB32); ++ else ++ gdi_init( p_instance, PIXEL_FORMAT_RGB16); + + desktopResizeHandler( p_instance->context ); + return true; +@@ -428,10 +412,6 @@ + if ( p_sys->f_fps <= 0 ) p_sys->f_fps = 1.0; + p_sys->i_frame_interval = 1000000 / p_sys->f_fps; + +-#if FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR < 2 +- freerdp_channels_global_init(); +-#endif +- + p_sys->p_instance = freerdp_new(); + if ( !p_sys->p_instance ) + { +@@ -506,9 +486,6 @@ + + freerdp_disconnect( p_sys->p_instance ); + freerdp_free( p_sys->p_instance ); +-#if FREERDP_VERSION_MAJOR == 1 && FREERDP_VERSION_MINOR < 2 +- freerdp_channels_global_uninit(); +-#endif + + if ( p_sys->p_block ) + block_Release( p_sys->p_block ); diff --git a/media-video/vlc/files/vlc-2.2.8-libupnp-slot-1.8.patch b/media-video/vlc/files/vlc-2.2.8-libupnp-slot-1.8.patch new file mode 100644 index 0000000..ab501e4 --- /dev/null +++ b/media-video/vlc/files/vlc-2.2.8-libupnp-slot-1.8.patch @@ -0,0 +1,24 @@ +--- a/modules/services_discovery/upnp.hpp 2015-05-19 15:32:38.000000000 +0200 ++++ b/modules/services_discovery/upnp.hpp 2017-12-09 14:07:08.551654458 +0100 +@@ -28,8 +28,8 @@ + #include <vector> + #include <string> + +-#include <upnp/upnp.h> +-#include <upnp/upnptools.h> ++#include <upnp-1.8/upnp.h> ++#include <upnp-1.8/upnptools.h> + + #include <vlc_common.h> + +--- a/configure.ac 2017-12-09 14:09:12.956370304 +0100 ++++ b/configure.ac 2017-12-09 14:13:25.236710362 +0100 +@@ -4046,7 +4046,7 @@ + dnl + dnl UPnP Plugin (Intel SDK) + dnl +-PKG_ENABLE_MODULES_VLC([UPNP], [upnp], [libupnp], [Intel UPNP SDK],[auto]) ++PKG_ENABLE_MODULES_VLC([UPNP], [upnp], [libupnp-1.8], [Intel UPNP SDK],[auto]) + + EXTEND_HELP_STRING([Misc options:]) + diff --git a/media-video/vlc/files/vlc-3.0.1-qt-5.11.patch b/media-video/vlc/files/vlc-3.0.1-qt-5.11.patch new file mode 100644 index 0000000..c99d898 --- /dev/null +++ b/media-video/vlc/files/vlc-3.0.1-qt-5.11.patch @@ -0,0 +1,10 @@ +--- a/modules/gui/qt/components/simple_preferences.cpp 2018-01-25 17:57:40.000000000 +0100 ++++ b/modules/gui/qt/components/simple_preferences.cpp 2018-03-18 21:08:51.212556781 +0100 +@@ -33,6 +33,7 @@ + #include <vlc_config_cat.h> + #include <vlc_configuration.h> + ++#include <QButtonGroup> + #include <QString> + #include <QFont> + #include <QToolButton> diff --git a/media-video/vlc/files/vlc-3.0.3-fix-disable-vlm.patch b/media-video/vlc/files/vlc-3.0.3-fix-disable-vlm.patch new file mode 100644 index 0000000..fe4eecb --- /dev/null +++ b/media-video/vlc/files/vlc-3.0.3-fix-disable-vlm.patch @@ -0,0 +1,42 @@ +From 49450a4ab90bba8530764c5cdb95d648aeda7d52 Mon Sep 17 00:00:00 2001 +From: =?utf8?q?Hugo=20Beauz=C3=A9e-Luyssen?= <hugo@beauzee.fr> +Date: Mon, 28 May 2018 18:25:15 +0200 +Subject: [PATCH] qt: Fix build with --disable-vlm +MIME-Version: 1.0 +Content-Type: text/plain; charset=utf8 +Content-Transfer-Encoding: 8bit + +Fix #20495 + +(cherry picked from commit 44a635bd4ae16fec5295f6f8aee4dd2ffd7e97d8) +Signed-off-by: Hugo Beauzée-Luyssen <hugo@beauzee.fr> +--- + modules/gui/qt/Makefile.am | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/modules/gui/qt/Makefile.am b/modules/gui/qt/Makefile.am +index cb77b14d96..c67f4afc13 100644 +--- a/modules/gui/qt/Makefile.am ++++ b/modules/gui/qt/Makefile.am +@@ -191,7 +191,6 @@ nodist_libqt_plugin_la_SOURCES = \ + gui/qt/dialogs/open.moc.cpp \ + gui/qt/dialogs/openurl.moc.cpp \ + gui/qt/dialogs/podcast_configuration.moc.cpp \ +- gui/qt/dialogs/vlm.moc.cpp \ + gui/qt/dialogs/firstrun.moc.cpp \ + gui/qt/dialogs/extensions.moc.cpp \ + gui/qt/dialogs/fingerprintdialog.moc.cpp \ +@@ -445,6 +444,10 @@ EXTRA_DIST += gui/qt/vlc.qrc $(libqt_plugin_la_RES) + + nodist_libqt_plugin_la_SOURCES += gui/qt/resources.cpp + ++if ENABLE_VLM ++nodist_libqt_plugin_la_SOURCES += gui/qt/dialogs/vlm.moc.cpp ++endif ++ + gui/qt/resources.cpp: gui/qt/vlc.qrc $(libqt_plugin_la_RES) + $(AM_V_GEN)$(RCC) -name vlc -o $@ $< + +-- +2.11.0 + diff --git a/media-video/vlc/files/vlc-3.0.3-fribidi-1.patch b/media-video/vlc/files/vlc-3.0.3-fribidi-1.patch new file mode 100644 index 0000000..4431025 --- /dev/null +++ b/media-video/vlc/files/vlc-3.0.3-fribidi-1.patch @@ -0,0 +1,80 @@ +From 26e2d3906658c30f2f88f4b1bc9630ec43bf5525 Mon Sep 17 00:00:00 2001 +From: Shaleen Jain <shaleen@jain.sh> +Date: Sun, 25 Feb 2018 18:42:27 +0530 +Subject: [PATCH] fribidi: update for version 1.0 + +Update functions deprecated in version 1.0 when building with release 1.0 and +above. + +Signed-off-by: Thomas Guillem <thomas@gllm.fr> +--- + modules/text_renderer/freetype/text_layout.c | 24 ++++++++++++++++++++ + 1 file changed, 24 insertions(+) + +diff --git a/modules/text_renderer/freetype/text_layout.c b/modules/text_renderer/freetype/text_layout.c +index 13efd567b46..1a28786d097 100644 +--- a/modules/text_renderer/freetype/text_layout.c ++++ b/modules/text_renderer/freetype/text_layout.c +@@ -153,6 +153,9 @@ typedef struct paragraph_t + + #ifdef HAVE_FRIBIDI + FriBidiCharType *p_types; ++#if FRIBIDI_MAJOR_VERSION >= 1 ++ FriBidiBracketType *p_btypes; ++#endif + FriBidiLevel *p_levels; + FriBidiStrIndex *pi_reordered_indices; + FriBidiParType paragraph_type; +@@ -361,6 +364,9 @@ static paragraph_t *NewParagraph( filter_t *p_filter, + #ifdef HAVE_FRIBIDI + p_paragraph->p_levels = vlc_alloc( i_size, sizeof( *p_paragraph->p_levels ) ); + p_paragraph->p_types = vlc_alloc( i_size, sizeof( *p_paragraph->p_types ) ); ++#if FRIBIDI_MAJOR_VERSION >= 1 ++ p_paragraph->p_btypes = vlc_alloc( i_size, sizeof( *p_paragraph->p_btypes ) ); ++#endif + p_paragraph->pi_reordered_indices = + vlc_alloc( i_size, sizeof( *p_paragraph->pi_reordered_indices ) ); + +@@ -398,6 +404,9 @@ static paragraph_t *NewParagraph( filter_t *p_filter, + #ifdef HAVE_FRIBIDI + if( p_paragraph->p_levels ) free( p_paragraph->p_levels ); + if( p_paragraph->p_types ) free( p_paragraph->p_types ); ++#if FRIBIDI_MAJOR_VERSION >= 1 ++ if( p_paragraph->p_btypes ) free( p_paragraph->p_btypes ); ++#endif + if( p_paragraph->pi_reordered_indices ) + free( p_paragraph->pi_reordered_indices ); + #endif +@@ -424,6 +433,9 @@ static void FreeParagraph( paragraph_t *p_paragraph ) + #ifdef HAVE_FRIBIDI + free( p_paragraph->pi_reordered_indices ); + free( p_paragraph->p_types ); ++#if FRIBIDI_MAJOR_VERSION >= 1 ++ free( p_paragraph->p_btypes ); ++#endif + free( p_paragraph->p_levels ); + #endif + +@@ -436,10 +448,22 @@ static int AnalyzeParagraph( paragraph_t *p_paragraph ) + fribidi_get_bidi_types( p_paragraph->p_code_points, + p_paragraph->i_size, + p_paragraph->p_types ); ++#if FRIBIDI_MAJOR_VERSION >= 1 ++ fribidi_get_bracket_types( p_paragraph->p_code_points, ++ p_paragraph->i_size, ++ p_paragraph->p_types, ++ p_paragraph->p_btypes ); ++ fribidi_get_par_embedding_levels_ex( p_paragraph->p_types, ++ p_paragraph->p_btypes, ++ p_paragraph->i_size, ++ &p_paragraph->paragraph_type, ++ p_paragraph->p_levels ); ++#else + fribidi_get_par_embedding_levels( p_paragraph->p_types, + p_paragraph->i_size, + &p_paragraph->paragraph_type, + p_paragraph->p_levels ); ++#endif + + #ifdef HAVE_HARFBUZZ + hb_unicode_funcs_t *p_funcs = hb_unicode_funcs_get_default(); diff --git a/media-video/vlc/files/vlc-9999-libupnp-slot-1.8.patch b/media-video/vlc/files/vlc-9999-libupnp-slot-1.8.patch new file mode 100644 index 0000000..15ffc6a --- /dev/null +++ b/media-video/vlc/files/vlc-9999-libupnp-slot-1.8.patch @@ -0,0 +1,24 @@ +--- a/modules/services_discovery/upnp-wrapper.hpp 2017-12-25 18:17:33.358015500 +0100 ++++ b/modules/services_discovery/upnp-wrapper.hpp 2017-12-25 18:30:45.158167813 +0100 +@@ -35,8 +35,8 @@ + #include <algorithm> + #include <assert.h> + +-#include <upnp.h> +-#include <upnptools.h> ++#include <upnp-1.8/upnp.h> ++#include <upnp-1.8/upnptools.h> + + #if UPNP_VERSION < 10800 + typedef void* UpnpEventPtr; + +--- a/configure.ac 2017-12-09 14:09:12.956370304 +0100 ++++ b/configure.ac 2017-12-09 14:13:25.236710362 +0100 +@@ -4046,7 +4046,7 @@ + dnl + dnl UPnP Plugin (Intel SDK) + dnl +-PKG_ENABLE_MODULES_VLC([UPNP], [upnp], [libupnp], [Intel UPNP SDK],[auto]) ++PKG_ENABLE_MODULES_VLC([UPNP], [upnp], [libupnp-1.8], [Intel UPNP SDK],[auto]) + + EXTEND_HELP_STRING([Misc options:]) diff --git a/media-video/vlc/metadata.xml b/media-video/vlc/metadata.xml new file mode 100644 index 0000000..63d4bab --- /dev/null +++ b/media-video/vlc/metadata.xml @@ -0,0 +1,63 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>media-video@gentoo.org</email> + <name>Gentoo Video project</name> + </maintainer> + <use> + <flag name="aom">Enable experimental support for AV1 codec</flag> + <flag name="archive">Enable support for libarchive stream extractor</flag> + <flag name="aribsub">Enable support for decoding ARIB STD-B24 subtitles</flag> + <flag name="bluray">Enable libbluray for Blu-ray disc support</flag> + <flag name="chromaprint">Enable libchromaprint for Chromaprint based audio fingerprinter support</flag> + <flag name="chromecast">Enable experimental support for Google Chromecast</flag> + <flag name="dc1394">Enable IIDC cameras support</flag> + <flag name="directx">Enable Win32 DirectX, D3D11va and DxVA2 support</flag> + <flag name="dvbpsi">Enable support for Mpeg-TS files (.ts, .m2ts, .mts) via <pkg>media-libs/libdvbpsi</pkg></flag> + <flag name="encode">Enable streaming-output support and videolan manager to control multiple streams from within one instance</flag> + <flag name="faad">Enable AAC audio decoding library support via media-libs/faad2</flag> + <flag name="fdk">Enable the Fraunhofer AAC codec library</flag> + <flag name="fluidsynth">Enable Fluidsynth MIDI software synthesis (with external sound fonts)</flag> + <flag name="gcrypt">Enable cryptography support via libgcrypt</flag> + <flag name="gme">Enable support for <pkg>media-libs/game-music-emu</pkg> for playing various video game music formats</flag> + <flag name="gstreamer">Enable GStreamer based decoding support (currently supports only video decoding)</flag> + <flag name="kate">Adds support for Ogg Kate subtitles via libkate</flag> + <flag name="kms">Enable kernel mode setting video output plugin via <pkg>x11-libs/libdrm</pkg></flag> + <flag name="libtar">Uses libtar instead of the built-in tar reader for reading custom skins</flag> + <flag name="libtiger">Enable Ogg Kate subtitles rendering using libtiger</flag> + <flag name="linsys">Enable support for Linux Linear Systems Ltd. SDI and HD-SDI input cards</flag> + <flag name="live">Enable live555 streaming media support (client support for rtsp)</flag> + <flag name="lua">Enable Lua scripting support, needed for including support for Jamendo (online music platform) and similar things</flag> + <flag name="macosx-notifications">Enable Mac OS X notifications module (formerly growl)</flag> + <flag name="macosx-qtkit">Enable Mac OS X qtkit module: qtcapture (video) and qtsound (audio) module</flag> + <flag name="matroska">Enable matroska support using reference libraries (fallback on other existing matroska support if disabled, i.e., matroska enabled FFmpeg)</flag> + <flag name="mpeg">Add libmpeg2 support for mpeg-1 and mpeg-2 video streams</flag> + <flag name="nfs">Enable support for nfs protocol via <pkg>net-fs/libnfs</pkg></flag> + <flag name="omxil">Enable OpenMAX Integration Layer codec module</flag> + <flag name="opencv">Enable OpenCV (computer vision) filter module</flag> + <flag name="optimisememory">Enable optimisation for memory rather than performance</flag> + <flag name="opus">Support opus decoding via libopus</flag> + <flag name="postproc">Enable image post-processing via libpostproc (part of FFmpeg)</flag> + <flag name="projectm">Enable the projectM visualization plugin</flag> + <flag name="rtsp">Enable real audio and RTSP modules</flag> + <flag name="run-as-root">Allows vlc to start for root. Don't enable this unless you have a very specific (e.g. embedded) need for it!</flag> + <flag name="schroedinger">Enable Dirac video support (an advanced royalty-free video compression format) via libschroedinger (high-speed implementation in C of the Dirac codec)</flag> + <flag name="sdl-image">Enable sdl image video decoder (depends on sdl)</flag> + <flag name="sftp">Enable libssh2 to support SFTP file transfer</flag> + <flag name="shout">Enable libshout output</flag> + <flag name="sid">Adds support for playing C64 SID files through <pkg>media-libs/libsidplay</pkg>:2</flag> + <flag name="skins">Enable support for the skins2 interface</flag> + <flag name="soxr">Enable SoX Resampler support via <pkg>media-libs/soxr</pkg></flag> + <flag name="srt">Enable support for Secure Reliable Transport (SRT) via <pkg>net-libs/srt</pkg></flag> + <flag name="tremor">Enable tremor, a fixed-point version of the Ogg Vorbis decoder</flag> + <flag name="twolame">Enable twolame support (MPEG Audio Layer 2 encoder)</flag> + <flag name="upnp">Enable support for the Intel SDK stack based UPnP discovery module instead of CyberLink</flag> + <flag name="vpx">Enable the decoder(s) from the WebM VP8 / VP9 Codec SDK</flag> + <flag name="wma-fixed">Enable fixed point WMA decoder</flag> + <flag name="X">Enable support for e.g. fullscreen mode via X and the X C-language binding. It does not build a graphical interface</flag> + <flag name="x265">Support X265 Encoder</flag> + <flag name="zeroconf">Enable support for zero-configuration networking via avahi</flag> + <flag name="zvbi">Enable support for teletext subtitles via the zvbi library</flag> + </use> +</pkgmetadata> diff --git a/media-video/vlc/vlc-3.0.3-r1.ebuild b/media-video/vlc/vlc-3.0.3-r1.ebuild new file mode 100644 index 0000000..be1767e --- /dev/null +++ b/media-video/vlc/vlc-3.0.3-r1.ebuild @@ -0,0 +1,500 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +MY_PV="${PV/_/-}" +MY_PV="${MY_PV/-beta/-test}" +MY_P="${PN}-${MY_PV}" +if [[ ${PV} = *9999 ]] ; then + if [[ ${PV%.9999} != ${PV} ]] ; then + EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" + else + EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" + fi + SCM="git-r3" +else + if [[ ${MY_P} = ${P} ]] ; then + SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" + else + SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" + fi + KEYWORDS="amd64 ~arm ~arm64 ppc ppc64 -sparc x86 ~x86-fbsd" +fi +inherit autotools flag-o-matic gnome2-utils toolchain-funcs versionator virtualx xdg-utils ${SCM} + +DESCRIPTION="Media player and framework with support for most multimedia files and streaming" +HOMEPAGE="https://www.videolan.org/vlc/" + +LICENSE="LGPL-2.1 GPL-2" +SLOT="0/5-9" # vlc - vlccore + +IUSE="a52 alsa altivec aom archive bidi bluray cddb chromaprint chromecast dbus dc1394 + debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac fluidsynth fontconfig + +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate libass libav libcaca + libnotify +libsamplerate libtar libtiger linsys lirc live lua macosx-notifications + macosx-qtkit matroska modplug mp3 mpeg mtp musepack ncurses neon nfs ogg + omxil opencv optimisememory opus png postproc projectm pulseaudio +qt5 rdp rtsp + run-as-root samba schroedinger sdl-image sftp shout sid skins soxr speex srt ssl svg + taglib theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vorbis vpx + wayland wma-fixed +X x264 x265 xml zeroconf zvbi cpu_flags_x86_mmx cpu_flags_x86_sse +" +REQUIRED_USE=" + chromecast? ( encode ) + directx? ( ffmpeg ) + fontconfig? ( truetype ) + libcaca? ( X ) + libtar? ( skins ) + libtiger? ( kate ) + postproc? ( ffmpeg ) + skins? ( qt5 truetype X xml ) + ssl? ( gcrypt ) + vaapi? ( ffmpeg X ) + vdpau? ( ffmpeg X ) +" +RDEPEND=" + net-dns/libidn:= + sys-libs/zlib:0[minizip] + virtual/libintl:0 + virtual/opengl + a52? ( media-libs/a52dec:0 ) + alsa? ( media-libs/alsa-lib:0 ) + aom? ( media-libs/libaom:= ) + archive? ( app-arch/libarchive:= ) + bidi? ( + dev-libs/fribidi:0 + media-libs/freetype:2[harfbuzz] + media-libs/harfbuzz + virtual/ttf-fonts:0 + ) + bluray? ( media-libs/libbluray:0= ) + cddb? ( media-libs/libcddb:0 ) + chromaprint? ( media-libs/chromaprint:0= ) + chromecast? ( + >=dev-libs/protobuf-2.5.0:= + >=net-libs/libmicrodns-0.0.9:= + ) + dbus? ( sys-apps/dbus:0 ) + dc1394? ( + media-libs/libdc1394:2 + sys-libs/libraw1394:0 + ) + dts? ( media-libs/libdca:0 ) + dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:0= ) + dvd? ( + >=media-libs/libdvdnav-4.9:0 + >=media-libs/libdvdread-4.9:0 + ) + faad? ( media-libs/faad2:0 ) + fdk? ( media-libs/fdk-aac:0= ) + ffmpeg? ( + !libav? ( >=media-video/ffmpeg-3.1.3:0=[vaapi?,vdpau?] ) + libav? ( >=media-video/libav-12.2:0=[vaapi?,vdpau?] ) + ) + flac? ( + media-libs/flac:0 + media-libs/libogg:0 + ) + fluidsynth? ( media-sound/fluidsynth:0 ) + fontconfig? ( media-libs/fontconfig:1.0 ) + gcrypt? ( + dev-libs/libgcrypt:0= + dev-libs/libgpg-error:0 + ) + gme? ( media-libs/game-music-emu:0 ) + gnome-keyring? ( app-crypt/libsecret ) + gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) + ieee1394? ( + sys-libs/libavc1394:0 + sys-libs/libraw1394:0 + ) + jack? ( virtual/jack ) + jpeg? ( virtual/jpeg:0 ) + kate? ( media-libs/libkate:0 ) + libass? ( + media-libs/fontconfig:1.0 + media-libs/libass:0= + ) + libcaca? ( media-libs/libcaca:0 ) + libnotify? ( + dev-libs/glib:2 + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libnotify:0 + ) + libsamplerate? ( media-libs/libsamplerate:0 ) + libtar? ( dev-libs/libtar:0 ) + libtiger? ( media-libs/libtiger:0 ) + linsys? ( media-libs/zvbi ) + lirc? ( app-misc/lirc:0 ) + live? ( media-plugins/live:0 ) + lua? ( >=dev-lang/lua-5.1:0 ) + matroska? ( + dev-libs/libebml:0= + media-libs/libmatroska:0= + ) + modplug? ( media-libs/libmodplug:0 ) + mp3? ( media-libs/libmad:0 ) + mpeg? ( media-libs/libmpeg2:0 ) + mtp? ( media-libs/libmtp:0= ) + musepack? ( media-sound/musepack-tools:0 ) + ncurses? ( sys-libs/ncurses:0=[unicode] ) + nfs? ( >=net-fs/libnfs-0.10.0:= ) + ogg? ( media-libs/libogg:0 ) + opencv? ( media-libs/opencv:0= ) + opus? ( >=media-libs/opus-1.0.3:0 ) + png? ( media-libs/libpng:0= ) + postproc? ( libav? ( media-libs/libpostproc:0= ) ) + projectm? ( + media-fonts/dejavu:0 + media-libs/libprojectm:0 + ) + pulseaudio? ( media-sound/pulseaudio:0 ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + X? ( + dev-qt/qtx11extras:5 + x11-libs/libX11 + ) + ) + rdp? ( >=net-misc/freerdp-2.0.0_rc0:0=[client] ) + samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) + schroedinger? ( >=media-libs/schroedinger-1.0.10:0 ) + sdl-image? ( media-libs/sdl-image:0 ) + sftp? ( net-libs/libssh2:0 ) + shout? ( media-libs/libshout:0 ) + sid? ( media-libs/libsidplay:2 ) + skins? ( + x11-libs/libXext:0 + x11-libs/libXinerama:0 + x11-libs/libXpm:0 + ) + soxr? ( media-libs/soxr ) + speex? ( + >=media-libs/speex-1.2.0:0 + media-libs/speexdsp:0 + ) + srt? ( net-libs/srt ) + ssl? ( net-libs/gnutls:0 ) + svg? ( + gnome-base/librsvg:2 + x11-libs/cairo:0 + ) + taglib? ( >=media-libs/taglib-1.9:0 ) + theora? ( media-libs/libtheora:0 ) + tremor? ( media-libs/tremor:0 ) + truetype? ( + media-libs/freetype:2 + virtual/ttf-fonts:0 + !fontconfig? ( media-fonts/dejavu:0 ) + ) + twolame? ( media-sound/twolame:0 ) + udev? ( virtual/udev:0 ) + upnp? ( net-libs/libupnp:= ) + v4l? ( media-libs/libv4l:0 ) + vaapi? ( x11-libs/libva:0=[drm,wayland?,X?] ) + vdpau? ( x11-libs/libvdpau:0 ) + vnc? ( net-libs/libvncserver:0 ) + vorbis? ( media-libs/libvorbis:0 ) + vpx? ( media-libs/libvpx:0= ) + wayland? ( + || ( + >=dev-libs/wayland-1.15 + ( + <dev-libs/wayland-1.15 + <media-libs/mesa-18.1.1-r1[egl] + ) + ) + dev-libs/wayland-protocols + ) + X? ( + x11-libs/libX11 + x11-libs/libxcb + x11-libs/xcb-util + x11-libs/xcb-util-keysyms + ) + x264? ( media-libs/x264:0= ) + x265? ( media-libs/x265:0= ) + xml? ( dev-libs/libxml2:2 ) + zeroconf? ( net-dns/avahi:0[dbus] ) + zvbi? ( media-libs/zvbi ) +" +DEPEND="${RDEPEND} + >=sys-devel/gettext-0.19.8:* + virtual/pkgconfig:* + amd64? ( dev-lang/yasm:* ) + x86? ( dev-lang/yasm:* ) + X? ( x11-base/xorg-proto ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system + "${FILESDIR}"/${PN}-2.2.4-libav-11.7.patch # bug #593460 + "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 + "${FILESDIR}"/${PN}-3.0.1-qt-5.11.patch # TODO upstream + "${FILESDIR}"/${P}-fix-disable-vlm.patch # bug 649798 + "${FILESDIR}"/${P}-fribidi-1.patch # bug 662662 +) + +DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + default + + has_version '>=net-libs/libupnp-1.8.0' && \ + eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch + + # Bootstrap when we are on a git checkout. + if [[ ${PV} = *9999 ]] ; then + ./bootstrap + fi + + # Make it build with libtool 1.5 + rm m4/lt* m4/libtool.m4 || die + + # We are not in a real git checkout due to the absence of a .git directory. + touch src/revision.txt || die + + # Don't use --started-from-file when not using dbus. + if ! use dbus ; then + sed -i 's/ --started-from-file//' share/vlc.desktop.in || die + fi + + # Disable running of vlc-cache-gen, we do that in pkg_postinst + sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ + -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" + + eautoreconf + + # Disable automatic running of tests. + find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die +} + +src_configure() { + local myeconfargs=( + --disable-aa + --disable-dependency-tracking + --disable-optimizations + --disable-update-check + --enable-fast-install + --enable-screen + --enable-vcd + --enable-vlc + $(use_enable a52) + $(use_enable alsa) + $(use_enable altivec) + $(use_enable aom) + $(use_enable archive) + $(use_enable bidi fribidi) + $(use_enable bidi harfbuzz) + $(use_enable bluray) + $(use_enable cddb libcddb) + $(use_enable chromaprint) + $(use_enable chromecast) + $(use_enable chromecast microdns) + $(use_enable cpu_flags_x86_mmx mmx) + $(use_enable cpu_flags_x86_sse sse) + $(use_enable dbus) + $(use_enable dbus kwallet) + $(use_enable dc1394) + $(use_enable debug) + $(use_enable directx) + $(use_enable directx d3d11va) + $(use_enable directx dxva2) + $(use_enable dts dca) + $(use_enable dvbpsi) + $(use_enable dvd dvdnav) + $(use_enable dvd dvdread) + $(use_enable encode sout) + $(use_enable encode vlm) + $(use_enable faad) + $(use_enable fdk fdkaac) + $(use_enable ffmpeg avcodec) + $(use_enable ffmpeg avformat) + $(use_enable ffmpeg swscale) + $(use_enable flac) + $(use_enable fluidsynth) + $(use_enable fontconfig) + $(use_enable gcrypt libgcrypt) + $(use_enable gme) + $(use_enable gnome-keyring secret) + $(use_enable gstreamer gst-decode) + $(use_enable ieee1394 dv1394) + $(use_enable jack) + $(use_enable jpeg) + $(use_enable kate) + $(use_enable libass) + $(use_enable libcaca caca) + $(use_enable libnotify notify) + $(use_enable libsamplerate samplerate) + $(use_enable libtar) + $(use_enable libtiger tiger) + $(use_enable linsys) + $(use_enable lirc) + $(use_enable live live555) + $(use_enable lua) + $(use_enable macosx-notifications osx-notifications) + $(use_enable macosx-qtkit) + $(use_enable matroska) + $(use_enable modplug mod) + $(use_enable mp3 mad) + $(use_enable mpeg libmpeg2) + $(use_enable mtp) + $(use_enable musepack mpc) + $(use_enable ncurses) + $(use_enable neon) + $(use_enable ogg) + $(use_enable omxil) + $(use_enable omxil omxil-vout) + $(use_enable opencv) + $(use_enable optimisememory optimize-memory) + $(use_enable opus) + $(use_enable png) + $(use_enable postproc) + $(use_enable projectm) + $(use_enable pulseaudio pulse) + $(use_enable qt5 qt) + $(use_enable rdp freerdp) + $(use_enable rtsp realrtsp) + $(use_enable run-as-root) + $(use_enable samba smbclient) + $(use_enable schroedinger) + $(use_enable sdl-image) + $(use_enable sftp) + $(use_enable shout) + $(use_enable sid) + $(use_enable skins skins2) + $(use_enable soxr) + $(use_enable speex) + $(use_enable srt) + $(use_enable ssl gnutls) + $(use_enable svg) + $(use_enable svg svgdec) + $(use_enable taglib) + $(use_enable theora) + $(use_enable tremor) + $(use_enable twolame) + $(use_enable udev) + $(use_enable upnp) + $(use_enable v4l v4l2) + $(use_enable vaapi libva) + $(use_enable vdpau) + $(use_enable vnc) + $(use_enable vorbis) + $(use_enable vpx) + $(use_enable wayland) + $(use_enable wma-fixed) + $(use_with X x) + $(use_enable X xcb) + $(use_enable X xvideo) + $(use_enable x264) + $(use_enable x265) + $(use_enable xml libxml2) + $(use_enable zeroconf avahi) + $(use_enable zvbi) + $(use_enable !zvbi telx) + --disable-asdcp + --disable-coverage + --disable-cprof + --disable-crystalhd + --disable-decklink + --disable-gles2 + --disable-goom + --disable-kai + --disable-kva + --disable-libplacebo + --disable-maintainer-mode + --disable-merge-ffmpeg + --disable-mfx + --disable-mmal + --disable-opensles + --disable-oss + --disable-rpi-omxil + --disable-shine + --disable-sndio + --disable-spatialaudio + --disable-vsxu + --disable-wasapi + ) + # ^ We don't have these disabled libraries in the Portage tree yet. + + # Compatibility fix for Samba 4. + use samba && append-cppflags "-I/usr/include/samba-4.0" + + if use x86; then + # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 + append-cflags $(test-flags-CC -fno-stack-check) + # Bug 569774 + replace-flags -Os -O2 + fi + + # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 + append-cxxflags -std=c++11 + + # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... + append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" + + xdg_environment_reset # bug 608256 + + if use truetype || use bidi; then + myeconfargs+=( --enable-freetype ) + else + myeconfargs+=( --disable-freetype ) + fi + + if use truetype || use projectm; then + local dejavu="/usr/share/fonts/dejavu/" + myeconfargs+=( + --with-default-font=${dejavu}/DejaVuSans.ttf + --with-default-font-family=Sans + --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf + --with-default-monospace-font-family=Monospace + ) + fi + + econf ${myeconfargs[@]} + + # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. + # Other values may break the build (bug 523144), so definition should not be removed. + # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h + sed -i '1i#undef _FORTIFY_SOURCE' config.h || die +} + +src_test() { + virtx emake check-TESTS +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die +} + +pkg_postinst() { + if [[ "$ROOT" = "/" ]] && [[ -x "/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then + einfo "Running /usr/$(get_libdir)/vlc/vlc-cache-gen on /usr/$(get_libdir)/vlc/plugins/" + "/usr/$(get_libdir)/vlc/vlc-cache-gen" "/usr/$(get_libdir)/vlc/plugins/" + else + ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)" + ewarn "Please run /usr/$(get_libdir)/vlc/vlc-cache-gen manually" + ewarn "If you do not do it, vlc will take a long time to load." + fi + + gnome2_icon_cache_update + xdg_mimeinfo_database_update + xdg_desktop_database_update +} + +pkg_postrm() { + if [[ -e /usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then + rm /usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" + fi + + gnome2_icon_cache_update + xdg_mimeinfo_database_update + xdg_desktop_database_update +} diff --git a/media-video/vlc/vlc-3.0.9999.ebuild b/media-video/vlc/vlc-3.0.9999.ebuild new file mode 100644 index 0000000..de11890 --- /dev/null +++ b/media-video/vlc/vlc-3.0.9999.ebuild @@ -0,0 +1,493 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +MY_PV="${PV/_/-}" +MY_PV="${MY_PV/-beta/-test}" +MY_P="${PN}-${MY_PV}" +if [[ ${PV} = *9999 ]] ; then + if [[ ${PV%.9999} != ${PV} ]] ; then + EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" + else + EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" + fi + SCM="git-r3" +else + if [[ ${MY_P} = ${P} ]] ; then + SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" + else + SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" + fi + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 -sparc ~x86 ~x86-fbsd" +fi +inherit autotools flag-o-matic gnome2-utils toolchain-funcs virtualx xdg-utils ${SCM} + +DESCRIPTION="Media player and framework with support for most multimedia files and streaming" +HOMEPAGE="https://www.videolan.org/vlc/" + +LICENSE="LGPL-2.1 GPL-2" +SLOT="0/5-9" # vlc - vlccore + +IUSE="a52 alsa altivec aom archive aribsub bidi bluray cddb chromaprint chromecast dbus + dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac fluidsynth + fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate libass + libav libcaca libnotify +libsamplerate libtar libtiger linsys lirc live lua + macosx-notifications macosx-qtkit matroska modplug mp3 mpeg mtp musepack ncurses + neon nfs ogg omxil opencv optimisememory opus png postproc projectm pulseaudio +qt5 + rdp rtsp run-as-root samba schroedinger sdl-image sftp shout sid skins soxr speex srt ssl + svg taglib theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vorbis vpx + wayland wma-fixed +X x264 x265 xml zeroconf zvbi cpu_flags_x86_mmx cpu_flags_x86_sse +" +REQUIRED_USE=" + chromecast? ( encode ) + directx? ( ffmpeg ) + fontconfig? ( truetype ) + libcaca? ( X ) + libtar? ( skins ) + libtiger? ( kate ) + postproc? ( ffmpeg ) + skins? ( qt5 truetype X xml ) + ssl? ( gcrypt ) + vaapi? ( ffmpeg X ) + vdpau? ( ffmpeg X ) +" +RDEPEND=" + net-dns/libidn:= + sys-libs/zlib:0[minizip] + virtual/libintl:0 + virtual/opengl + a52? ( media-libs/a52dec:0 ) + alsa? ( media-libs/alsa-lib:0 ) + aom? ( media-libs/libaom:= ) + archive? ( app-arch/libarchive:= ) + aribsub? ( media-libs/aribb24 ) + bidi? ( + dev-libs/fribidi:0 + media-libs/freetype:2[harfbuzz] + media-libs/harfbuzz + virtual/ttf-fonts:0 + ) + bluray? ( media-libs/libbluray:0= ) + cddb? ( media-libs/libcddb:0 ) + chromaprint? ( media-libs/chromaprint:0= ) + chromecast? ( + >=dev-libs/protobuf-2.5.0:= + >=net-libs/libmicrodns-0.0.9:= + ) + dbus? ( sys-apps/dbus:0 ) + dc1394? ( + media-libs/libdc1394:2 + sys-libs/libraw1394:0 + ) + dts? ( media-libs/libdca:0 ) + dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:0= ) + dvd? ( + >=media-libs/libdvdnav-4.9:0 + >=media-libs/libdvdread-4.9:0 + ) + faad? ( media-libs/faad2:0 ) + fdk? ( media-libs/fdk-aac:0= ) + ffmpeg? ( + !libav? ( >=media-video/ffmpeg-3.1.3:0=[vaapi?,vdpau?] ) + libav? ( >=media-video/libav-12.2:0=[vaapi?,vdpau?] ) + ) + flac? ( + media-libs/flac:0 + media-libs/libogg:0 + ) + fluidsynth? ( media-sound/fluidsynth:0 ) + fontconfig? ( media-libs/fontconfig:1.0 ) + gcrypt? ( + dev-libs/libgcrypt:0= + dev-libs/libgpg-error:0 + ) + gme? ( media-libs/game-music-emu:0 ) + gnome-keyring? ( app-crypt/libsecret ) + gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) + ieee1394? ( + sys-libs/libavc1394:0 + sys-libs/libraw1394:0 + ) + jack? ( virtual/jack ) + jpeg? ( virtual/jpeg:0 ) + kate? ( media-libs/libkate:0 ) + libass? ( + media-libs/fontconfig:1.0 + media-libs/libass:0= + ) + libcaca? ( media-libs/libcaca:0 ) + libnotify? ( + dev-libs/glib:2 + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libnotify:0 + ) + libsamplerate? ( media-libs/libsamplerate:0 ) + libtar? ( dev-libs/libtar:0 ) + libtiger? ( media-libs/libtiger:0 ) + linsys? ( media-libs/zvbi ) + lirc? ( app-misc/lirc:0 ) + live? ( media-plugins/live:0 ) + lua? ( >=dev-lang/lua-5.1:0 ) + matroska? ( + dev-libs/libebml:0= + media-libs/libmatroska:0= + ) + modplug? ( media-libs/libmodplug:0 ) + mp3? ( media-libs/libmad:0 ) + mpeg? ( media-libs/libmpeg2:0 ) + mtp? ( media-libs/libmtp:0= ) + musepack? ( media-sound/musepack-tools:0 ) + ncurses? ( sys-libs/ncurses:0=[unicode] ) + nfs? ( >=net-fs/libnfs-0.10.0:= ) + ogg? ( media-libs/libogg:0 ) + opencv? ( media-libs/opencv:0= ) + opus? ( >=media-libs/opus-1.0.3:0 ) + png? ( media-libs/libpng:0= ) + postproc? ( libav? ( media-libs/libpostproc:0= ) ) + projectm? ( + media-fonts/dejavu:0 + media-libs/libprojectm:0 + ) + pulseaudio? ( media-sound/pulseaudio:0 ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + X? ( + dev-qt/qtx11extras:5 + x11-libs/libX11 + ) + ) + rdp? ( >=net-misc/freerdp-2.0.0_rc0:0=[client] ) + samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) + schroedinger? ( >=media-libs/schroedinger-1.0.10:0 ) + sdl-image? ( media-libs/sdl-image:0 ) + sftp? ( net-libs/libssh2:0 ) + shout? ( media-libs/libshout:0 ) + sid? ( media-libs/libsidplay:2 ) + skins? ( + x11-libs/libXext:0 + x11-libs/libXinerama:0 + x11-libs/libXpm:0 + ) + soxr? ( media-libs/soxr ) + speex? ( + >=media-libs/speex-1.2.0:0 + media-libs/speexdsp:0 + ) + srt? ( net-libs/srt ) + ssl? ( net-libs/gnutls:0 ) + svg? ( + gnome-base/librsvg:2 + x11-libs/cairo:0 + ) + taglib? ( >=media-libs/taglib-1.9:0 ) + theora? ( media-libs/libtheora:0 ) + tremor? ( media-libs/tremor:0 ) + truetype? ( + media-libs/freetype:2 + virtual/ttf-fonts:0 + !fontconfig? ( media-fonts/dejavu:0 ) + ) + twolame? ( media-sound/twolame:0 ) + udev? ( virtual/udev:0 ) + upnp? ( net-libs/libupnp:= ) + v4l? ( media-libs/libv4l:0 ) + vaapi? ( x11-libs/libva:0=[drm,wayland?,X?] ) + vdpau? ( x11-libs/libvdpau:0 ) + vnc? ( net-libs/libvncserver:0 ) + vorbis? ( media-libs/libvorbis:0 ) + vpx? ( media-libs/libvpx:0= ) + wayland? ( + >=dev-libs/wayland-1.15 + dev-libs/wayland-protocols + ) + X? ( + x11-libs/libX11 + x11-libs/libxcb + x11-libs/xcb-util + x11-libs/xcb-util-keysyms + ) + x264? ( media-libs/x264:0= ) + x265? ( media-libs/x265:0= ) + xml? ( dev-libs/libxml2:2 ) + zeroconf? ( net-dns/avahi:0[dbus] ) + zvbi? ( media-libs/zvbi ) +" +DEPEND="${RDEPEND} + >=sys-devel/gettext-0.19.8:* + virtual/pkgconfig:* + amd64? ( dev-lang/yasm:* ) + x86? ( dev-lang/yasm:* ) + X? ( x11-base/xorg-proto ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system + "${FILESDIR}"/${PN}-2.2.4-libav-11.7.patch # bug #593460 + "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 +) + +DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + default + + has_version '>=net-libs/libupnp-1.8.0' && \ + eapply "${FILESDIR}"/${PN}-2.2.8-libupnp-slot-1.8.patch + + # Bootstrap when we are on a git checkout. + if [[ ${PV} = *9999 ]] ; then + ./bootstrap + fi + + # Make it build with libtool 1.5 + rm m4/lt* m4/libtool.m4 || die + + # We are not in a real git checkout due to the absence of a .git directory. + touch src/revision.txt || die + + # Don't use --started-from-file when not using dbus. + if ! use dbus ; then + sed -i 's/ --started-from-file//' share/vlc.desktop.in || die + fi + + # Disable running of vlc-cache-gen, we do that in pkg_postinst + sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ + -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" + + eautoreconf + + # Disable automatic running of tests. + find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die +} + +src_configure() { + local myeconfargs=( + --disable-aa + --disable-dependency-tracking + --disable-optimizations + --disable-update-check + --enable-fast-install + --enable-screen + --enable-vcd + --enable-vlc + $(use_enable a52) + $(use_enable alsa) + $(use_enable altivec) + $(use_enable aom) + $(use_enable archive) + $(use_enable aribsub) + $(use_enable bidi fribidi) + $(use_enable bidi harfbuzz) + $(use_enable bluray) + $(use_enable cddb libcddb) + $(use_enable chromaprint) + $(use_enable chromecast) + $(use_enable chromecast microdns) + $(use_enable cpu_flags_x86_mmx mmx) + $(use_enable cpu_flags_x86_sse sse) + $(use_enable dbus) + $(use_enable dbus kwallet) + $(use_enable dc1394) + $(use_enable debug) + $(use_enable directx) + $(use_enable directx d3d11va) + $(use_enable directx dxva2) + $(use_enable dts dca) + $(use_enable dvbpsi) + $(use_enable dvd dvdnav) + $(use_enable dvd dvdread) + $(use_enable encode sout) + $(use_enable encode vlm) + $(use_enable faad) + $(use_enable fdk fdkaac) + $(use_enable ffmpeg avcodec) + $(use_enable ffmpeg avformat) + $(use_enable ffmpeg swscale) + $(use_enable flac) + $(use_enable fluidsynth) + $(use_enable fontconfig) + $(use_enable gcrypt libgcrypt) + $(use_enable gme) + $(use_enable gnome-keyring secret) + $(use_enable gstreamer gst-decode) + $(use_enable ieee1394 dv1394) + $(use_enable jack) + $(use_enable jpeg) + $(use_enable kate) + $(use_enable libass) + $(use_enable libcaca caca) + $(use_enable libnotify notify) + $(use_enable libsamplerate samplerate) + $(use_enable libtar) + $(use_enable libtiger tiger) + $(use_enable linsys) + $(use_enable lirc) + $(use_enable live live555) + $(use_enable lua) + $(use_enable macosx-notifications osx-notifications) + $(use_enable macosx-qtkit) + $(use_enable matroska) + $(use_enable modplug mod) + $(use_enable mp3 mad) + $(use_enable mpeg libmpeg2) + $(use_enable mtp) + $(use_enable musepack mpc) + $(use_enable ncurses) + $(use_enable neon) + $(use_enable ogg) + $(use_enable omxil) + $(use_enable omxil omxil-vout) + $(use_enable opencv) + $(use_enable optimisememory optimize-memory) + $(use_enable opus) + $(use_enable png) + $(use_enable postproc) + $(use_enable projectm) + $(use_enable pulseaudio pulse) + $(use_enable qt5 qt) + $(use_enable rdp freerdp) + $(use_enable rtsp realrtsp) + $(use_enable run-as-root) + $(use_enable samba smbclient) + $(use_enable schroedinger) + $(use_enable sdl-image) + $(use_enable sftp) + $(use_enable shout) + $(use_enable sid) + $(use_enable skins skins2) + $(use_enable soxr) + $(use_enable speex) + $(use_enable srt) + $(use_enable ssl gnutls) + $(use_enable svg) + $(use_enable svg svgdec) + $(use_enable taglib) + $(use_enable theora) + $(use_enable tremor) + $(use_enable twolame) + $(use_enable udev) + $(use_enable upnp) + $(use_enable v4l v4l2) + $(use_enable vaapi libva) + $(use_enable vdpau) + $(use_enable vnc) + $(use_enable vorbis) + $(use_enable vpx) + $(use_enable wayland) + $(use_enable wma-fixed) + $(use_with X x) + $(use_enable X xcb) + $(use_enable X xvideo) + $(use_enable x264) + $(use_enable x265) + $(use_enable xml libxml2) + $(use_enable zeroconf avahi) + $(use_enable zvbi) + $(use_enable !zvbi telx) + --disable-asdcp + --disable-coverage + --disable-cprof + --disable-crystalhd + --disable-decklink + --disable-gles2 + --disable-goom + --disable-kai + --disable-kva + --disable-libplacebo + --disable-maintainer-mode + --disable-merge-ffmpeg + --disable-mfx + --disable-mmal + --disable-opensles + --disable-oss + --disable-rpi-omxil + --disable-shine + --disable-sndio + --disable-spatialaudio + --disable-vsxu + --disable-wasapi + ) + # ^ We don't have these disabled libraries in the Portage tree yet. + + # Compatibility fix for Samba 4. + use samba && append-cppflags "-I/usr/include/samba-4.0" + + if use x86; then + # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 + append-cflags $(test-flags-CC -fno-stack-check) + # Bug 569774 + replace-flags -Os -O2 + fi + + # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 + append-cxxflags -std=c++11 + + # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... + append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" + + xdg_environment_reset # bug 608256 + + if use truetype || use bidi; then + myeconfargs+=( --enable-freetype ) + else + myeconfargs+=( --disable-freetype ) + fi + + if use truetype || use projectm; then + local dejavu="/usr/share/fonts/dejavu/" + myeconfargs+=( + --with-default-font=${dejavu}/DejaVuSans.ttf + --with-default-font-family=Sans + --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf + --with-default-monospace-font-family=Monospace + ) + fi + + econf ${myeconfargs[@]} + + # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. + # Other values may break the build (bug 523144), so definition should not be removed. + # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h + sed -i '1i#undef _FORTIFY_SOURCE' config.h || die +} + +src_test() { + virtx emake check-TESTS +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die +} + +pkg_postinst() { + if [[ "$ROOT" = "/" ]] && [[ -x "/usr/$(get_libdir)/vlc/vlc-cache-gen" ]] ; then + einfo "Running /usr/$(get_libdir)/vlc/vlc-cache-gen on /usr/$(get_libdir)/vlc/plugins/" + "/usr/$(get_libdir)/vlc/vlc-cache-gen" "/usr/$(get_libdir)/vlc/plugins/" + else + ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)" + ewarn "Please run /usr/$(get_libdir)/vlc/vlc-cache-gen manually" + ewarn "If you do not do it, vlc will take a long time to load." + fi + + gnome2_icon_cache_update + xdg_mimeinfo_database_update + xdg_desktop_database_update +} + +pkg_postrm() { + if [[ -e /usr/$(get_libdir)/vlc/plugins/plugins.dat ]]; then + rm /usr/$(get_libdir)/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" + fi + + gnome2_icon_cache_update + xdg_mimeinfo_database_update + xdg_desktop_database_update +} diff --git a/media-video/vlc/vlc-9999.ebuild b/media-video/vlc/vlc-9999.ebuild new file mode 100644 index 0000000..bc8a566 --- /dev/null +++ b/media-video/vlc/vlc-9999.ebuild @@ -0,0 +1,493 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +MY_PV="${PV/_/-}" +MY_PV="${MY_PV/-beta/-test}" +MY_P="${PN}-${MY_PV}" +if [[ ${PV} = *9999 ]] ; then + if [[ ${PV%.9999} != ${PV} ]] ; then + EGIT_REPO_URI="https://git.videolan.org/git/vlc/vlc-${PV%.9999}.git" + else + EGIT_REPO_URI="https://git.videolan.org/git/vlc.git" + fi + SCM="git-r3" +else + if [[ ${MY_P} = ${P} ]] ; then + SRC_URI="https://download.videolan.org/pub/videolan/${PN}/${PV}/${P}.tar.xz" + else + SRC_URI="https://download.videolan.org/pub/videolan/testing/${MY_P}/${MY_P}.tar.xz" + fi + KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 -sparc ~x86 ~x86-fbsd" +fi +inherit autotools flag-o-matic gnome2-utils toolchain-funcs virtualx xdg-utils ${SCM} + +DESCRIPTION="Media player and framework with support for most multimedia files and streaming" +HOMEPAGE="https://www.videolan.org/vlc/" + +LICENSE="LGPL-2.1 GPL-2" +SLOT="0/5-9" # vlc - vlccore + +IUSE="a52 alsa altivec aom archive aribsub bidi bluray cddb chromaprint chromecast dbus + dc1394 debug directx dts +dvbpsi dvd +encode faad fdk +ffmpeg flac fluidsynth + fontconfig +gcrypt gme gnome-keyring gstreamer ieee1394 jack jpeg kate kms libass + libav libcaca libnotify +libsamplerate libtar libtiger linsys lirc live lua + macosx-notifications macosx-qtkit matroska modplug mp3 mpeg mtp musepack ncurses + neon nfs ogg omxil opencv optimisememory opus png postproc projectm pulseaudio +qt5 + rdp run-as-root samba schroedinger sdl-image sftp shout sid skins soxr speex srt ssl + svg taglib theora tremor truetype twolame udev upnp vaapi v4l vdpau vnc vorbis vpx + wayland wma-fixed +X x264 x265 xml zeroconf zvbi cpu_flags_x86_mmx cpu_flags_x86_sse +" +REQUIRED_USE=" + chromecast? ( encode ) + directx? ( ffmpeg ) + fontconfig? ( truetype ) + libcaca? ( X ) + libtar? ( skins ) + libtiger? ( kate ) + postproc? ( ffmpeg ) + skins? ( qt5 truetype X xml ) + ssl? ( gcrypt ) + vaapi? ( ffmpeg X ) + vdpau? ( ffmpeg X ) +" +RDEPEND=" + net-dns/libidn:= + sys-libs/zlib:0[minizip] + virtual/libintl:0 + virtual/opengl + a52? ( media-libs/a52dec:0 ) + alsa? ( media-libs/alsa-lib:0 ) + aom? ( media-libs/libaom:= ) + archive? ( app-arch/libarchive:= ) + aribsub? ( media-libs/aribb24 ) + bidi? ( + dev-libs/fribidi:0 + media-libs/freetype:2[harfbuzz] + media-libs/harfbuzz + virtual/ttf-fonts:0 + ) + bluray? ( media-libs/libbluray:0= ) + cddb? ( media-libs/libcddb:0 ) + chromaprint? ( media-libs/chromaprint:0= ) + chromecast? ( + >=dev-libs/protobuf-2.5.0:= + >=net-libs/libmicrodns-0.0.9:= + ) + dbus? ( sys-apps/dbus:0 ) + dc1394? ( + media-libs/libdc1394:2 + sys-libs/libraw1394:0 + ) + dts? ( media-libs/libdca:0 ) + dvbpsi? ( >=media-libs/libdvbpsi-1.2.0:0= ) + dvd? ( + >=media-libs/libdvdnav-4.9:0 + >=media-libs/libdvdread-4.9:0 + ) + faad? ( media-libs/faad2:0 ) + fdk? ( media-libs/fdk-aac:0= ) + ffmpeg? ( + !libav? ( >=media-video/ffmpeg-3.1.3:0=[vaapi?,vdpau?] ) + libav? ( >=media-video/libav-12.2:0=[vaapi?,vdpau?] ) + ) + flac? ( + media-libs/flac:0 + media-libs/libogg:0 + ) + fluidsynth? ( media-sound/fluidsynth:0 ) + fontconfig? ( media-libs/fontconfig:1.0 ) + gcrypt? ( + dev-libs/libgcrypt:0= + dev-libs/libgpg-error:0 + ) + gme? ( media-libs/game-music-emu:0 ) + gnome-keyring? ( app-crypt/libsecret ) + gstreamer? ( >=media-libs/gst-plugins-base-1.4.5:1.0 ) + ieee1394? ( + sys-libs/libavc1394:0 + sys-libs/libraw1394:0 + ) + jack? ( virtual/jack ) + jpeg? ( virtual/jpeg:0 ) + kate? ( media-libs/libkate:0 ) + kms? ( x11-libs/libdrm ) + libass? ( + media-libs/fontconfig:1.0 + media-libs/libass:0= + ) + libcaca? ( media-libs/libcaca:0 ) + libnotify? ( + dev-libs/glib:2 + x11-libs/gdk-pixbuf:2 + x11-libs/gtk+:3 + x11-libs/libnotify:0 + ) + libsamplerate? ( media-libs/libsamplerate:0 ) + libtar? ( dev-libs/libtar:0 ) + libtiger? ( media-libs/libtiger:0 ) + linsys? ( media-libs/zvbi ) + lirc? ( app-misc/lirc:0 ) + live? ( media-plugins/live:0 ) + lua? ( >=dev-lang/lua-5.1:0 ) + matroska? ( + dev-libs/libebml:0= + media-libs/libmatroska:0= + ) + modplug? ( media-libs/libmodplug:0 ) + mp3? ( media-libs/libmad:0 ) + mpeg? ( media-libs/libmpeg2:0 ) + mtp? ( media-libs/libmtp:0= ) + musepack? ( media-sound/musepack-tools:0 ) + ncurses? ( sys-libs/ncurses:0=[unicode] ) + nfs? ( >=net-fs/libnfs-0.10.0:= ) + ogg? ( media-libs/libogg:0 ) + opencv? ( media-libs/opencv:0= ) + opus? ( >=media-libs/opus-1.0.3:0 ) + png? ( media-libs/libpng:0= ) + postproc? ( libav? ( media-libs/libpostproc:0= ) ) + projectm? ( + media-fonts/dejavu:0 + media-libs/libprojectm:0 + ) + pulseaudio? ( media-sound/pulseaudio:0 ) + qt5? ( + dev-qt/qtcore:5 + dev-qt/qtgui:5 + dev-qt/qtsvg:5 + dev-qt/qtwidgets:5 + X? ( + dev-qt/qtx11extras:5 + x11-libs/libX11 + ) + ) + rdp? ( >=net-misc/freerdp-2.0.0_rc0:0=[client] ) + samba? ( >=net-fs/samba-4.0.0:0[client,-debug(-)] ) + schroedinger? ( >=media-libs/schroedinger-1.0.10:0 ) + sdl-image? ( media-libs/sdl-image:0 ) + sftp? ( net-libs/libssh2:0 ) + shout? ( media-libs/libshout:0 ) + sid? ( media-libs/libsidplay:2 ) + skins? ( + x11-libs/libXext:0 + x11-libs/libXinerama:0 + x11-libs/libXpm:0 + ) + soxr? ( media-libs/soxr ) + speex? ( + >=media-libs/speex-1.2.0:0 + media-libs/speexdsp:0 + ) + srt? ( net-libs/srt ) + ssl? ( net-libs/gnutls:0 ) + svg? ( + gnome-base/librsvg:2 + x11-libs/cairo:0 + ) + taglib? ( >=media-libs/taglib-1.9:0 ) + theora? ( media-libs/libtheora:0 ) + tremor? ( media-libs/tremor:0 ) + truetype? ( + media-libs/freetype:2 + virtual/ttf-fonts:0 + !fontconfig? ( media-fonts/dejavu:0 ) + ) + twolame? ( media-sound/twolame:0 ) + udev? ( virtual/udev:0 ) + upnp? ( net-libs/libupnp:= ) + v4l? ( media-libs/libv4l:0 ) + vaapi? ( x11-libs/libva:0=[drm,wayland?,X?] ) + vdpau? ( x11-libs/libvdpau:0 ) + vnc? ( net-libs/libvncserver:0 ) + vorbis? ( media-libs/libvorbis:0 ) + vpx? ( media-libs/libvpx:0= ) + wayland? ( + >=dev-libs/wayland-1.15 + >=dev-libs/wayland-protocols-1.12 + ) + X? ( + x11-libs/libX11 + x11-libs/libxcb[xkb] + x11-libs/libXcursor + x11-libs/libxkbcommon[X] + x11-libs/xcb-util + x11-libs/xcb-util-keysyms + ) + x264? ( media-libs/x264:0= ) + x265? ( media-libs/x265:0= ) + xml? ( dev-libs/libxml2:2 ) + zeroconf? ( net-dns/avahi:0[dbus] ) + zvbi? ( media-libs/zvbi ) +" +DEPEND="${RDEPEND} + >=sys-devel/gettext-0.19.8:* + virtual/pkgconfig:* + amd64? ( dev-lang/yasm:* ) + x86? ( dev-lang/yasm:* ) + X? ( x11-base/xorg-proto ) +" + +PATCHES=( + "${FILESDIR}"/${PN}-2.1.0-fix-libtremor-libs.patch # build system + "${FILESDIR}"/${PN}-2.2.4-libav-11.7.patch # bug #593460 + "${FILESDIR}"/${PN}-2.2.8-freerdp-2.patch # bug 590164 +) + +DOCS=( AUTHORS THANKS NEWS README doc/fortunes.txt ) + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + default + + has_version '>=net-libs/libupnp-1.8.0' && \ + eapply "${FILESDIR}"/${P}-libupnp-slot-1.8.patch + + # Bootstrap when we are on a git checkout. + if [[ ${PV} = *9999 ]] ; then + ./bootstrap + fi + + # Make it build with libtool 1.5 + rm m4/lt* m4/libtool.m4 || die + + # We are not in a real git checkout due to the absence of a .git directory. + touch src/revision.txt || die + + # Don't use --started-from-file when not using dbus. + if ! use dbus ; then + sed -i 's/ --started-from-file//' share/vlc.desktop.in || die + fi + + # Disable running of vlc-cache-gen, we do that in pkg_postinst + sed -e "/test.*build.*host/s/\$(host)/nothanks/" \ + -i Makefile.am -i bin/Makefile.am || die "Failed to disable vlc-cache-gen" + + eautoreconf + + # Disable automatic running of tests. + find . -name 'Makefile.in' -exec sed -i 's/\(..*\)check-TESTS/\1/' {} \; || die +} + +src_configure() { + local myeconfargs=( + --disable-dependency-tracking + --disable-optimizations + --disable-update-check + --enable-fast-install + --enable-screen + --enable-vcd + --enable-vlc + $(use_enable a52) + $(use_enable alsa) + $(use_enable altivec) + $(use_enable aom) + $(use_enable archive) + $(use_enable aribsub) + $(use_enable bidi fribidi) + $(use_enable bidi harfbuzz) + $(use_enable bluray) + $(use_enable cddb libcddb) + $(use_enable chromaprint) + $(use_enable chromecast) + $(use_enable chromecast microdns) + $(use_enable cpu_flags_x86_mmx mmx) + $(use_enable cpu_flags_x86_sse sse) + $(use_enable dbus) + $(use_enable dbus kwallet) + $(use_enable dc1394) + $(use_enable debug) + $(use_enable directx) + $(use_enable directx d3d11va) + $(use_enable directx dxva2) + $(use_enable dts dca) + $(use_enable dvbpsi) + $(use_enable dvd dvdnav) + $(use_enable dvd dvdread) + $(use_enable encode sout) + $(use_enable encode vlm) + $(use_enable faad) + $(use_enable fdk fdkaac) + $(use_enable ffmpeg avcodec) + $(use_enable ffmpeg avformat) + $(use_enable ffmpeg swscale) + $(use_enable flac) + $(use_enable fluidsynth) + $(use_enable fontconfig) + $(use_enable gcrypt libgcrypt) + $(use_enable gme) + $(use_enable gnome-keyring secret) + $(use_enable gstreamer gst-decode) + $(use_enable ieee1394 dv1394) + $(use_enable jack) + $(use_enable jpeg) + $(use_enable kate) + $(use_enable kms) + $(use_enable libass) + $(use_enable libcaca caca) + $(use_enable libnotify notify) + $(use_enable libsamplerate samplerate) + $(use_enable libtar) + $(use_enable libtiger tiger) + $(use_enable linsys) + $(use_enable lirc) + $(use_enable live live555) + $(use_enable lua) + $(use_enable macosx-notifications osx-notifications) + $(use_enable macosx-qtkit) + $(use_enable matroska) + $(use_enable modplug mod) + $(use_enable mp3 mad) + $(use_enable mpeg libmpeg2) + $(use_enable mtp) + $(use_enable musepack mpc) + $(use_enable ncurses) + $(use_enable neon) + $(use_enable ogg) + $(use_enable omxil) + $(use_enable opencv) + $(use_enable optimisememory optimize-memory) + $(use_enable opus) + $(use_enable png) + $(use_enable postproc) + $(use_enable projectm) + $(use_enable pulseaudio pulse) + $(use_enable qt5 qt) + $(use_enable rdp freerdp) + $(use_enable run-as-root) + $(use_enable samba smbclient) + $(use_enable schroedinger) + $(use_enable sdl-image) + $(use_enable sftp) + $(use_enable shout) + $(use_enable sid) + $(use_enable skins skins2) + $(use_enable soxr) + $(use_enable speex) + $(use_enable srt) + $(use_enable ssl gnutls) + $(use_enable svg) + $(use_enable svg svgdec) + $(use_enable taglib) + $(use_enable theora) + $(use_enable tremor) + $(use_enable twolame) + $(use_enable udev) + $(use_enable upnp) + $(use_enable v4l v4l2) + $(use_enable vaapi libva) + $(use_enable vdpau) + $(use_enable vnc) + $(use_enable vorbis) + $(use_enable vpx) + $(use_enable wayland) + $(use_enable wma-fixed) + $(use_with X x) + $(use_enable X xcb) + $(use_enable x264) + $(use_enable x265) + $(use_enable xml libxml2) + $(use_enable zeroconf avahi) + $(use_enable zvbi) + $(use_enable !zvbi telx) + --disable-asdcp + --disable-coverage + --disable-cprof + --disable-crystalhd + --disable-decklink + --disable-gles2 + --disable-goom + --disable-kai + --disable-kva + --disable-libplacebo + --disable-maintainer-mode + --disable-merge-ffmpeg + --disable-mfx + --disable-mmal + --disable-opensles + --disable-oss + --disable-rpi-omxil + --disable-shine + --disable-sndio + --disable-spatialaudio + --disable-vsxu + --disable-wasapi + ) + # ^ We don't have these disabled libraries in the Portage tree yet. + + # Compatibility fix for Samba 4. + use samba && append-cppflags "-I/usr/include/samba-4.0" + + if use x86; then + # We need to disable -fstack-check if use >=gcc 4.8.0. bug #499996 + append-cflags $(test-flags-CC -fno-stack-check) + # Bug 569774 + replace-flags -Os -O2 + fi + + # VLC now requires C++11 after commit 4b1c9dcdda0bbff801e47505ff9dfd3f274eb0d8 + append-cxxflags -std=c++11 + + # FIXME: Needs libresid-builder from libsidplay:2 which is in another directory... + append-ldflags "-L/usr/$(get_libdir)/sidplay/builders/" + + xdg_environment_reset # bug 608256 + + if use truetype || use bidi; then + myeconfargs+=( --enable-freetype ) + else + myeconfargs+=( --disable-freetype ) + fi + + if use truetype || use projectm; then + local dejavu="/usr/share/fonts/dejavu/" + myeconfargs+=( + --with-default-font=${dejavu}/DejaVuSans.ttf + --with-default-font-family=Sans + --with-default-monospace-font=${dejavu}/DejaVuSansMono.ttf + --with-default-monospace-font-family=Monospace + ) + fi + + econf ${myeconfargs[@]} + + # _FORTIFY_SOURCE is set to 2 in config.h, which is also the default value on Gentoo. + # Other values may break the build (bug 523144), so definition should not be removed. + # To prevent redefinition warnings, we undefine _FORTIFY_SOURCE at the start of config.h + sed -i '1i#undef _FORTIFY_SOURCE' config.h || die +} + +src_test() { + virtx emake check-TESTS +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die +} + +pkg_postinst() { + if [[ "$ROOT" = "/" ]] && [[ -x "/usr/libexec/vlc/vlc-cache-gen" ]] ; then + einfo "Running /usr/libexec/vlc/vlc-cache-gen on /usr/libexec/vlc/plugins/" + "/usr/libexec/vlc/vlc-cache-gen" "/usr/libexec/vlc/plugins/" + else + ewarn "We cannot run vlc-cache-gen (most likely ROOT!=/)" + ewarn "Please run /usr/libexec/vlc/vlc-cache-gen manually" + ewarn "If you do not do it, vlc will take a long time to load." + fi + + gnome2_icon_cache_update + xdg_mimeinfo_database_update + xdg_desktop_database_update +} + +pkg_postrm() { + if [[ -e /usr/libexec/vlc/plugins/plugins.dat ]]; then + rm /usr/libexec/vlc/plugins/plugins.dat || die "Failed to rm plugins.dat" + fi + + gnome2_icon_cache_update + xdg_mimeinfo_database_update + xdg_desktop_database_update +} |