Browse Source

Update die-plugins; Add plugin validation; Rebuild

tags/v1.0
falkTX 3 years ago
parent
commit
e93d54b4c9
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
5 changed files with 75 additions and 6 deletions
  1. +1
    -1
      .travis.yml
  2. +4
    -4
      .travis/script.sh
  3. +66
    -0
      build-plugins.sh
  4. +1
    -1
      plugins/die-plugins.json
  5. +3
    -0
      setup/env.sh

+ 1
- 1
.travis.yml View File

@@ -13,7 +13,7 @@ cache:

env:
global:
- BOOTSTRAP_VERSION=4
- BOOTSTRAP_VERSION=5

jobs:
include:


+ 4
- 4
.travis/script.sh View File

@@ -13,11 +13,11 @@ else
LAST_BOOTSTRAP_VERSION=0
fi

PLUGINS_BASE="abgate artyfx caps die-plugins fomp mda"
PLUGINS_CROSS="blop dpf-plugins ninjas2"
PLUGINS_DISTRHO="distrho-ports-arctican distrho-ports-drowaudio distrho-ports-tal-plugins"
# PLUGINS_BASE="abgate artyfx caps die-plugins fomp mda"
# PLUGINS_CROSS="blop dpf-plugins ninjas2"
# PLUGINS_DISTRHO="distrho-ports-arctican distrho-ports-drowaudio distrho-ports-tal-plugins"

# only build full set of distrho-ports if we have previously cached builds, otherwise we time-out travis
# only build full set of distrho-ports if we have previously cached builds, otherwise we time-out in travis
if [ ${LAST_BOOTSTRAP_VERSION} -eq ${BOOTSTRAP_VERSION} ]; then
PLUGINS_DISTRHO+=" distrho-ports-dexed"
PLUGINS_DISTRHO+=" distrho-ports-klangfalter"


+ 66
- 0
build-plugins.sh View File

@@ -27,12 +27,50 @@ source setup/versions.sh

# ---------------------------------------------------------------------------------------------------------------------

LV2DIR="${PAWPAW_PREFIX}/lib/lv2"

if [ "${WIN32}" -eq 1 ] && [ ! -d "${HOME}/.wine" ]; then
env WINEARCH="${PAWPAW_TARGET}" WINEDLLOVERRIDES="mscoree,mshtml=" wineboot -u
fi

function validate_lv2_bundle() {
local lv2bundle="${1}"

rm -rf /tmp/pawpaw-plugin-check
mkdir /tmp/pawpaw-plugin-check
cp -r "${LV2DIR}/${lv2bundle}" /tmp/pawpaw-plugin-check/

env LANG=C LV2_PATH="${LV2DIR}" \
"${PAWPAW_PREFIX}/bin/lv2_validate" \
"${LV2DIR}/kx-*/*.ttl" \
"/tmp/pawpaw-plugin-check/${lv2bundle}/*.ttl" 1>&2

env LANG=C LV2_PATH=/tmp/pawpaw-plugin-check WINEDEBUG=-all \
"${EXE_WRAPPER}" \
"${PAWPAW_PREFIX}/bin/lv2ls${APP_EXT}" | tr -d '\r'

rm -rf /tmp/pawpaw-plugin-check
}

function validate_lv2_plugin() {
local lv2plugin="${1}"

local carlaenv="CARLA_BRIDGE_DUMMY=1 CARLA_BRIDGE_TESTING=1"

if [ "${WIN64}" -eq 1 ]; then
carlaenv+=" CARLA_BRIDGE_PLUGIN_BINARY_TYPE=win64"
elif [ "${WIN32}" -eq 1 ]; then
carlaenv+=" CARLA_BRIDGE_PLUGIN_BINARY_TYPE=win32"
fi

env LANG=C LV2_PATH="${LV2DIR}" WINEDEBUG=-all ${carlaenv} \
carla-single lv2 "${lv2plugin}" 1>/dev/null
}

# ---------------------------------------------------------------------------------------------------------------------

exitcode=0

for plugin in ${@}; do
pfile="${PAWPAW_ROOT}/plugins/${plugin}.json"

@@ -45,6 +83,7 @@ for plugin in ${@}; do
version=$(jq -crM .version ${pfile})
buildtype=$(jq -crM .buildtype ${pfile})
dlbaseurl=$(jq -crM .dlbaseurl ${pfile})
lv2bundles=($(jq -crM .lv2bundles[] ${pfile}))

# optional args
buildargs=$(echo -e $(jq -ecrM .buildargs ${pfile} || echo '\n\n') | tail -n 1)
@@ -73,6 +112,33 @@ for plugin in ${@}; do
build_waf "${name}" "${version}" "${buildargs}"
;;
esac

# validate all bundles
for lv2bundle in ${lv2bundles[@]}; do
echo -n "Validating ${lv2bundle}... "
if [ ! -f "${LV2DIR}/${lv2bundle}/manifest.ttl" ]; then
echo "manifest.ttl file missing"
exitcode=1
continue
fi

echo

# lv2 metadata validation
lv2plugins=($(validate_lv2_bundle "${lv2bundle}"))

# lv2 plugin count
echo "Found ${#lv2plugins[@]} plugin(s)"

# real host test
for lv2plugin in ${lv2plugins[@]}; do
echo -n "Verifying ${lv2plugin}... "
validate_lv2_plugin ${lv2plugin}
echo "ok"
done
done
done

exit ${exitcode}

# ---------------------------------------------------------------------------------------------------------------------

+ 1
- 1
plugins/die-plugins.json View File

@@ -8,7 +8,7 @@
"distrho-a-fluidsynth.lv2",
"distrho-a-reverb.lv2"
],
"version": "b647e5b623c82a0221c89ac0a547727b0a6608ab",
"version": "4b12869a1c2bab6500f7d1f2ece2e19b6350ed37",
"description": "DISTRHO Imported Effect",
"dlbaseurl": "https://github.com/DISTRHO/DIE-Plugins.git",
"dlmethod": "git",


+ 3
- 0
setup/env.sh View File

@@ -4,10 +4,12 @@
# OS setup

if [ "${LINUX}" -eq 1 ]; then
APP_EXT=""
CMAKE_SYSTEM_NAME="Linux"
PAWPAW_TARGET="linux"

elif [ "${MACOS}" -eq 1 ]; then
APP_EXT=""
CMAKE_SYSTEM_NAME="Darwin"
if [ "${MACOS_OLD}" -eq 1 ]; then
PAWPAW_TARGET="macos-old"
@@ -18,6 +20,7 @@ elif [ "${MACOS}" -eq 1 ]; then
fi

elif [ "${WIN32}" -eq 1 ]; then
APP_EXT=".exe"
CMAKE_SYSTEM_NAME="Windows"
if [ "${WIN64}" -eq 1 ]; then
PAWPAW_TARGET="win64"


Loading…
Cancel
Save