Skip to content

Commit

Permalink
Add carla-git and split off carla-bridge-win packages
Browse files Browse the repository at this point in the history
Signed-off-by: falkTX <[email protected]>
  • Loading branch information
falkTX committed Sep 21, 2024
1 parent 93ecaa2 commit 592d11f
Show file tree
Hide file tree
Showing 19 changed files with 277 additions and 0 deletions.
6 changes: 6 additions & 0 deletions sources/apps/carla-bridge-win/debian/binaries/README
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Storing some of the final binaries here, which is needed due to launchpad not allowing:
- installing i386 packages on x86_64 builders
- generating i386 packages from a PPA

Either of those would allow carla bridge packaging, but both are not possible and thus we build it outside of PPAs.
Builds are created within a container to help reproducibility, see https://github.com/falkTX/Carla/tree/main/data/docker
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
bin/*-win32.exe /usr/lib/carla/
bin/jackbridge-wine32.dll /usr/lib/carla/
7 changes: 7 additions & 0 deletions sources/apps/carla-bridge-win/debian/carla-bridge-win32.links
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/usr/lib/carla/carla-bridge-win32.exe /usr/lib/lv2/carla.lv2/carla-bridge-win32.exe
/usr/lib/carla/carla-discovery-win32.exe /usr/lib/lv2/carla.lv2/carla-discovery-win32.exe
/usr/lib/carla/jackbridge-wine32.dll /usr/lib/lv2/carla.lv2/jackbridge-wine32.dll

/usr/lib/carla/carla-bridge-win32.exe /usr/lib/vst/carla.vst/carla-bridge-win32.exe
/usr/lib/carla/carla-discovery-win32.exe /usr/lib/vst/carla.vst/carla-discovery-win32.exe
/usr/lib/carla/jackbridge-wine32.dll /usr/lib/vst/carla.vst/jackbridge-wine32.dll
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
bin/*-win64.exe /usr/lib/carla/
bin/jackbridge-wine64.dll /usr/lib/carla/
7 changes: 7 additions & 0 deletions sources/apps/carla-bridge-win/debian/carla-bridge-win64.links
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/usr/lib/carla/carla-bridge-win64.exe /usr/lib/lv2/carla.lv2/carla-bridge-win64.exe
/usr/lib/carla/carla-discovery-win64.exe /usr/lib/lv2/carla.lv2/carla-discovery-win64.exe
/usr/lib/carla/jackbridge-wine64.dll /usr/lib/lv2/carla.lv2/jackbridge-wine64.dll

/usr/lib/carla/carla-bridge-win64.exe /usr/lib/vst/carla.vst/carla-bridge-win64.exe
/usr/lib/carla/carla-discovery-win64.exe /usr/lib/vst/carla.vst/carla-discovery-win64.exe
/usr/lib/carla/jackbridge-wine64.dll /usr/lib/vst/carla.vst/jackbridge-wine64.dll
2 changes: 2 additions & 0 deletions sources/apps/carla-bridge-win/debian/carla-vst-wine.install
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
bin/CarlaVstShellBridged.dll* /usr/lib/winvst/
bin/CarlaVstFxShellBridged.dll* /usr/lib/winvst/
5 changes: 5 additions & 0 deletions sources/apps/carla-bridge-win/debian/changelog
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
carla-bridge-win (5:2.6.0~git20240921-1kxstudio1) focal; urgency=medium

* New package

-- falkTX <[email protected]> Sat, 21 Sep 2024 23:05:44 +0200
56 changes: 56 additions & 0 deletions sources/apps/carla-bridge-win/debian/control
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
Source: carla-bridge-win
Section: sound
Priority: optional
Maintainer: falkTX <[email protected]>
Build-Depends: debhelper-compat (= 13),
kxstudio-build-scripts (>= 5),
pkg-config,
libgl1-mesa-dev | libgl-dev,
libx11-dev,
mingw-w64 [amd64 i386],
g++-mingw-w64 [amd64 i386],
libwine-dev [amd64 i386],
wine32-tools [i386],
wine64-tools [amd64]
Standards-Version: 3.9.2
Homepage: https://kx.studio/Applications:Carla
XSC-KXStudio-VCS: https://github.com/falkTX/Carla

Package: carla-bridge-win32
Architecture: amd64 i386
Multi-Arch: allowed
Depends: ${shlibs:Depends}, ${misc:Depends}, wine | wine-development | wine-stable | wine-staging
Breaks: carla-bridge-wine32 (<< 5:2.0.0+git20190321)
Replaces: carla-bridge-wine32 (<< 5:2.0.0+git20190321)
Description: carla 32bit windows bridge
This package provides the Carla win32 bridge.

Package: carla-bridge-win64
Architecture: amd64
Multi-Arch: allowed
Depends: ${shlibs:Depends}, ${misc:Depends}, wine | wine-development | wine-stable | wine-staging
Breaks: carla-bridge-wine64 (<< 5:2.0.0+git20190321)
Replaces: carla-bridge-wine64 (<< 5:2.0.0+git20190321)
Description: carla 64bit windows bridge
This package provides the Carla win64 bridge.

Package: carla-vst-wine
Architecture: amd64 i386
Depends: ${shlibs:Depends}, ${misc:Depends}, carla | carla-git, wine | wine-development | wine-stable | wine-staging
Description: carla VST for windows applications
This package provides the Carla wine VST plugin.
.
This allows to load Carla inside a Windows host (running under wine) but loading the linux-native version of Carla,
thus enabling the use of linux-native plugins inside a Windows host.

Package: carla-bridge-wine32
Architecture: all
Depends: ${misc:Depends}
Description: Dummy package
This is a dummy package and can be safely removed if nothing depends on it.

Package: carla-bridge-wine64
Architecture: all
Depends: ${misc:Depends}
Description: Dummy package
This is a dummy package and can be safely removed if nothing depends on it.
35 changes: 35 additions & 0 deletions sources/apps/carla-bridge-win/debian/rules
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
#!/usr/bin/make -f

include /usr/share/dpkg/kxstudio.mk

DEB_BUILD_ARCH = $(shell dpkg-architecture -qDEB_BUILD_ARCH)

%:
dh $@

override_dh_auto_clean:
$(MAKE) distclean
find . -name .libmagic-tmp -delete

override_dh_auto_build:
$(MAKE) AR=i686-w64-mingw32-ar CC=i686-w64-mingw32-gcc CXX=i686-w64-mingw32-g++ win32
$(MAKE) AR=x86_64-w64-mingw32-ar CC=x86_64-w64-mingw32-gcc CXX=x86_64-w64-mingw32-g++ plugin-wine win64
install -m 644 debian/binaries/*.* bin/
ifeq ($(DEB_BUILD_ARCH),amd64)
install -m 644 debian/binaries/bin64/*.* bin/
else
install -m 644 debian/binaries/bin32/*.* bin/
endif
# $(MAKE) plugin
# $(MAKE) plugin-wine
# ifeq ($(DEB_BUILD_ARCH),amd64)
# $(MAKE) wine64
# else
# $(MAKE) wine32
# endif

override_dh_auto_install:
# skip

override_dh_shlibdeps:
# skip
2 changes: 2 additions & 0 deletions sources/apps/carla-git/debian/carla-bridge-linux32.install
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/usr/lib/carla/carla-bridge-posix32
/usr/lib/carla/carla-discovery-posix32
5 changes: 5 additions & 0 deletions sources/apps/carla-git/debian/carla-bridge-linux32.links
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
/usr/lib/carla/carla-bridge-posix32 /usr/lib/lv2/carla.lv2/carla-bridge-posix32
/usr/lib/carla/carla-discovery-posix32 /usr/lib/lv2/carla.lv2/carla-discovery-posix32

/usr/lib/carla/carla-bridge-posix32 /usr/lib/vst/carla.vst/carla-bridge-posix32
/usr/lib/carla/carla-discovery-posix32 /usr/lib/vst/carla.vst/carla-discovery-posix32
2 changes: 2 additions & 0 deletions sources/apps/carla-git/debian/carla-bridge-linux64.install
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/usr/lib/carla/carla-bridge-posix64
/usr/lib/carla/carla-discovery-posix64
5 changes: 5 additions & 0 deletions sources/apps/carla-git/debian/carla-bridge-linux64.links
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
/usr/lib/carla/carla-bridge-posix64 /usr/lib/lv2/carla.lv2/carla-bridge-posix64
/usr/lib/carla/carla-discovery-posix64 /usr/lib/lv2/carla.lv2/carla-discovery-posix64

/usr/lib/carla/carla-bridge-posix64 /usr/lib/vst/carla.vst/carla-bridge-posix64
/usr/lib/carla/carla-discovery-posix64 /usr/lib/vst/carla.vst/carla-discovery-posix64
2 changes: 2 additions & 0 deletions sources/apps/carla-git/debian/carla-git-data.install
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/usr/share/carla/
/usr/share/icons/
6 changes: 6 additions & 0 deletions sources/apps/carla-git/debian/carla-git.install
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
/usr/bin/
/usr/lib/
/usr/include/
/usr/share/appdata/
/usr/share/applications/
/usr/share/mime/
5 changes: 5 additions & 0 deletions sources/apps/carla-git/debian/changelog
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
carla-git (5:2.6.0~git20240921-1kxstudio1) focal; urgency=medium

* Update

-- falkTX <[email protected]> Sat, 21 Sep 2024 23:48:27 +0200
1 change: 1 addition & 0 deletions sources/apps/carla-git/debian/clean
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
bin/carla.lv2/resources
75 changes: 75 additions & 0 deletions sources/apps/carla-git/debian/control
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
Source: carla-git
Section: sound
Maintainer: falkTX <[email protected]>
Build-Depends: debhelper-compat (= 13),
kxstudio-audio-plugin-tester,
pkg-config,
libasound2-dev,
libpulse-dev,
libgl1-mesa-dev | libgl-dev,
libglu1-mesa-dev | libglu-dev,
libmagic-dev,
libx11-dev,
libxcursor-dev,
libxext-dev,
libxrandr-dev,
qtbase5-dev,
qtbase5-dev-tools,
pyqt5-dev-tools,
fftw3-static,
libfluidsynth-static,
liblo-static,
libmxml-static,
zlib-static
Standards-Version: 3.9.2
Homepage: https://kx.studio/Applications:Carla
XSC-KXStudio-VCS: https://github.com/falkTX/Carla

Package: carla-git
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}, carla-git-data (= ${source:Version}), python3-liblo, python3-pyqt5, python3-pyqt5.qtsvg
Recommends: python3-rdflib, python3-pyqt5.qtopengl
Breaks: carla, carla-dev, carla-lv2 (<< 5:2.0.0+git20190321), carla-vst (<< 5:2.0.0+git20190321)
Replaces: carla, carla-dev, carla-lv2 (<< 5:2.0.0+git20190321), carla-vst (<< 5:2.0.0+git20190321)
Description: audio plugin host
Carla is an audio plugin host, with support for many audio drivers and plugin formats.
It has some nice features like automation of parameters via MIDI CC and full OSC control.
Currently supports LADSPA, DSSI, LV2 and VST plugin formats, plus GIG, SF2 and SFZ sounds banks.
.
This package contains the main application.

Package: carla-git-data
Architecture: all
Depends: ${misc:Depends}
Breaks: carla-data
Replaces: carla-data
Description: audio plugin host (common data)
Carla is an audio plugin host, with support for many audio drivers and plugin formats.
It has some nice features like automation of parameters via MIDI CC and full OSC control.
Currently supports LADSPA, DSSI, LV2 and VST plugin formats, plus GIG, SF2 and SFZ sounds banks.
.
This package contains common non-binary data.

Package: carla-bridge-linux32
Architecture: i386
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}
Recommends: carla | carla-git
Description: audio plugin host (linux32 bridge)
Carla is an audio plugin host, with support for many audio drivers and plugin formats.
It has some nice features like automation of parameters via MIDI CC and full OSC control.
Currently supports LADSPA, DSSI, LV2 and VST plugin formats, plus GIG, SF2 and SFZ sounds banks.
.
This package provides the linux32 bridge for loading 32bit Linux plugins.

Package: carla-bridge-linux64
Architecture: amd64
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}
Recommends: carla | carla-git
Description: audio plugin host (linux64 bridge)
Carla is an audio plugin host, with support for many audio drivers and plugin formats.
It has some nice features like automation of parameters via MIDI CC and full OSC control.
Currently supports LADSPA, DSSI, LV2 and VST plugin formats, plus GIG, SF2 and SFZ sounds banks.
.
This package provides the linux64 bridge for loading 64bit Linux plugins.
52 changes: 52 additions & 0 deletions sources/apps/carla-git/debian/rules
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
#!/usr/bin/make -f

include /usr/share/dpkg/kxstudio-audio-plugin.mk

EXTRA_MAKE_ARGS = NOOPT=true PREFIX=/usr EXTERNAL_PLUGINS=true

DEB_BUILD_ARCH = $(shell dpkg-architecture -qDEB_BUILD_ARCH)

%:
dh $@

override_dh_auto_configure:
$(MAKE) $(EXTRA_MAKE_ARGS) features

override_dh_auto_build:
dh_auto_build -- $(EXTRA_MAKE_ARGS)
ifeq ($(DEB_BUILD_ARCH),amd64)
$(MAKE) $(EXTRA_MAKE_ARGS) posix64
else ifeq ($(DEB_BUILD_ARCH),i386)
$(MAKE) $(EXTRA_MAKE_ARGS) posix32
endif

override_dh_auto_install:
dh_auto_install -- $(EXTRA_MAKE_ARGS)

# FIXME these properties need to be defined first:
# http://harrisonconsoles.com/lv2/inlinedisplay#interface
# http://harrisonconsoles.com/lv2/inlinedisplay#queue_draw
# http://kxstudio.sf.net/carla/ui-ext ??
# $(call kxstudio_audio_plugin_test)

override_dh_auto_clean:
dh_auto_clean
$(MAKE) distclean
# find . -name .libmagic-tmp -delete

override_dh_install:
dh_install
rm -f debian/carla-git/usr/lib/carla/carla-bridge-posix*
rm -f debian/carla-git/usr/lib/carla/carla-discovery-posix*
rm -f debian/carla-git/usr/lib/lv2/carla.lv2/carla-bridge-posix*
rm -f debian/carla-git/usr/lib/lv2/carla.lv2/carla-discovery-posix*
rm -f debian/carla-git/usr/lib/vst/carla.vst/carla-bridge-posix*
rm -f debian/carla-git/usr/lib/vst/carla.vst/carla-discovery-posix*

override_dh_missing:
dh_missing --fail-missing

override_dh_shlibdeps:
dh_shlibdeps
# remove pulse versioned depends, causes issues trying to install on debian
sed -i "s/libpulse0 (>= 0.99.1)/libpulse0/" debian/carla-git.substvars

0 comments on commit 592d11f

Please sign in to comment.