@@ -28,6 +28,7 @@ ports-legacy/*/VST*/Makefile | |||||
bin/lv2 | bin/lv2 | ||||
bin/vst | bin/vst | ||||
build/ | |||||
debian | debian | ||||
intermediate | intermediate | ||||
lv2_ttl_generator | lv2_ttl_generator | ||||
@@ -41,24 +42,24 @@ sdks/VST3SDK/* | |||||
_old | _old | ||||
ports/_todo | ports/_todo | ||||
libs/juce/source/.gitignore | |||||
libs/juce/source/.github | |||||
libs/juce/source/ChangeList.txt | |||||
libs/juce/source/amalgamation/ | |||||
libs/juce/source/docs/ | |||||
libs/juce/source/examples/ | |||||
libs/juce/source/extras/ | |||||
libs/juce/source/juce.h | |||||
libs/juce/source/juce_amalgamated.cpp | |||||
libs/juce/source/juce_amalgamated.h | |||||
libs/juce/source/juce_amalgamated.mm | |||||
libs/juce/source/BREAKING-CHANGES.txt | |||||
libs/juce/source/README.md | |||||
libs/juce/source/doxygen/ | |||||
libs/juce/source/modules/JUCE Module Format.txt | |||||
libs/juce/source/modules/juce_blocks_basics/ | |||||
libs/juce/source/modules/juce_box2d/ | |||||
libs/juce/source/modules/juce_browser_plugin_client/ | |||||
libs/juce/source/modules/juce_osc/ | |||||
libs/juce/source/modules/juce_product_unlocking/ | |||||
libs/juce/source/modules/juce_video/ | |||||
libs/juce-legacy/source/.gitignore | |||||
libs/juce-legacy/source/.github | |||||
libs/juce-legacy/source/ChangeList.txt | |||||
libs/juce-legacy/source/amalgamation/ | |||||
libs/juce-legacy/source/docs/ | |||||
libs/juce-legacy/source/examples/ | |||||
libs/juce-legacy/source/extras/ | |||||
libs/juce-legacy/source/juce.h | |||||
libs/juce-legacy/source/juce_amalgamated.cpp | |||||
libs/juce-legacy/source/juce_amalgamated.h | |||||
libs/juce-legacy/source/juce_amalgamated.mm | |||||
libs/juce-legacy/source/BREAKING-CHANGES.txt | |||||
libs/juce-legacy/source/README.md | |||||
libs/juce-legacy/source/doxygen/ | |||||
libs/juce-legacy/source/modules/JUCE Module Format.txt | |||||
libs/juce-legacy/source/modules/juce_blocks_basics/ | |||||
libs/juce-legacy/source/modules/juce_box2d/ | |||||
libs/juce-legacy/source/modules/juce_browser_plugin_client/ | |||||
libs/juce-legacy/source/modules/juce_osc/ | |||||
libs/juce-legacy/source/modules/juce_product_unlocking/ | |||||
libs/juce-legacy/source/modules/juce_video/ |
@@ -1,14 +0,0 @@ | |||||
# Compile the drowaudio shared lib | |||||
all: | |||||
$(MAKE) -C build-drowaudio | |||||
clean: | |||||
$(MAKE) clean -C build-drowaudio | |||||
rm -rf build-*/intermediate | |||||
distclean: clean | |||||
rm -f build-*/Makefile | |||||
rm -f build-*/*.make | |||||
rm -f build-*/*.sln | |||||
rm -f build-*/*.vcproj |
@@ -1 +0,0 @@ | |||||
../../juce-legacy/build-juce-legacy/AppConfig.h |
@@ -1,16 +0,0 @@ | |||||
dofile("../../../scripts/make-project.lua") | |||||
package = make_library_project("drowaudio") | |||||
package.includepaths = { | |||||
".", | |||||
"../../juce-legacy/source", | |||||
"../../juce-legacy/source/modules" | |||||
} | |||||
package.files = { | |||||
matchfiles ( | |||||
"../source/dRowAudio/dRowAudio.cpp" | |||||
) | |||||
} |
@@ -0,0 +1,18 @@ | |||||
############################################################################### | |||||
lib_drowaudio = static_library('drowaudio', | |||||
sources: [ | |||||
'source' / 'dRowAudio' / 'dRowAudio.cpp' | |||||
], | |||||
include_directories: [ | |||||
include_directories('.'), | |||||
include_directories('..' / 'juce-legacy'), | |||||
include_directories('..' / 'juce-legacy' / 'source'), | |||||
include_directories('..' / 'juce-legacy' / 'source' / 'modules'), | |||||
], | |||||
cpp_args: build_flags_cpp, | |||||
pic: true, | |||||
install: false, | |||||
) | |||||
############################################################################### |
@@ -0,0 +1,47 @@ | |||||
############################################################################### | |||||
if linux_embed | |||||
juce_legacy_srcs = [ | |||||
'source/modules/juce_audio_basics/juce_audio_basics.cpp', | |||||
'source/modules/juce_audio_devices/juce_audio_devices.cpp', | |||||
'source/modules/juce_audio_formats/juce_audio_formats.cpp', | |||||
'source/modules/juce_audio_processors/juce_audio_processors.cpp', | |||||
'source/modules/juce_audio_utils/juce_audio_utils.cpp', | |||||
'source/modules/juce_core/juce_core.cpp', | |||||
'source/modules/juce_cryptography/juce_cryptography.cpp', | |||||
'source/modules/juce_data_structures/juce_data_structures.cpp', | |||||
'source/modules/juce_dsp/juce_dsp.cpp', | |||||
'source/modules/juce_events/juce_events.cpp', | |||||
] | |||||
else | |||||
juce_legacy_srcs = [ | |||||
'source/modules/juce_audio_basics/juce_audio_basics.cpp', | |||||
'source/modules/juce_audio_devices/juce_audio_devices.cpp', | |||||
'source/modules/juce_audio_formats/juce_audio_formats.cpp', | |||||
'source/modules/juce_audio_processors/juce_audio_processors.cpp', | |||||
'source/modules/juce_audio_utils/juce_audio_utils.cpp', | |||||
'source/modules/juce_core/juce_core.cpp', | |||||
'source/modules/juce_cryptography/juce_cryptography.cpp', | |||||
'source/modules/juce_data_structures/juce_data_structures.cpp', | |||||
'source/modules/juce_dsp/juce_dsp.cpp', | |||||
'source/modules/juce_events/juce_events.cpp', | |||||
'source/modules/juce_graphics/juce_graphics.cpp', | |||||
'source/modules/juce_gui_basics/juce_gui_basics.cpp', | |||||
'source/modules/juce_gui_extra/juce_gui_extra.cpp', | |||||
'source/modules/juce_opengl/juce_opengl.cpp', | |||||
] | |||||
endif | |||||
lib_juce_legacy = static_library('juce-legacy', | |||||
sources: juce_legacy_srcs, | |||||
include_directories: [ | |||||
include_directories('.'), | |||||
include_directories('source'), | |||||
include_directories('source' / 'modules'), | |||||
], | |||||
cpp_args: build_flags_cpp, | |||||
pic: true, | |||||
install: false, | |||||
) | |||||
############################################################################### |
@@ -1,14 +0,0 @@ | |||||
# Compile the juced shared lib | |||||
all: | |||||
$(MAKE) -C build-juced | |||||
clean: | |||||
$(MAKE) clean -C build-juced | |||||
rm -rf build-*/intermediate | |||||
distclean: clean | |||||
rm -f build-*/Makefile | |||||
rm -f build-*/*.make | |||||
rm -f build-*/*.sln | |||||
rm -f build-*/*.vcproj |
@@ -1 +0,0 @@ | |||||
../../juce-legacy/build-juce-legacy/AppConfig.h |
@@ -1,16 +0,0 @@ | |||||
dofile("../../../scripts/make-project.lua") | |||||
package = make_library_project("juced") | |||||
package.includepaths = { | |||||
".", | |||||
"../../juce-legacy/source", | |||||
"../../juce-legacy/source/modules" | |||||
} | |||||
package.files = { | |||||
matchfiles ( | |||||
"../source/juced.cpp" | |||||
) | |||||
} |
@@ -0,0 +1,18 @@ | |||||
############################################################################### | |||||
lib_juced = static_library('juced', | |||||
sources: [ | |||||
'source' / 'juced.cpp' | |||||
], | |||||
include_directories: [ | |||||
include_directories('.'), | |||||
include_directories('..' / 'juce-legacy'), | |||||
include_directories('..' / 'juce-legacy' / 'source'), | |||||
include_directories('..' / 'juce-legacy' / 'source' / 'modules'), | |||||
], | |||||
cpp_args: build_flags_cpp, | |||||
pic: true, | |||||
install: false, | |||||
) | |||||
############################################################################### |
@@ -0,0 +1,7 @@ | |||||
############################################################################### | |||||
subdir('drowaudio') | |||||
subdir('juced') | |||||
subdir('juce-legacy') | |||||
############################################################################### |
@@ -0,0 +1,139 @@ | |||||
############################################################################### | |||||
project('DISTRHO-Ports', | |||||
'c', 'cpp', | |||||
license : 'GPLv3' | |||||
) | |||||
############################################################################### | |||||
# get options | |||||
buildtype = get_option('buildtype') | |||||
prefix = get_option('prefix') | |||||
bindir = get_option('bindir') | |||||
libdir = get_option('libdir') | |||||
linux_embed = get_option('linux-embed') | |||||
optimizations = get_option('optimizations') | |||||
############################################################################### | |||||
# set target OS | |||||
os_darwin = false | |||||
os_linux = false | |||||
os_windows = false | |||||
if host_machine.system() == 'darwin' | |||||
os_darwin = true | |||||
elif host_machine.system() == 'windows' | |||||
os_windows = true | |||||
else | |||||
os_linux = true | |||||
endif | |||||
############################################################################### | |||||
# set OS-specific details | |||||
if os_darwin | |||||
bin_suffix = '' | |||||
lib_suffix = '.dylib' | |||||
elif os_windows | |||||
bin_suffix = '.exe' | |||||
lib_suffix = '.dll' | |||||
else | |||||
bin_suffix = '' | |||||
lib_suffix = '.so' | |||||
endif | |||||
############################################################################### | |||||
# base compiler details | |||||
cc = meson.get_compiler('c') | |||||
cpp = meson.get_compiler('cpp') | |||||
build_flags = [ | |||||
'-DJUCE_APP_CONFIG_HEADER="AppConfig.h"', | |||||
'-pthread', | |||||
'-Wall', '-Wno-multichar', '-Wno-unused-but-set-variable', '-Wno-unused-function', '-Wno-strict-overflow', | |||||
] | |||||
build_flags_cpp = [ | |||||
] | |||||
build_flags_release = [ | |||||
'-O3', '-fvisibility=hidden', '-DNDEBUG=1', | |||||
] | |||||
build_flags_release_cpp = [ | |||||
'-fvisibility-inlines-hidden', | |||||
] | |||||
build_flags_debug = [ | |||||
'-O0', '-ggdb', '-DDEBUG=1', '-D_DEBUG=1', | |||||
] | |||||
build_flags_debug_cpp = [ | |||||
] | |||||
if optimizations and not linux_embed | |||||
build_flags_release += [ | |||||
'-mtune=generic', '-msse', '-msse2', | |||||
] | |||||
endif | |||||
if not os_darwin | |||||
build_flags_cpp += [ | |||||
'-std=gnu++11', | |||||
] | |||||
build_flags_release += [ | |||||
'-fdata-sections', '-ffunction-sections', | |||||
] | |||||
endif | |||||
if os_darwin | |||||
build_flags += [ | |||||
'-DMAC=1', | |||||
] | |||||
build_flags_cpp += [ | |||||
'-ObjC++', | |||||
] | |||||
elif os_windows | |||||
build_flags += [ | |||||
'-DWINDOWS=1', | |||||
] | |||||
build_flags_cpp += [ | |||||
'-fpermissive', | |||||
] | |||||
elif linux_embed | |||||
build_flags += [ | |||||
'-DLINUX=1', | |||||
] | |||||
build_flags_cpp += [ | |||||
'-DJUCE_AUDIOPROCESSOR_NO_GUI=1', | |||||
] | |||||
else | |||||
build_flags += [ | |||||
'-DLINUX=1', | |||||
] | |||||
build_flags_cpp += [ | |||||
'`pkg-config --cflags alsa freetype2 x11 xext`', | |||||
] | |||||
endif | |||||
############################################################################### | |||||
if buildtype == 'debug' | |||||
build_flags = build_flags + build_flags_debug | |||||
build_flags_cpp = build_flags + build_flags_cpp + build_flags_debug_cpp | |||||
else | |||||
build_flags = build_flags + build_flags_release | |||||
build_flags_cpp = build_flags + build_flags_cpp + build_flags_release_cpp | |||||
endif | |||||
############################################################################### | |||||
# go into subdir to build libraries and plugins | |||||
subdir('libs') | |||||
# subdir('ports') | |||||
############################################################################### |
@@ -0,0 +1,29 @@ | |||||
option('optimizations', | |||||
type: 'boolean', | |||||
value: true, | |||||
description: 'Enable SSE2 optimizations' | |||||
) | |||||
option('linux-embed', | |||||
type: 'boolean', | |||||
value: true, | |||||
description: 'DSP-only plugin builds, without editor/GUI' | |||||
) | |||||
option('build-lv2', | |||||
type: 'boolean', | |||||
value: true, | |||||
description: 'Build LV2 plugin variants' | |||||
) | |||||
option('build-vst2', | |||||
type: 'boolean', | |||||
value: true, | |||||
description: 'Build VST2 plugin variants' | |||||
) | |||||
option('build-vst3', | |||||
type: 'boolean', | |||||
value: true, | |||||
description: 'Build VST3 plugin variants' | |||||
) |