Browse Source

Add "extra" make step to build extra carla bridges, enable in CI

Signed-off-by: falkTX <falktx@falktx.com>
tags/v1.2
falkTX 2 years ago
parent
commit
9646f35806
Signed by: falkTX <falktx@falktx.com> GPG Key ID: CDBAA37ABC74FBA0
4 changed files with 79 additions and 4 deletions
  1. +11
    -0
      .github/workflows/build.yml
  2. +30
    -0
      Makefile
  3. +1
    -1
      carla
  4. +37
    -3
      plugins/Common/Makefile.mk

+ 11
- 0
.github/workflows/build.yml View File

@@ -122,6 +122,7 @@ jobs:
sudo dpkg --add-architecture i386
sudo apt-get update -qq
sudo apt-get install -yqq g++-i686-linux-gnu libasound2-dev:i386 libdbus-1-dev:i386 libgl1-mesa-dev:i386 libglib2.0-dev:i386 libx11-dev:i386 libxcursor-dev:i386 libxext-dev:i386 libxrandr-dev:i386
sudo apt-get install -yqq binutils-mingw-w64-i686 g++-mingw-w64-i686 mingw-w64 wine-stable wine64-tools
- name: Build extra dependencies
run: |
git clone --depth=1 https://github.com/DISTRHO/PawPaw.git
@@ -131,6 +132,7 @@ jobs:
pushd PawPaw; source local.env linux-i686; popd
make features
make NOOPT=true WITH_LTO=true -j $(nproc)
make WITH_LTO=true extra -j $(nproc)
- name: Set sha8
id: slug
run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"
@@ -197,10 +199,18 @@ jobs:
path: |
~/PawPawBuilds
key: linux-x86_64-v${{ env.CACHE_VERSION }}
- name: Fix GitHub's mess
run: |
sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
sudo apt-get update -qq
sudo apt-get install -yqq --allow-downgrades libgd3/focal libpcre2-8-0/focal libpcre2-16-0/focal libpcre2-32-0/focal libpcre2-posix2/focal
sudo apt-get purge -yqq libclang* libgbm* libllvm* libmono* moby* mono* php* libgdiplus libpcre2-posix3 libzip4
- name: Set up dependencies
run: |
sudo apt-get update -qq
sudo apt-get install -yqq libasound2-dev libdbus-1-dev libgl1-mesa-dev libglib2.0-dev libx11-dev libxcursor-dev libxext-dev libxrandr-dev
sudo apt-get install -yqq g++-multilib libx11-dev:i386
sudo apt-get install -yqq binutils-mingw-w64-i686 binutils-mingw-w64-x86-64 g++-mingw-w64-i686 g++-mingw-w64-x86-64 mingw-w64 wine-stable wine64-tools
- name: Build extra dependencies
run: |
git clone --depth=1 https://github.com/DISTRHO/PawPaw.git
@@ -210,6 +220,7 @@ jobs:
pushd PawPaw; source local.env linux; popd
make features
make NOOPT=true WITH_LTO=true -j $(nproc)
make WITH_LTO=true extra -j $(nproc)
- name: Set sha8
id: slug
run: echo "::set-output name=sha8::$(echo ${{ github.sha }} | cut -c1-8)"


+ 30
- 0
Makefile View File

@@ -42,11 +42,29 @@ CARLA_EXTRA_ARGS += EXTERNAL_PLUGINS=true
endif

CARLA_TARGETS = static-plugin
CARLA_EXTRA_TARGETS =

ifneq ($(USE_SYSTEM_CARLA_BINS),true)
CARLA_TARGETS += bridges-plugin bridges-ui
endif

ifeq ($(CPU_X86_64),true)
ifeq ($(WINDOWS),true)
CARLA_EXTRA_TARGETS += win32
else ifneq ($(MACOS),true)
CARLA_EXTRA_TARGETS += posix32
endif
endif

ifeq ($(CPU_I386_OR_X86_64),true)
ifeq ($(LINUX),true)
CARLA_EXTRA_TARGETS += wine32
ifeq ($(CPU_X86_64),true)
CARLA_EXTRA_TARGETS += wine64
endif
endif
endif

