Bundle LV2 ontology with ardour binaries

This is needed for LV2 classes inheritance and to expand
properties of parent classes.

https://github.com/iurie-sw/geonkick/issues/130#issuecomment-714416342
This commit is contained in:
Robin Gareus 2020-10-22 13:43:10 +02:00
parent 32a0c6a3ff
commit e9144d1542
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04
3 changed files with 22 additions and 34 deletions

View File

@ -9,8 +9,6 @@
# where the GTK stack is installed # where the GTK stack is installed
GTKSTACK_ROOT=$HOME/gtk/inst GTKSTACK_ROOT=$HOME/gtk/inst
# where the Ardour dependencies are installed
ARDOURSTACK_ROOT=$HOME/a3/inst
# the waf build tree to use when copying built/generated files # the waf build tree to use when copying built/generated files
BUILD_ROOT=../../build BUILD_ROOT=../../build
@ -436,11 +434,6 @@ if test -d $GTKSTACK_ROOT/lib/suil-0/ ; then
cp $GTKSTACK_ROOT/lib/suil-0/lib* $Libraries cp $GTKSTACK_ROOT/lib/suil-0/lib* $Libraries
fi fi
# Suil modules (old dir 'build-ardour-stack')
if test -d $ARDOURSTACK_ROOT/lib/suil-0/ ; then
cp $ARDOURSTACK_ROOT/lib/suil-0/lib* $Libraries
fi
# VST scanner app (both LXVST as well as WIN-VST, 2in1) # VST scanner app (both LXVST as well as WIN-VST, 2in1)
# (if build with wine: ardour-vst-scanner is a wrapper # (if build with wine: ardour-vst-scanner is a wrapper
# script for ardour-vst-scanner.exe.so, if VST is disabled # script for ardour-vst-scanner.exe.so, if VST is disabled
@ -674,14 +667,12 @@ fi
# install bundled LV2s to <app>/lib/LV2/ # install bundled LV2s to <app>/lib/LV2/
cp -R $BUILD_ROOT/libs/LV2 $APPLIB/ cp -R $BUILD_ROOT/libs/LV2 $APPLIB/
# lv2 core, classifications etc - TODO check if we need the complete LV2 ontology # lv2 core, classifications
if test -d $ARDOURSTACK_ROOT/lib/lv2/lv2core.lv2 ; then for file in $GTKSTACK_ROOT/lib/lv2/*.lv2; do
mkdir -p $APPLIB/LV2/lv2core.lv2 BN=$(basename $file)
cp -R $ARDOURSTACK_ROOT/lib/lv2/lv2core.lv2/*.ttl $APPLIB/LV2/lv2core.lv2/ mkdir -p $APPLIB/LV2/$file
elif test -d $GTKSTACK_ROOT/lib/lv2/lv2core.lv2 ; then cp $GTKSTACK_ROOT/lib/lv2/${file}/*.ttl $APPLIB/LV2/${file}.lv2/
mkdir -p $APPLIB/LV2/lv2core.lv2 done
cp -R $GTKSTACK_ROOT/lib/lv2/lv2core.lv2/*.ttl $APPLIB/LV2/lv2core.lv2/
fi
# go through and recursively remove any .svn dirs in the bundle # go through and recursively remove any .svn dirs in the bundle
for svndir in `find $APPDIR -name .svn -type d`; do for svndir in `find $APPDIR -name .svn -type d`; do

View File

@ -5,7 +5,6 @@ set -e
# script for pulling together a MacOSX app bundle. # script for pulling together a MacOSX app bundle.
GTKSTACK_ROOT=$HOME/gtk/inst GTKSTACK_ROOT=$HOME/gtk/inst
ARDOURSTACK_ROOT=$HOME/a3/inst
BUILD_ROOT=../../build BUILD_ROOT=../../build
# where harvid and xjadeo binaries are cached # where harvid and xjadeo binaries are cached
@ -390,11 +389,6 @@ if test -d $GTKSTACK_ROOT/lib/suil-0/ ; then
cp $GTKSTACK_ROOT/lib/suil-0/lib* $Frameworks cp $GTKSTACK_ROOT/lib/suil-0/lib* $Frameworks
fi fi
# Suil modules (old dir 'build-ardour-stack')
if test -d $ARDOURSTACK_ROOT/lib/suil-0/ ; then
cp $ARDOURSTACK_ROOT/lib/suil-0/lib* $Frameworks
fi
# VST scanner app and wrapper script, if they exist # VST scanner app and wrapper script, if they exist
if test -d $BUILD_ROOT/libs/fst ; then if test -d $BUILD_ROOT/libs/fst ; then
cp $BUILD_ROOT/libs/fst/ardour-vst-scanner* $Frameworks/ || true cp $BUILD_ROOT/libs/fst/ardour-vst-scanner* $Frameworks/ || true
@ -457,7 +451,7 @@ while [ true ] ; do
strip -u -r -arch all $file &>/dev/null strip -u -r -arch all $file &>/dev/null
fi fi
deps=`otool -L $file | awk '{print $1}' | egrep "($GTKSTACK_ROOT|$ARDOURSTACK_ROOT|/opt/|/local/|libs/$STDCPP)" | grep -v 'libjack\.' | grep -v "$(basename $file)"` deps=`otool -L $file | awk '{print $1}' | egrep "($GTKSTACK_ROOT|/opt/|/local/|libs/$STDCPP)" | grep -v 'libjack\.' | grep -v "$(basename $file)"`
# echo -n "." # echo -n "."
for dep in $deps ; do for dep in $deps ; do
base=`basename $dep` base=`basename $dep`
@ -529,12 +523,12 @@ fi
# install bundled LV2s to <app>/Contents/lib/LV2/ # install bundled LV2s to <app>/Contents/lib/LV2/
cp -R $BUILD_ROOT/libs/LV2 $Frameworks/ cp -R $BUILD_ROOT/libs/LV2 $Frameworks/
# lv2 core, classifications etc - TODO check if we need the complete LV2 ontology # lv2 core, classifications
if test -d $ARDOURSTACK_ROOT/lib/lv2/lv2core.lv2 ; then for file in $GTKSTACK_ROOT/lib/lv2/*.lv2; do
cp -R $ARDOURSTACK_ROOT/lib/lv2/lv2core.lv2 $Frameworks/LV2/ BN=$(basename $file)
elif test -d $GTKSTACK_ROOT/lib/lv2/lv2core.lv2 ; then mkdir -p $APPLIB/LV2/$file
cp -R $GTKSTACK_ROOT/lib/lv2/lv2core.lv2 $Frameworks/LV2/ cp $GTKSTACK_ROOT/lib/lv2/${file}/*.ttl $APPLIB/LV2/${file}.lv2/
fi done
# now fix up the executables # now fix up the executables
@ -559,7 +553,7 @@ for exe in $executables; do
echo "Processing Executable: $exe" echo "Processing Executable: $exe"
EXE=$APPROOT/MacOS/$exe EXE=$APPROOT/MacOS/$exe
changes="" changes=""
for lib in `otool -L $EXE | egrep "($GTKSTACK_ROOT|$ARDOURSTACK_ROOT|/opt/|/local/|libs/$STDCPP)" | awk '{print $1}' | grep -v 'libjack\.'` ; do for lib in `otool -L $EXE | egrep "($GTKSTACK_ROOT|/opt/|/local/|libs/$STDCPP)" | awk '{print $1}' | grep -v 'libjack\.'` ; do
base=`basename $lib` base=`basename $lib`
changes="$changes -change $lib @executable_path/../lib/$base" changes="$changes -change $lib @executable_path/../lib/$base"
done done
@ -585,7 +579,7 @@ for libdir in $Frameworks $Frameworks/modules $Surfaces $Panners $Backends $Fram
# change all the dependencies # change all the dependencies
changes="" changes=""
for lib in `otool -L $dylib | egrep "($GTKSTACK_ROOT|$ARDOURSTACK_ROOT|/opt/|/local/|libs/$STDCPP)" | awk '{print $1}' | grep -v 'libjack\.'` ; do for lib in `otool -L $dylib | egrep "($GTKSTACK_ROOT|/opt/|/local/|libs/$STDCPP)" | awk '{print $1}' | grep -v 'libjack\.'` ; do
base=`basename $lib` base=`basename $lib`
if echo $lib | grep -s libbase; then if echo $lib | grep -s libbase; then
changes="$changes -change $lib @executable_path/../$libbase/$base" changes="$changes -change $lib @executable_path/../$libbase/$base"

View File

@ -170,10 +170,13 @@ cp -r build/libs/vamp-plugins/*ardourvampplugins*.dll $ALIBDIR/vamp/libardourvam
cp -r build/libs/vamp-pyin/*ardourvamppyin*.dll $ALIBDIR/vamp/libardourvamppyin.dll cp -r build/libs/vamp-pyin/*ardourvamppyin*.dll $ALIBDIR/vamp/libardourvamppyin.dll
cp $PREFIX/lib/suil-*/*.dll $ALIBDIR/suil/ || true cp $PREFIX/lib/suil-*/*.dll $ALIBDIR/suil/ || true
# lv2 core, classifications etc - TODO check if we need the complete LV2 ontology # lv2 core, classifications
if test -d $PREFIX/lib/lv2/lv2core.lv2 ; then for file in $PREFIX/lib/lv2/*.lv2; do
cp -R $PREFIX/lib/lv2/lv2core.lv2 $ALIBDIR/LV2/ BN=$(basename $file)
fi mkdir -p $ALIBDIR/LV2/$file
cp $PREFIX/lib/lv2/${file}/*.ttl $ALIBDIR/LV2/${file}.lv2/
done
mv $ALIBDIR/surfaces/ardourcp*.dll $DESTDIR/bin/ mv $ALIBDIR/surfaces/ardourcp*.dll $DESTDIR/bin/