@@ -14,7 +14,7 @@ sudo apt-get install -y build-essential meson | |||||
if [ "${TARGET}" = "linux" ]; then | if [ "${TARGET}" = "linux" ]; then | ||||
sudo apt-get install -y \ | sudo apt-get install -y \ | ||||
pkg-config \ | pkg-config \ | ||||
libasound2-dev libfreetype6-dev libgl1-mesa-dev libglu1-mesa-dev \ | |||||
libasound2-dev libfftw3-dev libfreetype6-dev libgl1-mesa-dev libglu1-mesa-dev \ | |||||
libx11-dev libxcomposite-dev libxrender-dev libxcursor-dev \ | libx11-dev libxcomposite-dev libxrender-dev libxcursor-dev \ | ||||
lilv-utils lv2lint kxstudio-lv2-extensions lv2-dev | lilv-utils lv2lint kxstudio-lv2-extensions lv2-dev | ||||
@@ -5,9 +5,9 @@ set -e | |||||
export DESTDIR=/tmp/distrho-ports | export DESTDIR=/tmp/distrho-ports | ||||
if [ "${TARGET}" = "win32" ]; then | if [ "${TARGET}" = "win32" ]; then | ||||
EXTRA_ARGS="--cross-file scripts/meson/win32.ini -Dbuild-legacy-only=true" | |||||
EXTRA_ARGS="--cross-file scripts/meson/win32.ini" | |||||
elif [ "${TARGET}" = "win64" ]; then | elif [ "${TARGET}" = "win64" ]; then | ||||
EXTRA_ARGS="--cross-file scripts/meson/win64.ini -Dbuild-legacy-only=true" | |||||
EXTRA_ARGS="--cross-file scripts/meson/win64.ini" | |||||
fi | fi | ||||
echo "meson build --buildtype=release ${EXTRA_ARGS}" | echo "meson build --buildtype=release ${EXTRA_ARGS}" | ||||
@@ -51,8 +51,10 @@ | |||||
namespace drow { | namespace drow { | ||||
// Audio | // Audio | ||||
#include "audio/dRowAudio_AudioFilePlayer.cpp" | |||||
#include "audio/dRowAudio_AudioFilePlayerExt.cpp" | |||||
#if JUCE_MODULE_AVAILABLE_juce_audio_devices | |||||
#include "audio/dRowAudio_AudioFilePlayer.cpp" | |||||
#include "audio/dRowAudio_AudioFilePlayerExt.cpp" | |||||
#endif | |||||
#include "audio/dRowAudio_AudioSampleBufferAudioFormat.cpp" | #include "audio/dRowAudio_AudioSampleBufferAudioFormat.cpp" | ||||
#include "audio/dRowAudio_SoundTouchProcessor.cpp" | #include "audio/dRowAudio_SoundTouchProcessor.cpp" | ||||
@@ -81,22 +83,28 @@ namespace drow { | |||||
#include "gui/dRowAudio_AudioFileDropTarget.cpp" | #include "gui/dRowAudio_AudioFileDropTarget.cpp" | ||||
#include "gui/dRowAudio_GraphicalComponent.cpp" | #include "gui/dRowAudio_GraphicalComponent.cpp" | ||||
#include "gui/dRowAudio_AudioOscilloscope.cpp" | #include "gui/dRowAudio_AudioOscilloscope.cpp" | ||||
#include "gui/dRowAudio_AudioTransportCursor.cpp" | |||||
#if JUCE_MODULE_AVAILABLE_juce_audio_devices | |||||
#include "gui/dRowAudio_AudioTransportCursor.cpp" | |||||
#endif | |||||
#include "gui/dRowAudio_SegmentedMeter.cpp" | #include "gui/dRowAudio_SegmentedMeter.cpp" | ||||
#include "gui/dRowAudio_Sonogram.cpp" | #include "gui/dRowAudio_Sonogram.cpp" | ||||
#include "gui/dRowAudio_Spectrograph.cpp" | #include "gui/dRowAudio_Spectrograph.cpp" | ||||
#include "gui/dRowAudio_Spectroscope.cpp" | #include "gui/dRowAudio_Spectroscope.cpp" | ||||
#include "gui/dRowAudio_TriggeredScope.cpp" | #include "gui/dRowAudio_TriggeredScope.cpp" | ||||
#include "gui/dRowAudio_CpuMeter.cpp" | |||||
#if JUCE_MODULE_AVAILABLE_juce_audio_devices | |||||
#include "gui/dRowAudio_CpuMeter.cpp" | |||||
#endif | |||||
#include "gui/dRowAudio_Clock.cpp" | #include "gui/dRowAudio_Clock.cpp" | ||||
//#include "gui/dRowAudio_CentreAlignViewport.cpp" | //#include "gui/dRowAudio_CentreAlignViewport.cpp" | ||||
#include "gui/dRowAudio_MusicLibraryTable.cpp" | #include "gui/dRowAudio_MusicLibraryTable.cpp" | ||||
#include "gui/filebrowser/dRowAudio_BasicFileBrowser.cpp" | #include "gui/filebrowser/dRowAudio_BasicFileBrowser.cpp" | ||||
#include "gui/filebrowser/dRowAudio_ColumnFileBrowser.cpp" | #include "gui/filebrowser/dRowAudio_ColumnFileBrowser.cpp" | ||||
#include "gui/audiothumbnail/dRowAudio_AudioThumbnailImage.cpp" | |||||
#include "gui/audiothumbnail/dRowAudio_ColouredAudioThumbnail.cpp" | |||||
#include "gui/audiothumbnail/dRowAudio_PositionableWaveDisplay.cpp" | |||||
#include "gui/audiothumbnail/dRowAudio_DraggableWaveDisplay.cpp" | |||||
#if JUCE_MODULE_AVAILABLE_juce_audio_devices | |||||
#include "gui/audiothumbnail/dRowAudio_AudioThumbnailImage.cpp" | |||||
#include "gui/audiothumbnail/dRowAudio_ColouredAudioThumbnail.cpp" | |||||
#include "gui/audiothumbnail/dRowAudio_PositionableWaveDisplay.cpp" | |||||
#include "gui/audiothumbnail/dRowAudio_DraggableWaveDisplay.cpp" | |||||
#endif | |||||
#endif | #endif | ||||
// maths | // maths | ||||
@@ -124,4 +132,4 @@ namespace drow { | |||||
#include "utility/dRowAudio_UnityProjectBuilder.cpp" | #include "utility/dRowAudio_UnityProjectBuilder.cpp" | ||||
#include "parameters/dRowAudio_PluginParameter.cpp" | #include "parameters/dRowAudio_PluginParameter.cpp" | ||||
} | |||||
} |
@@ -67,11 +67,11 @@ namespace FUnknownPrivate { | |||||
//------------------------------------------------------------------------ | //------------------------------------------------------------------------ | ||||
int32 PLUGIN_API atomicAdd (int32& var, int32 d) | int32 PLUGIN_API atomicAdd (int32& var, int32 d) | ||||
{ | { | ||||
#if SMTG_OS_WINDOWS | |||||
#if SMTG_OS_WINDOWS && !defined(__MINGW32__) | |||||
return InterlockedExchangeAdd (&var, d) + d; | return InterlockedExchangeAdd (&var, d) + d; | ||||
#elif SMTG_OS_MACOS | #elif SMTG_OS_MACOS | ||||
return OSAtomicAdd32Barrier (d, (int32_t*)&var); | return OSAtomicAdd32Barrier (d, (int32_t*)&var); | ||||
#elif SMTG_OS_LINUX | |||||
#elif SMTG_OS_LINUX || defined(__MINGW32__) | |||||
__gnu_cxx::__atomic_add (&var, d); | __gnu_cxx::__atomic_add (&var, d); | ||||
return var; | return var; | ||||
#else | #else | ||||
@@ -57,14 +57,18 @@ | |||||
#endif | #endif | ||||
#endif | #endif | ||||
#include "gui/juce_AudioDeviceSelectorComponent.cpp" | |||||
#if JUCE_MODULE_AVAILABLE_juce_audio_devices | |||||
#include "gui/juce_AudioDeviceSelectorComponent.cpp" | |||||
#endif | |||||
#include "gui/juce_AudioThumbnail.cpp" | #include "gui/juce_AudioThumbnail.cpp" | ||||
#include "gui/juce_AudioThumbnailCache.cpp" | #include "gui/juce_AudioThumbnailCache.cpp" | ||||
#include "gui/juce_AudioVisualiserComponent.cpp" | #include "gui/juce_AudioVisualiserComponent.cpp" | ||||
#include "gui/juce_MidiKeyboardComponent.cpp" | #include "gui/juce_MidiKeyboardComponent.cpp" | ||||
#include "gui/juce_AudioAppComponent.cpp" | |||||
#include "players/juce_SoundPlayer.cpp" | |||||
#include "players/juce_AudioProcessorPlayer.cpp" | |||||
#if JUCE_MODULE_AVAILABLE_juce_audio_devices | |||||
#include "gui/juce_AudioAppComponent.cpp" | |||||
#include "players/juce_SoundPlayer.cpp" | |||||
#include "players/juce_AudioProcessorPlayer.cpp" | |||||
#endif | |||||
#include "audio_cd/juce_AudioCDReader.cpp" | #include "audio_cd/juce_AudioCDReader.cpp" | ||||
#if JUCE_MAC | #if JUCE_MAC | ||||
@@ -101,10 +101,10 @@ elif os_windows | |||||
cc.find_library('uuid'), | cc.find_library('uuid'), | ||||
cc.find_library('version'), | cc.find_library('version'), | ||||
cc.find_library('wininet'), | cc.find_library('wininet'), | ||||
cc.find_library('winmm'), | |||||
cc.find_library('ws2_32'), | cc.find_library('ws2_32'), | ||||
] | ] | ||||
dependencies_devices = [ | dependencies_devices = [ | ||||
cc.find_library('winmm'), | |||||
] | ] | ||||
else | else | ||||
dependencies = [ | dependencies = [ | ||||
@@ -19,6 +19,9 @@ | |||||
#include "JuceHeader.h" | #include "JuceHeader.h" | ||||
#include "synth_constants.h" | #include "synth_constants.h" | ||||
// some compilers define this.. | |||||
#undef far | |||||
class Paths { | class Paths { | ||||
public: | public: | ||||
static constexpr int kLogoWidth = 1701; | static constexpr int kLogoWidth = 1701; | ||||
@@ -18,7 +18,11 @@ | |||||
#include "futils.h" | #include "futils.h" | ||||
#include "synth_constants.h" | #include "synth_constants.h" | ||||
#ifdef __MINGW32__ | |||||
#include "mingw-std-threads/mingw.thread.h" | |||||
#else | |||||
#include <thread> | #include <thread> | ||||
#endif | |||||
namespace vital { | namespace vital { | ||||