# ---------------------------------------------------------------------------------------------------------------------
# DPF bundled plugins

@@ -84,6 +102,18 @@ endif
carla: dgl
$(MAKE) $(CARLA_EXTRA_ARGS) -C carla $(CARLA_TARGETS)

extra: carla
$(MAKE) $(CARLA_EXTRA_ARGS) -C carla $(CARLA_EXTRA_TARGETS)
ifeq ($(CPU_I386_OR_X86_64),true)
ifeq ($(LINUX),true)
$(MAKE) $(CARLA_EXTRA_ARGS) -C carla win32 AR=i686-w64-mingw32-ar CC=i686-w64-mingw32-gcc CXX=i686-w64-mingw32-g++
ifeq ($(CPU_X86_64),true)
$(MAKE) $(CARLA_EXTRA_ARGS) -C carla win64 AR=x86_64-w64-mingw32-ar CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++
endif
endif
endif
$(MAKE) plugins CARLA_EXTRA_BINARIES=true

dgl:
$(MAKE) -C dpf/dgl opengl



+ 1
- 1
carla

@@ -1 +1 @@
Subproject commit df1338860e0b6fae36b974618ecfeb005051158b
Subproject commit c2bd7cf63c0776cc04d834fb95a49c7ce8968b7c

+ 37
- 3
plugins/Common/Makefile.mk View File

@@ -99,14 +99,19 @@ endif
# Enable all possible plugin types

ifeq ($(WASM),true)

TARGETS_EXTRA = jack

else

TARGETS_BASE = lv2 vst2 clap
TARGETS_EXTRA = jack carlabins

# VST3 does not do MIDI filter plugins, by design
ifneq ($(NAME),Ildaeil-MIDI)
TARGETS_BASE += vst3
endif
TARGETS_EXTRA = jack carlabins
endif

all: $(TARGETS_BASE) $(TARGETS_EXTRA)
@@ -115,10 +120,36 @@ all: $(TARGETS_BASE) $(TARGETS_EXTRA)
# special step for carla binaries

ifneq ($(USE_SYSTEM_CARLA_BINS),true)

CARLA_BINARIES = $(CURDIR)/../../carla/bin/carla-bridge-native$(APP_EXT)
CARLA_BINARIES += $(CURDIR)/../../carla/bin/carla-bridge-lv2-gtk2$(APP_EXT)
CARLA_BINARIES += $(CURDIR)/../../carla/bin/carla-bridge-lv2-gtk3$(APP_EXT)

ifeq ($(CARLA_EXTRA_BINARIES),true)

# 32bit bridge
ifeq ($(CPU_X86_64),true)
ifeq ($(WINDOWS),true)
CARLA_BINARIES += $(CURDIR)/../../carla/bin/carla-bridge-win32$(APP_EXT)
else ifneq ($(MACOS),true)
CARLA_BINARIES += $(CURDIR)/../../carla/bin/carla-bridge-posix32$(APP_EXT)
endif
endif

# Windows bridges
ifeq ($(CPU_I386_OR_X86_64),true)
ifeq ($(LINUX),true)
CARLA_BINARIES += $(CURDIR)/../../carla/bin/carla-bridge-win32.exe
CARLA_BINARIES += $(CURDIR)/../../carla/bin/jackbridge-wine32.dll
ifeq ($(CPU_X86_64),true)
CARLA_BINARIES += $(CURDIR)/../../carla/bin/carla-bridge-win64.exe
CARLA_BINARIES += $(CURDIR)/../../carla/bin/jackbridge-wine64.dll
endif
endif
endif

endif # CARLA_EXTRA_BINARIES

carlabins: $(TARGETS_BASE)
install -m 755 $(CARLA_BINARIES) $(shell dirname $(lv2))
install -m 755 $(CARLA_BINARIES) $(shell dirname $(vst2))
@@ -126,8 +157,11 @@ carlabins: $(TARGETS_BASE)
ifneq ($(NAME),Ildaeil-MIDI)
install -m 755 $(CARLA_BINARIES) $(shell dirname $(vst3))
endif
else

else # USE_SYSTEM_CARLA_BINS

carlabins:
endif

endif # USE_SYSTEM_CARLA_BINS

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

Loading…
Cancel
Save