64bit windows VSTs

This commit is contained in:
Robin Gareus 2014-10-05 18:11:11 +02:00
parent 114296d958
commit 94e7015c70
5 changed files with 24 additions and 8 deletions

View file

@ -80,7 +80,7 @@ intptr_t Session::vst_callback (
plug = (VSTPlugin *) (effect->user); plug = (VSTPlugin *) (effect->user);
session = &plug->session(); session = &plug->session();
#ifdef PLATFORM_WINDOWS #ifdef PLATFORM_WINDOWS
SHOW_CALLBACK ("am callback 0x%x, opcode = %d, plugin = \"%s\" ", (int) pthread_self().p, opcode, plug->name()); SHOW_CALLBACK ("am callback 0x%p, opcode = %d, plugin = \"%s\" ", pthread_self().p, opcode, plug->name());
#else #else
SHOW_CALLBACK ("am callback 0x%x, opcode = %d, plugin = \"%s\" ", (int) pthread_self(), opcode, plug->name()); SHOW_CALLBACK ("am callback 0x%x, opcode = %d, plugin = \"%s\" ", (int) pthread_self(), opcode, plug->name());
#endif #endif
@ -88,7 +88,7 @@ intptr_t Session::vst_callback (
plug = 0; plug = 0;
session = 0; session = 0;
#ifdef PLATFORM_WINDOWS #ifdef PLATFORM_WINDOWS
SHOW_CALLBACK ("am callback 0x%x, opcode = %d", (int) pthread_self().p, opcode); SHOW_CALLBACK ("am callback 0x%p, opcode = %d", pthread_self().p, opcode);
#else #else
SHOW_CALLBACK ("am callback 0x%x, opcode = %d", (int) pthread_self(), opcode); SHOW_CALLBACK ("am callback 0x%x, opcode = %d", (int) pthread_self(), opcode);
#endif #endif

View file

@ -384,8 +384,14 @@ vstfx_blacklist_file (const char *dllpath)
{ {
FILE *f; FILE *f;
if ((f = fopen (vstfx_blacklist_path (dllpath, 0).c_str(), "wb"))) { if ((f = fopen (vstfx_blacklist_path (dllpath, 0).c_str(), "wb"))) {
#ifndef NDEBUG
PBD::info << "Blacklisted VST: '" << vstfx_blacklist_path (dllpath, 0) << "'" << endmsg;
#endif
return f; return f;
} }
#ifndef NDEBUG
PBD::info << "Blacklisted VST: '" << vstfx_blacklist_path (dllpath, 1) << "'" << endmsg;
#endif
return fopen (vstfx_blacklist_path (dllpath, 1).c_str(), "wb"); return fopen (vstfx_blacklist_path (dllpath, 1).c_str(), "wb");
} }
@ -486,6 +492,9 @@ vstfx_infofile_create (const char* dllpath, int personal)
} }
string const path = vstfx_infofile_path (dllpath, personal); string const path = vstfx_infofile_path (dllpath, personal);
#ifndef NDEBUG
PBD::info << "Creating VST cache file " << path << endmsg;
#endif
return fopen (path.c_str(), "wb"); return fopen (path.c_str(), "wb");
} }

View file

