diff options
Diffstat (limited to 'media-libs/libvisual')
8 files changed, 259 insertions, 0 deletions
diff --git a/media-libs/libvisual/Manifest b/media-libs/libvisual/Manifest new file mode 100644 index 000000000000..faabf3b279c8 --- /dev/null +++ b/media-libs/libvisual/Manifest @@ -0,0 +1,10 @@ +AUX libvisual-0.4.0-better-altivec-detection.patch 1551 SHA256 a6c3a6eed2fbb79f6f8ad7c36ad9845eb3e0c7c18db05a51f2561f02da1ecc92 SHA512 c78b136adf384d22ed6e918e30f6f42a97a087a4c1bb88799a9b299eb50c41ea7a98dd405ddb0360e9cf0ace83998744a9428a4e18954dade7ca75bbc54b4b16 WHIRLPOOL e08b38c51320fc995d09f2d00257c62884b1e9fd5aae637caf52697c03c6459e30c0e8937f6eefbbbf123a4977a3c4868992868e67ee0df7f2e5effa2a694ef6 +AUX libvisual-0.4.0-cond.patch 549 SHA256 c21eea2c44f1d70e790dd06070db4ad64b830083bbb96378364631c4f8b655c5 SHA512 57989250f0cfdd12ebcd0eb89cabca71091a0ad378369d654870a103c633a01bd1a1bbbb7d48d9995c2dfe80fe34b1c44a0a151be4a86c5e5455806a1b14ed94 WHIRLPOOL 04b694814c4648205dcf069565258b266148a407b9a4ce52aa172f52b984396d1f7b6b7b231f0d767d33e8ea6e056c703b5f92125b613987843709a33f7d3ff2 +AUX libvisual-0.4.0-conditions.patch 889 SHA256 18435e075c1392d08692f6ebdb36c370e3805ea6799934949fcc9a14eefcdb47 SHA512 e1cf6fb10a912e3117bf866a92d0b4c8de61fe1e35946a21f00f005efe2a48c3596ff087d9dc16807b9049a542410e24efadc9343208512b2e14974e0b01f018 WHIRLPOOL dfd088fb26b2ba591336f06dd3ef785b970bd98ca7c1ad823644a5bc43d83ed6432268fe4f243d8be41dc7f6e96ec23be41733515260d760981544f015b7dae9 +AUX libvisual-0.4.0-detect_amd64.patch 431 SHA256 34dd11f1cd5dee01fcf860b444683a57a733b8645fce4bb34f3154ef20dcc108 SHA512 b102f61acf60a7faa1495087c96c8cba893c250454ea1b5ed60c14ba0578d2fb794d2722f24e9d6b5bf37369fcf83bb2bba3929fcd49e24c4078f2a9fde317f3 WHIRLPOOL 564a37bd162a12e26c7c2a75c4887ae541cd8b5b6f2ad1bbd3c8feb6c81bff594775dfbadcd75a9a3e6797f48f458cd9b97d0071695e8a35504871bb65d8a37a +AUX libvisual-0.4.0-inlinedefineconflict.patch 1870 SHA256 910697188457832d39d8cf73a91009439a5dcc27b373f9c3bb2e1938f4ab85c3 SHA512 2951ca778e732685409911c05f24e8e85492e5af4d8eceb0558636b4ace53b8967250250712c5995239bc5f7af01d20774042f3ccc9f90b370ca3cff673bb0b7 WHIRLPOOL f418f18363a3543f9f1947b7fac1186d7316576e2c609e9b9a0d33421bc15eb8c37d32f528a2155b108fd8a05bf6a8e5c415069233e61cd7378fbf3d7076eb8f +DIST libvisual-0.4.0.tar.gz 583386 SHA256 0b4dfdb87125e129567752089e3c8b54cefed601eef169d2533d8659da8dc1d7 SHA512 ab2286de30d33582a92f16e46436fcbc44b74649952df6e94d96aedc2cabb18d3361496c0b8ab6f52f7178214bf735673c8f1820c3d149304787ba8407201b95 WHIRLPOOL fe47914f3d252292b6ae08ecb176c6f09b0709f9bfaf61806bb7bb0e5f06b78d0705c0616c66b74bcf24e12846d6d44033187b1a5482bb9a9d5d5f20ba60212c +EBUILD libvisual-0.4.0-r3.ebuild 1426 SHA256 80c8ce4822e7fe451864ac85add741df0f093fef20cb0ddbb9862be4998cecdc SHA512 6a8b470bd4e28f61f631a10b5df9939e01d1f5814bbb9359a94321e4bc0058a95ef2ae3bd503ac90bae8b8993b5241a069fd09a9883f0b5f6dd8aa57b40d0b3a WHIRLPOOL f0d140eb5e58811e77413026e18445dbbc27a0441d1b8be77f233c7745fde7ca482cbc36fa056ee84bbcd42a60bc320a78177ead2fb13c55a36393078756d4f4 +MISC ChangeLog 2674 SHA256 ef0edbb5455f497f5dc453596a96a5b23b01f1f9d80a2b5e32631ac6c387ab2d SHA512 c1e06d7dc301123be93368ec66f8b254b9df938ce6c6dcbfe47b6a92d90032f8f34143088620bc772d610e37febe8c2eaba89d236af2b200f54e0cd58891d71f WHIRLPOOL 50beae21cd356a8017f8a317ee81ddd0d41811fe2a8327edf95ca8a83565daff1d213e29abe0830aa6a3dc3f9790301c1bf39ca2acb29d9fc7eecafa89712f7d +MISC ChangeLog-2015 8314 SHA256 b7d97e951a56925938d8f725df218bd269057c3e8c25482dfe69c6aeda359576 SHA512 1217bbf0a48690f9be4027ea7dea43077fd4201df036264e15211395ea3acba69d1f0aab9f184ab56bda826a7cd43de9cf55a7c112303db93abe909b734c4cf3 WHIRLPOOL c3f69f90579ad9288d94fb332f17a8e0e3dbd110e23c89300223553c8ed23b97a3e2adc5193113ab0bad5215b58f0e658dbf5c414de7b09d7978ad695c8d8eda +MISC metadata.xml 332 SHA256 5f9c34daedbd74e82e781ca8c426dc464187f18ff7f43e17d24106719a3bd714 SHA512 62db2eb31068dc2c0adf100ff0a9782bf9f92118fb2c2322fbde5fff6a22dfe16ff826b22218b44a86b7350ffbbc3e9fc6f0135f0a43feff8f83e3e6365b7288 WHIRLPOOL 893c8d995f0dce29dd1c27ebc3b70d04481be5c7c125c7ed4983c77d31885fe7a137045b57c9bf6779ed42f1855de41003e2f4ade7c667aea1b3db32b4905727 diff --git a/media-libs/libvisual/files/libvisual-0.4.0-better-altivec-detection.patch b/media-libs/libvisual/files/libvisual-0.4.0-better-altivec-detection.patch new file mode 100644 index 000000000000..19aa579aa110 --- /dev/null +++ b/media-libs/libvisual/files/libvisual-0.4.0-better-altivec-detection.patch @@ -0,0 +1,71 @@ +http://pkgs.fedoraproject.org/gitweb/?p=libvisual.git;a=tree + +--- libvisual/lv_cpu.c ++++ libvisual/lv_cpu.c +@@ -50,8 +50,19 @@ + #endif + + #if defined(VISUAL_OS_LINUX) ++#if defined(VISUAL_ARCH_POWERPC) ++#include <sys/types.h> ++#include <sys/stat.h> ++#include <fcntl.h> ++#include <unistd.h> ++#include <stdio.h> ++ ++#include <linux/auxvec.h> ++#include <asm/cputable.h> ++#else /* VISUAL_ARCH_POWERPC */ + #include <signal.h> + #endif ++#endif + + #if defined(VISUAL_OS_WIN32) + #include <windows.h> +@@ -154,6 +165,46 @@ static void check_os_altivec_support( vo + if (err == 0) + if (has_vu != 0) + __lv_cpu_caps.hasAltiVec = 1; ++#elif defined (VISUAL_OS_LINUX) ++ static int available = -1; ++ int new_avail = 0; ++ char fname[64]; ++ unsigned long buf[64]; ++ ssize_t count; ++ pid_t pid; ++ int fd, i; ++ ++ if (available != -1) ++ return; ++ ++ pid = getpid(); ++ snprintf(fname, sizeof(fname)-1, "/proc/%d/auxv", pid); ++ ++ fd = open(fname, O_RDONLY); ++ if (fd < 0) ++ goto out; ++more: ++ count = read(fd, buf, sizeof(buf)); ++ if (count < 0) ++ goto out_close; ++ ++ for (i=0; i < (count / sizeof(unsigned long)); i += 2) { ++ if (buf[i] == AT_HWCAP) { ++ new_avail = !!(buf[i+1] & PPC_FEATURE_HAS_ALTIVEC); ++ goto out_close; ++ } else if (buf[i] == AT_NULL) { ++ goto out_close; ++ } ++ } ++ ++ if (count == sizeof(buf)) ++ goto more; ++out_close: ++ close(fd); ++out: ++ available = new_avail; ++ if (available) ++ __lv_cpu_caps.hasAltiVec = 1; + #else /* !VISUAL_OS_DARWIN */ + /* no Darwin, do it the brute-force way */ + /* this is borrowed from the libmpeg2 library */ diff --git a/media-libs/libvisual/files/libvisual-0.4.0-cond.patch b/media-libs/libvisual/files/libvisual-0.4.0-cond.patch new file mode 100644 index 000000000000..e1a3efd47418 --- /dev/null +++ b/media-libs/libvisual/files/libvisual-0.4.0-cond.patch @@ -0,0 +1,15 @@ +Broken --enable/disable condition. + +Index: libvisual-0.4.0/configure.ac +=================================================================== +--- libvisual-0.4.0.orig/configure.ac ++++ libvisual-0.4.0/configure.ac +@@ -191,7 +191,7 @@ AIX_COMPILE_INFO="AIX's C compiler needs + with the right compiler. Ususally just '_r' is appended + to the compiler name." + +-AC_ARG_ENABLE([enable_threads], ++AC_ARG_ENABLE([threads], + AC_HELP_STRING([--enable-threads], + [Turn on basic thread support @<:@default=enabled@:>@]), + [enable_threads=$enableval], diff --git a/media-libs/libvisual/files/libvisual-0.4.0-conditions.patch b/media-libs/libvisual/files/libvisual-0.4.0-conditions.patch new file mode 100644 index 000000000000..1520db2eac5e --- /dev/null +++ b/media-libs/libvisual/files/libvisual-0.4.0-conditions.patch @@ -0,0 +1,24 @@ +https://bugs.gentoo.org/show_bug.cgi?id=431066 +http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=456856 + +diff -u libvisual-0.4.0/libvisual/lv_cpu.c libvisual-0.4.0/libvisual/lv_cpu.c +--- libvisual-0.4.0/libvisual/lv_cpu.c ++++ libvisual-0.4.0/libvisual/lv_cpu.c +@@ -76,7 +76,7 @@ + + /* The sigill handlers */ + #if defined(VISUAL_ARCH_X86) //x86 (linux katmai handler check thing) +-#if defined(VISUAL_OS_LINUX) && defined(_POSIX_SOURCE) && defined(X86_FXSR_MAGIC) ++#if defined(VISUAL_OS_LINUX) && defined(_POSIX_SOURCE) + static void sigill_handler_sse( int signal, struct sigcontext sc ) + { + /* Both the "xorps %%xmm0,%%xmm0" and "divps %xmm0,%%xmm1" +@@ -109,7 +109,7 @@ + } + } + #endif +-#endif /* VISUAL_OS_LINUX && _POSIX_SOURCE && X86_FXSR_MAGIC */ ++#endif /* VISUAL_OS_LINUX && _POSIX_SOURCE */ + + #if defined(VISUAL_OS_WIN32) + LONG CALLBACK win32_sig_handler_sse(EXCEPTION_POINTERS* ep) diff --git a/media-libs/libvisual/files/libvisual-0.4.0-detect_amd64.patch b/media-libs/libvisual/files/libvisual-0.4.0-detect_amd64.patch new file mode 100644 index 000000000000..a796acce3b07 --- /dev/null +++ b/media-libs/libvisual/files/libvisual-0.4.0-detect_amd64.patch @@ -0,0 +1,14 @@ +Needed so that lvconfig.h gets the correct define for amd64. + +Index: libvisual-0.4.0/configure.ac +=================================================================== +--- libvisual-0.4.0.orig/configure.ac ++++ libvisual-0.4.0/configure.ac +@@ -780,6 +780,7 @@ echo >>$outfile + lv_alpha=$lv_alpha + lv_sparc=$lv_sparc + lv_ix86=$lv_ix86 ++ lv_x86_64=$lv_x86_64 + lv_powerpc=$lv_powerpc + lv_arch_unknown=$lv_arch_unknown + diff --git a/media-libs/libvisual/files/libvisual-0.4.0-inlinedefineconflict.patch b/media-libs/libvisual/files/libvisual-0.4.0-inlinedefineconflict.patch new file mode 100644 index 000000000000..5d04f30335a4 --- /dev/null +++ b/media-libs/libvisual/files/libvisual-0.4.0-inlinedefineconflict.patch @@ -0,0 +1,60 @@ +http://pkgs.fedoraproject.org/gitweb/?p=libvisual.git;a=tree + +--- libvisual/lv_cache.c ++++ libvisual/lv_cache.c +@@ -32,7 +32,7 @@ + static int cache_dtor (VisObject *object); + static int cache_remove_list_entry (VisCache *cache, VisListEntry **le); + +-static inline void handle_request_reset (VisCache *cache, VisListEntry *le); ++static lv_inline void handle_request_reset (VisCache *cache, VisListEntry *le); + + static int cache_dtor (VisObject *object) + { +@@ -74,7 +74,7 @@ + } + + +-static inline void handle_request_reset (VisCache *cache, VisListEntry *le) ++static lv_inline void handle_request_reset (VisCache *cache, VisListEntry *le) + { + VisCacheEntry *centry; + +--- libvisual/lv_defines.h ++++ libvisual/lv_defines.h +@@ -63,13 +63,13 @@ + + /* Compiler specific optimalization macros */ + #if __GNUC__ >= 3 +-# define inline inline __attribute__ ((always_inline)) ++# define lv_inline inline __attribute__ ((always_inline)) + # define __malloc __attribute__ ((malloc)) + # define __packed __attribute__ ((packed)) + # define VIS_LIKELY(x) __builtin_expect (!!(x), 1) + # define VIS_UNLIKELY(x) __builtin_expect (!!(x), 0) + #else +-# define inline /* no inline */ ++# define lv_inline /* no inline */ + # define __malloc /* no malloc */ + # define __packed /* no packed */ + # define VIS_LIKELY(x) (x) +--- libvisual/lv_time.h ++++ libvisual/lv_time.h +@@ -101,7 +101,7 @@ + * + * @return Nothing. + */ +-static inline void visual_timer_tsc_get (uint32_t *lo, uint32_t *hi) ++static lv_inline void visual_timer_tsc_get (uint32_t *lo, uint32_t *hi) + { + #if defined(VISUAL_ARCH_X86) || defined(VISUAL_ARCH_X86_64) + __asm __volatile +@@ -115,7 +115,7 @@ + } + + /* FIXME use uint64_t here, make sure type exists */ +-static inline unsigned long long visual_timer_tsc_get_returned () ++static lv_inline unsigned long long visual_timer_tsc_get_returned () + { + uint32_t lo, hi; + diff --git a/media-libs/libvisual/libvisual-0.4.0-r3.ebuild b/media-libs/libvisual/libvisual-0.4.0-r3.ebuild new file mode 100644 index 000000000000..d56d2ace6d3a --- /dev/null +++ b/media-libs/libvisual/libvisual-0.4.0-r3.ebuild @@ -0,0 +1,54 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +AUTOTOOLS_PRUNE_LIBTOOL_FILES=all +AUTOTOOLS_AUTORECONF=1 + +inherit autotools-multilib + +DESCRIPTION="Libvisual is an abstraction library that comes between applications and audio visualisation plugins" +HOMEPAGE="http://libvisual.sourceforge.net" +SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz" + +LICENSE="LGPL-2.1" +SLOT="0.4" +KEYWORDS="~alpha amd64 arm ~arm64 hppa ~ia64 ~mips ppc ppc64 sparc x86 ~amd64-fbsd ~x86-fbsd" +IUSE="debug nls static-libs threads" + +RDEPEND="abi_x86_32? ( !<=app-emulation/emul-linux-x86-medialibs-20130224-r9 + !app-emulation/emul-linux-x86-medialibs[-abi_x86_32(-)] )" +DEPEND="${RDEPEND} + nls? ( sys-devel/gettext ) + virtual/pkgconfig" + +DOCS=( AUTHORS ChangeLog NEWS README TODO ) + +PATCHES=( + "${FILESDIR}"/${P}-better-altivec-detection.patch + "${FILESDIR}"/${P}-inlinedefineconflict.patch + "${FILESDIR}"/${P}-conditions.patch + "${FILESDIR}"/${P}-detect_amd64.patch + "${FILESDIR}"/${P}-cond.patch + ) + +MULTILIB_WRAPPED_HEADERS=( + /usr/include/libvisual-0.4/libvisual/lvconfig.h +) + +src_prepare() { + autotools-multilib_src_prepare + # autogenerated, causes problems for out of tree builds + rm -f libvisual/lvconfig.h || die +} + +src_configure() { + local myeconfargs=( + --enable-shared + $(use_enable nls) + $(use_enable threads) + $(use_enable debug) + ) + autotools-multilib_src_configure +} diff --git a/media-libs/libvisual/metadata.xml b/media-libs/libvisual/metadata.xml new file mode 100644 index 000000000000..2496876dda31 --- /dev/null +++ b/media-libs/libvisual/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>sound@gentoo.org</email> + <name>Gentoo Sound project</name> + </maintainer> + <upstream> + <remote-id type="sourceforge">libvisual</remote-id> + </upstream> +</pkgmetadata> |