diff options
author | Robin Gareus <robin@gareus.org> | 2014-03-04 15:25:58 +0100 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2014-03-04 15:25:58 +0100 |
commit | 912f07b919c1ec44f0cdd5278d74a9bc29b91846 (patch) | |
tree | 1cd5f158ada5e8b9b73cf0d52ca5f9fa430c1fe9 /gtk2_ardour | |
parent | 3e250d5f0649256c8e4c7c53da4f67383dd52f78 (diff) |
mingw build fixes (tested with i686-w64-mingw32 on linux-x86_64)
Diffstat (limited to 'gtk2_ardour')
-rw-r--r-- | gtk2_ardour/plugin_eq_gui.cc | 18 | ||||
-rw-r--r-- | gtk2_ardour/utils.cc | 4 | ||||
-rw-r--r-- | gtk2_ardour/vst_plugin_ui.cc | 8 | ||||
-rw-r--r-- | gtk2_ardour/windows_vst_plugin_ui.cc | 23 | ||||
-rw-r--r-- | gtk2_ardour/wscript | 10 |
5 files changed, 38 insertions, 25 deletions
diff --git a/gtk2_ardour/plugin_eq_gui.cc b/gtk2_ardour/plugin_eq_gui.cc index 306746d556..13c475e27c 100644 --- a/gtk2_ardour/plugin_eq_gui.cc +++ b/gtk2_ardour/plugin_eq_gui.cc @@ -18,19 +18,17 @@ */ +#include <math.h> #include <iostream> -#include <cmath> #ifdef COMPILER_MSVC #include <float.h> /* isinf() & isnan() are C99 standards, which older MSVC doesn't provide */ -#define isinf(val) !((bool)_finite((double)val)) -#define isnan(val) (bool)_isnan((double)val) -#endif - -#ifdef __APPLE__ -#define isinf(val) std::isinf((val)) -#define isnan(val) std::isnan((val)) +#define ISINF(val) !((bool)_finite((double)val)) +#define ISNAN(val) (bool)_isnan((double)val) +#else +#define ISINF(val) std::isinf((val)) +#define ISNAN(val) std::isnan((val)) #endif #include <gtkmm/box.h> @@ -777,13 +775,13 @@ PluginEqGui::plot_signal_amplitude_difference(Gtk::Widget *w, cairo_t *cr) } */ - if (isinf(power)) { + if (ISINF(power)) { if (power < 0) { power = _min_dB - 1.0; } else { power = _max_dB - 1.0; } - } else if (isnan(power)) { + } else if (ISNAN(power)) { power = _min_dB - 1.0; } diff --git a/gtk2_ardour/utils.cc b/gtk2_ardour/utils.cc index 777eb62616..a8b46f1f57 100644 --- a/gtk2_ardour/utils.cc +++ b/gtk2_ardour/utils.cc @@ -64,6 +64,10 @@ using Gtkmm2ext::Keyboard; sigc::signal<void> DPIReset; +#ifdef PLATFORM_WINDOWS +#define random() rand() +#endif + /** Add an element to a menu, settings its sensitivity. * @param m Menu to add to. diff --git a/gtk2_ardour/vst_plugin_ui.cc b/gtk2_ardour/vst_plugin_ui.cc index 35f59a71f5..3afb17a652 100644 --- a/gtk2_ardour/vst_plugin_ui.cc +++ b/gtk2_ardour/vst_plugin_ui.cc @@ -17,10 +17,18 @@ */ +#include <gtkmm.h> #include "ardour/vst_plugin.h" #include "ardour/vst_types.h" #include "vst_plugin_ui.h" + +#ifdef PLATFORM_WINDOWS +#include <gdk/gdkwin32.h> +#elif defined __APPLE__ +// TODO +#else #include <gdk/gdkx.h> +#endif VSTPluginUI::VSTPluginUI (boost::shared_ptr<ARDOUR::PluginInsert> insert, boost::shared_ptr<ARDOUR::VSTPlugin> plugin) : PlugUIBase (insert) diff --git a/gtk2_ardour/windows_vst_plugin_ui.cc b/gtk2_ardour/windows_vst_plugin_ui.cc index 72e9952dec..1ce83f8992 100644 --- a/gtk2_ardour/windows_vst_plugin_ui.cc +++ b/gtk2_ardour/windows_vst_plugin_ui.cc @@ -18,6 +18,7 @@ */ #include <fst.h> +#include <gtkmm.h> #include <gtk/gtk.h> #include <gtk/gtksocket.h> #include "ardour/plugin_insert.h" @@ -25,12 +26,12 @@ #include "windows_vst_plugin_ui.h" -#ifdef GDK_WINDOWING_X11 -#include <gdk/gdkx.h> -#elif defined GDK_WINDOWING_WIN32 +#ifdef PLATFORM_WINDOWS #include <gdk/gdkwin32.h> -#elif defined GDK_WINDOWING_QUARTZ -/* not yet supported */ +#elif defined __APPLE__ +// TODO +#else +#include <gdk/gdkx.h> #endif using namespace Gtk; @@ -42,17 +43,21 @@ WindowsVSTPluginUI::WindowsVSTPluginUI (boost::shared_ptr<PluginInsert> pi, boos { #ifdef GDK_WINDOWING_WIN32 - GtkWindow* wobj = win->gobj(); + +#if 0 // TODO verify window vs vbox-widget WRT to plugin_analysis_expander + GtkWindow* wobj = GTK_WINDOW(gtk_widget_get_toplevel(this->gobj())); +#else + GtkVBox* wobj = this->gobj(); +#endif + gtk_widget_realize(GTK_WIDGET(wobj)); void* hWndHost = gdk_win32_drawable_get_handle(GTK_WIDGET(wobj)->window); fst_run_editor (_vst->state(), hWndHost); #else fst_run_editor (_vst->state(), NULL); -#endif - - pack_start (plugin_analysis_expander, true, true); +#endif } WindowsVSTPluginUI::~WindowsVSTPluginUI () diff --git a/gtk2_ardour/wscript b/gtk2_ardour/wscript index 008b0f4884..92f584fc1f 100644 --- a/gtk2_ardour/wscript +++ b/gtk2_ardour/wscript @@ -398,14 +398,11 @@ def build(bld): obj.source = gtk2_ardour_sources obj.target = 'ardour-' + bld.env['VERSION'] obj.includes = ['.'] + obj.ldflags = ['-no-undefined'] if bld.is_defined('WINDOWS_VST_SUPPORT'): # Windows VST support mingw - obj.source += ( - '../libs/fst/fst.c', - '../libs/fst/vstwin.c', - '../vst/winmain.c', - ) + obj.source += [ '../vst/winmain.c' ] obj.includes += [ '../libs/fst' ] # at this point, "obj" refers to either the normal native executable @@ -459,7 +456,8 @@ def build(bld): if bld.is_defined('WINDOWS_VST_SUPPORT'): obj.source += [ 'windows_vst_plugin_ui.cc' ] obj.defines += [ 'WINDOWS_VST_SUPPORT' ] - obj.use += [ 'X11' ] + if bld.env['build_target'] != 'mingw': + obj.use += [ 'X11' ] if bld.is_defined('LXVST_SUPPORT'): obj.source += [ 'linux_vst_gui_support.cc', 'lxvst_plugin_ui.cc' ] |