3 Commits

Author SHA1 Message Date
Andreas Müller
c0083756d2 Merge remote-tracking branch 'origin/master' into warrior 2019-09-01 00:10:37 +02:00
Andreas Müller
4b977b6e3d mixxx: upgrade 2.2.1+ -> 2.2.2
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
2019-08-20 00:39:08 +02:00
Andreas Müller
7cd914e327 mixxx: upgrade to latest maste to fix build with current oe
Something changed in scons/python3:
| TypeError: changed_since_last_build_node() takes 3 positional arguments but 4 were given:

Guess this one fixed it:

Author: Uwe Klotz <uklotz@mixxx.org>
Date:   Fri Aug 9 15:18:05 2019 +0200

    Fix signature of changed_since_last_build_node() for SCons 3.1.x

    Add a 4th parameter with default value:
    https://scons.org/doc/3.1.0/HTML/scons-api/SCons.Node-module.html#changed_since_last_build_nodehttps://scons.org/doc/3.1.0/HTML/scons-api/SCons.Node-module.html

Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
2019-08-20 00:38:55 +02:00
338 changed files with 6156 additions and 11222 deletions

View File

@@ -4,7 +4,7 @@ OE layer for digital audio workstations and plugins
Layer dependencies:
----------------------
see [layer.conf](conf/layer.conf) for dependencies and [Layer-index](https://layers.openembedded.org/layerindex/branch/master/layers/) where to find layers
see [layer.conf](conf/layer.conf) for dependencies and https://layers.openembedded.org/layerindex/branch/master/layers/ where to find layers
Contributing
@@ -14,14 +14,11 @@ Contributing
Policies
--------
* **Please do not send private emails to maintainer - they will not be answered anymore**. For bug-reports/questions/suggestions.. use [issues](https://github.com/schnitzeltony/meta-musicians/issues).
* Please do not send private emails to maintainers. For questions/suggestions.. use GitHub issues.
* Pull requests should follow [OE-Styleguide](https://www.openembedded.org/wiki/Styleguide) with the following additions:
* Use 4 spaces for indentation always (shell and python code)
* For splitting of long list values use four-space indentation on successive lines and prefer the closing quote as the first character ([OE-Styleguide](https://www.openembedded.org/wiki/Styleguide) - second example)
* Pull-requests with patches fixing issues for musl, clang or gold-linker are accepted only if patches have upstream-status "Applied" or "Backport" and contain a link to the upstream patch.
* Be aware that **this layer changes other layer's defaults by bbappends**. Maintainer disagrees with common 'configure to death practice' and won't waste time explaining dozens of knobs that are mandatory to get working/useful builds. See
[appends](appends).
Pull requests removing appends for sake of magic 'compliant' scripts are not accepted.
* Use 4 spaces for indention always
* For splitting of long list values use four-space indentation on sucessive lines and prefer the closing quote as the first character ([OE-Styleguide](https://www.openembedded.org/wiki/Styleguide) - second example)
* Pull-requests with patches fixing issues for musl, clang or gold-linker are accepeted only if patches have upstream-status "Applied" or "Backport" and contain a link to the upstream patch.
Maintainers

View File

@@ -1,33 +0,0 @@
# Will did send this to meta-oe master but don't expect to get it into dunfell.
# So do the necessary changes in a way that is compatibile to meta-oe dunfell
# and master
inherit binconfig
PACKAGECONFIG:append = " ${@bb.utils.filter('DISTRO_FEATURES', 'opengl', d)}"
PACKAGECONFIG[opengl] = ",,libglu"
do_patch[postfuncs] += "do_patch_nocross"
do_patch_nocross() {
# This one will be patched in meta-oe but we cannot do same
sed -i 's:@cross_compiling@:no:g' ${S}/wx-config.in
}
do_compile:append() {
if [ -L ${B}/wx-config ]; then
echo "wxwidget recipe is not yet updated to wx-config adjustments so we do"
# ${B}/wx-config is a symlink for build and not needed after compile
# So for our purposes do:
# 1. make a file out of wx-config so that binconfig.bbclass detects it
# 2. make sure we do not move the file used for compiling into sysroot
cp --remove-destination `readlink ${B}/wx-config | sed 's:inplace-::'` ${B}/wx-config
fi
# 3. Set full sysroot paths so sstate can translate them when setting
# up wxwidgets's consumer sysroots
sed -i \
-e 's,^includedir=.*,includedir="${STAGING_INCDIR}",g' \
-e 's,^libdir=.*",libdir="${STAGING_LIBDIR}",g' \
-e 's,^bindir=.*",bindir="${STAGING_BINDIR}",g' \
${B}/wx-config
}

View File

@@ -1,46 +0,0 @@
BBCLASSEXTEND = "native"
DEPENDS:class-native = "qtbase-native sip3-native python3-native"
PYQT_MODULES:class-native = "QtCore"
# This is a copy from meta-qt5 adjusted to native staging
do_configure:prepend:class-native() {
cd ${S}
echo "py_platform = linux" > pyqt.cfg
echo "py_inc_dir = %(sysroot)/$includedir/python%(py_major).%(py_minor)${PYTHON_ABI}" >> pyqt.cfg
echo "py_pylib_dir = %(sysroot)/${libdir}/python%(py_major).%(py_minor)" >> pyqt.cfg
echo "py_pylib_lib = python$%(py_major).%(py_minor)" >> pyqt.cfg
echo "pyqt_module_dir = ${D}/${libdir}/python%(py_major).%(py_minor)/site-packages" >> pyqt.cfg
echo "pyqt_bin_dir = ${D}/${bindir}" >> pyqt.cfg
echo "pyqt_sip_dir = ${D}/${datadir}/sip/PyQt5" >> pyqt.cfg
echo "pyuic_interpreter = ${D}/${bindir}/python%(py_major).%(py_minor)" >> pyqt.cfg
echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg
echo "qt_shared = True" >> pyqt.cfg
QT_VERSION=`${OE_QMAKE_QMAKE} -query QT_VERSION`
echo "[Qt $QT_VERSION]" >> pyqt.cfg
echo "pyqt_modules = ${PYQT_MODULES}" >> pyqt.cfg
echo yes | ${PYTHON} configure.py --verbose --qmake ${STAGING_BINDIR_NATIVE}/${QT_DIR_NAME}/qmake --configuration pyqt.cfg --sysroot ${STAGING_DIR_NATIVE}
qmake5_base_do_configure
# avoid running code prepended by recipe
return 0
}
CFLAGS:append:class-native = " -I${STAGING_INCDIR_NATIVE}/${PYTHON_DIR}"
CXXFLAGS:append:class-native = " -I${STAGING_INCDIR_NATIVE}/${PYTHON_DIR}"
do_install:class-native() {
cd ${S}
oe_runmake MAKEFLAGS='-j 1' install
# should be done for target either...
for file in `find ${D}${bindir} -name 'py*5'`; do
echo "Remove abs path in $file..."
sed -i 's:exec.*${PYTHON_DIR}:exec ${PYTHON_PN}:g' "$file"
done
}
RDEPENDS:${PN}:class-native = ""

View File

@@ -1,2 +0,0 @@
PACKAGECONFIG:append = " gui imageformats"

View File

@@ -1,2 +0,0 @@
# yeah I know yocto does not want us to change this
PACKAGECONFIG:append = "${@bb.utils.contains('BBFILE_COLLECTIONS', 'clang-layer', ' clang', '', d)}"

View File

@@ -1,9 +0,0 @@
# class for audio plugin common settings
# plugin package names
PN_DSSI = "${PN}-dssi"
PN_LADSPA = "${PN}-ladspa"
PN_LV2 = "${PN}-lv2"
PN_VST = "${PN}-vst"
PN_VST3 = "${PN}-vst3"

View File

@@ -0,0 +1,53 @@
# Helper class to handle ontarget-postinst creation of lv2 turtle files
# File created during compile usually. To create this file makefiles have to be
# aligned - see do_configure_prepend at zynaddsubfx or distrho-ports. The file
# is expected with the following format
# lv2-ttl-generator <path>/plugin.so
LV2-TURTLE-BUILD-DATA = "${WORKDIR}/lv2-ttl-generator-data"
# E.g zynaddsubfx needs to create dummy lv2 turtle files to keep install sane.
# To delete them automatically (see below) the contain a dummy string:
LV2-DUMMY-TURTLE-STR = "lv2-dummy-turtle-string"
# To make ontarget postinst/prerm happen, the names of all plugins with their
# paths as installed on target a stored in a file called lv2-postinst-manifest
LV2-POSTINST-MANIFEST = "${datadir}/${BPN}/lv2-postinst-manifest"
do_install_append() {
# remove dummy lv2-turtles again
cd ${D}/${libdir}/lv2
for tfile in `grep -rl ${LV2-DUMMY-TURTLE-STR}`; do
rm $tfile
done
# create postinst manifest
install -d ${D}`dirname ${LV2-POSTINST-MANIFEST}`
for sofile in `cat ${LV2-TURTLE-BUILD-DATA} | awk '{ print $2 }'`; do
sofile=`basename $sofile`
installed=`find ${D}${libdir}/lv2 -name $sofile | sed 's|${D}||g'`
echo $installed >> ${D}${LV2-POSTINST-MANIFEST}
done
}
pkg_postinst_ontarget_${PN}-lv2() {
oldpath=`pwd`
for sofile in `cat ${LV2-POSTINST-MANIFEST}`; do
cd `dirname "$sofile"`
lv2-ttl-generator "$sofile"
done
cd $oldpath
}
pkg_prerm_${PN}-lv2() {
for sofile in `cat ${LV2-POSTINST-MANIFEST}`; do
path=`dirname "$sofile"`
for turtle in `find $path -name '*.ttl'`; do
rm $turtle
done
done
}
FILES_${PN}-lv2 += "${LV2-POSTINST-MANIFEST}"
RDEPENDS_${PN}-lv2 += "lv2-ttl-generator"

View File

@@ -1,148 +0,0 @@
# Helper class to handle creation of lv2 turtle files
# Turtle files (*.ttl) are created during compile usually. This does not work
# for us because cross build libraries cannot be opened by build host. To get
# around we:
#
# 1. Adjust build (see do_ttl_sed) so that instead calling LV2_TTL_GENERATOR
# the plugin file name is written to LV2_PLUGIN_INFO_FILE
# 2. Try to generate ttl with the help of qemu. This can faile for various
# reasons: SIMD instructions not supported / qemu itself / ...
# For files not handled properly we try:
# 3. Generate ttl-files at first boot / after package was installed
# File containing names of plugins to handle in do_compile:append
# Line-format expected: <some-path-in-build>/<plugin>.so
LV2_PLUGIN_INFO_FILE = "${WORKDIR}/lv2-ttl-generator-data"
LV2_PLUGIN_INFO_FILE_CLEANED = "${LV2_PLUGIN_INFO_FILE}-cleaned"
# File containing names of plugins to handle in do_compile:append
# Line-format expected: <path-ontarget>/<plugin>.so
LV2_PLUGIN_POSTINST_INFO_FILE = "${LV2_PLUGIN_INFO_FILE}-postinst"
# To make ontarget postinst/prerm happen, the names of all plugins with their
# paths as installed on target a stored in a file called lv2-postinst-manifest
LV2_POSTINST_MANIFEST = "${datadir}/${BPN}/lv2-postinst-manifest"
# Path to the ttl-generator qemu will use. Since most plugins are based on dpf
# (added by git-submodule) we can set a default matchin > 80%+
LV2_TTL_GENERATOR ?= "${S}/dpf/utils/lv2_ttl_generator"
inherit qemu-ext-musicians audio-plugin-common
# override this function and execute sed (or other magic) to adjust Makefiles
# so that lv2-ttl-generator is not executed but plugin information. Same here:
# Set default match many dpf-based plugins
do_ttl_sed() {
sed -i 's|"$GEN" "./$FILE"|echo "`realpath "./$FILE"`" >> ${LV2_PLUGIN_INFO_FILE}|g' ${S}/dpf/utils/generate-ttl.sh
}
do_configure:prepend() {
# 1st configure?
if [ ! -f ${LV2_PLUGIN_INFO_FILE} ]; then
do_ttl_sed
fi
}
do_compile:prepend() {
# remove plugin-info from previous build
rm -f ${LV2_PLUGIN_INFO_FILE}
rm -f ${LV2_PLUGIN_POSTINST_INFO_FILE}
}
do_compile[vardeps] += "LV2_TTL_GENERATOR"
do_compile:append() {
rm -f ${LV2_PLUGIN_INFO_FILE_CLEANED}
if [ -e ${LV2_PLUGIN_INFO_FILE} ]; then
echo
echo "---------- start of lv2 ttl generation ----------"
echo "lv2-plugins found - try ttl-generation with LV2_TTL_GENERATOR: '${LV2_TTL_GENERATOR}'"
# try build ttl-files with quemu
for sofile in `sort ${LV2_PLUGIN_INFO_FILE} | uniq`; do
echo $sofile >> ${LV2_PLUGIN_INFO_FILE_CLEANED}
sobase=`basename $sofile`
ttl_failed=""
if [ "x${ttl_failed}" = "x" ]; then
cd `dirname ${sofile}`
echo "QEMU lv2-ttl-generator for ${sofile}..."
${@qemu_run_binary_local(d, '${STAGING_DIR_TARGET}', '${LV2_TTL_GENERATOR}')} ${sofile} || ttl_failed="$?"
if [ "x${ttl_failed}" = "x" ]; then
echo "Generation succeeded."
else
if [ "x${ttl_failed}" = "x124" ]; then
echo "ERROR: ttl-generation for `basename ${sofile}` timed out!"
else
echo "ERROR: ttl-generation for `basename ${sofile}` failed!"
echo "LV2_TTL_GENERATOR set correctly - check few lines above?"
# qemu failed: remove generated core files
rm -f *.core
fi
fi
fi
if [ "x${ttl_failed}" != "x" ]; then
# postpone on target
echo `basename $sofile` >> ${LV2_PLUGIN_POSTINST_INFO_FILE}
fi
done
else
echo
echo "LV2_PLUGIN_INFO_FILE was not created during compilation - check do_ttl_sed() or patch postponing ttl-generation"
echo
exit -1
fi
}
do_compile[postfuncs] += "do_ttl_qa"
python do_ttl_qa() {
lv2_plugin_postinst_info_file = d.getVar('LV2_PLUGIN_POSTINST_INFO_FILE')
if os.path.isfile(lv2_plugin_postinst_info_file):
lv2_plugin_info_file_cleaned = d.getVar('LV2_PLUGIN_INFO_FILE_CLEANED')
num_plugins = len(open(lv2_plugin_info_file_cleaned).readlines())
num_plugins_postinst = len(open(lv2_plugin_postinst_info_file).readlines())
name = d.getVar('PN')
if num_plugins == num_plugins_postinst:
bb.warn("All LV2-plugins in %s are postponed to post-install! Check log.do_compile for valid LV2_TTL_GENERATOR (%s)" % (name,d.getVar('LV2_TTL_GENERATOR')))
else:
bb.warn("%i of %i LV2-plugins in %s are postponed to post-install! Check %s and log.do_compile for details" % (num_plugins_postinst, num_plugins, name, lv2_plugin_postinst_info_file))
}
do_install:append() {
# create postinst manifest
if [ -e ${LV2_PLUGIN_POSTINST_INFO_FILE} ]; then
install -d ${D}`dirname ${LV2_POSTINST_MANIFEST}`
for sofile in `cat ${LV2_PLUGIN_POSTINST_INFO_FILE}`; do
installed=`find ${D}${libdir}/lv2 -name $sofile | sed 's|${D}||g'`
echo $installed >> ${D}${LV2_POSTINST_MANIFEST}
done
fi
}
pkg_postinst_ontarget:${PN_LV2}() {
if [ -e ${LV2_POSTINST_MANIFEST} ]; then
oldpath=`pwd`
for sofile in `cat ${LV2_POSTINST_MANIFEST}`; do
lv2_path=`dirname "$sofile"`
cd "$lv2_path"
if ! lv2-ttl-generator "$sofile"; then
echo "Error: Turtle files for $sofile could not be created - remove $lv2_path!"
cd ..
rm -rf "$lv2_path"
fi
done
cd $oldpath
fi
}
pkg_prerm:${PN_LV2}() {
if [ -e ${LV2_POSTINST_MANIFEST} ]; then
for sofile in `cat ${LV2_POSTINST_MANIFEST}`; do
path=`dirname "$sofile"`
for turtle in `find $path -name '*.ttl'`; do
rm $turtle
done
done
fi
}
FILES:${PN_LV2} += "${LV2_POSTINST_MANIFEST}"
RDEPENDS:${PN_LV2} += "lv2-ttl-generator"

View File

@@ -1,11 +1,8 @@
# Auto package audio plugins
inherit audio-plugin-common
PACKAGES =+ "${PN}-dssi ${PN}-ladspa ${PN}-lv2 ${PN}-vst"
PACKAGES =+ "${PN_DSSI} ${PN_LADSPA} ${PN_LV2} ${PN_VST} ${PN_VST3}"
FILES:${PN_DSSI} += "${libdir}/dssi"
FILES:${PN_LADSPA} += "${libdir}/ladspa"
FILES:${PN_LV2} += "${libdir}/lv2"
FILES:${PN_VST} += "${libdir}/vst"
FILES:${PN_VST3} += "${libdir}/vst3"
FILES_${PN}-dssi += "${libdir}/dssi"
FILES_${PN}-ladspa += "${libdir}/ladspa"
FILES_${PN}-lv2 += "${libdir}/lv2"
FILES_${PN}-vst += "${libdir}/vst"

View File

@@ -1,49 +0,0 @@
inherit qemu
DEPENDS:append = " qemu-native coreutils-native"
# This is an extended/modified qemu.bbclass tailored four our needs:
#
# * add qemu-native to DEPENDS: we can do that because there is no
# introspection/interception delayed qemu usage here
# * The executable binary is set by absolute path: oe-core's qemu.bbclass
# expects it in sysroot. Here we usually run binaries in builddir which are
# not yet installed.
# * A recipe can set an extra library path in 'QEMU_EXTRA_LIBDIR'. This path is
# an absolute path.
# * To catch infine qemu runs we create a wrapper adding timeout handling
# and ensuring there is only one qemu instance at a time (we learned in
# meta-microcontroller/vtk that spawning many qemu instances in short time
# can lead to zombie processes)
QEMU_TIMEOUT ?= "180"
def qemu_run_binary_local(data, rootfs_path, binary):
libdir = rootfs_path + data.getVar("libdir")
base_libdir = rootfs_path + data.getVar("base_libdir")
extra_libdir = data.getVar("QEMU_EXTRA_LIBDIR")
if extra_libdir:
cmdline = qemu_wrapper_cmdline(data, rootfs_path, [libdir, base_libdir, extra_libdir]) + binary
else:
cmdline = qemu_wrapper_cmdline(data, rootfs_path, [libdir, base_libdir]) + binary
return cmdline.replace(qemu_target_binary(data), data.getVar("WORKDIR") + '/' + qemu_target_binary(data) + '-timeout')
create_qemu_ext_wrappers() {
# create qemu wrappers:
# * run one instance of qemu at a time
# * add timeout: run infinite is what makes using qemu suck
for qemu in `find ${STAGING_BINDIR_NATIVE} -name qemu-*`; do
qemu_name=`basename $qemu`
if [ "x${@qemu_target_binary(d)}" = "x$qemu_name" ]; then
wrapper_name="$qemu_name-timeout"
echo '#!/bin/sh' > ${WORKDIR}/$wrapper_name
echo 'set -e' >> ${WORKDIR}/$wrapper_name
echo "flock ${WORKDIR}/qemu.lock timeout ${QEMU_TIMEOUT} $qemu_name \$@" >> ${WORKDIR}/$wrapper_name
chmod +x ${WORKDIR}/$wrapper_name
fi
done
}
do_configure[prefuncs] += "create_qemu_ext_wrappers"

22
classes/qemu-ext.bbclass Normal file
View File

@@ -0,0 +1,22 @@
inherit qemu
DEPENDS += "qemu-native"
# This is an extended/modified qemu.bbclass tailored four our needs:
#
# * add qemu-native to DEPENDS: we can do that because there is no
# introspection/interception delayed qemu usage here
# * The executable binary is set by absolute path: oe-core's qemu.bbclass
# expects it in sysroot. Here we usually run binaries in builddir which are
# not yet installed.
# * A recipe can set an extra library path in 'QEMU_EXTRA_LIBDIR'. This path is
# an absolute path.
def qemu_run_binary_local(data, rootfs_path, binary):
libdir = rootfs_path + data.getVar("libdir")
base_libdir = rootfs_path + data.getVar("base_libdir")
extra_libdir = data.getVar("QEMU_EXTRA_LIBDIR")
if extra_libdir:
return qemu_wrapper_cmdline(data, rootfs_path, [libdir, base_libdir, extra_libdir]) + binary
else:
return qemu_wrapper_cmdline(data, rootfs_path, [libdir, base_libdir]) + binary

View File

@@ -5,17 +5,19 @@ DEPENDS += "qttools-native"
# default location
QT_TRANSLATION_FILES ??= "${datadir}/*/translations/*.qm ${datadir}/*/translations/*/*.qm ${datadir}/*/translations/*/*/*.qm"
FILES:${PN}-locale = "${datadir}/*/translations"
FILES_${PN}-locale = "${datadir}/*/translations"
# remove ${datadir}/${BPN} set by bitbake.conf
FILES_${PN}_remove = "${datadir}/${BPN}"
python qt_do_split_locales() {
import glob
import collections
if (d.getVar('PACKAGE_NO_LOCALE') == '1'):
bb.debug(1, "package requested not splitting locales")
return
packages = collections.deque((d.getVar('PACKAGES') or "").split())
packages = (d.getVar('PACKAGES') or "").split()
datadir = d.getVar('datadir')
if not datadir:
@@ -39,7 +41,7 @@ python qt_do_split_locales() {
locales.append(locale)
if not locales:
bb.warn("No locale files for recipe %s. Remove qt5-translation from inherit?" % d.getVar('PN'))
bb.debug(1, "No locale files in this package")
return
summary = d.getVar('SUMMARY') or pn
@@ -49,20 +51,20 @@ python qt_do_split_locales() {
for l in sorted(locales):
ln = legitimize_package_name(l)
pkg = pn + '-locale-' + ln
packages.appendleft(pkg)
packages.append(pkg)
files = ''
for transvar in d.getVar('QT_TRANSLATION_FILES').split():
files = '%s %s' % (files, transvar.replace('*.qm', '*_%s.qm' % l))
d.setVar('FILES:' + pkg, files )
d.setVar('RRECOMMENDS:' + pkg, '%svirtual-locale-%s' % (mlprefix, ln))
d.setVar('RPROVIDES:' + pkg, '%s-locale %s%s-translation' % (pn, mlprefix, ln))
d.setVar('SUMMARY:' + pkg, '%s - %s translations' % (summary, l))
d.setVar('DESCRIPTION:' + pkg, '%s This package contains language translation files for the %s locale.' % (description, l))
d.setVar('FILES_' + pkg, files )
d.setVar('RRECOMMENDS_' + pkg, '%svirtual-locale-%s' % (mlprefix, ln))
d.setVar('RPROVIDES_' + pkg, '%s-locale %s%s-translation' % (pn, mlprefix, ln))
d.setVar('SUMMARY_' + pkg, '%s - %s translations' % (summary, l))
d.setVar('DESCRIPTION_' + pkg, '%s This package contains language translation files for the %s locale.' % (description, l))
if locale_section:
d.setVar('SECTION:' + pkg, locale_section)
d.setVar('SECTION_' + pkg, locale_section)
d.setVar('PACKAGES', ' '.join(list(packages)))
d.setVar('PACKAGES', ' '.join(packages))
}
PACKAGESPLITFUNCS:prepend = "qt_do_split_locales "
PACKAGESPLITFUNCS_prepend = "qt_do_split_locales "

View File

@@ -1,7 +1,7 @@
# avoids build breaks when using no-static-libs.inc
DISABLE_STATIC = ""
EXTRA_OECONF:append = " ${PACKAGECONFIG_CONFARGS}"
EXTRA_OECONF_append = " ${PACKAGECONFIG_CONFARGS}"
python waf_preconfigure() {
import subprocess

View File

@@ -4,23 +4,20 @@ BBPATH .= ":${LAYERDIR}"
# recipes
BBFILES += "${LAYERDIR}/recipes-*/*.bb ${LAYERDIR}/recipes-*/*/*.bb ${LAYERDIR}/recipes-*/*/*/*.bb"
# appends
BBFILES += "${LAYERDIR}/appends/*/*.bbappend"
BBFILES += "${LAYERDIR}/extends-*/*.bb ${LAYERDIR}/extends-*/*.bbappend"
BBFILE_COLLECTIONS += "meta-musicians"
BBFILE_PATTERN_meta-musicians := "^${LAYERDIR}/"
BBFILE_PRIORITY_meta-musicians = "20"
# ffmpeg4-layer: https://github.com/schnitzeltony/meta-ffmpeg4
LAYERDEPENDS_meta-musicians = " \
core \
openembedded-layer \
multimedia-layer \
ffmpeg4-layer \
networking-layer \
xfce-layer \
gnome-layer \
meta-python \
qt5-layer \
"
LAYERSERIES_COMPAT_meta-musicians = "honister kirkstone langdale"
LAYERSERIES_COMPAT_meta-musicians = "thud warrior"

View File

@@ -0,0 +1,31 @@
From f583921012ed1f4e853f41d4fd3d95d1a819ac03 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Sat, 4 Aug 2018 02:48:14 +0200
Subject: [PATCH] Make sure to find python3 sip code generator
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [configuration]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
configure.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.py b/configure.py
index a263efb..daefc0e 100644
--- a/configure.py
+++ b/configure.py
@@ -522,7 +522,7 @@ class TargetConfiguration:
self.qtconf_prefix = ''
self.qt_shared = False
self.qt_version = 0
- self.sip = self._find_exe('sip5', 'sip')
+ self.sip = self._find_exe('sip3')
self.sip_h_version = None
self.sip_inc_dir = self.py_venv_inc_dir
self.static = False
--
2.14.4

View File

@@ -0,0 +1,76 @@
SUMMARY = "Python Qt5 Bindings"
AUTHOR = "Phil Thomson @ riverbank.co.uk"
HOMEPAGE = "http://riverbankcomputing.co.uk"
SECTION = "devel/python"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://LICENSE;md5=d32239bcb673463ab874e80d47fae504"
SRC_URI = "\
https://sourceforge.net/projects/pyqt/files/PyQt5/PyQt-${PV}/PyQt5_gpl-${PV}.tar.gz \
file://0001-Make-sure-to-find-python3-sip-code-generator.patch \
"
SRC_URI[md5sum] = "33d6d2ab8183da17ac18b8132a4b278e"
SRC_URI[sha256sum] = "c190dac598c97b0113ca5e7a37c71c623f02d1d713088addfacac4acfa4b8394"
PE = "1"
inherit qmake5 python3native
DEPENDS += "sip3-native sip3 qtbase python3"
DEPENDS_append_class-target = "qtsvg"
S = "${WORKDIR}/PyQt5_gpl-${PV}"
B = "${S}"
DISABLED_FEATURES = "PyQt_Desktop_OpenGL"
DISABLED_FEATURES_append_arm = " PyQt_qreal_double"
PYQT_MODULES = "QtCore QtGui QtNetwork QtWidgets QtSvg"
PYQT_MODULES_class-native = "QtCore"
PYQT_MODULES_aarch64 = "QtCore QtGui QtNetwork QtWidgets QtSvg"
# full paths
SYSROOTDIR = "${STAGING_DIR_HOST}"
SYSROOTDIR_class-native = "${STAGING_DIR_NATIVE}"
INCLUDEDIR = "${STAGING_INCDIR}"
INCLUDEDIR_class-native = "${STAGING_INCDIR_NATIVE}"
LIBDIR = "${STAGING_LIBDIR}"
LIBDIR_class-native = "${STAGING_LIBDIR_NATIVE}"
PYTHONEXEC="${bindir}/${PYTHON_PN}"
PYTHONEXEC_class-native="${PYTHON}"
do_configure() {
echo "py_platform = linux" > pyqt.cfg
echo "py_inc_dir = ${INCLUDEDIR}/python${PYTHON_BASEVERSION}${PYTHON_ABI}" >> pyqt.cfg
echo "py_pylib_dir = ${LIBDIR}/python${PYTHON_BASEVERSION}" >> pyqt.cfg
echo "py_pylib_lib = python${PYTHON_BASEVERSION}${PYTHON_ABI}" >> pyqt.cfg
echo "pyqt_module_dir = ${D}/${PYTHON_SITEPACKAGES_DIR}" >> pyqt.cfg
echo "pyqt_bin_dir = ${D}/${bindir}" >> pyqt.cfg
echo "pyqt_sip_dir = ${D}/${datadir}/sip/PyQt5" >> pyqt.cfg
echo "pyuic_interpreter = ${PYTHONEXEC}" >> pyqt.cfg
echo "pyqt_disabled_features = ${DISABLED_FEATURES}" >> pyqt.cfg
echo "qt_shared = True" >> pyqt.cfg
QT_VERSION=`${OE_QMAKE_QMAKE} -query QT_VERSION`
echo "[Qt $QT_VERSION]" >> pyqt.cfg
echo "pyqt_modules = ${PYQT_MODULES}" >> pyqt.cfg
echo yes | python3 configure.py --verbose --qmake ${OE_QMAKE_QMAKE} --configuration pyqt.cfg --sysroot ${SYSROOTDIR}
}
do_install() {
oe_runmake install
}
do_install_class-native() {
oe_runmake install
}
RDEPENDS_${PN}_append_class-target = " python3-core python3-sip"
FILES_${PN} += " \
${libdir}/${PYTHON_DIR}/site-packages \
${datadir}/sip/PyQt5 \
"
BBCLASSEXTEND += "native nativesdk"

View File

@@ -0,0 +1,44 @@
SUMMARY = "SIP is a C++/Python Wrapper Generator"
HOMEPAGE = "http://www.riverbankcomputing.co.uk/sip"
SECTION = "devel"
LICENSE = "GPLv2+"
LIC_FILES_CHKSUM = "file://LICENSE-GPL2;md5=e91355d8a6f8bd8f7c699d62863c7303"
inherit python3-dir
DEPENDS = "python3"
SRC_URI = "${SOURCEFORGE_MIRROR}/project/pyqt/sip/sip-${PV}/sip-${PV}.tar.gz"
SRC_URI[md5sum] = "0625fb20347d4ff1b5da551539be0727"
SRC_URI[sha256sum] = "7eaf7a2ea7d4d38a56dd6d2506574464bddf7cf284c960801679942377c297bc"
BPN = "sip"
BBCLASSEXTEND = "native"
PACKAGES += "python3-sip"
do_configure_prepend_class-target() {
echo "py_platform = linux" > sip.cfg
echo "py_inc_dir = %(sysroot)/${includedir}/python${PYTHON_BASEVERSION}${PYTHON_ABI}" >> sip.cfg
echo "sip_bin_dir = ${D}/${bindir}" >> sip.cfg
echo "sip_inc_dir = ${D}/${includedir}" >> sip.cfg
echo "sip_module_dir = ${D}/${libdir}/python${PYTHON_BASEVERSION}/site-packages" >> sip.cfg
echo "sip_sip_dir = ${D}/${datadir}/sip" >> sip.cfg
python3 configure.py --configuration sip.cfg --sysroot ${STAGING_DIR_HOST} CC="${CC}" CXX="${CXX}" LINK="${CXX}" STRIP="" LINK_SHLIB="${CXX}" CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" LFLAGS="${LDFLAGS}"
}
do_configure_prepend_class-native() {
echo "py_platform = linux" > sip.cfg
echo "py_inc_dir = ${includedir}/python${PYTHON_BASEVERSION}${PYTHON_ABI}" >> sip.cfg
echo "sip_bin_dir = ${D}/${bindir}" >> sip.cfg
echo "sip_inc_dir = ${D}/${includedir}" >> sip.cfg
echo "sip_module_dir = ${D}/${libdir}/python${PYTHON_BASEVERSION}/site-packages" >> sip.cfg
echo "sip_sip_dir = ${D}/${datadir}/sip" >> sip.cfg
python3 configure.py --configuration sip.cfg --sysroot ${STAGING_DIR_NATIVE}
}
do_install() {
oe_runmake install
# avoid conflicts with sip for python2
mv ${D}/${bindir}/sip ${D}/${bindir}/sip3
}
FILES_python3-sip = "${libdir}/${PYTHON_DIR}/site-packages/"

View File

@@ -1,28 +0,0 @@
From 7637d0c9c836831eb23af2d72dd8195c65b0aca0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Mon, 9 Dec 2019 19:25:10 +0100
Subject: [PATCH] Fix build for python3-only environments
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Pending
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
waf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/waf b/waf
index 061fb98..3208571 100755
--- a/waf
+++ b/waf
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
# encoding: latin-1
# Thomas Nagy, 2005-2018
#
--
2.21.0

View File

@@ -1,16 +1,16 @@
SUMMARY = "NTK is a fork of FLTK"
SECTION = "libs"
LICENSE = "LGPL-2.0-only & FLTK"
LICENSE = "LGPLv2 & FLTK"
LIC_FILES_CHKSUM = "file://COPYING;md5=f6b26344a24a941a01a5b0826e80b5ca"
SRC_URI = " \
git://github.com/falkTX/ntk.git;branch=master;protocol=https \
git://github.com/original-male/${BPN}.git \
file://0001-wscript-check-compile-instead-of-tun-check-datatype-.patch \
file://0002-Fix-build-for-python3-only-environments.patch \
"
SRCREV = "720d8d33200ebd030df700c6c7a5a9cdf4581c03"
SRCREV = "1e3f5106d404562902bed2983403301db24a3f78"
S = "${WORKDIR}/git"
PV = "1.3.1001"
PV_LAST_RELEASE = "1.3.1000"
PV = "${PV_LAST_RELEASE}"
inherit waf pkgconfig
@@ -26,14 +26,14 @@ WAF_EXTRA_CONF = " \
--libdir=${libdir} \
"
do_install:append() {
do_install_append() {
rm ${D}${libdir}/libntk.a
rm ${D}${libdir}/libntk.a.1
mv ${D}${libdir}/libntk.a.${PV} ${D}${libdir}/libntk.a
mv ${D}${libdir}/libntk.a.${PV_LAST_RELEASE} ${D}${libdir}/libntk.a
rm ${D}${libdir}/libntk_images.a
rm ${D}${libdir}/libntk_images.a.1
mv ${D}${libdir}/libntk_images.a.${PV} ${D}${libdir}/libntk_images.a
mv ${D}${libdir}/libntk_images.a.${PV_LAST_RELEASE} ${D}${libdir}/libntk_images.a
}
BBCLASSEXTEND = "native"

View File

@@ -1,6 +1,6 @@
require gst-plugins.inc
LICENSE = "GPL-2.0-or-later & LGPL-2.0-or-later"
LICENSE = "GPLv2+ & LGPLv2+"
LIC_FILES_CHKSUM = "file://COPYING;md5=0636e73ff0215e8d672dc4c32c317bb3 \
file://common/coverage/coverage-report.pl;beginline=2;endline=17;md5=622921ffad8cb18ab906c56052788a3f \
file://COPYING.LIB;md5=55ca817ccb7d5b5b66355690e9abc605 \
@@ -32,21 +32,14 @@ PACKAGECONFIG[pango] = "--enable-pango,--disable-pango,pango"
PACKAGECONFIG[x11] = "--enable-x --enable-xvideo,--disable-x --disable-xvideo,virtual/libx11 libxv libsm libice"
PACKAGECONFIG[cdparanoia] = "--enable-cdparanoia,--disable-cdparanoia,cdparanoia"
do_configure:prepend() {
do_configure_prepend() {
# This m4 file contains nastiness which conflicts with libtool 2.2.2
rm -f ${S}/m4/lib-link.m4
}
do_configure:append() {
# remove stay \ introduced by make 4.3
if make -v | grep '4\.3'; then
sed -i 's:\\#include:#include:g' `find -name Makefile`
fi
}
FILES_${PN} += "${datadir}/${BPN}"
FILES:${PN} += "${datadir}/${BPN}"
CACHED_CONFIGUREVARS:append:x86 = " ac_cv_header_emmintrin_h=no ac_cv_header_xmmintrin_h=no"
CACHED_CONFIGUREVARS_append_x86 = " ac_cv_header_emmintrin_h=no ac_cv_header_xmmintrin_h=no"
# /usr/bin/gst-visualise-0.10 is a perl script.
RDEPENDS:${PN}-apps += "perl"
RDEPENDS_${PN}-apps += "perl"

View File

@@ -1,56 +0,0 @@
PACKAGESPLITFUNCS:prepend = " split_gstreamer10_packages "
PACKAGESPLITFUNCS:append = " set_metapkg_rdepends "
python split_gstreamer10_packages () {
gst_libdir = d.expand('${libdir}/gstreamer-${LIBV}')
postinst = d.getVar('plugin_postinst')
glibdir = d.getVar('libdir')
do_split_packages(d, glibdir, r'^lib(.*)\.so\.*', 'lib%s', 'gstreamer %s library', extra_depends='', allow_links=True)
do_split_packages(d, gst_libdir, r'libgst(.*)\.so$', d.expand('${PN}-%s'), 'GStreamer plugin for %s', postinst=postinst, extra_depends='')
do_split_packages(d, glibdir+'/girepository-1.0', r'Gst(.*)-1.0\.typelib$', d.expand('${PN}-%s-typelib'), 'GStreamer typelib file for %s', postinst=postinst, extra_depends='')
do_split_packages(d, gst_libdir, r'libgst(.*)\.la$', d.expand('${PN}-%s-dev'), 'GStreamer plugin for %s (development files)', extra_depends='${PN}-dev')
do_split_packages(d, gst_libdir, r'libgst(.*)\.a$', d.expand('${PN}-%s-staticdev'), 'GStreamer plugin for %s (static development files)', extra_depends='${PN}-staticdev')
}
python set_metapkg_rdepends () {
import os
import oe.utils
pn = d.getVar('PN')
metapkg = pn + '-meta'
d.setVar('ALLOW_EMPTY:' + metapkg, "1")
d.setVar('FILES:' + metapkg, "")
blacklist = [ pn, pn + '-meta' ]
metapkg_rdepends = []
pkgdest = d.getVar('PKGDEST')
for pkg in oe.utils.packages_filter_out_system(d):
if pkg not in blacklist and pkg not in metapkg_rdepends:
# See if the package is empty by looking at the contents of its PKGDEST subdirectory.
# If this subdirectory is empty, then the package is.
# Empty packages do not get added to the meta package's RDEPENDS
pkgdir = os.path.join(pkgdest, pkg)
if os.path.exists(pkgdir):
dir_contents = os.listdir(pkgdir) or []
else:
dir_contents = []
is_empty = len(dir_contents) == 0
if not is_empty:
metapkg_rdepends.append(pkg)
d.setVar('RDEPENDS:' + metapkg, ' '.join(metapkg_rdepends))
d.setVar('DESCRIPTION:' + metapkg, pn + ' meta package')
}
# each plugin-dev depends on PN-dev, plugin-staticdev on PN-staticdev
# so we need them even when empty (like in gst-plugins-good case)
ALLOW_EMPTY:${PN} = "1"
ALLOW_EMPTY:${PN}-dev = "1"
ALLOW_EMPTY:${PN}-staticdev = "1"
PACKAGES += "${PN}-apps ${PN}-meta ${PN}-glib"
FILES:${PN} = ""
FILES:${PN}-apps = "${bindir}"
FILES:${PN}-glib = "${datadir}/glib-2.0"
RRECOMMENDS:${PN} += "${PN}-meta"

View File

@@ -14,14 +14,14 @@ EXTRA_OECONF = "--disable-valgrind ${GSTREAMER_DEBUG} --disable-examples"
acpaths = "-I ${S}/common/m4 -I ${S}/m4"
LIBV = "0.10"
require gst-plugins-package.inc
require recipes-multimedia/gstreamer/gst-plugins-package.inc
PACKAGES_DYNAMIC += "^${PN}-.*"
# apply gstreamer hack after Makefile.in.in in source is replaced by our version from
# ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in, but before configure is executed
# http://lists.linuxtogo.org/pipermail/openembedded-core/2012-November/032233.html
oe_runconf:prepend() {
oe_runconf_prepend() {
if [ -e ${S}/po/Makefile.in.in ]; then
sed -i -e "1a\\" -e 'GETTEXT_PACKAGE = @GETTEXT_PACKAGE@' ${S}/po/Makefile.in.in
fi

View File

@@ -53,7 +53,7 @@ gst_registry_binary_fill_feature(GList **list, GstPluginFeature *orig, GstBinary
chk->data = dest;
chk->size = sizeof (GstBinaryPluginFeature);
*list = g_list:append(*list, chk);
*list = g_list_append(*list, chk);
dest->rank = orig->rank;
if (!strncpy(dest->typename, name, GST_BINARY_REGISTRY_TYPENAME_TYPENAME_LEN) ||
@@ -149,7 +149,7 @@ gst_registry_binary_save_plugin(GList **list, GstRegistry *registry, GstPlugin *
chk->data = e;
chk->size = sizeof (GstBinaryPluginElement);
*list = g_list:append(*list, chk);
*list = g_list_append(*list, chk);
if (!strncpy(e->name, plugin->desc.name, GST_BINARY_REGISTRY_NAME_LEN) ||
!strncpy(e->description, plugin->desc.description, GST_BINARY_REGISTRY_DESCRIPTION_LEN) ||
@@ -235,7 +235,7 @@ gst_registry_binary_write_cache(GstRegistry *registry, const char *location)
magic_chunck->data = magic;
magic_chunck->size = sizeof (GstBinaryRegistryMagic);
to_write = g_list:append(to_write, magic_chunck);
to_write = g_list_append(to_write, magic_chunck);
/* Iterate trough the list of plugins in the GstRegistry and adapt them to our structures */
for (walk = g_list_last(registry->plugins); walk; walk = g_list_previous(walk))
@@ -410,7 +410,7 @@ gst_registry_binary_get_binary_plugin(GstRegistry *registry, gchar *in)
return -1;
}
gstfeat->plugin_name = g_strdup(plugin->desc.name);
plugin_features = g_list:prepend(plugin_features, gstfeat);
plugin_features = g_list_prepend(plugin_features, gstfeat);
}
GST_DEBUG("Added plugin \"%s\" to global registry from binary registry", plugin->desc.name);

View File

@@ -5,7 +5,7 @@ HOMEPAGE = "http://gstreamer.freedesktop.org/"
BUGTRACKER = "https://bugzilla.gnome.org/enter_bug.cgi?product=Gstreamer"
SECTION = "multimedia"
LICENSE = "LGPL-2.0-or-later"
LICENSE = "LGPLv2+"
LIC_FILES_CHKSUM = " \
file://COPYING;md5=55ca817ccb7d5b5b66355690e9abc605 \
file://gst/gst.h;beginline=1;endline=21;md5=8e5fe5e87d33a04479fde862e238eaa4 \
@@ -42,8 +42,8 @@ CACHED_CONFIGUREVARS += "ac_cv_header_valgrind_valgrind_h=no"
# apply gstreamer hack after Makefile.in.in in source is replaced by our version from
# ${STAGING_DATADIR_NATIVE}/gettext/po/Makefile.in.in, but before configure is executed
# http://lists.linuxtogo.org/pipermail/openembedded-core/2012-November/032233.html
oe_runconf:prepend() {
oe_runconf_prepend() {
sed -i -e "1a\\" -e 'GETTEXT_PACKAGE = @GETTEXT_PACKAGE@' ${S}/po/Makefile.in.in
}
FILES:${PN} += " ${libdir}/gstreamer-0.10/*.so"
FILES_${PN} += " ${libdir}/gstreamer-0.10/*.so"

View File

@@ -1,6 +1,6 @@
SUMMARY = "Software synth with a classic subtractive synthesizer topology"
HOMEPAGE = "http://amsynth.github.io/"
LICENSE = "GPL-2.0-only"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=67b604758dd265c185ce36fcf76a889d"
inherit autotools pkgconfig gtk-icon-cache gettext pack_audio_plugins
@@ -10,41 +10,42 @@ DEPENDS += " \
intltool-native \
"
SRC_URI = "git://github.com/amsynth/amsynth.git;branch=develop;protocol=https"
SRCREV = "39bd448fd499e0e802aa6a20273d64655bda356a"
PV = "1.12.4"
SRC_URI = "git://github.com/amsynth/amsynth.git;branch=develop"
SRCREV = "71544e4991f494f9871e13a50d6cf9217bb86986"
PV = "1.9.0"
S = "${WORKDIR}/git"
PACKAGECONFIG ??= "alsa jack lv2 nsm"
PACKAGECONFIG ??= "alsa jack sndfile lv2"
PACKAGECONFIG[oss] = "--with-oss,--without-oss"
PACKAGECONFIG[alsa] = "--with-alsa,--without-alsa,alsa-lib"
PACKAGECONFIG[dssi] = "--with-dssi,--without-dssi,dssi liblo"
PACKAGECONFIG[jack] = "--with-jack,--without-jack,jack"
PACKAGECONFIG[sndfile] = "--with-sndfile,--without-sndfile,libsndfile1"
PACKAGECONFIG[lv2] = "--with-lv2,--without-lv2,lv2"
PACKAGECONFIG[nsm] = "--with-nsm,--without-nsm,liblo,new-session-manager"
PACKAGES =+ "${PN}-standalone"
FILES:${PN}-standalone += " \
FILES_${PN}-standalone += " \
${datadir}/appdata/amsynth.appdata.xml \
${datadir}/applications \
${datadir}/icons \
${bindir} \
"
FILES:${PN_DSSI} += " \
FILES_${PN}-dssi += " \
${datadir}/appdata/dssi-amsynth-plugin.metainfo.xml \
"
FILES:${PN_LV2} += " \
FILES_${PN}-lv2 += " \
${datadir}/appdata/lv2-amsynth-plugin.metainfo.xml \
"
FILES:${PN_VST} += " \
FILES_${PN}-vst += " \
${datadir}/appdata/vst-amsynth-plugin.metainfo.xml \
"
RDEPENDS:${PN}-standalone += "${PN}"
RDEPENDS:${PN_DSSI} += "${PN}"
RDEPENDS:${PN_LV2} += "${PN}"
RDEPENDS:${PN_VST} += "${PN}"
RDEPENDS_${PN}-standalone += "${PN}"
RDEPENDS_${PN}-dssi += "${PN}"
RDEPENDS_${PN}-lv2 += "${PN}"
RDEPENDS_${PN}-vst += "${PN}"

View File

@@ -1,6 +1,6 @@
SUMMARY = "Ardour is a multi-channel digital audio workstation"
HOMEPAGE = "http://ardour.org/"
LICENSE = "GPL-2.0-only"
LICENSE = "GPLv2"
LIC_FILES_CHKSUM = "file://COPYING;md5=4641e94ec96f98fabc56ff9cc48be14b"
DEPENDS += " \
@@ -26,29 +26,34 @@ DEPENDS += " \
libltc \
qm-dsp \
fluidsynth \
hidapi \
"
inherit waf features_check gtk-icon-cache pkgconfig python3native mime mime-xdg
inherit wafold distro_features_check gtk-icon-cache pkgconfig
REQUIRED_DISTRO_FEATURES = "x11"
REQUIRED_DISTRO_FEATURE = "x11"
SRC_URI = "git://github.com/Ardour/ardour.git;branch=master;protocol=https"
SRCREV = "945c8f288077565fe3de32c6ac0cb50e286722e4"
PV = "6.9"
SRC_URI = " \
git://github.com/Ardour/ardour.git \
file://0001-remove-all-build-flags-that-cause-trouble-for-cross-.patch \
file://0002-Use-ARM-NEON-intrinsics-if-available-for-mixing-func.patch \
file://0003-Prevent-excessive-meter-redraws-for-inactive-meters-.patch \
file://0004-Prevent-excessive-meter-redraws-for-inactive-meters-.patch \
file://0005-Follow-fluidsynth-s-API-changes-introduced-with-2.0..patch \
file://ardour5.desktop \
"
SRCREV = "ae0dcdc0c5d13483271065c360e378202d20170a"
PV = "5.12"
S = "${WORKDIR}/git"
# arch specific override - default (tested) is ARM -> no fpu-optimizations
# can be something like i686 / x86_64 see file 'wscript' in sourcepath for more details
BUILD_DIST_TARGET ??= "none"
EXTRA_OECONF = " \
--configdir=${sysconfdir} \
--bindir=${bindir} \
--libdir=${libdir} \
--optimize \
--fpu-optimization \
--freedesktop \
--cxx11 \
--no-phone-home \
--use-external-libs \
@@ -58,20 +63,25 @@ EXTRA_OECONF = " \
--dist-target=${BUILD_DIST_TARGET} \
"
PATH:append = ":${B}"
do_install_append() {
# install icons to freedesktop locations
for s in 16 22 32 48 256 512; do
install -d ${D}${datadir}/icons/hicolor/${s}x${s}/apps
ln -s ../../../../${BPN}/resources/Ardour-icon_${s}px.png \
${D}${datadir}/icons/hicolor/${s}x${s}/apps/${BPN}.png
done
# Asking fails - waf supports --bindir / --libdir
waf_preconfigure() {
# install .desktop
install -d ${D}${datadir}/applications
install -m 0644 ${WORKDIR}/ardour5.desktop ${D}${datadir}/applications
}
do_configure:prepend() {
# link python -> python3
ln -sf `which python3` ${B}/python
}
FILES_${PN} += " \
${datadir}/${BPN} \
${libdir}/${BPN} \
"
FILES:${PN}-dev += " \
${datadir}/appdata \
${datadir}/mime \
FILES_${PN}-dev += " \
${libdir}/${BPN}/libardour.so \
${libdir}/${BPN}/libardouralsautil.so \
${libdir}/${BPN}/libaudiographer.so \
@@ -81,15 +91,11 @@ FILES:${PN}-dev += " \
${libdir}/${BPN}/libmidipp.so \
${libdir}/${BPN}/libpbd.so \
${libdir}/${BPN}/libptformat.so \
${libdir}/${BPN}/libtemporal.so \
${libdir}/${BPN}/libwaveview.so \
${libdir}/${BPN}/libwidgets.so \
${libdir}/${BPN}/vamp/*.so \
"
FILES:${PN}-staticdev += " \
FILES_${PN}-staticdev += " \
${libdir}/${BPN}/*.a \
"
PROVIDES = "ardour"
RPROVIDES:${PN} = "ardour"

View File

@@ -0,0 +1,75 @@
From 24b6038dc7c235780038d3fce2d9c83fada6ac8b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Mon, 6 Feb 2017 23:33:45 +0100
Subject: [PATCH] remove all build flags that cause trouble for cross
configure/build
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 <schnitzeltony@googlemail.com>
---
tools/autowaf.py | 1 +
wscript | 26 -
diff --git a/tools/autowaf.py b/tools/autowaf.py
index f82b80a..626e951 100644
--- a/tools/autowaf.py
+++ b/tools/autowaf.py
@@ -93,6 +93,7 @@ def copyfile (task):
def check_header(conf, lang, name, define='', mandatory=True):
"Check for a header"
+ return True
includes = '' # search default system include paths
if sys.platform == "darwin":
includes = '/opt/local/include'
diff --git a/wscript b/wscript
index a7dd5e2..35acc51 100644
--- a/wscript
+++ b/wscript
@@ -440,31 +440,6 @@ int main() { return 0; }''',
compiler_flags.append ("-DARCH_X86")
- if platform == 'linux' :
-
- #
- # determine processor flags via /proc/cpuinfo
- #
-
- if conf.env['build_target'] != 'i386':
-
- flag_line = os.popen ("cat /proc/cpuinfo | grep '^flags'").read()[:-1]
- x86_flags = flag_line.split (": ")[1:][0].split ()
-
- if "mmx" in x86_flags:
- compiler_flags.append ("-mmmx")
- if "sse" in x86_flags:
- build_host_supports_sse = True
- if "3dnow" in x86_flags:
- compiler_flags.append ("-m3dnow")
-
- if cpu == "i586":
- compiler_flags.append ("-march=i586")
- elif cpu == "i686":
- compiler_flags.append ("-march=i686")
-
- if not is_clang and ((conf.env['build_target'] == 'i686') or (conf.env['build_target'] == 'x86_64')) and build_host_supports_sse:
- compiler_flags.extend ([ flags_dict['sse'], flags_dict['fpmath-sse'], flags_dict['xmmintrinsics'] ])
if (conf.env['build_target'] == 'mingw'):
if (re.search ("(x86_64|AMD64)", cpu) != None):
@@ -965,7 +940,6 @@ def configure(conf):
else:
conf.check_cc(function_name='dlopen', header_name='dlfcn.h', lib='dl', uselib_store='DL')
conf.check_cxx(fragment = "#include <boost/version.hpp>\nint main(void) { return (BOOST_VERSION >= 103900 ? 0 : 1); }\n",
- execute = "1",
mandatory = True,
msg = 'Checking for boost library >= 1.39',
okmsg = 'ok',
--
2.9.3

View File

@@ -0,0 +1,229 @@
From 610ce4e19b0b39d0e8391057b22163d4fdc7bdb4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Mon, 3 Jul 2017 23:24:55 +0200
Subject: [PATCH 2/2] Use ARM NEON intrinsics if available for mixing functions
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
libs/ardour/ardour/mix.h | 10 +++
libs/ardour/globals.cc | 13 ++++
libs/ardour/mix.cc | 157 +++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 180 insertions(+)
diff --git a/libs/ardour/ardour/mix.h b/libs/ardour/ardour/mix.h
index 4676c01..55919f0 100644
--- a/libs/ardour/ardour/mix.h
+++ b/libs/ardour/ardour/mix.h
@@ -65,6 +65,16 @@ LIBARDOUR_API void veclib_mix_buffers_no_gain (ARDOUR::Sample * dst, cons
#endif
+#if defined (__ARM_NEON__)
+
+LIBARDOUR_API float neon_compute_peak (const ARDOUR::Sample * buf, ARDOUR::pframes_t nsamples, float current);
+LIBARDOUR_API void neon_find_peaks (const ARDOUR::Sample * buf, ARDOUR::pframes_t nsamples, float *min, float *max);
+LIBARDOUR_API void neon_apply_gain_to_buffer (ARDOUR::Sample * buf, ARDOUR::pframes_t nframes, float gain);
+LIBARDOUR_API void neon_mix_buffers_with_gain (ARDOUR::Sample * dst, const ARDOUR::Sample * src, ARDOUR::pframes_t nframes, float gain);
+LIBARDOUR_API void neon_mix_buffers_no_gain (ARDOUR::Sample * dst, const ARDOUR::Sample * src, ARDOUR::pframes_t nframes);
+
+#endif
+
/* non-optimized functions */
LIBARDOUR_API float default_compute_peak (const ARDOUR::Sample * buf, ARDOUR::pframes_t nsamples, float current);
diff --git a/libs/ardour/globals.cc b/libs/ardour/globals.cc
index 28eb818..d562b35 100644
--- a/libs/ardour/globals.cc
+++ b/libs/ardour/globals.cc
@@ -222,6 +222,19 @@ setup_hardware_optimization (bool try_optimization)
info << "Apple VecLib H/W specific optimizations in use" << endmsg;
}
+#elif defined (__ARM_NEON__)
+ // No runtime detection
+ compute_peak = neon_compute_peak;
+ find_peaks = neon_find_peaks;
+ apply_gain_to_buffer = neon_apply_gain_to_buffer;
+ mix_buffers_with_gain = neon_mix_buffers_with_gain;
+ mix_buffers_no_gain = neon_mix_buffers_no_gain;
+ copy_vector = default_copy_vector;
+
+ generic_mix_functions = false;
+
+ info << "ARM NEON optimizations in use" << endmsg;
+
#endif
/* consider FPU denormal handling to be "h/w optimization" */
diff --git a/libs/ardour/mix.cc b/libs/ardour/mix.cc
index 96ae624..d1a46a2 100644
--- a/libs/ardour/mix.cc
+++ b/libs/ardour/mix.cc
@@ -182,4 +182,161 @@ veclib_mix_buffers_no_gain (ARDOUR::Sample * dst, const ARDOUR::Sample * src, pf
#endif
+#if defined (__ARM_NEON__)
+#include <arm_neon.h>
+
+float
+neon_compute_peak (const ARDOUR::Sample * buf, ARDOUR::pframes_t nsamples, float current)
+{
+ float32x4_t v4current = vdupq_n_f32(current);
+ float32x4_t v4work;
+ float32x2_t v2current;
+
+ // unaligned lead (spread single float to vector)
+ while (((intptr_t)buf) % 16 != 0 && nsamples > 0) {
+ v4work = vdupq_n_f32(*buf);
+ v4current = vmaxq_f32(v4current, vabsq_f32(v4work));
+
+ buf++;
+ nsamples--;
+ }
+ // aligned
+ while (nsamples >= 4) {
+ v4work = vld1q_f32(buf);
+ v4current = vmaxq_f32(v4current, vabsq_f32(v4work));
+
+ buf+=4;
+ nsamples-=4;
+ }
+ // rest < 4 (spread single float to vector)
+ while (nsamples > 0) {
+ v4work = vdupq_n_f32(*buf);
+ v4current = vmaxq_f32(v4current, vabsq_f32(v4work));
+
+ buf++;
+ nsamples--;
+ }
+
+ // calc max in vector by pairwise max done twice
+ v2current = vpmax_f32(vget_low_f32(v4current), vget_high_f32(v4current));
+ v2current = vpmax_f32(v2current, v2current);
+ return vget_lane_f32(v2current, 0);
+}
+
+void
+neon_find_peaks (const ARDOUR::Sample * buf, ARDOUR::pframes_t nsamples, float *min, float *max)
+{
+ float32x4_t v4min = vdupq_n_f32(*min);
+ float32x4_t v4max = vdupq_n_f32(*max);
+ float32x4_t v4work;
+ float32x2_t v2min, v2max;
+
+ // vector
+ while (nsamples >= 4) {
+ v4work = vld1q_f32(buf);
+ v4min = vminq_f32(v4min, v4work);
+ v4max = vmaxq_f32(v4max, v4work);
+
+ buf+=4;
+ nsamples-=4;
+ }
+ // rest < 4 (spread single float to vector)
+ while (nsamples > 0) {
+ v4work = vdupq_n_f32(*buf);
+ v4min = vminq_f32(v4min, v4work);
+ v4max = vmaxq_f32(v4max, v4work);
+
+ buf++;
+ nsamples--;
+ }
+
+ // calc min in vector by pairwise max done twice
+ v2min = vpmin_f32(vget_low_f32(v4min), vget_high_f32(v4min));
+ v2min = vpmax_f32(v2min, v2min);
+ *min = vget_lane_f32(v2min, 0);
+ // calc max in vector by pairwise max done twice
+ v2max = vpmax_f32(vget_low_f32(v4max), vget_high_f32(v4max));
+ v2max = vpmax_f32(v2max, v2max);
+ *max = vget_lane_f32(v2max, 0);
+}
+
+void
+neon_apply_gain_to_buffer (ARDOUR::Sample * buf, ARDOUR::pframes_t nframes, float gain)
+{
+ float32x4_t v4gain = vdupq_n_f32(gain);
+ float32x4_t v4work;
+
+ // vector
+ while (nframes >= 4) {
+ v4work = vld1q_f32(buf);
+ v4work = vmulq_f32(v4work, v4gain);
+ vst1q_f32(buf, v4work);
+
+ buf+=4;
+ nframes-=4;
+ }
+ // rest < 4
+ while (nframes > 0) {
+ *buf *= gain;
+
+ buf++;
+ nframes--;
+ }
+}
+
+void
+neon_mix_buffers_with_gain (ARDOUR::Sample * dst, const ARDOUR::Sample * src, ARDOUR::pframes_t nframes, float gain)
+{
+ float32x4_t v4gain = vdupq_n_f32(gain);
+ float32x4_t v4src, v4dst;
+
+ // vector
+ while (nframes >= 4) {
+ v4src = vld1q_f32(src);
+ v4dst = vld1q_f32(dst);
+ // v4dst = v4dst + v4src * v4gain
+ v4dst = vmlaq_f32(v4dst, v4src, v4gain);
+ vst1q_f32(dst, v4dst);
+
+ src+=4;
+ dst+=4;
+ nframes-=4;
+ }
+ // rest < 4
+ while (nframes > 0) {
+ *dst += *src * gain;
+
+ src++;
+ dst++;
+ nframes--;
+ }
+}
+
+void
+neon_mix_buffers_no_gain (ARDOUR::Sample * dst, const ARDOUR::Sample * src, ARDOUR::pframes_t nframes)
+{
+ float32x4_t v4src, v4dst;
+
+ // vector
+ while (nframes >= 4) {
+ v4src = vld1q_f32(src);
+ v4dst = vld1q_f32(dst);
+ v4dst = vaddq_f32(v4dst, v4src);
+ vst1q_f32(dst, v4dst);
+
+ src+=4;
+ dst+=4;
+ nframes-=4;
+ }
+ // rest < 4
+ while (nframes > 0) {
+ *dst += *src;
+
+ src++;
+ dst++;
+ nframes--;
+ }
+}
+
+#endif
--
2.9.4

View File

@@ -0,0 +1,29 @@
From be826f363522dbca96c8263d404c57c4fe9ff0e2 Mon Sep 17 00:00:00 2001
From: Robin Gareus <robin@gareus.org>
Date: Wed, 3 Oct 2018 20:54:14 +0200
Subject: [PATCH] Prevent excessive meter redraws for inactive meters at zero
Upstream-Status: Backport [1]
[1] https://github.com/Ardour/ardour/commit/be826f363522dbca96c8263d404c57c4fe9ff0e2
---
libs/widgets/fastmeter.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libs/widgets/fastmeter.cc b/libs/widgets/fastmeter.cc
index cf1d9dd07..a9ecf5dad 100644
--- a/libs/widgets/fastmeter.cc
+++ b/libs/widgets/fastmeter.cc
@@ -703,7 +703,7 @@ FastMeter::set (float lvl, float peak)
if (pixwidth <= 0 || pixheight <=0) return;
if (peak == -1) {
- if (lvl >= current_peak) {
+ if (lvl >= current_peak && lvl > 0) {
current_peak = lvl;
hold_state = hold_cnt;
}
--
2.14.4

View File

@@ -0,0 +1,34 @@
From 8d5e7e9f4e4372debb9ce285336ccc1ecc0383f6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Wed, 17 Oct 2018 22:10:41 +0200
Subject: [PATCH] Prevent excessive meter redraws for inactive meters at zero
II
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Same as be826f363522dbca96c8263d404c57c4fe9ff0e2
Upstream-Status: Applied
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
libs/canvas/meter.cc | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/libs/canvas/meter.cc b/libs/canvas/meter.cc
index b539a1b4a..76e31bf58 100644
--- a/libs/canvas/meter.cc
+++ b/libs/canvas/meter.cc
@@ -702,7 +702,7 @@ Meter::set (float lvl, float peak)
if (pixwidth <= 0 || pixheight <=0) return;
if (peak == -1) {
- if (lvl >= current_peak) {
+ if (lvl >= current_peak && lvl > 0) {
current_peak = lvl;
hold_state = hold_cnt;
}
--
2.14.4

View File

@@ -0,0 +1,117 @@
From ae281f2135607e55675d7cc18a9fe1a5b88464ec Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Fri, 12 Oct 2018 00:56:59 +0200
Subject: [PATCH] Follow fluidsynth's API changes introduced with 2.0.0
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Submitted [1]
[1] https://github.com/Ardour/ardour/pull/431
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
libs/ardour/fluid_synth.cc | 14 ++++++++++++++
libs/plugins/a-fluidsynth.lv2/a-fluidsynth.cc | 27 ++++++++++++++++++++++++++-
2 files changed, 40 insertions(+), 1 deletion(-)
diff --git a/libs/ardour/fluid_synth.cc b/libs/ardour/fluid_synth.cc
index 45653a9e7..c9b7b526e 100644
--- a/libs/ardour/fluid_synth.cc
+++ b/libs/ardour/fluid_synth.cc
@@ -71,6 +71,7 @@ FluidSynth::load_sf2 (const std::string& fn)
}
size_t count;
+#if FLUIDSYNTH_VERSION_MAJOR < 2
fluid_preset_t preset;
sfont->iteration_start (sfont);
@@ -83,7 +84,20 @@ FluidSynth::load_sf2 (const std::string& fn)
preset.get_banknum (&preset),
preset.get_num (&preset)));
}
+#else
+ fluid_preset_t* preset;
+ fluid_sfont_iteration_start (sfont);
+ for (count = 0; (preset = fluid_sfont_iteration_next (sfont)) != 0; ++count) {
+ if (count < 16) {
+ fluid_synth_program_select (_synth, count, _synth_id, fluid_preset_get_banknum (preset), fluid_preset_get_num (preset));
+ }
+ _presets.push_back (BankProgram (
+ fluid_preset_get_name (preset),
+ fluid_preset_get_banknum (preset),
+ fluid_preset_get_num (preset)));
+ }
+#endif
if (count == 0) {
return false;
}
diff --git a/libs/plugins/a-fluidsynth.lv2/a-fluidsynth.cc b/libs/plugins/a-fluidsynth.lv2/a-fluidsynth.cc
index e6cf1e29d..6d168d5fe 100644
--- a/libs/plugins/a-fluidsynth.lv2/a-fluidsynth.cc
+++ b/libs/plugins/a-fluidsynth.lv2/a-fluidsynth.cc
@@ -184,6 +184,7 @@ load_sf2 (AFluidSynth* self, const char* fn)
}
int chn;
+#if FLUIDSYNTH_VERSION_MAJOR < 2
fluid_preset_t preset;
sfont->iteration_start (sfont);
pthread_mutex_lock (&self->bp_lock);
@@ -192,15 +193,33 @@ load_sf2 (AFluidSynth* self, const char* fn)
fluid_synth_program_select (self->synth, chn, synth_id,
preset.get_banknum (&preset), preset.get_num (&preset));
}
+#else
+ fluid_preset_t *preset;
+ fluid_sfont_iteration_start (sfont);
+ pthread_mutex_lock (&self->bp_lock);
+ for (chn = 0; (preset = fluid_sfont_iteration_next (sfont)); ++chn) {
+ if (chn < 16) {
+ fluid_synth_program_select (self->synth, chn, synth_id,
+ fluid_preset_get_banknum (preset), fluid_preset_get_num (preset));
+ }
+#endif // FLUIDSYNTH_VERSION_MAJOR < 2
#ifndef LV2_EXTENDED
else { break ; }
#else
+#if FLUIDSYNTH_VERSION_MAJOR < 2
self->presets[preset.get_banknum (&preset)].push_back (
BankProgram (
preset.get_name (&preset),
preset.get_banknum (&preset),
preset.get_num (&preset)));
-#endif
+#else
+ self->presets[fluid_preset_get_banknum (preset)].push_back (
+ BankProgram (
+ fluid_preset_get_name (preset),
+ fluid_preset_get_banknum (preset),
+ fluid_preset_get_num (preset)));
+#endif // FLUIDSYNTH_VERSION_MAJOR < 2
+#endif // LV2_EXTENDED
}
pthread_mutex_unlock (&self->bp_lock);
@@ -681,9 +700,15 @@ work_response (LV2_Handle instance,
}
for (int chn = 0; chn < 16; ++chn) {
+#if FLUIDSYNTH_VERSION_MAJOR < 2
unsigned int sfid = 0;
unsigned int bank = 0;
unsigned int program = -1;
+#else
+ int sfid = 0;
+ int bank = 0;
+ int program = -1;
+#endif
if (FLUID_OK == fluid_synth_get_program (self->synth, chn, &sfid, &bank, &program)) {
self->program_state[chn].bank = bank;
self->program_state[chn].program = program;
--
2.14.4

View File

@@ -0,0 +1,10 @@
[Desktop Entry]
Name=Ardour
Comment=Record, mix and master audio
Exec=ardour5
Icon=ardour5
Terminal=false
MimeType=application/x-ardour;
Type=Application
Categories=AudioVideo;Audio;X-Recorders;X-Multitrack;X-Jack;X-AudioEditing;
GenericName=Digital Audio Workstation

View File

@@ -1,28 +0,0 @@
From 7637d0c9c836831eb23af2d72dd8195c65b0aca0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Mon, 9 Dec 2019 20:25:10 +0100
Subject: [PATCH] Fix build for python3-only environments
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Pending
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
waf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/waf b/waf
index 061fb98..3208571 100755
--- a/waf
+++ b/waf
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
# encoding: latin-1
# Thomas Nagy, 2005-2018
#
--
2.21.0

View File

@@ -1,27 +0,0 @@
From 8a05420e5dd8c7b8b2447f82dc919765876511b3 Mon Sep 17 00:00:00 2001
From: Paul Brossier <piem@piem.org>
Date: Tue, 25 Jan 2022 18:30:27 +0100
Subject: [PATCH] [source_avcodec] define FF_API_LAVF_AVCTX for libavcodec >
59, thx @berolinux (closes gh-353)
Upstream-Status: Accepted[https://github.com/aubio/aubio/commit/8a05420e5dd8c7b8b2447f82dc919765876511b3]
---
src/io/source_avcodec.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/src/io/source_avcodec.c b/src/io/source_avcodec.c
index e0ae93b5..1421bd9a 100644
--- a/src/io/source_avcodec.c
+++ b/src/io/source_avcodec.c
@@ -68,6 +68,10 @@
#define AUBIO_AVCODEC_MAX_BUFFER_SIZE AV_INPUT_BUFFER_MIN_SIZE
#endif
+#if LIBAVCODEC_VERSION_MAJOR >= 59
+#define FF_API_LAVF_AVCTX 1
+#endif
+
struct _aubio_source_avcodec_t {
uint_t hop_size;
uint_t samplerate;

View File

@@ -1,6 +1,6 @@
SUMMARY = "aubio is designed for the extraction of annotations from audio signals"
HOMEPAGE = "https://aubio.org/"
LICENSE = "GPL-3.0-only"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
inherit waf pkgconfig
@@ -16,9 +16,8 @@ DEPENDS += " \
SRC_URI = " \
https://aubio.org/pub/${BPN}-${PV}.tar.bz2 \
file://0001-do-not-build-tests.patch \
file://0002-Fix-build-for-python3-only-environments.patch \
file://0003-define_FF_API_LAVF_AVCTX_for_libavcodec_59.patch \
"
SRC_URI[md5sum] = "50c9c63b15a2692378af5d602892f16a"
SRC_URI[sha256sum] = "d48282ae4dab83b3dc94c16cf011bcb63835c1c02b515490e1883049c3d1f3da"
EXTRA_OECONF = " \

View File

@@ -1,53 +0,0 @@
SUMMARY = "Audacity is an easy-to-use, multi-track audio editor and recorder"
HOMEPAGE = "https://www.audacityteam.org/"
LICENSE = "GPL-2.0-only & CC-BY-3.0"
LIC_FILES_CHKSUM = "file://LICENSE.txt;md5=549b88b1c547acbec8f9e262f30b573e"
PV = "2.4.2"
SRC_URI = " \
git://github.com/audacity/audacity.git;branch=master;protocol=https \
file://0001-Do-not-ask-git-for-version-information-it-breaks-bui.patch \
file://0002-Build-with-ffmpeg4.patch \
"
SRCREV ="16d52f63a4183bba77ef7305d14622958dc0d1d5"
S = "${WORKDIR}/git"
DEPENDS = " \
wxwidgets \
lame \
soxr \
portaudio-v19 \
portmidi \
alsa-lib \
jack \
libid3tag \
ffmpeg4 \
libmad \
vamp-plugin-sdk \
libogg \
libvorbis \
flac \
lv2 \
lilv \
serd \
sord \
sratom \
suil \
soundtouch \
"
inherit cmake pkgconfig python3native gettext gtk-icon-cache mime mime-xdg
do_configure:append() {
# do set version
# see 0001-Do-not-ask-git-for-version-information-it-breaks-bui.patch
# and ${S}/cmake-proxies/cmake-modules/Version.cmake. Think it erros out
# because it assumes execution in source dir
cd ${S}
git show -s "--format=#define REV_LONG \"%H\"%n#define REV_TIME \"%cd\"%n" >> ${B}/src/private/RevisionIdent.h
}
FILES:${PN} += " \
${datadir}/appdata \
${datadir}/mime \
"

View File

@@ -1,33 +0,0 @@
From f14857a1889201583b1ba4a054537e8a48277079 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Sat, 19 Dec 2020 19:39:45 +0100
Subject: [PATCH] Do not ask git for version information - it breaks build
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
We sit on a tagged version anyway
Upstream-Status: Inapproprate [OE-specific]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
CMakeLists.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4ff543049..3b0116fa9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -125,7 +125,7 @@ endif()
set( GIT_COMMIT_SHORT "unknown" )
set( GIT_COMMIT_LONG "unknown" )
set( GIT_COMMIT_TIME "unknown" )
-find_package( Git QUIET )
+#find_package( Git QUIET )
if( GIT_FOUND )
execute_process(
COMMAND
--
2.26.2

View File

@@ -1,47 +0,0 @@
From 7b62fe6f493f0110ccdea23c9cf7ea493d152f0c Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Thu, 17 Mar 2022 21:50:27 +0100
Subject: [PATCH] Build with ffmpeg4
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
cmake-proxies/CMakeLists.txt | 2 +-
cmake-proxies/ffmpeg/CMakeLists.txt | 6 +++---
2 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/cmake-proxies/CMakeLists.txt b/cmake-proxies/CMakeLists.txt
index 9ca7286ac..62e515491 100644
--- a/cmake-proxies/CMakeLists.txt
+++ b/cmake-proxies/CMakeLists.txt
@@ -137,7 +137,7 @@ addlib( portaudio-v19 portaudio PORTAUDIO YES YES "" )
# Optional libraries
#
# directory option symbol req chk version
-addlib( ffmpeg ffmpeg FFMPEG NO NO "libavcodec >= 51.53" "libavformat >= 52.12" "libavutil >= 52.66" )
+addlib( ffmpeg ffmpeg FFMPEG NO NO "libavcodec4 >= 51.53" "libavformat4 >= 52.12" "libavutil4 >= 52.66" )
addlib( libid3tag id3tag LIBID3TAG NO YES "id3tag >= 0.15.1b" )
addlib( libmad mad LIBMAD NO YES "mad >= 0.15.1b" )
addlib( libnyquist nyquist NYQUIST NO YES "" )
diff --git a/cmake-proxies/ffmpeg/CMakeLists.txt b/cmake-proxies/ffmpeg/CMakeLists.txt
index 98f12c86d..f5ed33f33 100644
--- a/cmake-proxies/ffmpeg/CMakeLists.txt
+++ b/cmake-proxies/ffmpeg/CMakeLists.txt
@@ -2,9 +2,9 @@
# Add our target and all of it's aliases
add_library( ${TARGET} INTERFACE )
add_library( ${symbol} ALIAS ${TARGET} )
-add_library( libavcodec ALIAS ${TARGET} )
-add_library( libavformat ALIAS ${TARGET} )
-add_library( libavutil ALIAS ${TARGET} )
+add_library( libavcodec4 ALIAS ${TARGET} )
+add_library( libavformat4 ALIAS ${TARGET} )
+add_library( libavutil4 ALIAS ${TARGET} )
# Pull in standard variables
def_vars()
--
2.34.1

View File

@@ -10,4 +10,4 @@ do_install() {
}
RDEPENDS:${PN} = "pam-plugin-limits"
RDEPENDS_${PN} = "pam-plugin-limits"

View File

@@ -1,9 +1,9 @@
SUMMARY = "Emulator for vintage synthesisers, electric pianos and organs"
HOMEPAGE = "https://sourceforge.net/projects/bristol/"
LICENSE = "GPL-3.0-only"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=d32239bcb673463ab874e80d47fae504"
inherit autotools pkgconfig features_check
inherit autotools pkgconfig distro_features_check
REQUIRED_DISTRO_FEATURES = "x11"
@@ -29,10 +29,7 @@ EXTRA_OECONF = " \
--enable-jack-default-audio \
"
# The fix necessary is huge and requires background knowledge
CFLAGS += "-fcommon"
do_install:append() {
do_install_append() {
# the tar magic makes files owned by build user
chown -R root:root ${D}${datadir}
# align data paths

View File

@@ -0,0 +1,39 @@
From 021850be25992b8a090182a05ad62660414c964f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Sat, 19 Jan 2019 21:48:29 +0100
Subject: [PATCH 1/2] Fix detection of LV2 for latest git
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
LV2 removed lv2-core.pc in [1]. So find lv2 and set required version to 1.1.4
which was released in September 2016 and should be avalaible on most
environments. This should be compatible to LV2 1.1.14 because from pkg-config
point of view lv2-core.pc and lv2.pc look similar.
Upstream-Status: Submitted [2]
[1] https://github.com/drobilla/lv2/commit/4db67120efca2d4c200d2e1ba5cf3d7b97cab97e
[2] https://github.com/calf-studio-gear/calf/pull/213
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
configure.ac | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
index b9c3d500..a0368773 100644
--- a/configure.ac
+++ b/configure.ac
@@ -79,7 +79,7 @@ if test "$JACK_FOUND" = "yes"; then
PKG_CHECK_MODULES(JACK_RENAME_PORT, jack >= 1.9.11, JACK_HAS_RENAME="yes", JACK_HAS_RENAME_DUMMY="no")
fi
-PKG_CHECK_MODULES(LV2_DEPS, lv2core >= 6, LV2_FOUND="yes", LV2_FOUND="no")
+PKG_CHECK_MODULES(LV2_DEPS, lv2 >= 1.1.14, LV2_FOUND="yes", LV2_FOUND="no")
PKG_CHECK_MODULES(LASH_DEPS, lash-1.0 >= 0.6.0,
AC_CHECK_LIB([lash], [lash_client_is_being_restored], LASH_0_6_FOUND="yes", LASH_0_6_FOUND="no"),
--
2.20.1

View File

@@ -0,0 +1,75 @@
From 855cf20b9bb9fec30b72fa05a9b4cd28a1b4d35d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Sat, 19 Jan 2019 23:00:49 +0100
Subject: [PATCH 2/2] Find headers for all versions of LV2
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Submitted [1]
[1] https://github.com/calf-studio-gear/calf/pull/213
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
src/calf/lv2_options.h | 2 +-
src/calf/lv2_ui.h | 2 +-
src/calf/lv2wrap.h | 2 +-
src/makerdf.cpp | 2 +-
4 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/src/calf/lv2_options.h b/src/calf/lv2_options.h
index 29568b8d..d66153da 100644
--- a/src/calf/lv2_options.h
+++ b/src/calf/lv2_options.h
@@ -20,7 +20,7 @@
#include <stdint.h>
#include "lv2_urid.h"
-#include "lv2.h"
+#include "lv2/lv2plug.in/ns/lv2core/lv2.h"
#define LV2_OPTIONS_URI "http://lv2plug.in/ns/ext/options"
#define LV2_OPTIONS_PREFIX LV2_OPTIONS_URI "#"
diff --git a/src/calf/lv2_ui.h b/src/calf/lv2_ui.h
index b802ec59..c3e60822 100644
--- a/src/calf/lv2_ui.h
+++ b/src/calf/lv2_ui.h
@@ -27,7 +27,7 @@
#include <stdint.h>
-#include "lv2.h"
+#include "lv2/lv2plug.in/ns/lv2core/lv2.h"
#define LV2_UI_URI "http://lv2plug.in/ns/extensions/ui"
#define LV2_UI_PREFIX LV2_UI_URI "#"
diff --git a/src/calf/lv2wrap.h b/src/calf/lv2wrap.h
index 8d6b13c4..d19eae7b 100644
--- a/src/calf/lv2wrap.h
+++ b/src/calf/lv2wrap.h
@@ -25,7 +25,7 @@
#include <string>
#include <vector>
-#include <lv2.h>
+#include "lv2/lv2plug.in/ns/lv2core/lv2.h"
#include <calf/giface.h>
#include <calf/lv2_atom.h>
#include <calf/lv2_atom_util.h>
diff --git a/src/makerdf.cpp b/src/makerdf.cpp
index 0b6cec5c..9f782534 100644
--- a/src/makerdf.cpp
+++ b/src/makerdf.cpp
@@ -22,7 +22,7 @@
#include <calf/preset.h>
#include <calf/utils.h>
#if USE_LV2
-#include <lv2.h>
+#include "lv2/lv2plug.in/ns/lv2core/lv2.h"
#include <calf/lv2_atom.h>
#include <calf/lv2_options.h>
#include <calf/lv2_state.h>
--
2.20.1

View File

@@ -1,21 +1,23 @@
SUMMARY = "High quality open source audio plugins for musicians"
HOMEPAGE = "http://calf-studio-gear.org/"
LICENSE = "GPL-2.0-only & LGPL-2.1-only"
LICENSE = "GPLv2 & LGPLv2.1"
LIC_FILES_CHKSUM = " \
file://COPYING;md5=dcf3c825659e82539645da41a7908589 \
file://COPYING.GPL;md5=94d55d512a9ba36caa9b7df079bae19f \
"
SRC_URI = " \
git://github.com/calf-studio-gear/calf.git;branch=master;protocol=https \
git://github.com/calf-studio-gear/calf.git \
file://0001-Do-store-calfmakerdf-commandline-for-later-use-in-qe.patch \
file://0002-fluidsynth-Activate-synth.dynamic-sample-loading-for.patch \
file://0003-Fix-detection-of-LV2-for-latest-git.patch \
file://0004-Find-headers-for-all-versions-of-LV2.patch \
"
SRCREV = "41a2b7fb029cf0099fc05b7a9c569208034018de"
SRCREV = "e5c08dc2483c444d18d24a37c395274002320f5c"
S = "${WORKDIR}/git"
PV = "0.90.3"
PV = "0.90.1"
inherit autotools-brokensep pkgconfig gtk-icon-cache bash-completion qemu-ext-musicians
inherit autotools-brokensep pkgconfig gtk-icon-cache bash-completion qemu-ext
DEPENDS += " \
gtk+ \
@@ -31,19 +33,19 @@ EXTRA_OECONF += " \
--enable-experimental \
"
do_configure:prepend() {
do_configure_prepend() {
sed -i 's:%QEMUCOMMAND%:${WORKDIR}/QemuCommands:g' `find ${S} -name Makefile.am`
}
QEMU_EXTRA_LIBDIR = "${D}${libdir}/calf"
do_install:prepend() {
do_install_prepend() {
# These are installed by calfmakerdf but that's moved to end of installation
install -d ${D}${libdir}/lv2
install -d ${D}${datadir}/calf
}
do_install:append() {
do_install_append() {
# build ttl-files must be done in quemu (lv2-ttl-generator-data loads
# so-files and calls functions to create ttl-files)
cat ${WORKDIR}/QemuCommands | while read calfmakerdf_param; do
@@ -58,5 +60,5 @@ do_install:append() {
}
FILES:${PN} += "${libdir}/lv2"
INSANE_SKIP:${PN} = "dev-so"
FILES_${PN} += "${libdir}/lv2"
INSANE_SKIP_${PN} = "dev-so"

View File

@@ -1,5 +1,5 @@
From 88c61efce068b4cfe6d4c175bd9d1b85def23708 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Sat, 15 Jul 2017 00:03:36 +0200
Subject: [PATCH] do not try to cross-run carla-lv2-export
MIME-Version: 1.0
@@ -8,27 +8,24 @@ Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [cross specific]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
source/plugin/Makefile | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
source/plugin/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/source/plugin/Makefile b/source/plugin/Makefile
index 389dd77ee..251ecc18c 100644
index 59b5c5d..3bcb368 100644
--- a/source/plugin/Makefile
+++ b/source/plugin/Makefile
@@ -528,9 +528,7 @@ $(BINDIR)/carla.lv2/manifest.ttl: $(OBJDIR)/carla-lv2-export.cpp.o $(BINDIR)/car
@echo "Linking carla-lv2-export$(APP_EXT)"
$(SILENT)$(CXX) $< $(LIBS_START) $(LIBS) $(LIBS_juce) $(LIBS_END) $(NATIVE_LINK_FLAGS) -o $(BINDIR)/carla-lv2-export$(APP_EXT)
@@ -206,7 +206,7 @@ $(BINDIR)/carla.lv2/manifest.ttl: $(OBJDIR)/carla-lv2-export.cpp.o $(LIBS)
ifeq ($(BUILDING_FOR_WINDOWS),true)
@cd $(BINDIR) && wine ./carla-lv2-export$(APP_EXT)
else
- @cd $(BINDIR) && ./carla-lv2-export$(APP_EXT)
+ @cd $(BINDIR)
endif
@cd $(BINDIR)/carla.lv2 && ln -sf ../*bridge-* ../carla-discovery-* .
- @echo "Generating LV2 ttl data"
- $(SILENT)cd $(BINDIR) && $(EXE_WRAPPER) ./carla-lv2-export$(APP_EXT)
- $(SILENT)cd $(BINDIR)/carla.lv2 && ln -sf ../*bridge-* ../carla-discovery-* .
+ @echo "LV2 ttl data creation is postponed"
$(BINDIR)/carla-lv2-export$(APP_EXT): $(OBJDIR)/carla-lv2-export.cpp.o
-@mkdir -p $(BINDIR)
--
2.34.3
2.9.4

View File

@@ -0,0 +1,30 @@
From 079d1a1b34394b76d23ce7d92254cb785333d3e7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Thu, 20 Sep 2018 22:44:48 +0200
Subject: [PATCH] Do not try to find Qt5 host bins - it won't work
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 <schnitzeltony@gmail.com>
---
source/Makefile.mk | 1 -
1 file changed, 1 deletion(-)
diff --git a/source/Makefile.mk b/source/Makefile.mk
index 688dca20..07afc7a2 100644
--- a/source/Makefile.mk
+++ b/source/Makefile.mk
@@ -253,7 +253,6 @@ endif
endif
ifeq ($(HAVE_QT5),true)
-QT5_HOSTBINS = $(shell pkg-config --variable=host_bins Qt5Core)
MOC_QT5 ?= $(QT5_HOSTBINS)/moc
RCC_QT5 ?= $(QT5_HOSTBINS)/rcc
UIC_QT5 ?= $(QT5_HOSTBINS)/uic
--
2.14.4

View File

@@ -1,22 +1,23 @@
SUMMARY = "Audio plugin host"
HOMEPAGE = "http://kxstudio.linuxaudio.org/Applications:Carla"
LICENSE = "GPL-2.0-only & LGPL-3.0-only"
LICENSE = "GPLv2 & LGPLv3"
LIC_FILES_CHKSUM = " \
file://doc/GPL.txt;md5=4641e94ec96f98fabc56ff9cc48be14b \
file://doc/LGPL.txt;md5=e6a600fd5e1d9cbde2d983680233ad02 \
"
SRC_URI = " \
git://github.com/falkTX/Carla.git;branch=main;protocol=https \
git://github.com/falkTX/Carla.git;branch=develop \
file://0001-do-not-try-to-cross-run-carla-lv2-export.patch \
file://0002-Do-not-try-to-find-Qt5-host-bins-it-won-t-work.patch \
"
SRCREV = "6bc9a90ebb1767649d2538108ed4a604ce96dacb"
SRCREV = "8385b5ee418357e2dc907518ac39c20beb3b28ed"
S = "${WORKDIR}/git"
PV = "2.5.0"
PV = "2.0.0+git${SRCPV}"
REQUIRED_DISTRO_FEATURES = "x11"
inherit qmake5_base python3native pkgconfig qemu-ext-musicians features_check mime mime-xdg gtk-icon-cache
inherit qmake5_base pkgconfig qemu-ext distro_features_check mime gtk-icon-cache
B = "${S}"
@@ -47,18 +48,16 @@ do_configure() {
oe_runmake features
}
do_compile:append() {
do_compile_append() {
cd ${S}/bin
${@qemu_run_binary_local(d, '${STAGING_DIR_TARGET}', 'carla-lv2-export')}
cd ${S}/bin/carla.lv2 && ln -sf ../*bridge-* ../carla-discovery-* .
}
do_install() {
oe_runmake DESTDIR=${D} PREFIX=${prefix} LIBDIR=${libdir} install
}
FILES:${PN} += " \
${datadir}/appdata \
FILES_${PN} += " \
${datadir}/icons \
${datadir}/mime \
${libdir}/jack \
@@ -66,6 +65,6 @@ FILES:${PN} += " \
${libdir}/vst \
"
INSANE_SKIP:${PN} = "dev-so"
INSANE_SKIP_${PN} = "dev-so"
RDEPENDS:${PN} += "python3-pyqt5 bash"
RDEPENDS_${PN} += "python3-pyqt5 bash"

View File

@@ -1,6 +1,6 @@
SUMMARY = "Chromaprint is library that extracts fingerprints from audio sources"
HOMEPAGE = "https://acoustid.org/chromaprint"
LICENSE = "MIT & LGPL-2.1-only"
LICENSE = "MIT & LGPLv2.1"
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=5d50f7a9fde1110fa1756b0f5faa26f2"
inherit cmake
@@ -10,9 +10,10 @@ DEPENDS += " \
ffmpeg \
"
SRC_URI = "git://github.com/acoustid/chromaprint.git;branch=master;protocol=https"
SRCREV = "516e3b31c7fa6e822035ea3b3e31f9c7f51ef4b6"
PV = "1.5.0"
SRC_URI = "git://github.com/acoustid/chromaprint.git"
SRCREV = "ecd2edd73315530d4f9c1b1186aee24c63a7b6c2"
PV = "1.4.3"
S = "${WORKDIR}/git"
EXTRA_OECMAKE += " \

View File

@@ -1,68 +0,0 @@
From d707f174bb67b5b1d8a4ab00b024990a07dc5e37 Mon Sep 17 00:00:00 2001
From: Peter Robinson <pbrobinson@gmail.com>
Date: Thu, 1 Feb 2018 09:29:23 +0000
Subject: [PATCH 3/4] use standard plugins path
Stolen from [1]
[1] https://src.fedoraproject.org/rpms/csound/tree/master
Upstream-Status: Pending
---
CMakeLists.txt | 8 +-------
Top/csmodule.c | 4 ++--
installer/misc/mkpackage.py | 2 +-
3 files changed, 4 insertions(+), 10 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 2c1db25d5..ee88ca66f 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -198,13 +198,7 @@
endif()
message(STATUS "LIBRARY INSTALL DIR: ${LIBRARY_INSTALL_DIR}")
-if(USE_DOUBLE)
- message(STATUS "Building with 64-bit floats")
- set(PLUGIN_INSTALL_DIR "${LIBRARY_INSTALL_DIR}/csound/plugins64-${APIVERSION}")
-else()
- message(STATUS "Building with 32-bit floats")
- set(PLUGIN_INSTALL_DIR "${LIBRARY_INSTALL_DIR}/csound/plugins-${APIVERSION}")
-endif()
+set(PLUGIN_INSTALL_DIR "${LIBRARY_INSTALL_DIR}/csound/plugins-${APIVERSION}")
execute_process (
COMMAND python -c
diff --git a/Top/csmodule.c b/Top/csmodule.c
index 21381b9f0..0a16616b1 100644
--- a/Top/csmodule.c
+++ b/Top/csmodule.c
@@ -159,9 +159,9 @@ static const char *plugindir64_envvar = "OPCODE6DIR64";
# define ENABLE_OPCODEDIR_WARNINGS 0
# ifndef CS_DEFAULT_PLUGINDIR
# ifndef USE_DOUBLE
-# define CS_DEFAULT_PLUGINDIR "/usr/local/lib/csound/plugins"
+# define CS_DEFAULT_PLUGINDIR "/usr/lib/csound/plugins"
# else
-# define CS_DEFAULT_PLUGINDIR "/usr/local/lib/csound/plugins64"
+# define CS_DEFAULT_PLUGINDIR "/usr/lib64/csound/plugins"
# endif
# endif
#endif
diff --git a/installer/misc/mkpackage.py b/installer/misc/mkpackage.py
index 801311b18..fe3d86077 100755
--- a/installer/misc/mkpackage.py
+++ b/installer/misc/mkpackage.py
@@ -27,7 +27,7 @@ libDir2 = libDir + '/csound/lib'
# single precision plugin libraries
pluginDir32 = libDir + '/csound/plugins'
# double precision plugin libraries
-pluginDir64 = libDir + '/csound/plugins64'
+pluginDir64 = libDir + '/csound/plugins'
# documentation
docDir = instPrefix + '/share/doc/csound'
# tclcsound.so
--
2.21.0

View File

@@ -1,15 +1,15 @@
SUMMARY = "A sound and music computing system"
LICENSE = "LGPL-2.1-only"
LICENSE = "LGPLv2.1"
LIC_FILES_CHKSUM = "file://COPYING;md5=a6f89e2100d9b6cdffcea4f398e37343"
inherit cmake gettext python3native
inherit cmake gettext python-dir
# TBD: fltk is not propely detected
DEPENDS += " \
flex-native \
bison-native \
swig-native \
python3 \
python \
alsa-lib \
libsndfile1 \
portaudio-v19 \
@@ -25,21 +25,20 @@ DEPENDS += " \
"
SRC_URI = " \
git://github.com/csound/csound.git;branch=develop;protocol=https \
git://github.com/csound/csound.git \
file://0001-Do-not-set-include-path-to-usr-local-include.patch \
file://0002-use-standard-plugins-path.patch \
file://0002-Do-not-use-try_run-for-portaudio.patch \
"
SRCREV = "18c2c7897425f462b9a7743cee157cb410c88198"
SRCREV = "297845a370b8b5e1b555a60a0be3c5c757599530"
S = "${WORKDIR}/git"
PV = "6.15.0"
PV = "6.13.0"
# Where to get lua-version from?
LUA_VERSION = "5.3"
EXTRA_OECMAKE += " \
-DUSE_DOUBLE=OFF \
-DPYTHON_MODULE_INSTALL_DIR:STRING=${PYTHON_SITEPACKAGES_DIR} \
-DPYTHON3_MODULE_INSTALL_DIR:STRING=${PYTHON_SITEPACKAGES_DIR} \
-DPYTHON_MODULE_INSTALL_DIR=${PYTHON_SITEPACKAGES_DIR} \
-DUSE_LIB64=${@bb.utils.contains("baselib", "lib64", "ON", "OFF",d)} \
"
@@ -48,15 +47,11 @@ PACKAGECONFIG[pulseaudio] = "-DUSE_PULSEAUDIO=ON,-DUSE_PULSEAUDIO=OFF,pulseaudio
PACKAGECONFIG[luajit] = "-DLUA_MODULE_INSTALL_DIR=${libdir}/lua/${LUA_VERSION},,luajit"
PACKAGES =+ " \
${PN}-python \
${PN}-python2 \
${PN}-luajit \
${PN}-samples \
"
FILES:${PN}-python = "${PYTHON_SITEPACKAGES_DIR}"
RDEPENDS:${PN}-python += "python3-core"
FILES:${PN}-luajit = "${libdir}/lua"
FILES:${PN}-samples = "${datadir}/samples"
FILES_${PN}-python2 = "${PYTHON_SITEPACKAGES_DIR}"
RDEPENDS_${PN}-python2 += "python"
FILES_${PN}-luajit = "${libdir}/lua"

View File

@@ -1,6 +1,6 @@
From 1ae6204460552d524398765ca3931f73c7647472 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Sun, 6 Sep 2020 16:39:30 +0200
Date: Sun, 20 May 2018 20:22:21 +0200
Subject: [PATCH] Do not set include path to /usr/local/include
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@@ -14,18 +14,18 @@ Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
1 file changed, 2 deletions(-)
diff --git a/InOut/CMakeLists.txt b/InOut/CMakeLists.txt
index 0ec1dc8c8..97ddf8d14 100644
index 9422575e3..535528c83 100644
--- a/InOut/CMakeLists.txt
+++ b/InOut/CMakeLists.txt
@@ -15,8 +15,6 @@ option(USE_AUDIOUNIT "Build the CoreAudio AudioUnit I/O module (requires CoreAud
option(USE_FLTK "Use FLTK for graphs and widget opcodes" ON)
@@ -16,8 +16,6 @@ option(USE_FLTK "Use FLTK for graphs and widget opcodes" ON)
option(BUILD_VIRTUAL_KEYBOARD "Build Virtual MIDI keyboard" ON)
option(NEED_PORTTIME "porttime library separate from portmidi" ON)
-list(APPEND CMAKE_REQUIRED_INCLUDES "/usr/local/include")
-set(CMAKE_REQUIRED_INCLUDES /usr/local/include)
-
# FIND LIBRARIES AND HEADERS
if(USE_ALSA AND LINUX)
if(USE_ALSA)
--
2.26.2
2.14.3

View File

@@ -0,0 +1,51 @@
From 70b48196f3f2eb7a8cd2b21a3c39986bdb24bff2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Sun, 20 May 2018 20:59:59 +0200
Subject: [PATCH] Do not use try_run for portaudio
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [OE specific]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
InOut/CMakeLists.txt | 13 -------------
1 file changed, 13 deletions(-)
diff --git a/InOut/CMakeLists.txt b/InOut/CMakeLists.txt
index 9422575e3..7590a8c01 100644
--- a/InOut/CMakeLists.txt
+++ b/InOut/CMakeLists.txt
@@ -27,19 +27,6 @@ endif()
if(USE_PORTAUDIO)
find_path(PORTAUDIO_INCLUDE_PATH portaudio.h)
find_library(PORTAUDIO_LIBRARY NAMES portaudio portaudio_x64)
-
- if(PORTAUDIO_INCLUDE_PATH AND PORTAUDIO_LIBRARY)
- try_run(PORTAUDIO_V19 PORTAUDIO_TEST_COMPILED
- ${CMAKE_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/../cmake/portaudio_test.c
- CMAKE_FLAGS -DLINK_LIBRARIES:STRING=${PORTAUDIO_LIBRARY}
- COMPILE_DEFINITIONS "-I${PORTAUDIO_INCLUDE_PATH}"
- COMPILE_OUTPUT_VARIABLE OUTPUT)
- if(NOT PORTAUDIO_TEST_COMPILED AND NOT WIN32)
- set(PORTAUDIO_V19 false)
- endif()
- else()
- set(PORTAUDIO_V19 false)
- endif()
endif()
if(USE_PORTMIDI)
find_path(PORTMIDI_INCLUDE_PATH portmidi.h)
@@ -117,7 +117,7 @@ endif()
if(WIN32)
check_deps(USE_PORTAUDIO PORTAUDIO_INCLUDE_PATH PORTAUDIO_LIBRARY)
else()
- check_deps(USE_PORTAUDIO PORTAUDIO_INCLUDE_PATH PORTAUDIO_LIBRARY PORTAUDIO_TEST_COMPILED)
+ check_deps(USE_PORTAUDIO PORTAUDIO_INCLUDE_PATH PORTAUDIO_LIBRARY)
endif()
if(USE_PORTAUDIO AND PORTAUDIO_V19 MATCHES 1)
message(STATUS "Building rtpa module.")
--
2.14.3

View File

@@ -0,0 +1,34 @@
From 083bbdcab900d1d3b101ee2adb9eff6f15aa56a2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Sun, 26 May 2019 01:20:53 +0200
Subject: [PATCH] Remove -Werror from CXXFLAGS
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Works around warning -> errors
| #warning This header is deprecated, use <alsa/asoundlib.h> instead.
| ^~~~~~~
| In file included from ../../git/src/midiconnectionsmodel.h:7,
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
common.pri | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/common.pri b/common.pri
index 11d9315..35f696e 100644
--- a/common.pri
+++ b/common.pri
@@ -10,6 +10,6 @@ INSTALL_BIN = $${INSTALL_PREFIX}/bin
INSTALL_TRANSLATION = $${INSTALL_PREFIX}/share/$${APPNAME}/$${APPNAME}
CONFIG += c++11 link_pkgconfig warn_on
-QMAKE_CXXFLAGS += -Werror
+#QMAKE_CXXFLAGS += -Werror
PKGCONFIG += alsa
--
2.20.1

View File

@@ -2,25 +2,24 @@ SUMMARY = "A linux editor for the Akai LPD8"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://LICENSE.md;md5=6dc9df5fa3108f437a4580b0aebca196"
inherit cmake_qt5 pkgconfig gtk-icon-cache
inherit pkgconfig qmake5 gtk-icon-cache
DEPENDS += " \
qttools-native \
qttools \
qtbase \
qtsvg \
alsa-lib \
"
SRC_URI = " \
git://github.com/charlesfleche/lpd8editor.git;branch=master;protocol=https \
git://github.com/charlesfleche/lpd8editor.git \
file://0001-Remove-Werror-from-CXXFLAGS.patch\
file://lpd8-editor.desktop \
"
SRCREV = "ae9072e58d23d5926ca8d0228400eead9248a494"
PV = "0.0.16"
SRCREV = "5ca6f2b90889893e0633b23ffe0e4a014096656a"
PV = "0.0.12"
S = "${WORKDIR}/git"
do_install:append() {
do_install_append() {
install -Dm 644 ${WORKDIR}/lpd8-editor.desktop ${D}/${datadir}/applications/lpd8-editor.desktop
install -Dm 644 ${S}/lpd8editor.svg ${D}/${datadir}/icons/hicolor/scalable/apps/lpd8-editor.svg
}

View File

@@ -0,0 +1,69 @@
SUMMARY = "Collection of synthesizers and plugins"
HOMEPAGE = "http://distrho.sourceforge.net/ports"
LICENSE = "GPLv2 & MIT"
LIC_FILES_CHKSUM = " \
file://ports/argotlunar/README.md;md5=81abc323be6ba481ab72864b53b3daca \
file://ports/protoplug/license.txt;md5=56b9d913eb7c3ef00ca375ab614bf02f \
"
SRC_URI = " \
git://github.com/DISTRHO/DISTRHO-Ports-Extra.git \
"
# TODO:
# argolunar: no sound (presets?)
# pdpulp: segfault
# protoplug asks for files
SRCREV = "b6f25f1feb4de49136844f20d88bec6439cdfbc5"
S = "${WORKDIR}/git"
PV = "0.0.0+git${SRCPV}"
REQUIRED_DISTRO_FEATURES = "x11 opengl"
inherit lv2-postinst-helper distro_features_check pack_audio_plugins
# distro-ports dependency for special hack script / libs
DEPENDS += " \
premake3-native \
virtual/libgl \
libx11 \
libxext \
libxcursor \
freetype \
csound \
distrho-ports \
"
do_configure() {
# reconfigure?
if [ ! -f ${LV2-TURTLE-BUILD-DATA} ] ; then
# Seems this collection is not ready for public - copy 'shared' from distrho-ports
rm -rf ${S}/scripts
rm -rf ${S}/libs
cp -rf ${STAGING_LIBDIR}/distrho-ports-build/* ${S}/
# manipulate scripts to keep lv2_ttl_generator-calls in script for lv2-postinst-helper
sed -i 's|$GEN ./$FILE|echo "lv2-ttl-generator `pwd`/$FILE" >> ${LV2-TURTLE-BUILD-DATA}|g' `find ${S}/scripts -name *.sh`
else
rm -f ${LV2-TURTLE-BUILD-DATA}
fi
cd ${S}
# platforms supporting sse2 can override NOOPTIMIZATIONS
NOOPTIMIZATIONS=1 ${S}/scripts/premake-update.sh linux
}
do_install() {
install -d ${D}${libdir}
cp -r ${S}/bin/* ${D}${libdir}
}
FILES_${PN} += " \
${libdir}/cabbage* \
"
# for common (?) cabbage files
RDEPENDS_${PN}-lv2 += "${PN}"
RDEPENDS_${PN}-vst += "${PN}"
# Have not found what causes stripping - debugging of plugins is unlikely
INSANE_SKIP_${PN} = "already-stripped"

View File

@@ -1,14 +1,18 @@
SUMMARY = "Collection of synthesizers and plugins"
HOMEPAGE = "http://distrho.sourceforge.net/ports"
LICENSE = "GPL-2.0-only & LGPL-3.0-only"
LICENSE = "GPLv2 & LGPLv3"
LIC_FILES_CHKSUM = " \
file://doc/GPL.txt;md5=4641e94ec96f98fabc56ff9cc48be14b \
file://doc/LGPL.txt;md5=e6a600fd5e1d9cbde2d983680233ad02 \
"
SRC_URI = " \
git://github.com/DISTRHO/DISTRHO-Ports.git;branch=master;protocol=https \
file://0001-Modify-ttl-generation-target-so-we-can-sed-it-to-cor.patch \
git://github.com/DISTRHO/DISTRHO-Ports.git \
file://0001-disable-pitchedDelay-it-uses-double-precision-SSE2-b.patch \
file://0002-Refine-Plugin-do-not-include-xmmintrin.h.patch \
file://0003-Fix-build-with-musl-by-removing-unused-SystemStats-g.patch \
file://0004-Further-musl-fix-by-removal-of-unused-function.patch \
file://0005-Fix-build-with-gcc9.patch \
\
http://linuxsynths.com/ObxdPatchesDemos/ObxdPatchesBrian-01.tar.gz;name=linuxsynths-obxd-patches1;subdir=linuxsynths-obxd-patches \
\
@@ -16,9 +20,9 @@ SRC_URI = " \
http://linuxsynths.com/VexPatchesDemos/VexPatches02.tar.gz;name=linuxsynths-vex-patches2;subdir=linuxsynths-vex-patches \
"
SRCREV = "2131ac41eef308c2ba11df6f1ae3985f3c868485"
SRCREV = "a82fff059baafc03f7c0e8b9a99f383af7bfbd79"
S = "${WORKDIR}/git"
PV = "2021-03-15+git${SRCPV}"
PV = "2018-04-16"
SRC_URI[linuxsynths-obxd-patches1.md5sum] = "32244f847a54a71ee3c25079df5c8b84"
SRC_URI[linuxsynths-obxd-patches1.sha256sum] = "246fccadd71bb9f0606a95bf7b0aee7807fd3a14f754367425423a51c31e160e"
@@ -30,9 +34,10 @@ SRC_URI[linuxsynths-vex-patches2.sha256sum] = "378cff261dab333c5f29246b6f3f557e0
REQUIRED_DISTRO_FEATURES = "x11 opengl"
inherit meson pkgconfig lv2-turtle-helper features_check pack_audio_plugins
inherit dos2unix lv2-postinst-helper distro_features_check pack_audio_plugins
DEPENDS += " \
premake3-native \
virtual/libgl \
alsa-lib \
libx11 \
@@ -42,36 +47,53 @@ DEPENDS += " \
ladspa-sdk \
"
LV2_TTL_GENERATOR = "${B}/libs/lv2-ttl-generator/lv2_ttl_generator"
do_configure() {
# reconfigure?
if [ ! -f ${LV2-TURTLE-BUILD-DATA} ] ; then
# keep unmodified scripts
cp -r ${S}/scripts ${WORKDIR}
# manipulate scripts to keep lv2_ttl_generator-calls in script for lv2-postinst-helper
sed -i 's|$GEN ./$FILE|echo "lv2-ttl-generator `pwd`/$FILE" >> ${LV2-TURTLE-BUILD-DATA}|g' `find ${S}/scripts -name *.sh`
else
rm -f ${LV2-TURTLE-BUILD-DATA}
fi
do_ttl_sed() {
sed -i 's|%PLUGIN_INFO_FILE%|${LV2_PLUGIN_INFO_FILE}|g' `find ${S} -name meson.build`
sed -i 's|$GEN ./$FILE|echo "`pwd`/$FILE" >> ${LV2_PLUGIN_INFO_FILE}|g' `find ${S}/scripts -name *.sh`
# platforms supporting sse2 can override this (NOOPTIMIZATIONS)
NOOPTIMIZATIONS=1 ${S}/scripts/premake-update.sh linux
}
EXTRA_OEMESON += " \
-Doptimizations=false \
"
do_install() {
install -d ${D}${libdir}
cp -r ${S}/bin/* ${D}${libdir}
do_install:append() {
# obxd-presets
# presets
install -d ${D}${libdir}/lv2
# obxd
for file in `find ${WORKDIR}/linuxsynths-obxd-patches -mindepth 1 -maxdepth 1` ; do
cp -rf $file ${D}${libdir}/lv2/
done
# vex-presets
# vex
for file in `find ${WORKDIR}/linuxsynths-vex-patches -mindepth 1 -maxdepth 1` ; do
cp -rf $file ${D}${libdir}/lv2/
done
# install scripts for distro-ports-extra (and abuse libdir to ensure is is found in sysroot)
install -d ${D}/${libdir}/distrho-ports-build
cp -rf ${WORKDIR}/scripts ${D}${libdir}/distrho-ports-build/
cp -rf ${S}/libs ${D}${libdir}/distrho-ports-build/
rm -f ${D}${libdir}/distrho-ports-build/libs/lv2_ttl_generator
}
PACKAGES =+ "${PN}-presets"
RDEPENDS:${PN}-presets = "${PN_LV2}"
RDEPENDS_${PN}-presets = "${PN}-lv2"
FILES:${PN}-presets = " \
${libdir}/lv2/*.preset.lv2 \
${libdir}/lv2/*/presets.ttl \
${libdir}/lv2/Vitalium-unfa.lv2 \
FILES_${PN}-presets = "${libdir}/lv2/*.preset.lv2"
# dummy pack scripts for distrho-ports-extra
FILES_${PN}-staticdev += " \
${libdir}/distrho-ports-build \
"
RDEPENDS_${PN}-staticdev = "bash perl"
# Have not found what causes stripping - debugging of plugins is unlikely
INSANE_SKIP:${PN} = "already-stripped"
INSANE_SKIP_${PN} = "already-stripped"

View File

@@ -1,45 +0,0 @@
From 649914c369578ef2a2db42ec02f4c1836b5eb8b7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Fri, 30 Jul 2021 23:15:40 +0200
Subject: [PATCH] Modify ttl generation target so we can sed it to correct path
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate[Configuration]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
ports-legacy/meson.build | 2 +-
ports/meson.build | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/ports-legacy/meson.build b/ports-legacy/meson.build
index cc8a6001..5ebcdd45 100644
--- a/ports-legacy/meson.build
+++ b/ports-legacy/meson.build
@@ -281,7 +281,7 @@ if build_lv2 or build_vst2
'mkdir', '-p', plugin_lv2_dir, '&&',
'cd', plugin_lv2_dir, '&&',
'cp', plugin_lv2_lib.full_path(), plugin_lv2_dir / plugin_name + lib_suffix, '&&',
- (meson.is_cross_build() ? 'wine' : 'env'), lv2_ttl_generator, '.' / plugin_name + lib_suffix,
+ 'eval', 'echo', plugin_lv2_dir / plugin_name + lib_suffix, '>>', '%PLUGIN_INFO_FILE%',
],
install: true,
install_dir: lv2dir,
diff --git a/ports/meson.build b/ports/meson.build
index 248c4c71..d6a8ede1 100644
--- a/ports/meson.build
+++ b/ports/meson.build
@@ -224,7 +224,7 @@ foreach plugin : plugins
'mkdir', '-p', plugin_lv2_dir, '&&',
'cd', plugin_lv2_dir, '&&',
'mv', plugin_lv2_lib.full_path(), plugin_lv2_dir / plugin_name + lib_suffix, '&&',
- (meson.is_cross_build() ? 'wine' : 'env'), lv2_ttl_generator, '.' / plugin_name + lib_suffix,
+ 'eval', 'echo', plugin_lv2_dir / plugin_name + lib_suffix, '>>', '%PLUGIN_INFO_FILE%',
],
install: true,
install_dir: lv2dir,
--
2.31.1

View File

@@ -0,0 +1,57 @@
From b1b48a24ed4eda34e4dc4d649a1ef030c37694ec Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
Date: Mon, 26 Jun 2017 23:12:22 +0200
Subject: [PATCH] disable pitchedDelay - it uses double precision SSE2 by
default
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Our build system should setz proper flags.
Upstream-Status: Inappropriate [embedded specific]
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
---
ports/Makefile | 4 ----
1 file changed, 4 deletions(-)
diff --git a/ports/Makefile b/ports/Makefile
index d87da4af..521d9e1e 100644
--- a/ports/Makefile
+++ b/ports/Makefile
@@ -59,7 +59,6 @@ else
$(MAKE) -C LUFSMeter/LV2-Multi
$(MAKE) -C luftikus/LV2
$(MAKE) -C obxd/LV2
- $(MAKE) -C pitchedDelay/LV2
$(MAKE) -C refine/LV2
$(MAKE) -C stereosourceseparation/LV2
$(MAKE) -C tal-dub-3/LV2
@@ -98,7 +97,6 @@ vst: libs
$(MAKE) -C LUFSMeter/VST-Multi
$(MAKE) -C luftikus/VST
$(MAKE) -C obxd/VST
- $(MAKE) -C pitchedDelay/VST
$(MAKE) -C refine/VST
$(MAKE) -C stereosourceseparation/VST
$(MAKE) -C tal-dub-3/VST
@@ -136,7 +134,6 @@ clean:
$(MAKE) clean -C LUFSMeter/LV2-Multi
$(MAKE) clean -C luftikus/LV2
$(MAKE) clean -C obxd/LV2
- $(MAKE) clean -C pitchedDelay/LV2
$(MAKE) clean -C refine/LV2
$(MAKE) clean -C stereosourceseparation/LV2
$(MAKE) clean -C tal-dub-3/LV2
@@ -170,7 +167,6 @@ clean:
$(MAKE) clean -C LUFSMeter/VST-Multi
$(MAKE) clean -C luftikus/VST
$(MAKE) clean -C obxd/VST
- $(MAKE) clean -C pitchedDelay/VST
$(MAKE) clean -C refine/VST
$(MAKE) clean -C stereosourceseparation/VST
$(MAKE) clean -C tal-dub-3/VST
--
2.14.3

View File

@@ -0,0 +1,31 @@
From 8681831fa6fc5e58a7eebfc46bb0a467c8f19dcc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Fri, 29 Dec 2017 23:36:46 +0100
Subject: [PATCH] Refine-Plugin: do not include "xmmintrin.h"
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Submitted [1]
[1] https://github.com/DISTRHO/DISTRHO-Ports/pull/31
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
ports/refine/source/PluginProcessor.cpp | 1 -
1 file changed, 1 deletion(-)
diff --git a/ports/refine/source/PluginProcessor.cpp b/ports/refine/source/PluginProcessor.cpp
index 6c9e6182..ab50a6ad 100644
--- a/ports/refine/source/PluginProcessor.cpp
+++ b/ports/refine/source/PluginProcessor.cpp
@@ -1,6 +1,5 @@
#include "PluginProcessor.h"
#include "PluginEditor.h"
-#include "xmmintrin.h"
ReFinedAudioProcessor::ReFinedAudioProcessor()
{
--
2.14.3

View File

@@ -0,0 +1,134 @@
From 1a4c189c7c5778951edc57f2840889629ce81135 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Wed, 3 Apr 2019 23:38:30 +0200
Subject: [PATCH] Fix build with musl by removing unused
SystemStats::getStackBacktrace
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Musl [1] considers itself as the pure POSIX incarnation and unfortunately
there are people liking it.
Since execinfo.h is not part of POSIX but a GNU header [2], musl fails with
| ../source/modules/juce_core/juce_core.cpp:98:12: fatal error: execinfo.h: No such file or directory
| #include <execinfo.h>
| ^~~~~~~~~~~~
| compilation terminated.
Removing SystemStats::getStackBacktrace does not cause any harm because it is
not used.
I am aware that there might be an update of JUCE or other prugins using
getStackBacktrace in the future but till then musl fan boys are happy.
Upstream-Status: Submitted [3]
[1] https://www.musl-libc.org/
[2] https://www.gnu.org/software/gnulib/manual/html_node/execinfo_002eh.html
[3] https://github.com/DISTRHO/DISTRHO-Ports/pull/31
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
.../source/modules/juce_core/juce_core.cpp | 3 --
.../juce_core/system/juce_SystemStats.cpp | 52 -------------------
.../juce_core/system/juce_SystemStats.h | 6 ---
3 files changed, 61 deletions(-)
diff --git a/libs/juce/source/modules/juce_core/juce_core.cpp b/libs/juce/source/modules/juce_core/juce_core.cpp
index 136dd284..06c7d17f 100644
--- a/libs/juce/source/modules/juce_core/juce_core.cpp
+++ b/libs/juce/source/modules/juce_core/juce_core.cpp
@@ -94,9 +94,6 @@
#include <net/if.h>
#include <sys/ioctl.h>
- #if ! JUCE_ANDROID
- #include <execinfo.h>
- #endif
#endif
#if JUCE_MAC || JUCE_IOS
diff --git a/libs/juce/source/modules/juce_core/system/juce_SystemStats.cpp b/libs/juce/source/modules/juce_core/system/juce_SystemStats.cpp
index c073331b..6f814213 100644
--- a/libs/juce/source/modules/juce_core/system/juce_SystemStats.cpp
+++ b/libs/juce/source/modules/juce_core/system/juce_SystemStats.cpp
@@ -118,58 +118,6 @@ bool SystemStats::hasAVX2() noexcept { return getCPUInformation().has
bool SystemStats::hasNeon() noexcept { return getCPUInformation().hasNeon; }
-//==============================================================================
-String SystemStats::getStackBacktrace()
-{
- String result;
-
- #if JUCE_ANDROID || JUCE_MINGW
- jassertfalse; // sorry, not implemented yet!
-
- #elif JUCE_WINDOWS
- HANDLE process = GetCurrentProcess();
- SymInitialize (process, nullptr, TRUE);
-
- void* stack[128];
- int frames = (int) CaptureStackBackTrace (0, numElementsInArray (stack), stack, nullptr);
-
- HeapBlock<SYMBOL_INFO> symbol;
- symbol.calloc (sizeof (SYMBOL_INFO) + 256, 1);
- symbol->MaxNameLen = 255;
- symbol->SizeOfStruct = sizeof (SYMBOL_INFO);
-
- for (int i = 0; i < frames; ++i)
- {
- DWORD64 displacement = 0;
-
- if (SymFromAddr (process, (DWORD64) stack[i], &displacement, symbol))
- {
- result << i << ": ";
-
- IMAGEHLP_MODULE64 moduleInfo;
- zerostruct (moduleInfo);
- moduleInfo.SizeOfStruct = sizeof (moduleInfo);
-
- if (::SymGetModuleInfo64 (process, symbol->ModBase, &moduleInfo))
- result << moduleInfo.ModuleName << ": ";
-
- result << symbol->Name << " + 0x" << String::toHexString ((int64) displacement) << newLine;
- }
- }
-
- #else
- void* stack[128];
- int frames = backtrace (stack, numElementsInArray (stack));
- char** frameStrings = backtrace_symbols (stack, frames);
-
- for (int i = 0; i < frames; ++i)
- result << frameStrings[i] << newLine;
-
- ::free (frameStrings);
- #endif
-
- return result;
-}
//==============================================================================
static SystemStats::CrashHandlerFunction globalCrashHandler = nullptr;
diff --git a/libs/juce/source/modules/juce_core/system/juce_SystemStats.h b/libs/juce/source/modules/juce_core/system/juce_SystemStats.h
index 89d3854e..a99d830a 100644
--- a/libs/juce/source/modules/juce_core/system/juce_SystemStats.h
+++ b/libs/juce/source/modules/juce_core/system/juce_SystemStats.h
@@ -186,12 +186,6 @@ public:
static int getPageSize();
//==============================================================================
- /** Returns a backtrace of the current call-stack.
- The usefulness of the result will depend on the level of debug symbols
- that are available in the executable.
- */
- static String getStackBacktrace();
-
/** A function type for use in setApplicationCrashHandler(). The parameter will contain
platform-specific data about the crash.
*/
--
2.20.1

View File

@@ -0,0 +1,146 @@
From 06be2d073cb86298cba6ae98f8c7ffbec4f15e7e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Thu, 4 Apr 2019 00:19:22 +0200
Subject: [PATCH] Further musl fix by removal of unused function
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
This time there are _NL_IDENTIFICATION* variables missing. Since the functions
SystemStats::getUserLanguage()
SystemStats::getUserRegion()
SystemStats::getDisplayLanguage()
are not in use there is no harm caused by removing them.
Same: I am aware that there might be an update of JUCE or other prugins using
getStackBacktrace in the future but till then musl fan boys are happy.
Upstream-Status: Submitted [1]
[1] https://github.com/DISTRHO/DISTRHO-Ports/pull/31
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
.../native/juce_android_SystemStats.cpp | 4 ----
.../native/juce_linux_SystemStats.cpp | 4 ----
.../juce_core/native/juce_mac_SystemStats.mm | 11 ----------
.../native/juce_win32_SystemStats.cpp | 22 -------------------
.../juce_core/system/juce_SystemStats.h | 17 --------------
5 files changed, 58 deletions(-)
diff --git a/libs/juce/source/modules/juce_core/native/juce_android_SystemStats.cpp b/libs/juce/source/modules/juce_core/native/juce_android_SystemStats.cpp
index a1bdd59e..6055352f 100644
--- a/libs/juce/source/modules/juce_core/native/juce_android_SystemStats.cpp
+++ b/libs/juce/source/modules/juce_core/native/juce_android_SystemStats.cpp
@@ -445,10 +445,6 @@ String SystemStats::getComputerName()
}
-String SystemStats::getUserLanguage() { return AndroidStatsHelpers::getLocaleValue (false); }
-String SystemStats::getUserRegion() { return AndroidStatsHelpers::getLocaleValue (true); }
-String SystemStats::getDisplayLanguage() { return getUserLanguage() + "-" + getUserRegion(); }
-
//==============================================================================
void CPUInformation::initialise() noexcept
{
diff --git a/libs/juce/source/modules/juce_core/native/juce_linux_SystemStats.cpp b/libs/juce/source/modules/juce_core/native/juce_linux_SystemStats.cpp
index 40f19187..07a99749 100644
--- a/libs/juce/source/modules/juce_core/native/juce_linux_SystemStats.cpp
+++ b/libs/juce/source/modules/juce_core/native/juce_linux_SystemStats.cpp
@@ -129,10 +129,6 @@ static String getLocaleValue (nl_item key)
return result;
}
-String SystemStats::getUserLanguage() { return getLocaleValue (_NL_IDENTIFICATION_LANGUAGE); }
-String SystemStats::getUserRegion() { return getLocaleValue (_NL_IDENTIFICATION_TERRITORY); }
-String SystemStats::getDisplayLanguage() { return getUserLanguage() + "-" + getUserRegion(); }
-
//==============================================================================
void CPUInformation::initialise() noexcept
{
diff --git a/libs/juce/source/modules/juce_core/native/juce_mac_SystemStats.mm b/libs/juce/source/modules/juce_core/native/juce_mac_SystemStats.mm
index 81f62192..b0a751dd 100644
--- a/libs/juce/source/modules/juce_core/native/juce_mac_SystemStats.mm
+++ b/libs/juce/source/modules/juce_core/native/juce_mac_SystemStats.mm
@@ -241,17 +241,6 @@ static String getLocaleValue (CFStringRef key)
return result;
}
-String SystemStats::getUserLanguage() { return getLocaleValue (kCFLocaleLanguageCode); }
-String SystemStats::getUserRegion() { return getLocaleValue (kCFLocaleCountryCode); }
-
-String SystemStats::getDisplayLanguage()
-{
- CFArrayRef cfPrefLangs = CFLocaleCopyPreferredLanguages();
- const String result (String::fromCFString ((CFStringRef) CFArrayGetValueAtIndex (cfPrefLangs, 0)));
- CFRelease (cfPrefLangs);
- return result;
-}
-
//==============================================================================
/* NB: these are kept outside the HiResCounterInfo struct and initialised to 1 to avoid
division-by-zero errors if some other static constructor calls us before this file's
diff --git a/libs/juce/source/modules/juce_core/native/juce_win32_SystemStats.cpp b/libs/juce/source/modules/juce_core/native/juce_win32_SystemStats.cpp
index e2b44093..c78cf747 100644
--- a/libs/juce/source/modules/juce_core/native/juce_win32_SystemStats.cpp
+++ b/libs/juce/source/modules/juce_core/native/juce_win32_SystemStats.cpp
@@ -469,26 +469,4 @@ static String getLocaleValue (LCID locale, LCTYPE key, const char* defaultValue)
return defaultValue;
}
-String SystemStats::getUserLanguage() { return getLocaleValue (LOCALE_USER_DEFAULT, LOCALE_SISO639LANGNAME, "en"); }
-String SystemStats::getUserRegion() { return getLocaleValue (LOCALE_USER_DEFAULT, LOCALE_SISO3166CTRYNAME, "US"); }
-
-String SystemStats::getDisplayLanguage()
-{
- DynamicLibrary dll ("kernel32.dll");
- JUCE_LOAD_WINAPI_FUNCTION (dll, GetUserDefaultUILanguage, getUserDefaultUILanguage, LANGID, (void))
-
- if (getUserDefaultUILanguage == nullptr)
- return "en";
-
- const DWORD langID = MAKELCID (getUserDefaultUILanguage(), SORT_DEFAULT);
-
- String mainLang (getLocaleValue (langID, LOCALE_SISO639LANGNAME, "en"));
- String region (getLocaleValue (langID, LOCALE_SISO3166CTRYNAME, nullptr));
-
- if (region.isNotEmpty())
- mainLang << '-' << region;
-
- return mainLang;
-}
-
} // namespace juce
diff --git a/libs/juce/source/modules/juce_core/system/juce_SystemStats.h b/libs/juce/source/modules/juce_core/system/juce_SystemStats.h
index a99d830a..ca560670 100644
--- a/libs/juce/source/modules/juce_core/system/juce_SystemStats.h
+++ b/libs/juce/source/modules/juce_core/system/juce_SystemStats.h
@@ -106,23 +106,6 @@ public:
/** Returns the host-name of the computer. */
static String getComputerName();
- /** Returns the language of the user's locale.
- The return value is a 2 or 3 letter language code (ISO 639-1 or ISO 639-2)
- */
- static String getUserLanguage();
-
- /** Returns the region of the user's locale.
- The return value is a 2 letter country code (ISO 3166-1 alpha-2).
- */
- static String getUserRegion();
-
- /** Returns the user's display language.
- The return value is a 2 or 3 letter language code (ISO 639-1 or ISO 639-2).
- Note that depending on the OS and region, this may also be followed by a dash
- and a sub-region code, e.g "en-GB"
- */
- static String getDisplayLanguage();
-
/** This will attempt to return some kind of string describing the device.
If no description is available, it'll just return an empty string. You may
want to use this for things like determining the type of phone/iPad, etc.
--
2.20.1

View File

@@ -0,0 +1,163 @@
From cee14bbe5a46de8cf0941b10686e84c30f7eaf76 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Thu, 1 Aug 2019 22:29:06 +0200
Subject: [PATCH] Fix build with gcc9
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Ported from [1]
[1] https://github.com/WeAreROLI/JUCE/commit/4e0adb2af8b424c43d22bd431011c9a6c57d36b6
Upstream-Status: Submitted [1]
[2] https://github.com/DISTRHO/DISTRHO-Ports/pull/42
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
.../juce_graphics/colour/juce_PixelFormats.h | 33 +++-----------
.../native/juce_RenderingHelpers.h | 44 +------------------
2 files changed, 8 insertions(+), 69 deletions(-)
diff --git a/libs/juce/source/modules/juce_graphics/colour/juce_PixelFormats.h b/libs/juce/source/modules/juce_graphics/colour/juce_PixelFormats.h
index cb0867cf..dea97a6b 100644
--- a/libs/juce/source/modules/juce_graphics/colour/juce_PixelFormats.h
+++ b/libs/juce/source/modules/juce_graphics/colour/juce_PixelFormats.h
@@ -105,22 +105,9 @@ public:
//==============================================================================
forcedinline uint8 getAlpha() const noexcept { return components.a; }
- forcedinline uint8 getRed() const noexcept { return components.r; }
+ forcedinline uint8 getRed() const noexcept { return components.r; }
forcedinline uint8 getGreen() const noexcept { return components.g; }
- forcedinline uint8 getBlue() const noexcept { return components.b; }
-
- #if JUCE_GCC
- // NB these are here as a workaround because GCC refuses to bind to packed values.
- forcedinline uint8& getAlpha() noexcept { return comps [indexA]; }
- forcedinline uint8& getRed() noexcept { return comps [indexR]; }
- forcedinline uint8& getGreen() noexcept { return comps [indexG]; }
- forcedinline uint8& getBlue() noexcept { return comps [indexB]; }
- #else
- forcedinline uint8& getAlpha() noexcept { return components.a; }
- forcedinline uint8& getRed() noexcept { return components.r; }
- forcedinline uint8& getGreen() noexcept { return components.g; }
- forcedinline uint8& getBlue() noexcept { return components.b; }
- #endif
+ forcedinline uint8 getBlue() const noexcept { return components.b; }
//==============================================================================
/** Copies another pixel colour over this one.
@@ -340,9 +327,6 @@ private:
{
uint32 internal;
Components components;
- #if JUCE_GCC
- uint8 comps[4]; // helper struct needed because gcc does not allow references to packed union members
- #endif
};
}
#ifndef DOXYGEN
@@ -425,13 +409,9 @@ public:
//==============================================================================
forcedinline uint8 getAlpha() const noexcept { return 0xff; }
- forcedinline uint8 getRed() const noexcept { return r; }
+ forcedinline uint8 getRed() const noexcept { return r; }
forcedinline uint8 getGreen() const noexcept { return g; }
- forcedinline uint8 getBlue() const noexcept { return b; }
-
- forcedinline uint8& getRed() noexcept { return r; }
- forcedinline uint8& getGreen() noexcept { return g; }
- forcedinline uint8& getBlue() noexcept { return b; }
+ forcedinline uint8 getBlue() const noexcept { return b; }
//==============================================================================
/** Copies another pixel colour over this one.
@@ -646,11 +626,10 @@ public:
//==============================================================================
forcedinline uint8 getAlpha() const noexcept { return a; }
- forcedinline uint8& getAlpha() noexcept { return a; }
- forcedinline uint8 getRed() const noexcept { return 0; }
+ forcedinline uint8 getRed() const noexcept { return 0; }
forcedinline uint8 getGreen() const noexcept { return 0; }
- forcedinline uint8 getBlue() const noexcept { return 0; }
+ forcedinline uint8 getBlue() const noexcept { return 0; }
//==============================================================================
/** Copies another pixel colour over this one.
diff --git a/libs/juce/source/modules/juce_graphics/native/juce_RenderingHelpers.h b/libs/juce/source/modules/juce_graphics/native/juce_RenderingHelpers.h
index e552758b..6dd943fb 100644
--- a/libs/juce/source/modules/juce_graphics/native/juce_RenderingHelpers.h
+++ b/libs/juce/source/modules/juce_graphics/native/juce_RenderingHelpers.h
@@ -585,10 +585,6 @@ namespace EdgeTableFillers
{
areRGBComponentsEqual = sourceColour.getRed() == sourceColour.getGreen()
&& sourceColour.getGreen() == sourceColour.getBlue();
- filler[0].set (sourceColour);
- filler[1].set (sourceColour);
- filler[2].set (sourceColour);
- filler[3].set (sourceColour);
}
else
{
@@ -644,7 +640,6 @@ namespace EdgeTableFillers
const Image::BitmapData& destData;
PixelType* linePixels;
PixelARGB sourceColour;
- PixelRGB filler [4];
bool areRGBComponentsEqual;
forcedinline PixelType* getPixel (const int x) const noexcept
@@ -659,43 +654,8 @@ namespace EdgeTableFillers
forcedinline void replaceLine (PixelRGB* dest, const PixelARGB colour, int width) const noexcept
{
- if (destData.pixelStride == sizeof (*dest))
- {
- if (areRGBComponentsEqual) // if all the component values are the same, we can cheat..
- {
- memset (dest, colour.getRed(), (size_t) width * 3);
- }
- else
- {
- if (width >> 5)
- {
- const int* const intFiller = reinterpret_cast<const int*> (filler);
-
- while (width > 8 && (((pointer_sized_int) dest) & 7) != 0)
- {
- dest->set (colour);
- ++dest;
- --width;
- }
-
- while (width > 4)
- {
- int* d = reinterpret_cast<int*> (dest);
- *d++ = intFiller[0];
- *d++ = intFiller[1];
- *d++ = intFiller[2];
- dest = reinterpret_cast<PixelRGB*> (d);
- width -= 4;
- }
- }
-
- while (--width >= 0)
- {
- dest->set (colour);
- ++dest;
- }
- }
- }
+ if ((size_t) destData.pixelStride == sizeof (*dest) && areRGBComponentsEqual)
+ memset ((void*) dest, colour.getRed(), (size_t) width * 3); // if all the component values are the same, we can cheat..
else
{
JUCE_PERFORM_PIXEL_OP_LOOP (set (colour))
--
2.21.0

View File

@@ -1,44 +1,46 @@
SUMMARY = "Collection of DPF-based plugins"
LICENSE = "ISC & GPL-2.0-only & GPL-3.0-only & LGPL-3.0-only & MIT"
LICENSE = "ISC & GPLv2 & GPLv3 & LGPLv3 & MIT"
LIC_FILES_CHKSUM = " \
file://LICENSE;md5=ec024abddfab2ee463c8c1ad98883d12 \
"
SRC_URI = "git://github.com/DISTRHO/DPF-Plugins.git;branch=master;protocol=https"
SRCREV = "014db6d4ef170b44653b1eb668686b624e4ae3f8"
SRC_URI = " \
git://github.com/DISTRHO/DPF-Plugins.git \
"
SRCREV = "3adff289617ed32f9d0cb679b05e430531cbf0dd"
S = "${WORKDIR}/git"
PV = "v1.4"
PV = "v1.1+git${SRCPV}"
REQUIRED_DISTRO_FEATURES = "x11 opengl"
inherit pkgconfig lv2-turtle-helper pack_audio_plugins features_check
inherit qemu-ext distro_features_check pkgconfig pack_audio_plugins
# TODO standalone: *.desktop
# TODO standalones: DEPEND jack / install / *.desktop
DEPENDS += " \
virtual/libgl \
cairo \
ladspa-sdk \
lv2 \
liblo \
jack \
projectm \
"
EXTRA_OEMAKE += " \
NOOPT=true \
SKIP_STRIPPING=true \
"
do_compile_prepend() {
export NOOPT=true
rm -f ${WORKDIR}/lv2_ttl_generator-data
# manipulate scripts to keep lv2_ttl_generator-calls in script for qemu
sed -i 's|"$GEN" "./$FILE"|echo `pwd`/$FILE >> ${WORKDIR}/lv2_ttl_generator-data|g' ${S}/dpf/utils/generate-ttl.sh
}
do_ttl_sed() {
sed -i 's|${EXE_WRAPPER} "${GEN}" "./\x24{FILE}"|echo "`realpath "./$FILE"`" >> ${LV2_PLUGIN_INFO_FILE}|g' ${S}/dpf/utils/generate-ttl.sh
do_compile_append() {
# build ttl-files must be done in quemu
for sofile in `cat ${WORKDIR}/lv2_ttl_generator-data`; do
cd `dirname ${sofile}`
echo "QEMU lv2_ttl_generator for ${sofile}..."
${@qemu_run_binary_local(d, '${STAGING_DIR_TARGET}', '${S}/dpf/utils/lv2_ttl_generator')} ${sofile} || echo "ERROR: for QEMU lv2_ttl_generator for ${sofile}!"
done
}
do_install() {
install -d ${D}${bindir}
for executable in `find ${S}/bin/ -executable -mindepth 1 -maxdepth 1 -type f ! -name '*.so'`; do
install -m 755 $executable ${D}${bindir}
done
install -d ${D}${libdir}/ladspa
for plugin in `find ${S}/bin/ -name *ladspa.so`; do
install -m 644 $plugin ${D}${libdir}/ladspa/
@@ -59,5 +61,5 @@ do_install() {
done
}
PACKAGES =+ "${PN}-standalone"
FILES:${PN}-standalone = "${bindir}"
# Have not found what causes stripping - debugging of plugins is unlikely
INSANE_SKIP_${PN} = "already-stripped"

View File

@@ -1,11 +1,11 @@
SUMMARY = "lv2-ttl-generator-native"
LICENSE = "ISC"
LIC_FILES_CHKSUM = " \
file://LICENSE;md5=87cb0d450c5426796754d1261693dc57 \
file://LICENSE;md5=7b4d7947003bd60e5475fc61c6d014da \
"
SRC_URI = "git://github.com/DISTRHO/DPF.git;protocol=https;branch=master"
SRCREV = "14842be64ba309b8717592c5cf461925fa8a98af"
SRC_URI = "git://github.com/DISTRHO/DPF.git"
SRCREV = "70cec6a9d0222b32abdcaec02cd7b01378c4d78b"
S = "${WORKDIR}/git"
PV = "0.0.0+git${SRCPV}"
@@ -20,7 +20,3 @@ do_install() {
install -d ${D}${bindir}
install -m 0755 ${S}/utils/lv2_ttl_generator ${D}${bindir}/lv2-ttl-generator
}
# There are cases we neet we need target versions
SYSROOT_DIRS:append:class-target = " ${bindir}"

View File

@@ -1,50 +0,0 @@
SUMMARY = "A set of free reverb effects"
HOMEPAGE = "https://github.com/michaelwillis/dragonfly-reverb"
LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = "file://LICENSE;md5=1ebbd3e34237af26da5dc08a4e440464"
REQUIRED_DISTRO_FEATURES = "x11 opengl"
inherit pkgconfig lv2-turtle-helper pack_audio_plugins features_check
DEPENDS += " \
virtual/libx11 \
virtual/libgl \
jack \
"
SRC_URI = "gitsm://github.com/michaelwillis/dragonfly-reverb.git;branch=master;protocol=https"
SRCREV = "465bfa2586a06ec9bd8684a84f402a275e8b65aa"
S = "${WORKDIR}/git"
PV = "3.2.6"
EXTRA_OEMAKE += " \
NOOPT=true \
SKIP_STRIPPING=true \
"
do_ttl_sed() {
sed -i 's|${EXE_WRAPPER} "${GEN}" "./\x24{FILE}"|echo "`realpath "./$FILE"`" >> ${LV2_PLUGIN_INFO_FILE}|g' ${S}/dpf/utils/generate-ttl.sh
}
do_install() {
install -d ${D}${bindir}
for executable in `find ${S}/bin/ -executable -mindepth 1 -maxdepth 1 -type f ! -name '*.so'`; do
install -m 755 $executable ${D}${bindir}
done
install -d ${D}${libdir}/lv2
for plugindir in `find ${S}/bin/ -maxdepth 1 -name *.lv2`; do
lv2dir=${D}${libdir}/lv2/`basename $plugindir`
install -d $lv2dir
for plugin in `find $plugindir -type f`; do
install -m 644 $plugin $lv2dir/
done
done
install -d ${D}${libdir}/vst
for plugin in `find ${S}/bin/ -name *vst.so`; do
install -m 644 $plugin ${D}${libdir}/vst/
done
}

View File

@@ -1,6 +1,6 @@
SUMMARY = "An LV2 sampler plugin that plays hydrogen drum kits "
HOMEPAGE = "https://github.com/nicklan/drmr"
LICENSE = "GPL-3.0-only"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
DEPENDS += " \
@@ -14,7 +14,7 @@ DEPENDS += " \
inherit cmake pkgconfig
SRC_URI = " \
git://github.com/nicklan/drmr.git;branch=lv2unstable;protocol=https \
git://github.com/nicklan/drmr.git;branch=lv2unstable \
file://0001-CMake-Keep-build-system-flags.patch \
"
SRCREV = "f244f3b09bb290dd6a4b9c14d4abaf69e9861f9d"
@@ -26,4 +26,4 @@ EXTRA_OECMAKE = " \
-DLV2_INSTALL_DIR:PATH=${baselib}/lv2 \
"
FILES:${PN} += "${libdir}/lv2"
FILES_${PN} += "${libdir}/lv2"

View File

@@ -0,0 +1,31 @@
From 36b834661ac4169db20c682bddfdcdf96df5a2f7 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Sat, 19 Jan 2019 00:44:13 +0100
Subject: [PATCH] Do not inject /usr/local/include to include paths
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Pending
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
waflib/extras/autowaf.py | 2 --
1 file changed, 2 deletions(-)
diff --git a/waflib/extras/autowaf.py b/waflib/extras/autowaf.py
index feaae3c6..119c95b5 100644
--- a/waflib/extras/autowaf.py
+++ b/waflib/extras/autowaf.py
@@ -189,8 +189,6 @@ def check_pkg(conf, name, **args):
if 'COMPILER_CXX' in conf.env:
conf.env.append_value('CXXFLAGS', ['-isystem', path])
- conf.env.append_value('CXXFLAGS', ['-isystem', '/usr/local/include'])
-
def normpath(path):
if sys.platform == 'win32':
return os.path.normpath(path).replace('\\', '/')
--
2.20.1

View File

@@ -1,25 +0,0 @@
From 1c871f1154cd67b00f1fc41d49fb94bddbf4b714 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Fri, 6 Dec 2019 18:11:09 +0100
Subject: [PATCH] Fix build for python3-only environments
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Thanks for upgrading waflib
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
waf | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/waf b/waf
index 887215c..2538272 100755
--- a/waf
+++ b/waf
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
# Minimal waf script for projects that include waflib directly

View File

@@ -1,10 +1,10 @@
SUMMARY = "Ganv is a Gtk widget for interactive graph-like environments"
DESCRIPTION = "Ganv is a Gtk widget for interactive graph-like environments, such as modular synthesizers or finite state machines"
HOMEPAGE = "http://drobilla.net/software/ganv"
LICENSE = "GPL-3.0-only"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
inherit waf pkgconfig
inherit waf
DEPENDS += " \
glib-2.0-native \
@@ -13,9 +13,9 @@ DEPENDS += " \
"
SRC_URI = " \
gitsm://gitlab.com/drobilla/ganv.git;protocol=https;branch=master \
file://0001-Fix-build-for-python3-only-environments.patch \
git://git.drobilla.net/ganv.git;protocol=http \
file://0001-Do-not-inject-usr-local-include-to-include-paths.patch \
"
SRCREV = "17f58b94abf5e7b1ad7ea3c40d0cd1107298d41a"
SRCREV = "ccc9b971ab206fa3dc32a432a3e76db976192f58"
S = "${WORKDIR}/git"
PV = "1.8.0"
PV = "1.4.2+git${SRCPV}"

View File

@@ -1,9 +1,9 @@
SUMMARY = "Ingen is a modular audio processing system for Jack and LV2 based systems"
HOMEPAGE = "http://drobilla.net/software/ingen"
LICENSE = "AGPL-3.0-only"
LICENSE = "AGPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=73f1eb20517c55bf9493b7dd6e480788"
inherit waf pkgconfig gtk-icon-cache pack_audio_plugins python3native
inherit waf pkgconfig gtk-icon-cache pack_audio_plugins pythonnative
DEPENDS += " \
boost \
@@ -16,10 +16,10 @@ DEPENDS += " \
"
SRC_URI = " \
gitsm://gitlab.com/drobilla/ingen.git;protocol=https;branch=master \
file://0001-Fix-build-for-python3-only-environments.patch \
git://github.com/drobilla/ingen.git \
file://0001-Do-not-inject-usr-local-include-to-include-paths.patch \
"
SRCREV = "36949a845cf79e105445b9bc8656f2560469dc4d"
SRCREV = "cc3d7ef610e5f93086eb46406cc600ee81a23e98"
S = "${WORKDIR}/git"
PV = "0.5.1+git${SRCPV}"
@@ -37,20 +37,20 @@ PACKAGECONFIG[doc] = "--docs,,${DOCDEPENDS}"
PACKAGES =+ "${PN}-standalone ${PN}-python"
FILES_SOLIBSDEV = "${libdir}/libingen-*${SOLIBSDEV}"
FILES_SOLIBSDEV = "${libdir}/libingen${SOLIBSDEV}"
FILES:${PN} += " \
FILES_${PN} += " \
${libdir}/libingen_*.so \
"
FILES:${PN}-standalone = " \
FILES_${PN}-standalone = " \
${datadir}/applications \
${datadir}/icons \
${bindir}/ingen \
"
# pyton tools are not expected to work: we do not have rdflib yet
FILES:${PN}-python = " \
FILES_${PN}-python = " \
${bindir}/ingenams \
${bindir}/ingenish \
${PYTHON_SITEPACKAGES_DIR} \

View File

@@ -1,7 +1,7 @@
SUMMARY = "Jalv is a simple but fully featured LV2 host for Jack"
HOMEPAGE = "http://drobilla.net/software/jalv"
LICENSE = "ISC"
LIC_FILES_CHKSUM = "file://COPYING;md5=f6c5b43b95e2c2f1a006d1310332a8fb"
LIC_FILES_CHKSUM = "file://COPYING;md5=eb60cfffc455677d4f11cf7f36c12093"
inherit waf pkgconfig gtk-icon-cache
@@ -20,13 +20,13 @@ DEPENDS += " \
"
SRC_URI = " \
gitsm://gitlab.com/drobilla/jalv.git;protocol=https;branch=master \
file://0001-Fix-build-for-python3-only-environments.patch \
git://github.com/drobilla/jalv.git \
file://0001-Do-not-inject-usr-local-include-to-include-paths.patch \
"
SRCREV = "9ab6e66c6ea7230f716b74d62c03fc5d19f56abe"
SRCREV = "8311df91cc212adf3220acfcb50ab63414fe9dd6"
S = "${WORKDIR}/git"
PV = "1.6.6"
PV = "1.6.0+git${SRCPV}"
FILES:${PN} += " \
FILES_${PN} += " \
${libdir}/jack \
"

View File

@@ -1,21 +0,0 @@
SUMMARY = "C library providing simple use of LV2 plugins"
HOMEPAGE = "http://drobilla.net/software/lilv"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=b698a6a2120a83eecb34a9c6f1b93989"
inherit waf python3native bash-completion pkgconfig
DEPENDS += "lv2 serd sord sratom"
PV = "0.24.14"
SRC_URI = " \
http://download.drobilla.net/${BPN}-${PV}.tar.bz2 \
file://0001-Fix-build-for-python3-only-environments.patch \
"
SRC_URI[sha256sum] = "6399dfcbead61a143acef3a38ad078047ab225b00470ad5d33745637341d6406"
EXTRA_OECONF = "--configdir=${sysconfdir} --dyn-manifest"
PACKAGES += "${PN}-python3"
FILES:${PN}-python3 += "${PYTHON_SITEPACKAGES_DIR}"
RDEPENDS:${PN}-python3 += "python3-core"

View File

@@ -0,0 +1,14 @@
SUMMARY = "C library providing simple use of LV2 plugins"
HOMEPAGE = "http://drobilla.net/software/lilv"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=7aceb3a3edc99517b08f5cdd557e11fb"
inherit waf bash-completion pkgconfig
DEPENDS += "lv2 serd sord sratom"
SRC_URI = "http://download.drobilla.net/${BPN}-${PV}.tar.bz2"
SRC_URI[md5sum] = "fb340958a6df5a683bf25e291493dc4d"
SRC_URI[sha256sum] = "c33b84b7a6e8e8fffb412fbcd6f69e59ca297ef3e29d829249b4ccc94f634438"
EXTRA_OECONF = "--configdir=${sysconfdir} --dyn-manifest"

View File

@@ -4,6 +4,6 @@ DEPENDS = "gtk+ libsndfile1"
EXTRA_OECONF = "--libdir=${libdir}"
FILES:${PN} += " \
FILES_${PN} += " \
${datadir} \
"

View File

@@ -3,12 +3,11 @@ LICENSE = "ISC"
LIC_FILES_CHKSUM = "file://COPYING;md5=0383f162366b0c5a316292759a55d292"
SRC_URI = " \
gitsm://github.com/lv2/lv2.git;branch=master;protocol=https \
git://github.com/drobilla/lv2.git \
file://0001-Output-more-details-on-import-error-to-catch-missing.patch \
file://0001-Fix-build-for-python3-only-environments.patch \
"
S = "${WORKDIR}/git"
SRCREV = "cd152104c84bcee9fec22ef780cec2af7ba85d0c"
PV = "1.18.2"
SRCREV = "96a6283a5fe023c59113242631f337da5f0eb278"
PV = "1.14.0+git${SRCPV}"
inherit waf pkgconfig

View File

@@ -30,12 +30,12 @@ index 23a239d..685f32e 100755
doap = rdflib.Namespace('http://usefulinc.com/ns/doap#')
diff --git a/lv2specgen/lv2specgen.py b/lv2specgen/lv2specgen.py
index 8cfa1c7..028e731 100755
index ddd0ba5..c86157e 100755
--- a/lv2specgen/lv2specgen.py
+++ b/lv2specgen/lv2specgen.py
@@ -66,13 +66,15 @@ try:
import pygments.formatters
@@ -63,13 +63,15 @@ try:
from pygments.lexer import RegexLexer, include, bygroups
from pygments.token import Text, Comment, Operator, Keyword, Name, String, Literal, Punctuation
have_pygments = True
-except ImportError:
+except ImportError as imperror:

View File

@@ -1,25 +0,0 @@
SUMMARY = "MDA-LV2 is an LV2 port of the MDA plugins by Paul Kellett"
HOMEPAGE = "https://drobilla.net/software/mda-lv2"
LICENSE = "GPL-3.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
inherit waf features_check pkgconfig
REQUIRED_DISTRO_FEATURES = "x11"
DEPENDS = "lv2"
SRC_URI = " \
gitsm://gitlab.com/drobilla/mda-lv2.git;protocol=https;branch=master \
file://0001-Fix-build-for-python3-only-environments.patch \
"
SRCREV = "19752af61234581e0f73db539d5609ab14b3d928"
PV = "1.2.6"
S = "${WORKDIR}/git"
EXTRA_OECONF = " \
--lv2dir=${libdir}/lv2 \
"
FILES:${PN} += "${libdir}/lv2"

View File

@@ -0,0 +1,21 @@
SUMMARY = "MDA-LV2 is an LV2 port of the MDA plugins by Paul Kellett"
HOMEPAGE = "https://drobilla.net/software/mda-lv2"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
inherit waf distro_features_check pkgconfig
REQUIRED_DISTRO_FEATURES = "x11"
DEPENDS = "lv2"
SRC_URI = "http://download.drobilla.net/${BPN}-${PV}.tar.bz2"
SRC_URI[md5sum] = "1962f48c54eafe52a3d2471cd3072aa8"
SRC_URI[sha256sum] = "a476c31ed9f8b009ebacc32a02d06ba9584c0d0d03f03dd62b1354d10a030442"
EXTRA_OECONF = " \
--lv2dir=${libdir}/lv2 \
"
FILES_${PN} += "${libdir}/lv2"

View File

@@ -1,7 +1,7 @@
SUMMARY = "Patchage is a modular patch bay for audio and MIDI systems"
DESCRIPTION = "Patchage is a modular patch bay for audio and MIDI systems based on Jack and Alsa"
HOMEPAGE = "http://drobilla.net/software/patchage"
LICENSE = "GPL-3.0-only"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
inherit waf gtk-icon-cache pkgconfig
@@ -13,9 +13,9 @@ DEPENDS += " \
"
SRC_URI = " \
gitsm://gitlab.com/drobilla/patchage.git;protocol=https;branch=master \
file://0001-Fix-build-for-python3-only-environments.patch \
git://git.drobilla.net/patchage.git;protocol=http \
file://0001-Do-not-inject-usr-local-include-to-include-paths.patch \
"
SRCREV = "1eed3df05526b22d716a2f89f166804f894ac5b1"
PV = "1.0.6"
SRCREV = "b69a38d171758c6e979d74541fc21d12b7e6abda"
PV = "1.0.0+git${SRCPV}"
S = "${WORKDIR}/git"

View File

@@ -1,15 +1,12 @@
SUMMARY = "Raul is a utility library primarily aimed at audio/musical applications"
DESCRIPTION = "Raul (Realtime Audio Utility Library) is a C++ utility library primarily aimed at audio/musical applications"
HOMEPAGE = "https://drobilla.net/software/raul"
LICENSE = "GPL-3.0-only"
LICENSE = "GPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
inherit waf pkgconfig
inherit waf
SRC_URI = " \
gitsm://github.com/drobilla/raul.git;protocol=https;branch=master \
file://0001-Fix-build-for-python3-only-environments.patch \
"
SRCREV = "e87bb398f025912fb989a09f1450b838b251aea1"
SRC_URI = "git://github.com/drobilla/raul.git"
SRCREV = "5eb7a555de2291f4df8c75ce261c555552725beb"
S = "${WORKDIR}/git"
PV = "1.0.0+git${SRCPV}"
PV = "0.8.10+git${SRCPV}"

View File

@@ -1,13 +0,0 @@
SUMMARY = "C library for RDF syntax which supports accessing Turtle and NTriples"
HOMEPAGE = "http://drobilla.net/software/serd"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=b698a6a2120a83eecb34a9c6f1b93989"
inherit waf pkgconfig
PV = "0.30.12"
SRC_URI = " \
http://download.drobilla.net/${BPN}-${PV}.tar.bz2 \
file://0001-Fix-build-for-python3-only-environments.patch \
"
SRC_URI[sha256sum] = "9f9dab4125d88256c1f694b6638cbdbf84c15ce31003cd83cb32fb2192d3e866"

View File

@@ -0,0 +1,10 @@
SUMMARY = "C library for RDF syntax which supports accessing Turtle and NTriples"
HOMEPAGE = "http://drobilla.net/software/serd"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=7aceb3a3edc99517b08f5cdd557e11fb"
inherit waf
SRC_URI = "http://download.drobilla.net/${BPN}-${PV}.tar.bz2"
SRC_URI[md5sum] = "82243362b8b5a47dd46dac7ae893f562"
SRC_URI[sha256sum] = "6efb0efa5c2155e6bbac941cddeeabb7ed26d70a57d24178894ff169d8f6cefb"

View File

@@ -1,15 +0,0 @@
SUMMARY = "C library for storing RDF data in memory"
HOMEPAGE = "http://drobilla.net/software/sord"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=b698a6a2120a83eecb34a9c6f1b93989"
inherit waf pkgconfig
DEPENDS += "libpcre serd"
PV = "0.16.10"
SRC_URI = " \
http://download.drobilla.net/${BPN}-${PV}.tar.bz2 \
file://0001-Fix-build-for-python3-only-environments.patch \
"
SRC_URI[sha256sum] = "9c70b3fbbb0c5c7bf761ef66c3d5b939ab45ad063e055990f17f40f1f6f96572"

View File

@@ -0,0 +1,12 @@
SUMMARY = "C library for storing RDF data in memory"
HOMEPAGE = "http://drobilla.net/software/sord"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=6b8d060e6d32fbd53684f9dc0443b6a3"
inherit waf pkgconfig
DEPENDS += "libpcre serd"
SRC_URI = "http://download.drobilla.net/${BPN}-${PV}.tar.bz2"
SRC_URI[md5sum] = "eb1d1c62ffb5153d5e1f5d12a3b7279b"
SRC_URI[sha256sum] = "09f51174dd8f3efbd95f44f0bb0b165f08e066e052d40095de59de787987da8d"

View File

@@ -1,15 +0,0 @@
SUMMARY = "Sratom is a library for serialising LV2 atoms to and from RDF"
HOMEPAGE = "http://drobilla.net/software/sratom"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=02c12fd13bfe8cd6878ad1ea35778acf"
inherit waf pkgconfig
DEPENDS += "lv2 serd sord"
PV = "0.6.10"
SRC_URI = " \
http://download.drobilla.net/${BPN}-${PV}.tar.bz2 \
file://0001-Fix-build-for-python3-only-environments.patch \
"
SRC_URI[sha256sum] = "e5951c0d7f0618672628295536a271d61c55ef0dab33ba9fc5767ed4db0a634d"

View File

@@ -0,0 +1,12 @@
SUMMARY = "Sratom is a library for serialising LV2 atoms to and from RDF"
HOMEPAGE = "http://drobilla.net/software/sratom"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=ebc7934238811c788037421c6c548ddf"
inherit waf pkgconfig
DEPENDS += "lv2 serd sord"
SRC_URI = "http://download.drobilla.net/${BPN}-${PV}.tar.bz2"
SRC_URI[md5sum] = "aa3c540032da43cf6cf68f684983d7f5"
SRC_URI[sha256sum] = "0a514a55d6b6cb7b5d6f32d1dcb78a1e6e54537fa22fce533e4ef6adf240e853"

View File

@@ -1,19 +0,0 @@
SUMMARY = "Suil is a lightweight C library for loading and wrapping LV2 plugin UIs"
HOMEPAGE = "https://drobilla.net/software/suil"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=323e8282a413e218c2ec674a44c02cf4"
inherit waf features_check pkgconfig
REQUIRED_DISTRO_FEATURES = "x11"
DEPENDS = "gtk+ gtk+3 qtbase lv2"
PV = "0.10.12"
SRC_URI = " \
http://download.drobilla.net/${BPN}-${PV}.tar.bz2 \
file://0001-Fix-build-for-python3-only-environments.patch \
"
SRC_URI[sha256sum] = "daa763b231b22a1f532530d3e04c1fae48d1e1e03785e23c9ac138f207b87ecd"
FILES:${PN} += "${libdir}/suil-0"

View File

@@ -0,0 +1,16 @@
SUMMARY = "Suil is a lightweight C library for loading and wrapping LV2 plugin UIs"
HOMEPAGE = "https://drobilla.net/software/suil"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://COPYING;md5=31b283049b7bf3fc441d62cd43d8f4b9"
inherit waf distro_features_check pkgconfig
REQUIRED_DISTRO_FEATURES = "x11"
DEPENDS = "gtk+ gtk+3 qtbase lv2"
SRC_URI = "http://download.drobilla.net/${BPN}-${PV}.tar.bz2"
SRC_URI[md5sum] = "b5a0ccb70ec0791531ee69f3a5b86ab6"
SRC_URI[sha256sum] = "a1e9899012790eef8867b5475853d76689b246cca88a99ac0d379a6c0d85c72b"
FILES_${PN} += "${libdir}/suil-0"

View File

@@ -1,6 +1,6 @@
SUMMARY = "DrumGizmo drumkit editor"
HOMEPAGE = "https://www.drumgizmo.org"
LICENSE = "LGPL-3.0-only"
LICENSE = "LGPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
DEPENDS += " \

View File

@@ -3,7 +3,7 @@ require ${BPN}.inc
inherit native
do_compile() {
${CXX} ${CXXFLAGS} -I${S}/getoptpp -o ${S}/drumgizmo-rcgen ${S}/plugingui/rcgen.cc ${LDFLAGS}
${CXX} ${CXXFLAGS} -o ${S}/drumgizmo-rcgen ${S}/plugingui/rcgen.cc $(LDFLAGS)
}
do_install() {

View File

@@ -1,8 +1,8 @@
require ${BPN}.inc
inherit autotools-brokensep pkgconfig features_check gtk-icon-cache qemu-ext-musicians
inherit autotools-brokensep pkgconfig distro_features_check gtk-icon-cache qemu-ext
REQUIRED_DISTRO_FEATURES = "x11"
REQUIRED_DISTRO_FEATURE = "x11"
DEPENDS += " \
${BPN}-native \
@@ -20,7 +20,6 @@ SRC_URI += " \
file://0001-automake-enable-subdir-objects.patch \
file://0002-Use-native-rcgen.patch \
file://0003-Do-not-create-Manifest.ttl-with-cross-ttlgen.patch \
file://0004-Do-not-perform-tests-they-don-t-work-cross.patch \
file://drumgizmo.desktop \
"
@@ -31,13 +30,13 @@ EXTRA_OECONF = " \
--disable-sse \
"
do_compile:append() {
do_compile_append() {
# build manifest.ttl
cd ${B}/plugin
${@qemu_run_binary_local(d, '${STAGING_DIR_TARGET}', 'ttlgen')} .libs/drumgizmo.so manifest.ttl || echo "ERROR: at QEMU for ttlgen"
}
do_install:append() {
do_install_append() {
install -d ${D}${datadir}/pixmaps
install -m 0644 ${S}/plugingui/resources/logo.png ${D}${datadir}/pixmaps/drumgizmo-logo.png
@@ -45,4 +44,4 @@ do_install:append() {
install -m 0644 ${WORKDIR}/${BPN}.desktop ${D}${datadir}/applications/
}
FILES:${PN} += "${libdir}/lv2"
FILES_${PN} += "${libdir}/lv2"

View File

@@ -1,11 +1,9 @@
SUMMARY = "DrumGizmo is drum plugin and stand-alone application"
HOMEPAGE = "https://www.drumgizmo.org"
LICENSE = "LGPL-3.0-only"
LICENSE = "LGPLv3"
LIC_FILES_CHKSUM = "file://COPYING;md5=e6a600fd5e1d9cbde2d983680233ad02"
SRC_URI = " \
http://www.drumgizmo.org/releases/${BPN}-${PV}/${BPN}-${PV}.tar.gz \
file://0001-Fix-build-with-gcc11.patch \
"
SRC_URI[sha256sum] = "7426f38b58fbb82d3eada60c204d74e6c5de31ef424c017e3f890117e146a2a3"
PV = "0.9.19"
SRC_URI = "http://www.drumgizmo.org/releases/${BPN}-${PV}/${BPN}-${PV}.tar.gz"
SRC_URI[md5sum] = "370b0931f5ab95952d0b85eea2533837"
SRC_URI[sha256sum] = "a1a31b2af5544e39e8e19c370fa6fee0a372a14fffa762d4d12debf4e711ec9c"
PV = "0.9.17"

View File

@@ -1,31 +0,0 @@
From 15eefcf7d4db242b1bc00db00194475646d4313d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Fri, 8 Jan 2021 17:00:44 +0100
Subject: [PATCH] Do not perform tests - they don't work cross
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Upstream-Status: Inappropriate [oe-specific]
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
Makefile.am | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 4196db7..87c401e 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,6 +1,6 @@
AUTOMAKE_OPTIONS = gnu
-SUBDIRS = tools src plugingui plugin drumgizmo man test
-DISTDIRS = tools src plugingui plugin drumgizmo man test
+SUBDIRS = tools src plugingui plugin drumgizmo man
+DISTDIRS = tools src plugingui plugin drumgizmo man
EXTRA_DIST = \
version.h \
--
2.26.2

View File

@@ -1,32 +0,0 @@
From 584273e28bceb0b52b5b852b56950a04a4fcc4a2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Sat, 8 May 2021 15:42:48 +0200
Subject: [PATCH] Fix build with gcc11
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
| translation.h:35:6: error: 'uint64_t' in namespace 'std' does not name a type; did you mean 'wint_t'?
| 35 | std::uint64_t constexpr const_hash(const char* input)
| | ^~~~~~~~
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
---
src/translation.h | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/translation.h b/src/translation.h
index 7f506a6..43545b0 100644
--- a/src/translation.h
+++ b/src/translation.h
@@ -31,6 +31,7 @@
#ifdef WITH_NLS
#include <memory>
+#include <cstdint>
std::uint64_t constexpr const_hash(const char* input)
{
--
2.30.2

View File

@@ -14,18 +14,18 @@ Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/plugingui/Makefile.am b/plugingui/Makefile.am
index d102024..8a4a677 100644
index dd36783..ca30e84 100644
--- a/plugingui/Makefile.am
+++ b/plugingui/Makefile.am
@@ -71,7 +71,7 @@ BUILT_SOURCES = \
$(NLS_RES)
@@ -28,7 +28,7 @@ RES = \
../COPYING
resource_data.cc: rcgen$(EXEEXT) $(RES) $(NLS_RES)
- $(rcgen_verbose)./rcgen$(EXEEXT) -s $(top_srcdir)/plugingui/ -s $(top_builddir)/plugingui/ -o $@ $(RES) $(NLS_RES)
+ drumgizmo-rcgen -s $(top_srcdir)/plugingui/ -s $(top_builddir)/plugingui/ -o $@ $(RES) $(NLS_RES)
resource_data.cc : rcgen $(RES)
- ./rcgen $(RES) > resource_data.cc
+ drumgizmo-rcgen $(RES) > resource_data.cc
CLEANFILES = \
resource_data.cc \
libdggui_la_CPPFLAGS = \
$(GUI_CPPFLAGS) \
--
2.26.2
2.14.3

View File

@@ -1,6 +1,6 @@
From 5e5395fb24a2fac8e5377aba16e5a47ccfba977f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
Date: Thu, 24 Oct 2019 21:47:59 +0200
Date: Wed, 31 Jul 2019 20:20:25 +0200
Subject: [PATCH] Do not create Manifest.ttl with cross ttlgen
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
@@ -14,18 +14,18 @@ Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/plugin/Makefile.am b/plugin/Makefile.am
index f382acc..2181854 100644
index 7751154..d22f9c5 100644
--- a/plugin/Makefile.am
+++ b/plugin/Makefile.am
@@ -75,7 +75,7 @@ ttlgen_verbose_ = $(ttlgen_verbose_@AM_DEFAULT_V@)
ttlgen_verbose_0 = @echo " TTLGEN "$@;
@@ -42,7 +42,7 @@ ttlgen_SOURCES = \
$(top_srcdir)/plugin/plugingizmo/ttlgen.cc
manifest.ttl : ttlgen drumgizmo.la
- $(ttlgen_verbose)./ttlgen .libs/drumgizmo.so manifest.ttl $(UITYPE) > /dev/null
+ echo $(ttlgen_verbose)./ttlgen .libs/drumgizmo.so manifest.ttl $(UITYPE) > /dev/null
- ./ttlgen .libs/drumgizmo.so manifest.ttl
+ echo ./ttlgen .libs/drumgizmo.so manifest.ttl
#######
--
2.26.2
2.21.0

Some files were not shown because too many files have changed in this diff Show More