zynaddsubfx

ZynAddSubFX open source synthesizer
Log | Files | Refs | Submodules | LICENSE

commit 7e653930766ae91eba00c4a7816f5df9d9b5cde4
parent e745a26afced96c453696b08f8c13969b2690670
Author: paulnasca <paulnasca>
Date:   Sun, 13 Mar 2005 19:31:40 +0000

*** empty log message ***

Diffstat:
MChangeLog | 2++
Mcompile.win32 | 7++-----
Msrc/Makefile | 17+++++++++++++----
Msrc/Output/VSTaudiooutput.h | 2+-
Msrc/UI/PresetsUI.fl | 2+-
Msrc/main.C | 5+++--
6 files changed, 22 insertions(+), 13 deletions(-)

diff --git a/ChangeLog b/ChangeLog @@ -773,6 +773,8 @@ 06 Mar 2005 - Facute cateva mici modificari referitoare in special la warning-uri - Corectata o mica eroare care facea ca la un Paste sa nu se actulizeze unii parametrii ai filtrului in interfata 12 Mar 2005 - Imbunatatiri la interfata PADsynth, adica se poate da "apply" direct din OscilGenUI sau ResonanceUI +13 Mar 2005 - Facute cateva compilari in Makefile pt. compilare pt. Windows (standalone exe si vst) + - Se compileaza in mod cross-compile pt. windows din linux diff --git a/compile.win32 b/compile.win32 @@ -26,11 +26,8 @@ Hope all goes right. ZynAddSubFX Compilation on Windows as VST plugin (dll file) ---------------------------------------------------------- Edit the Makefile.inc and set "WINDOWS_VST" to "YES". The audioout and midiin are automatically set to VST. -Get the vstsdk2 and copy it to the directory where ZynAddSubFX-2.x.x is. -If you copy ZynAddSubFX in "C:\temp" and you will run "dir" you should see the ZynAddSubFX-2.x.x and vstsdk2 in the same directory (C:\temp). - -Now you have to compile AudioEffect.cpp and audioeffectx.cpp(from vstsdk2) to the object files AudioEffect.o and audioeffectx.o. -Copy theese object files to zynaddsubfx \src directory. +Get the vstsdk2 (or 2.3) and copy it to the directory where ZynAddSubFX-2.x.x is. +If you copy ZynAddSubFX in "C:\temp" and you will run "dir" you should see the ZynAddSubFX-2.x.x and "vstsdk2" in the same directory (C:\temp). Run the makefile. Hope all will goes right. Please notice that "make clean" removes the vst object files that you compiled form vstsdk2. That's why is recomanded to keep a backup copy of theese object files. You must copy the pthreads.dll file to windows directory (or else, zynaddsubfx will not work). Btw: how can I make pthreads static? diff --git a/src/Makefile b/src/Makefile @@ -1,9 +1,9 @@ include Makefile.inc ifneq ($(MAKECMDGOALS),debug) - CXXFLAGS= -O6 -ggdb -Wall + CXXFLAGS= -O6 -Wall else - CXXFLAGS= -O0 -ggdb -Wall -Wpointer-arith -Wstrict-prototypes + CXXFLAGS= -O0 -Wall -Wpointer-arith -Wstrict-prototypes endif CXXFLAGS += -DOS_$(OS_PORT) -D$(MIDIIN)MIDIIN -DFFTW_VERSION_$(FFTW_VERSION) -DASM_F2I_$(ASM_F2I) `fltk-config --cflags` @@ -26,7 +26,10 @@ endif ifeq ($(OS_PORT),LINUX) LIBS+= -lpthread else -LIBS+= -lpthreadGC +#dynamic linking +#LIBS+= -lpthreadGC +#static linking +LIBS+= /usr/lib/libpthreadGC1.a endif ifeq ($(MIDIIN),ALSA) @@ -77,9 +80,15 @@ ifeq ($(AUDIOOUT),DSSI) gcc -shared -o zynaddsubfx.so */*.o *.o $(LIBS) else ifeq ($(AUDIOOUT),VST) - gcc -shared -o zynaddsubfx_vst.dll */*.o *.o $(LIBS) zynaddsubfx_gcc.def + gcc -shared -o zynaddsubfx_vst.dll */*.o *.o ../../vstsdk2/source/common/AudioEffect.cpp ../../vstsdk2/source/common/audioeffectx.cpp $(LIBS) zynaddsubfx_gcc.def else + + +ifeq ($(OS_PORT),LINUX) $(CXX) -o zynaddsubfx */*.o *.o $(LIBS) +else + $(CXX) -o zynaddsubfx.exe */*.o *.o $(LIBS) +endif endif endif diff --git a/src/Output/VSTaudiooutput.h b/src/Output/VSTaudiooutput.h @@ -44,7 +44,7 @@ class VSTSynth:public AudioEffectX{ virtual void resume(); virtual long getChunk(void** data,bool isPreset=false); - virtual void setChunk(void *data,long size,bool isPreset=false); + virtual long setChunk(void *data,long size,bool isPreset=false); MasterUI *ui; int Pexitprogram; diff --git a/src/UI/PresetsUI.fl b/src/UI/PresetsUI.fl @@ -2,7 +2,7 @@ version 1.0105 header_name {.h} code_name {.cc} -decl {\#include <FL/fl_ask.h>} {public +decl {\#include <FL/fl_ask.H>} {public } decl {\#include <stdio.h>} {public diff --git a/src/main.C b/src/main.C @@ -676,14 +676,15 @@ long VSTSynth::processEvents(VstEvents *events){ return(1); }; -long VSTSynth::getChunk(void** data,bool isPreset=false){ +long VSTSynth::getChunk(void** data,bool isPreset){ int size=0; size=vmaster->getalldata((char **)data); return((long)size); }; -void VSTSynth::setChunk(void *data,long size,bool isPreset=false){ +long VSTSynth::setChunk(void *data,long size,bool isPreset){ vmaster->putalldata((char*)data,size); + return(0); }; #endif