@ -71,7 +71,7 @@ WindowsVSTPluginInfo::load (Session& session)
handle = fst_load(path.c_str()); handle = fst_load(path.c_str());
if ((int) handle == -1) { if (!handle) {
error << string_compose(_("VST: cannot load module from \"%1\""), path) << endmsg; error << string_compose(_("VST: cannot load module from \"%1\""), path) << endmsg;
} else { } else {
plugin.reset (new WindowsVSTPlugin (session.engine(), session, handle, PBD::atoi(unique_id))); plugin.reset (new WindowsVSTPlugin (session.engine(), session, handle, PBD::atoi(unique_id)));

View file

@ -7,6 +7,10 @@
#include "pbd/transmitter.h" #include "pbd/transmitter.h"
#include "pbd/receiver.h" #include "pbd/receiver.h"
#ifdef __MINGW64__
#define NO_OLDNAMES // no backwards compat _pid_t, conflict with w64 pthread/sched
#endif
#include "ardour/filesystem_paths.h" #include "ardour/filesystem_paths.h"
#ifdef LXVST_SUPPORT #ifdef LXVST_SUPPORT
#include "ardour/linux_vst_support.h" #include "ardour/linux_vst_support.h"

View file

@ -43,7 +43,7 @@
: ${SRCDIR=/tmp/winsrc} # source-code tgz are cached here : ${SRCDIR=/tmp/winsrc} # source-code tgz are cached here
: ${MAKEFLAGS=-j4} : ${MAKEFLAGS=-j4}
: ${ARDOURCFG=--with-dummy} : ${ARDOURCFG=--with-dummy --windows-vst}
: ${STACKCFLAGS="-O2 -g"} : ${STACKCFLAGS="-O2 -g"}
: ${NOSTACK=} # set to skip building the build-stack : ${NOSTACK=} # set to skip building the build-stack
@ -523,9 +523,6 @@ fi # $NOSTACK
if test -n "$ASIO"; then if test -n "$ASIO"; then
ARDOURCFG="$ARDOURCFG --with-wavesbackend" ARDOURCFG="$ARDOURCFG --with-wavesbackend"
fi fi
if test "$WARCH" = "w32"; then
ARDOURCFG="$ARDOURCFG --windows-vst"
fi
################################################################################ ################################################################################
@ -537,6 +534,9 @@ if test ! -d ${SRCDIR}/ardour.git.reference; then
fi fi
git clone --reference ${SRCDIR}/ardour.git.reference -b cairocanvas git://git.ardour.org/ardour/ardour.git $ARDOURSRC || true git clone --reference ${SRCDIR}/ardour.git.reference -b cairocanvas git://git.ardour.org/ardour/ardour.git $ARDOURSRC || true
cd ${ARDOURSRC} cd ${ARDOURSRC}
#if git diff-files --quiet --ignore-submodules -- && git diff-index --cached --quiet HEAD --ignore-submodules --; then
# git pull
#fi
export CC=${XPREFIX}-gcc export CC=${XPREFIX}-gcc
export CXX=${XPREFIX}-g++ export CXX=${XPREFIX}-g++
@ -684,7 +684,8 @@ InstallDirRegKey HKLM "Software\\Ardour\\ardour3\\$WARCH" "Install_Dir"
!define MUI_FINISHPAGE_TEXT "This windows versions or Ardour is provided as-is.\$\\r\$\\nThe ardour community currently has no expertise in supporting windows users, and there are no developers focusing on windows specific issues either.\$\\r\$\\nIf you like Ardour, please consider helping out." !define MUI_FINISHPAGE_TEXT "This windows versions or Ardour is provided as-is.\$\\r\$\\nThe ardour community currently has no expertise in supporting windows users, and there are no developers focusing on windows specific issues either.\$\\r\$\\nIf you like Ardour, please consider helping out."
!define MUI_FINISHPAGE_LINK "Ardour Manual" !define MUI_FINISHPAGE_LINK "Ardour Manual"
!define MUI_FINISHPAGE_LINK_LOCATION "http://manual.ardour.org" !define MUI_FINISHPAGE_LINK_LOCATION "http://manual.ardour.org"
!define MUI_FINISHPAGE_RUN "\$INSTDIR\\bin\\ardour.exe" #this would run as admin - see http://forums.winamp.com/showthread.php?t=353366
#!define MUI_FINISHPAGE_RUN "\$INSTDIR\\bin\\ardour.exe"
!define MUI_FINISHPAGE_NOREBOOTSUPPORT !define MUI_FINISHPAGE_NOREBOOTSUPPORT
!define MUI_ABORTWARNING !define MUI_ABORTWARNING
@ -711,6 +712,7 @@ Section "Ardour3 (required)" SecArdour
WriteRegDWORD HKLM "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\ardour3" "NoModify" 1 WriteRegDWORD HKLM "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\ardour3" "NoModify" 1
WriteRegDWORD HKLM "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\ardour3" "NoRepair" 1 WriteRegDWORD HKLM "Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\ardour3" "NoRepair" 1
WriteUninstaller "\$INSTDIR\uninstall.exe" WriteUninstaller "\$INSTDIR\uninstall.exe"
CreateShortCut "\$INSTDIR\\Ardour3.lnk" "\$INSTDIR\\bin\\ardour.exe" "" "\$INSTDIR\\bin\\ardour.exe" 0
SectionEnd SectionEnd
Section "Start Menu Shortcuts" SecMenu Section "Start Menu Shortcuts" SecMenu
SetShellVarContext all SetShellVarContext all
@ -734,6 +736,7 @@ Section "Uninstall"
RMDir /r "\$INSTDIR\\gdb" RMDir /r "\$INSTDIR\\gdb"
Delete "\$INSTDIR\\ardbg.bat" Delete "\$INSTDIR\\ardbg.bat"
Delete "\$INSTDIR\\uninstall.exe" Delete "\$INSTDIR\\uninstall.exe"
Delete "\$INSTDIR\\Ardour3.lnk"
RMDir "\$INSTDIR" RMDir "\$INSTDIR"
Delete "\$SMPROGRAMS\\ardour3\\*.*" Delete "\$SMPROGRAMS\\ardour3\\*.*"
RMDir "\$SMPROGRAMS\\ardour3" RMDir "\$SMPROGRAMS\\ardour3"