forked from oxesoft/oxefmsynth
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile.vstwindows
87 lines (78 loc) · 2.85 KB
/
Makefile.vstwindows
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# Oxe FM Synth: a software synthesizer
# Copyright (C) 2015 Daniel Moura <[email protected]>
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
ifeq ($(VSTSDK_PATH),)
$(error Please set the VSTSDK_PATH environment variable to the vstsdk2.4 path)
endif
INCLUDES:=-Isrc/vst
INCLUDES+=-Isrc/synth
INCLUDES+=-Isrc/gui
INCLUDES+=-Isrc/toolkits
INCLUDES+=-Isrc/windows
INCLUDES+=-I$(VSTSDK_PATH)
SOURCES:=src/vst/oxevst.cpp
SOURCES+=src/vst/oxevstmain.cpp
SOURCES+=src/vst/oxevsteditor.cpp
SOURCES+=src/vst/vsthostinterface.cpp
SOURCES+=src/toolkits/windowstoolkit.cpp
SOURCES+=src/gui/button.cpp
SOURCES+=src/gui/channels.cpp
SOURCES+=src/gui/editor.cpp
SOURCES+=src/gui/key.cpp
SOURCES+=src/gui/knob.cpp
SOURCES+=src/gui/lcd.cpp
SOURCES+=src/gui/mapper.cpp
SOURCES+=src/synth/buffers.cpp
SOURCES+=src/synth/delay.cpp
SOURCES+=src/synth/envelop.cpp
SOURCES+=src/synth/filter.cpp
SOURCES+=src/synth/noise.cpp
SOURCES+=src/synth/note.cpp
SOURCES+=src/synth/oscillator.cpp
SOURCES+=src/synth/persist.cpp
SOURCES+=src/synth/programs.cpp
SOURCES+=src/synth/reverb.cpp
SOURCES+=src/synth/synthesizer.cpp
SOURCES+=$(VSTSDK_PATH)/public.sdk/source/vst2.x/audioeffect.cpp
SOURCES+=$(VSTSDK_PATH)/public.sdk/source/vst2.x/audioeffectx.cpp
SOURCES+=$(VSTSDK_PATH)/public.sdk/source/vst2.x/vstplugmain.cpp
LIBS:=-lgdi32
ifeq ($(OS),Windows_NT)
CC:=i686-w64-mingw32-g++.exe
RC:=windres.exe
CC64:=x86_64-w64-mingw32-g++.exe
RC64:=windres.exe
else
CC:=i686-w64-mingw32-g++
RC:=i686-w64-mingw32-windres
CC64:=x86_64-w64-mingw32-g++
RC64:=x86_64-w64-mingw32-windres
CC:=i686-w64-mingw32-g++
RC:=i686-w64-mingw32-windres
ifeq ($(shell which $(CC)),)
$(error Please install mingw-w64.)
endif
endif
all: oxevst32 oxevst64
oxevst32:
@$(RC) -Isrc/synth -Iskins/default src/windows/resources.rc resources32.o
@$(CC) -static -s -O3 -shared -o oxevst.dll $(VSTSDK_PATH)/public.sdk/samples/vst2.x/win/vstplug.def $(CFLAGS) $(SOURCES) $(INCLUDES) $(LIBS) resources32.o
@rm resources32.o
oxevst64:
@$(RC64) -Isrc/synth -Iskins/default src/windows/resources.rc resources64.o
@$(CC64) -static -s -O3 -shared -o oxevst64.dll $(VSTSDK_PATH)/public.sdk/samples/vst2.x/win/vstplug.def $(CFLAGS) $(SOURCES) $(INCLUDES) $(LIBS) resources64.o
@rm resources64.o
clean:
@rm -f oxevst*.dll