From 7b26bb8f4662676dd673200343dddf4a5b565c0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andreas=20M=C3=BCller?= Date: Sun, 24 Apr 2016 01:30:08 +0200 Subject: [PATCH] timidity++: initial add 2.14.0 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit heavily inspired by [1] [1] http://pkgs.fedoraproject.org/cgit/rpms/timidity++.git/tree/ Signed-off-by: Andreas Müller --- ...-for-va_copy-this-is-not-allowed-in-.patch | 105 ++++++++++++++++++ .../files/0002-find-cross-calcnewt.patch | 48 ++++++++ .../timidity++/files/timidity.desktop | 8 ++ .../timidity++/timidity++-native.bb | 20 ++++ recipes-support/timidity++/timidity++.bb | 35 ++++++ recipes-support/timidity++/timidity++.inc | 14 +++ 6 files changed, 230 insertions(+) create mode 100644 recipes-support/timidity++/files/0001-do-not-run-check-for-va_copy-this-is-not-allowed-in-.patch create mode 100644 recipes-support/timidity++/files/0002-find-cross-calcnewt.patch create mode 100644 recipes-support/timidity++/files/timidity.desktop create mode 100644 recipes-support/timidity++/timidity++-native.bb create mode 100644 recipes-support/timidity++/timidity++.bb create mode 100644 recipes-support/timidity++/timidity++.inc diff --git a/recipes-support/timidity++/files/0001-do-not-run-check-for-va_copy-this-is-not-allowed-in-.patch b/recipes-support/timidity++/files/0001-do-not-run-check-for-va_copy-this-is-not-allowed-in-.patch new file mode 100644 index 00000000..0d714f33 --- /dev/null +++ b/recipes-support/timidity++/files/0001-do-not-run-check-for-va_copy-this-is-not-allowed-in-.patch @@ -0,0 +1,105 @@ +From 4931f21b0fa6c29c934071525033dab77efbee38 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Sat, 23 Apr 2016 23:31:03 +0200 +Subject: [PATCH] do not run check for va_copy - this is not allowed in cross + environment +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Upstream-Status: Inappropriate [cross specific] + +Signed-off-by: Andreas Müller +--- + configure.in | 74 ------------------------------------------------------------ + 1 file changed, 74 deletions(-) + +diff --git a/configure.in b/configure.in +index 4f10340..9e03a78 100644 +--- a/configure.in ++++ b/configure.in +@@ -686,81 +686,7 @@ AC_CHECK_FUNC(open_memstream, [ + AC_DEFINE([HAVE_OPEN_MEMSTREAM],1,[Define to 1 if you have `open_memstream' function]) + ]) + +-dnl *** +-dnl *** va_copy checks (from GLIB) +-dnl *** +- +-AC_CACHE_CHECK([for an implementation of va_copy()],lib_cv_va_copy,[ +- AC_RUN_IFELSE([AC_LANG_SOURCE([[ +- #include +- void f (int i, ...) { +- va_list args1, args2; +- va_start (args1, i); +- va_copy (args2, args1); +- if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42) +- exit (1); +- va_end (args1); va_end (args2); +- } +- int main() { +- f (0, 42); +- return 0; +- }]])], +- [lib_cv_va_copy=yes], +- [lib_cv_va_copy=no],[]) +-]) +- +-AC_CACHE_CHECK([for an implementation of __va_copy()],lib_cv___va_copy,[ +- AC_RUN_IFELSE([AC_LANG_SOURCE([[ +- #include +- void f (int i, ...) { +- va_list args1, args2; +- va_start (args1, i); +- __va_copy (args2, args1); +- if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42) +- exit (1); +- va_end (args1); va_end (args2); +- } +- int main() { +- f (0, 42); +- return 0; +- }]])], +- [lib_cv___va_copy=yes], +- [lib_cv___va_copy=no],[]) +-]) +- +-if test "x$lib_cv_va_copy" = "xyes"; then +- va_copy_func=va_copy +-else if test "x$lib_cv___va_copy" = "xyes"; then +- va_copy_func=__va_copy +-fi +-fi + +-if test -n "$va_copy_func"; then +- AC_DEFINE_UNQUOTED(VA_COPY,$va_copy_func,[A 'va_copy' style function]) +-fi +- +-AC_CACHE_CHECK([whether va_lists can be copied by value],lib_cv_va_val_copy,[ +- AC_RUN_IFELSE([AC_LANG_SOURCE([[ +- #include +- void f (int i, ...) { +- va_list args1, args2; +- va_start (args1, i); +- args2 = args1; +- if (va_arg (args2, int) != 42 || va_arg (args1, int) != 42) +- exit (1); +- va_end (args1); va_end (args2); +- } +- int main() { +- f (0, 42); +- return 0; +- }]])], +- [lib_cv_va_val_copy=yes], +- [lib_cv_va_val_copy=no],[]) +-]) +- +-if test "x$lib_cv_va_val_copy" = "xno"; then +- AC_DEFINE(VA_COPY_AS_ARRAY,1, ['va_lists' cannot be copies as values]) +-fi + + # Checks on cygnus and MSYS + if test "x$MSYS" = xyes ; then +-- +2.5.5 + diff --git a/recipes-support/timidity++/files/0002-find-cross-calcnewt.patch b/recipes-support/timidity++/files/0002-find-cross-calcnewt.patch new file mode 100644 index 00000000..8c744a0e --- /dev/null +++ b/recipes-support/timidity++/files/0002-find-cross-calcnewt.patch @@ -0,0 +1,48 @@ +From 5c670df3951800766c1e7d031fb96a22b4d933bb Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= +Date: Sun, 24 Apr 2016 00:16:38 +0200 +Subject: [PATCH] find cross calcnewt +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Upstream-Status: Inappropriate [cross specific] + +Signed-off-by: Andreas Müller +--- + timidity/Makefile.am | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/timidity/Makefile.am b/timidity/Makefile.am +index 757dcb2..1b9f376 100644 +--- a/timidity/Makefile.am ++++ b/timidity/Makefile.am +@@ -444,21 +444,21 @@ resample.c: newton_table.c + + if VCPP + newton_table.c: calcnewt$(EXEEXT) +- ./calcnewt $@ ++ calcnewt $@ + + else + if POCC + newton_table.c: calcnewt$(EXEEXT) +- ./calcnewt $@ ++ calcnewt $@ + + else + if WATCOM_C + newton_table.c: calcnewt$(EXEEXT) +- ./calcnewt > $@ ++ calcnewt > $@ + + else + newton_table.c: calcnewt$(EXEEXT) +- ./calcnewt > $@ ++ calcnewt > $@ + + endif + endif +-- +2.5.5 + diff --git a/recipes-support/timidity++/files/timidity.desktop b/recipes-support/timidity++/files/timidity.desktop new file mode 100644 index 00000000..6a3e5d55 --- /dev/null +++ b/recipes-support/timidity++/files/timidity.desktop @@ -0,0 +1,8 @@ +[Desktop Entry] +Name=TiMidity++ GTK UI +Comment=Real-time software synthesizer +Icon=timidity +Type=Application +Exec=timidity -ig +Terminal=false +Categories=Audio;AudioVideo;Midi;X-Synthesis;X-Jack; diff --git a/recipes-support/timidity++/timidity++-native.bb b/recipes-support/timidity++/timidity++-native.bb new file mode 100644 index 00000000..9389d24d --- /dev/null +++ b/recipes-support/timidity++/timidity++-native.bb @@ -0,0 +1,20 @@ +require ${BPN}.inc + +inherit native + +B = "${WORKDIR}/build" + +do_configure() { + mkdir -p ${B} + cp -f ${S}/timidity/calcnewt.c ${B} +} + +do_compile() { + cd ${B} + ${CC} -o calcnewt calcnewt.c -lm +} + +do_install() { + install -d ${D}${bindir} + install ${B}/calcnewt ${D}${bindir} +} diff --git a/recipes-support/timidity++/timidity++.bb b/recipes-support/timidity++/timidity++.bb new file mode 100644 index 00000000..284282ac --- /dev/null +++ b/recipes-support/timidity++/timidity++.bb @@ -0,0 +1,35 @@ +require ${BPN}.inc + +DEPENDS += " \ + ${BPN}-native \ + gtk+ \ + alsa-lib \ + jack \ +" + +inherit autotools pkgconfig + +SRC_URI += " \ + file://timidity.desktop \ + file://0001-do-not-run-check-for-va_copy-this-is-not-allowed-in-.patch \ + file://0002-find-cross-calcnewt.patch \ +" + +# maybe add further on --enable-audio later +EXTRA_OECONF += " \ + --disable-alsatest \ + --enable-audio=alsa,jack \ + --with-module-dir=${libdir}/${BPN} \ + --enable-dynamic=gtk \ +" + +CFLAGS+='-DCONFIG_FILE=\\"${sysconfdir}/timidity++.cfg\\"' + +do_install_append() { + install -d ${D}/${datadir}/applications + install ${WORKDIR}/timidity.desktop ${D}/${datadir}/applications + + # timidity++ needs at least an empty file + install -d ${D}/${sysconfdir} + touch ${D}/${sysconfdir}/timidity++.cfg +} diff --git a/recipes-support/timidity++/timidity++.inc b/recipes-support/timidity++/timidity++.inc new file mode 100644 index 00000000..9a1f4782 --- /dev/null +++ b/recipes-support/timidity++/timidity++.inc @@ -0,0 +1,14 @@ +SUMMARY = "A software wavetable MIDI synthesizer" +HOMEPAGE = "http://timidity.sourceforge.net" +LICENSE = "GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" + +PV = "2.14.0" + +UPSTREAM_PN = "TiMidity++" + +SRC_URI = "${SOURCEFORGE_MIRROR}/project/timidity/${UPSTREAM_PN}/${UPSTREAM_PN}-${PV}/${UPSTREAM_PN}-${PV}.tar.xz" +SRC_URI[md5sum] = "27927182d62ba24abbf447a9e9919c53" +SRC_URI[sha256sum] = "abf0c8367959e85c9e635b8fbd5183fc27bd380e0ef5e45de4158784538c86fc" + +S = "${WORKDIR}/${UPSTREAM_PN}-${PV}"