summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexander Tsoy <alexander@tsoy.me>2019-04-16 00:22:22 +0300
committerGeorgy Yakovlev <gyakovlev@gentoo.org>2019-04-20 22:01:25 -0700
commitdbd7f030d482f5593d4fb1d5c4ebcaf633f3174f (patch)
tree96aca3561dc718357ebd94f715f0c803ade19a94 /media-libs
parentapp-misc/uptimed: amd64 stable wrt bug #683918 (diff)
downloadgentoo-dbd7f030d482f5593d4fb1d5c4ebcaf633f3174f.tar.gz
gentoo-dbd7f030d482f5593d4fb1d5c4ebcaf633f3174f.tar.bz2
gentoo-dbd7f030d482f5593d4fb1d5c4ebcaf633f3174f.zip
media-libs/zita-resampler: new package
Libzita-resampler is a C++ library for resampling audio signals. It is designed to be used within a real-time processing context, to be fast, and to provide high-quality sample rate conversion. Dependency of media-sound/guitarix Signed-off-by: Alexander Tsoy <alexander@tsoy.me> Package-Manager: Portage-2.3.62, Repoman-2.3.11 Signed-off-by: Georgy Yakovlev <gyakovlev@gentoo.org>
Diffstat (limited to 'media-libs')
-rw-r--r--media-libs/zita-resampler/Manifest1
-rw-r--r--media-libs/zita-resampler/files/zita-resampler-1.6.2-makefile.patch90
-rw-r--r--media-libs/zita-resampler/metadata.xml20
-rw-r--r--media-libs/zita-resampler/zita-resampler-1.6.2.ebuild41
4 files changed, 152 insertions, 0 deletions
diff --git a/media-libs/zita-resampler/Manifest b/media-libs/zita-resampler/Manifest
new file mode 100644
index 000000000000..60d50f605c7c
--- /dev/null
+++ b/media-libs/zita-resampler/Manifest
@@ -0,0 +1 @@
+DIST zita-resampler-1.6.2.tar.bz2 125539 BLAKE2B d2e04fb5e0efbde3432ce973df59a11d2a184146d124b662712a5de2d9c243f6564899f190f7a7b68a9e01bcaab05c92b91ebcbf942473134a12a85e4e08c603 SHA512 d547419dd222c8a399d8f196efa1ec88a3f781275b696ae2fe1bb6e2fc329285affb8aace85972c304ad256becc4a155534dd5ef4ce3c57cbc9dcca0122b670c
diff --git a/media-libs/zita-resampler/files/zita-resampler-1.6.2-makefile.patch b/media-libs/zita-resampler/files/zita-resampler-1.6.2-makefile.patch
new file mode 100644
index 000000000000..29735e7729a0
--- /dev/null
+++ b/media-libs/zita-resampler/files/zita-resampler-1.6.2-makefile.patch
@@ -0,0 +1,90 @@
+diff -urN zita-resampler-1.6.2.orig/apps/Makefile zita-resampler-1.6.2/apps/Makefile
+--- zita-resampler-1.6.2.orig/apps/Makefile 2018-08-24 21:41:47.000000000 +0300
++++ zita-resampler-1.6.2/apps/Makefile 2019-04-13 18:49:50.005800712 +0300
+@@ -23,18 +23,17 @@
+ MANDIR ?= /usr/share/man/man1
+
+ VERSION = 1.6.0
+-CPPFLAGS += -MMD -MP -DVERSION=\"$(VERSION)\"
+-CXXFLAGS += -O2 -ffast-math -Wall
+-CXXFLAGS += -march=native
++CPPFLAGS += -MMD -MP -DVERSION=\"$(VERSION)\" -I ../source
++CXXFLAGS += -ffast-math -Wall
+
+
+-all: zresample zretune zresample.1.gz zretune.1.gz
++all: zresample zretune zresample.1 zretune.1
+
+
+ ZRESAMPLE_O = zresample.o audiofile.o dither.o
+ zresample: LDLIBS += -lzita-resampler -lsndfile -lrt
+ zresample: $(ZRESAMPLE_O)
+- $(CXX) $(LDFLAGS) -o $@ $(ZRESAMPLE_O) $(LDLIBS)
++ $(CXX) -L ../source $(LDFLAGS) -o $@ $(ZRESAMPLE_O) $(LDLIBS)
+ $(ZRESAMPLE_O):
+ -include $(ZRESAMPLE_O:%.o=%.d)
+
+@@ -42,25 +41,18 @@
+ ZRETUNE_O = zretune.o audiofile.o dither.o
+ zretune: LDLIBS += -lzita-resampler -lsndfile -lrt
+ zretune: $(ZRETUNE_O)
+- $(CXX) $(LDFLAGS) -o $@ $(ZRETUNE_O) $(LDLIBS)
++ $(CXX) -L ../source $(LDFLAGS) -o $@ $(ZRETUNE_O) $(LDLIBS)
+ $(ZRETUNE_O):
+ -include $(ZRETUNE_O:%.o=%.d)
+
+
+-zresample.1.gz: zresample.1
+- gzip -c zresample.1 > zresample.1.gz
+-
+-zretune.1.gz: zretune.1
+- gzip -c zretune.1 > zretune.1.gz
+-
+-
+ install: all
+- install -d $(BINDIR)
+- install -d $(MANDIR)
++ install -d $(DESTDIR)$(BINDIR)
++ install -d $(DESTDIR)$(MANDIR)
+ install -m 755 zresample $(DESTDIR)$(BINDIR)
+ install -m 755 zretune $(DESTDIR)$(BINDIR)
+- install -m 644 zresample.1.gz $(DESTDIR)$(MANDIR)
+- install -m 644 zretune.1.gz $(DESTDIR)$(MANDIR)
++ install -m 644 zresample.1 $(DESTDIR)$(MANDIR)
++ install -m 644 zretune.1 $(DESTDIR)$(MANDIR)
+
+ uninstall:
+ /bin/rm -f $(DESTDIR)$(BINDIR)/zresample
+diff -urN zita-resampler-1.6.2.orig/source/Makefile zita-resampler-1.6.2/source/Makefile
+--- zita-resampler-1.6.2.orig/source/Makefile 2018-08-24 21:41:47.000000000 +0300
++++ zita-resampler-1.6.2/source/Makefile 2019-04-13 18:49:25.936129640 +0300
+@@ -32,8 +32,7 @@
+
+
+ CPPFLAGS += -I. -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS
+-CXXFLAGS += -Wall -fPIC -O2 -ffast-math
+-CXXFLAGS += -march=native
++CXXFLAGS += -Wall -fPIC -ffast-math
+ LDFLAGS +=
+ LDLIBS +=
+
+@@ -47,6 +46,9 @@
+ zita-resampler/vresampler.h zita-resampler/cresampler.h
+
+
++$(ZITA-RESAMPLER_SO): $(ZITA-RESAMPLER_MIN)
++ ln -sf $(ZITA-RESAMPLER_MIN) $(ZITA-RESAMPLER_SO)
++
+ $(ZITA-RESAMPLER_MIN): $(ZITA-RESAMPLER_O)
+ $(CXX) -shared $(LDFLAGS) -Wl,-soname,$(ZITA-RESAMPLER_MAJ) -o $(ZITA-RESAMPLER_MIN) $(ZITA-RESAMPLER_O) $(ZITA-RESAMPLER_DEP)
+
+@@ -58,8 +60,8 @@
+ install -d $(DESTDIR)$(LIBDIR)
+ install -m 644 $(ZITA-RESAMPLER_H) $(DESTDIR)$(INCDIR)/zita-resampler
+ install -m 755 $(ZITA-RESAMPLER_MIN) $(DESTDIR)$(LIBDIR)
+- ldconfig
+ ln -sf $(ZITA-RESAMPLER_MIN) $(DESTDIR)$(LIBDIR)/$(ZITA-RESAMPLER_SO)
++ ln -sf $(ZITA-RESAMPLER_MIN) $(DESTDIR)$(LIBDIR)/$(ZITA-RESAMPLER_MAJ)
+
+ uninstall:
+ /bin/rm -rf $(DESTDIR)$(INCDIR)/zita-resampler
diff --git a/media-libs/zita-resampler/metadata.xml b/media-libs/zita-resampler/metadata.xml
new file mode 100644
index 000000000000..d939c6084b53
--- /dev/null
+++ b/media-libs/zita-resampler/metadata.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>alexander@tsoy.me</email>
+ <name>Alexander Tsoy</name>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
+ <longdescription lang="en">
+ Libzita-resampler is a C++ library for resampling audio signals.
+ It is designed to be used within a real-time processing context,
+ to be fast, and to provide high-quality sample rate conversion.
+ </longdescription>
+ <use>
+ <flag name="tools">Install zresample and zretune tools</flag>
+ </use>
+</pkgmetadata>
diff --git a/media-libs/zita-resampler/zita-resampler-1.6.2.ebuild b/media-libs/zita-resampler/zita-resampler-1.6.2.ebuild
new file mode 100644
index 000000000000..754fa1dfdde9
--- /dev/null
+++ b/media-libs/zita-resampler/zita-resampler-1.6.2.ebuild
@@ -0,0 +1,41 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit toolchain-funcs
+
+DESCRIPTION="C++ library for real-time resampling of audio signals"
+HOMEPAGE="http://kokkinizita.linuxaudio.org/linuxaudio/"
+SRC_URI="http://kokkinizita.linuxaudio.org/linuxaudio/downloads/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0/1"
+KEYWORDS="~amd64"
+IUSE="tools"
+
+RDEPEND="tools? ( media-libs/libsndfile )"
+DEPEND="${RDEPEND}"
+BDEPEND=""
+
+HTML_DOCS="docs/."
+
+PATCHES=( "${FILESDIR}"/${PN}-1.6.2-makefile.patch )
+
+src_compile() {
+ tc-export CXX
+
+ emake -C source
+ if use tools; then
+ emake -C apps
+ fi
+}
+
+src_install() {
+ emake -C source DESTDIR="${D}" PREFIX="${EPREFIX}/usr" LIBDIR="${EPREFIX}"/usr/$(get_libdir) install
+ if use tools; then
+ emake -C apps DESTDIR="${D}" PREFIX="${EPREFIX}/usr" install
+ fi
+
+ einstalldocs
+}