VST_BASE = vstsdk2.4 VST_SRC_BASE = ${VST_BASE}/public.sdk/source/vst2.x/ VST_SRC = \ ${VST_SRC_BASE}/audioeffectx.cpp \ ${VST_SRC_BASE}/audioeffect.cpp \ ${VST_SRC_BASE}/vstplugmain.cpp VST_CFLAGS=-I$(VST_BASE) top_srcdir=.. DG_BASE = .. DG_SRC = \ ${DG_BASE}/src/audiofile.cc \ ${DG_BASE}/src/audioinputenginemidi.cc \ ${DG_BASE}/src/configuration.cc \ ${DG_BASE}/src/channel.cc \ ${DG_BASE}/src/channelmixer.cc \ ${DG_BASE}/src/drumgizmo.cc \ ${DG_BASE}/src/drumkit.cc \ ${DG_BASE}/src/drumkitloader.cc \ ${DG_BASE}/src/drumkitparser.cc \ ${DG_BASE}/src/events.cc \ ${DG_BASE}/src/instrument.cc \ ${DG_BASE}/src/instrumentparser.cc \ ${DG_BASE}/src/midimapparser.cc \ ${DG_BASE}/src/midimapper.cc \ ${DG_BASE}/src/mutex.cc \ ${DG_BASE}/src/path.cc \ ${DG_BASE}/src/sample.cc \ ${DG_BASE}/src/saxparser.cc \ ${DG_BASE}/src/semaphore.cc \ ${DG_BASE}/src/thread.cc \ ${DG_BASE}/src/velocity.cc DG_CFLAGS = -DDISABLE_HUGIN -I../include -I../src -DSSE -msse -msse2 GUI_SRC = \ $(DG_BASE)/plugingui/plugingui.cc \ $(DG_BASE)/plugingui/globalcontext.cc \ $(DG_BASE)/plugingui/label.cc \ $(DG_BASE)/plugingui/eventhandler.cc \ $(DG_BASE)/plugingui/font.cc \ $(DG_BASE)/plugingui/window.cc \ $(DG_BASE)/plugingui/nativewindow_win32.cc \ $(DG_BASE)/plugingui/widget.cc \ $(DG_BASE)/plugingui/colour.cc \ $(DG_BASE)/plugingui/painter.cc \ $(DG_BASE)/plugingui/button.cc \ $(DG_BASE)/plugingui/pixelbuffer.cc \ $(DG_BASE)/plugingui/lineedit.cc \ $(DG_BASE)/plugingui/led.cc \ $(DG_BASE)/plugingui/checkbox.cc \ $(DG_BASE)/plugingui/slider.cc \ $(DG_BASE)/plugingui/listbox.cc \ $(DG_BASE)/plugingui/listboxthin.cc \ $(DG_BASE)/plugingui/listboxbasic.cc \ $(DG_BASE)/plugingui/verticalline.cc \ $(DG_BASE)/plugingui/knob.cc \ $(DG_BASE)/plugingui/filebrowser.cc \ $(DG_BASE)/plugingui/directory.cc \ $(DG_BASE)/plugingui/scrollbar.cc \ $(DG_BASE)/plugingui/combobox.cc \ $(DG_BASE)/plugingui/progressbar.cc \ $(DG_BASE)/plugingui/resource.cc \ $(DG_BASE)/plugingui/resource_data.cc \ $(DG_BASE)/plugingui/image.cc GUI_CFLAGS=-I../plugingui -DUSE_THREAD GUI_LIBS=-lgdi32 -lsetupapi -lws2_32 DBG_SRC = \ $(top_srcdir)/hugin/hugin.c \ $(top_srcdir)/hugin/hugin_syslog.c DBG_CFLAGS=-DDISABLE_HUGIN -I../hugin -DWITH_HUG_SYSLOG -DWITH_HUG_MUTEX # # http://old.nabble.com/using-VC%2B%2B-.lib-with-mingw-td23151303.html # Given `-lfoo', the win32 build of GNU ld will search for libfoo.a and foo.lib # #MSYS="c:/mingw/msys/1.0/local" MSYS=/local EXPAT_BASE=${MSYS} EXPAT_CFLAGS=-I${EXPAT_BASE}/include EXPAT_LIBS=-L${EXPAT_BASE}/lib -lexpat SNDFILE_BASE=${MSYS} SNDFILE_CFLAGS=-I${SNDFILE_BASE}/include SNDFILE_LIBS=-L${SNDFILE_BASE}/lib -lsndfile PNG_BASE=${MSYS} PNG_CFLAGS=-I${SNDFILE_BASE}/include PNG_LIBS=-L${SNDFILE_BASE}/lib -lpng -lz SRC = \ drumgizmo_vst.cc \ input_vst.cc \ output_vst.cc ####################### # #CXXFLAGS=-DWIN32 $(EXPAT_CFLAGS) $(SNDFILE_CFLAGS) $(DG_CFLAGS) $(GUI_CFLAGS) $(DBG_CFLAGS) $(VST_CFLAGS) #CFLAGS=$(CXXFLAGS) #LDFLAGS=$(EXPAT_LIBS) $(SNDFILE_LIBS) $(GUI_LIBS) $(DBG_LIBS) # #C_SOURCES=$(DBG_SRC) #CXX_SOURCES=$(GUI_SRC) $(DG_SRC) #CPP_SOURCES=$(VST_SRC) # #OBJECTS=$(CXX_SOURCES:.cc=.o) $(CPP_SOURCES:.cpp=.o) $(C_SOURCES:.c=.o) #all: $(CXX_SOURCES) $(CPP_SOURCES) $(C_SOURCES) drumgizmo_vst.dll # #drumgizmo_vst.dll: $(OBJECTS) # g++ $(CXXFLAGS) $(OBJECTS) $(LDFLAGS) -shared -o drumgizmo_vst.dll -Wl,--out-implib,libdrumgizmo_vst.a # #%.o: %.cc # g++ -O3 -c $(CXXFLAGS) $(LDFLAGS) $< -o $(notdir $@) # #%.o: %.cpp # g++ -O3 -c $(CXXFLAGS) $(LDFLAGS) $< -o $(notdir $@) # #%.o: %.c # gcc -O3 -c $(CFLAGS) $(LDFLAGS) $< -o $@ # #clean: # del -f $(notdir $(OBJECTS)) drumgizmo_vst.dll libdrumgizmo_vst.a # ######################## all: gcc $(DBG_CFLAGS) $(top_srcdir)/hugin/hugin.c -c gcc $(DBG_CFLAGS) $(top_srcdir)/hugin/hugin_syslog.c -c g++ -static -static-libgcc -O2 -g -Wall -DWIN32 $(DBG_CFLAGS) $(PNG_CFLAGS) $(DG_CFLAGS) $(DG_LIBS) $(VST_CFLAGS) hugin.o hugin_syslog.o $(DG_SRC) $(VST_SRC) ${SRC} ${GUI_SRC} ${GUI_CFLAGS} $(GUI_LIBS) $(EXPAT_CFLAGS) $(EXPAT_LIBS) $(SNDFILE_CFLAGS) $(SNDFILE_LIBS) $(PNG_LIBS) -shared -o drumgizmo_vst.dll -Wl,--out-implib,libdrumgizmo_vst.a clean: del -f drumgizmo_vst.dll libdrumgizmo_vst.a