Browse Source

Cleanup, put plugins versions, try setup multiple artifacts

Signed-off-by: falkTX <falktx@falktx.com>
master
falkTX 3 weeks ago
parent
commit
1a23b80266
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
5 changed files with 117 additions and 34 deletions
  1. +47
    -0
      .github/workflows/bootstrap-common.yml
  2. +6
    -2
      .github/workflows/bootstrap-plugins.yml
  3. +0
    -0
      .github/workflows/plugins.yml.todo
  4. +19
    -19
      bootstrap-plugins.sh
  5. +45
    -13
      setup/versions.sh

+ 47
- 0
.github/workflows/bootstrap-common.yml View File

@@ -0,0 +1,47 @@
name: bootstrap-common

on:
push:
branches:
- '*'
pull_request:
branches:
- '*'
env:
DEBIAN_FRONTEND: noninteractive
HOMEBREW_NO_AUTO_UPDATE: 1

jobs:
# linux native build
linux:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Set up cache
uses: actions/cache@v2
with:
path: |
~/PawPawBuilds/builds
~/PawPawBuilds/debs
~/PawPawBuilds/downloads
~/PawPawBuilds/targets
key: bootstrap-common-linux
- name: Restore debian package cache
run: |
if [ -d ~/PawPawBuilds/debs ] && [ "$(ls ~/PawPawBuilds/debs | wc -l)" -ne 0 ]; then \
sudo cp ~/PawPawBuilds/debs/*.deb /var/cache/apt/archives/; \
fi
- name: Set up dependencies
run: |
sudo apt-get update -qq
sudo apt-get install -yq build-essential curl cmake jq meson
# extra, for using system libraries
sudo apt-get install -yq libglib2.0-dev
- name: Cache debian packages
run: |
mkdir -p ~/PawPawBuilds/debs
sudo mv /var/cache/apt/archives/*.deb ~/PawPawBuilds/debs/
- name: Bootstrap Linux native
shell: bash
run: |
./bootstrap-common.sh linux && ./.cleanup.sh linux

+ 6
- 2
.github/workflows/bootstrap-plugins.yml View File

@@ -17,6 +17,10 @@ jobs:
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Download bootstrap-common artifact
uses: actions/download-artifact@v2
with:
name: bootstrap-common
- name: Set up cache
uses: actions/cache@v2
with:
@@ -25,7 +29,7 @@ jobs:
~/PawPawBuilds/debs
~/PawPawBuilds/downloads
~/PawPawBuilds/targets
key: bootstrap-common-linux
key: bootstrap-plugins-linux
- name: Restore debian package cache
run: |
if [ -d ~/PawPawBuilds/debs ] && [ "$(ls ~/PawPawBuilds/debs | wc -l)" -ne 0 ]; then \
@@ -44,4 +48,4 @@ jobs:
- name: Bootstrap Linux native
shell: bash
run: |
./bootstrap-common.sh linux && ./.cleanup.sh linux
./bootstrap-plugins.sh linux && ./.cleanup.sh linux

.github/workflows/plugins.yml → .github/workflows/plugins.yml.todo View File


+ 19
- 19
bootstrap-plugins.sh View File

@@ -41,7 +41,7 @@ fi
# FFTW_EXTRAFLAGS+=" --enable-threads"
# fi

download fftw "${FFTW_VERSION}" "http://www.fftw.org"
download fftw "${FFTW_VERSION}" "${FFTW_URL}"

if [ "${MACOS_OLD}" -eq 1 ]; then
patch_file fftw "${FFTW_VERSION}" "configure" 's/CFLAGS="$CFLAGS -Wl,-no_compact_unwind"/CFLAGS="$CFLAGS"/'
@@ -74,7 +74,7 @@ if [ "${MACOS}" -eq 1 ] || [ "${WIN32}" -eq 1 ]; then
GLIB_EXTRAFLAGS="--with-threads=posix"
fi

download glib ${GLIB_VERSION} "http://download.gnome.org/sources/glib/${GLIB_MVERSION}" "${GLIB_TAR_EXT}"
download glib ${GLIB_VERSION} "${GLIB_URL}" "${GLIB_TAR_EXT}"

if [ "${MACOS}" -eq 1 ]; then
export EXTRA_LDFLAGS="-lresolv"
@@ -101,27 +101,27 @@ fi
# ---------------------------------------------------------------------------------------------------------------------
# liblo

download liblo "${LIBLO_VERSION}" "http://download.sourceforge.net/liblo"
download liblo "${LIBLO_VERSION}" "${LIBLO_URL}"
build_autoconf liblo "${LIBLO_VERSION}" "--enable-threads --disable-examples --disable-tests --disable-tools"

# ---------------------------------------------------------------------------------------------------------------------
# pcre (needed for sord_validate, only relevant if we can run the resulting binaries)

if [ "${CROSS_COMPILING}" -eq 0 ] || [ -n "${EXE_WRAPPER}" ]; then
download pcre "${PCRE_VERSION}" "https://ftp.pcre.org/pub/pcre"
download pcre "${PCRE_VERSION}" "${PCRE_URL}"
build_autoconf pcre "${PCRE_VERSION}"
fi

# ---------------------------------------------------------------------------------------------------------------------
# lv2

download lv2 "${LV2_VERSION}" "https://gitlab.com/lv2/lv2.git" "" "git"
git_clone lv2 "${LV2_VERSION}" "${LV2_URL}"
build_waf lv2 "${LV2_VERSION}" "--lv2dir=${PAWPAW_PREFIX}/lib/lv2 --no-coverage --no-plugins"

# ---------------------------------------------------------------------------------------------------------------------
# serd

download serd "${SERD_VERSION}" "http://download.drobilla.net/" "tar.bz2"
download serd "${SERD_VERSION}" "${SERD_URL}" "tar.bz2"
build_waf serd "${SERD_VERSION}" "--static --no-shared --no-utils"

# ---------------------------------------------------------------------------------------------------------------------
@@ -131,19 +131,19 @@ if [ "${CROSS_COMPILING}" -eq 1 ] && [ -z "${EXE_WRAPPER}" ]; then
SORD_EXTRAFLAGS="--no-utils"
fi

download sord "${SORD_VERSION}" "http://download.drobilla.net/" "tar.bz2"
download sord "${SORD_VERSION}" "${SORD_URL}" "tar.bz2"
build_waf sord "${SORD_VERSION}" "--static --no-shared ${SORD_EXTRAFLAGS}"

# ---------------------------------------------------------------------------------------------------------------------
# sratom

download sratom "${SRATOM_VERSION}" "http://download.drobilla.net/" "tar.bz2"
download sratom "${SRATOM_VERSION}" "${SRATOM_URL}" "tar.bz2"
build_waf sratom "${SRATOM_VERSION}" "--static --no-shared"

# ---------------------------------------------------------------------------------------------------------------------
# lilv

download lilv "${LILV_VERSION}" "http://download.drobilla.net/" "tar.bz2"
download lilv "${LILV_VERSION}" "${LILV_URL}" "tar.bz2"
build_waf lilv "${LILV_VERSION}" "--static --no-bash-completion --no-bindings --no-shared"
# --static-progs

@@ -151,7 +151,7 @@ build_waf lilv "${LILV_VERSION}" "--static --no-bash-completion --no-bindings --
# lv2lint

if [ "${LV2LINT_SUPPORTED}" -eq 1 ]; then
download lv2lint "${LV2LINT_VERSION}" "https://gitlab.com/OpenMusicKontrollers/lv2lint/-/archive/${LV2LINT_VERSION}"
download lv2lint "${LV2LINT_VERSION}" "${LV2LINT_URL}"
build_meson lv2lint "${LV2LINT_VERSION}"
# "-Donline-tests=true -Delf-tests=true"
fi
@@ -159,13 +159,13 @@ fi
# ---------------------------------------------------------------------------------------------------------------------
# kxstudio lv2 extensions

download kxstudio-lv2-extensions "${KXSTUDIO_LV2_EXTENSIONS_VERSION}" "https://github.com/KXStudio/LV2-Extensions.git" "" "git"
git_clone kxstudio-lv2-extensions "${KXSTUDIO_LV2_EXTENSIONS_VERSION}" "${KXSTUDIO_LV2_EXTENSIONS_URL}"
build_make kxstudio-lv2-extensions "${KXSTUDIO_LV2_EXTENSIONS_VERSION}"

# ---------------------------------------------------------------------------------------------------------------------
# MOD lv2 extensions

download mod-sdk "${MOD_SDK_VERSION}" "https://github.com/moddevices/mod-sdk.git" "" "git"
git_clone mod-sdk "${MOD_SDK_VERSION}" "${MOD_SDK_URL}"
build_make mod-sdk "${MOD_SDK_VERSION}"

# ---------------------------------------------------------------------------------------------------------------------
@@ -193,9 +193,9 @@ FLUIDSYNTH_EXTRAFLAGS+=" -Denable-pulseaudio=OFF"
FLUIDSYNTH_EXTRAFLAGS+=" -Denable-readline=OFF"
FLUIDSYNTH_EXTRAFLAGS+=" -Denable-trap-on-fpe=OFF"

download fluidsynth ${FLUIDSYNTH_VERSION} "https://github.com/FluidSynth/fluidsynth.git" "" "git"
patch_file fluidsynth ${FLUIDSYNTH_VERSION} "CMakeLists.txt" 's/_init_lib_suffix "64"/_init_lib_suffix ""/'
build_cmake fluidsynth ${FLUIDSYNTH_VERSION} "${FLUIDSYNTH_EXTRAFLAGS}"
git_clone fluidsynth "${FLUIDSYNTH_VERSION}" "${FLUIDSYNTH_URL}"
patch_file fluidsynth "${FLUIDSYNTH_VERSION}" "CMakeLists.txt" 's/_init_lib_suffix "64"/_init_lib_suffix ""/'
build_cmake fluidsynth "${FLUIDSYNTH_VERSION}" "${FLUIDSYNTH_EXTRAFLAGS}"

if [ ! -e "${PAWPAW_PREFIX}/lib/pkgconfig/fluidsynth.pc-e" ]; then
if [ "${MACOS}" -eq 1 ]; then
@@ -209,8 +209,8 @@ fi
# ---------------------------------------------------------------------------------------------------------------------
# mxml

download mxml ${MXML_VERSION} "https://github.com/michaelrsweet/mxml.git" "" "git"
build_autoconf mxml ${MXML_VERSION}
git_clone mxml "${MXML_VERSION}" "${MXML_URL}"
build_autoconf mxml "${MXML_VERSION}"

# ---------------------------------------------------------------------------------------------------------------------
# carla (backend only)
@@ -239,8 +239,8 @@ CARLA_EXTRAFLAGS+=" USING_JUCE=false"
CARLA_EXTRAFLAGS+=" USING_JUCE_AUDIO_DEVICES=false"
CARLA_EXTRAFLAGS+=" USING_JUCE_GUI_EXTRA=false"

download carla ${CARLA_VERSION} "https://github.com/falkTX/Carla.git" "" "git"
build_make carla ${CARLA_VERSION} "${CARLA_EXTRAFLAGS}"
git_clone carla "${CARLA_VERSION}" "${CARLA_URL}"
build_make carla "${CARLA_VERSION}" "${CARLA_EXTRAFLAGS}"

# ---------------------------------------------------------------------------------------------------------------------
# wine bootstrap (needed for cross-compilation)


+ 45
- 13
setup/versions.sh View File

@@ -3,6 +3,7 @@
# ---------------------------------------------------------------------------------------------------------------------
# common URLs

DROBILLA_URL=http://download.drobilla.net
XIPH_URL=https://downloads.xiph.org/releases

# ---------------------------------------------------------------------------------------------------------------------
@@ -38,24 +39,55 @@ ZLIB_VERSION=cacf7f1d4e3d44d871b605da3b647f07d718623f # 1.2.11
# ---------------------------------------------------------------------------------------------------------------------
# bootstrap plugins

FLUIDSYNTH_VERSION=f65c6ba25fb2c7e37c89fc6a4afc5aa645e208c2 # 1.1.11
GLIB_VERSION=2.22.5
FFTW_URL=http://www.fftw.org
FFTW_VERSION=3.3.9

GLIB_URL=http://download.gnome.org/sources/glib/2.22
GLIB_MVERSION=2.22
GLIB_VERSION=2.22.5

LIBLO_URL=http://download.sourceforge.net/liblo
LIBLO_VERSION=0.30

CARLA_VERSION=ca44f4bc538690e76f4e02544f047ad9d559a1b8
FFTW_VERSION=3.3.9
KXSTUDIO_LV2_EXTENSIONS_VERSION=fae65fbc173cd2c4367e85917a6ef97280532d88
LILV_VERSION=0.24.12
LV2_VERSION=6cefc7df1a6158c79d23029df183c09b10b88cad
LV2LINT_VERSION=0.8.0
MOD_SDK_VERSION=2fe7c7728faa551b2838baa49c0d1953c64f2151
MXML_VERSION=38b044ed8ca2a611ed9ed3e26c4b46416335194e # 3.2
PCRE_URL=https://ftp.pcre.org/pub/pcre
PCRE_VERSION=8.44

LV2_URL=https://gitlab.com/lv2/lv2.git
LV2_VERSION=6cefc7df1a6158c79d23029df183c09b10b88cad

SERD_URL=${DROBILLA_URL}
SERD_VERSION=0.30.8

SORD_URL=${DROBILLA_URL}
SORD_VERSION=0.16.8

SRATOM_URL=${DROBILLA_URL}
SRATOM_VERSION=0.6.8

LILV_URL=${DROBILLA_URL}
LILV_VERSION=0.24.12

LV2LINT_URL=https://gitlab.com/OpenMusicKontrollers/lv2lint/-/archive/0.8.0
LV2LINT_VERSION=0.8.0

KXSTUDIO_LV2_EXTENSIONS_URL=https://github.com/KXStudio/LV2-Extensions.git
KXSTUDIO_LV2_EXTENSIONS_VERSION=fae65fbc173cd2c4367e85917a6ef97280532d88

MOD_SDK_URL=https://github.com/moddevices/mod-sdk.git
MOD_SDK_VERSION=2fe7c7728faa551b2838baa49c0d1953c64f2151

FLUIDSYNTH_URL=https://github.com/FluidSynth/fluidsynth.git
FLUIDSYNTH_VERSION=f65c6ba25fb2c7e37c89fc6a4afc5aa645e208c2 # 1.1.11

MXML_URL=https://github.com/michaelrsweet/mxml.git
MXML_VERSION=38b044ed8ca2a611ed9ed3e26c4b46416335194e # 3.2

CARLA_URL=https://github.com/falkTX/Carla.git
CARLA_VERSION=ca44f4bc538690e76f4e02544f047ad9d559a1b8

# ---------------------------------------------------------------------------------------------------------------------
# check if lv2lint is supported

LV2LINT_SUPPORTED=1

if [ "${MACOS_OLD}" -eq 1 ] || [ "${CROSS_COMPILING}" -eq 1 ]; then
@@ -66,7 +98,7 @@ if [ "${MACOS}" -eq 1 ] && [ "$(uname -r)" = "12.6.0" ]; then
fi

# ---------------------------------------------------------------------------------------------------------------------
# qt stuff
# bootstrap qt stuff

if [ "${MACOS_UNIVERSAL}" -eq 1 ]; then
QT5_VERSION=5.12.11
@@ -77,7 +109,7 @@ else
fi

# ---------------------------------------------------------------------------------------------------------------------
# carla
# bootstrap carla

FILE_VERSION=5.34
LIBFFI_VERSION=3.3
@@ -110,7 +142,7 @@ else
fi

# ---------------------------------------------------------------------------------------------------------------------
# jack
# bootstrap jack

AFTEN_VERSION=0.0.8
DB_VERSION=5.3.28


Loading…
Cancel
Save