Browse Source

Update makefiles to include rtmidi and remove portmidi

(Note: WIP, did not test build on windows/mac)
tags/v0.4.0
ben 7 years ago
parent
commit
252c6a6ad6
2 changed files with 47 additions and 16 deletions
  1. +38
    -6
      Makefile
  2. +9
    -10
      dep/Makefile

+ 38
- 6
Makefile View File

@@ -18,12 +18,44 @@ ifeq ($(ARCH), lin)
TARGET = Rack
endif

ifeq ($(ARCH), lin)
SOURCES += ext/osdialog/osdialog_gtk2.c
CFLAGS += $(shell pkg-config --cflags gtk+-2.0)
LDFLAGS += -rdynamic \
-lpthread -lGL -ldl \
$(shell pkg-config --libs gtk+-2.0) \
-Ldep/lib -lGLEW -lglfw -ljansson -lsamplerate -lcurl -lzip -lportaudio -lrtmidi
TARGET = Rack
endif

ifeq ($(ARCH), mac)
SOURCES += ext/osdialog/osdialog_mac.m
CXXFLAGS += -DAPPLE -stdlib=libc++
LDFLAGS += -stdlib=libc++ -lpthread -ldl \
-framework Cocoa -framework OpenGL -framework IOKit -framework CoreVideo \
-Ldep/lib -lGLEW -lglfw -ljansson -lsamplerate -lcurl -lzip -lportaudio -lrtmidi
TARGET = Rack
endif

ifeq ($(ARCH), win)
SOURCES += ext/osdialog/osdialog_win.c
LDFLAGS += -static-libgcc -static-libstdc++ -lpthread \
-Wl,--export-all-symbols,--out-implib,libRack.a -mwindows \
-lgdi32 -lopengl32 -lcomdlg32 -lole32 \
-Ldep/lib -lglew32 -lglfw3dll -lcurl -lzip -lportaudio_x64 -lrtmidi \
-Wl,-Bstatic -ljansson -lsamplerate
TARGET = Rack.exe
OBJECTS = Rack.res
endif


all: $(TARGET)
ifeq ($(ARCH), mac)
SOURCES += ext/osdialog/osdialog_mac.m
CXXFLAGS += -DAPPLE -stdlib=libc++
LDFLAGS += -stdlib=libc++ -lpthread -ldl \
-framework Cocoa -framework OpenGL -framework IOKit -framework CoreVideo \
-Ldep/lib -lGLEW -lglfw -ljansson -lsamplerate -lcurl -lzip -lportaudio -lportmidi
-Ldep/lib -lGLEW -lglfw -ljansson -lsamplerate -lcurl -lzip -lportaudio -lrtmidi
TARGET = Rack
endif

@@ -32,7 +64,7 @@ ifeq ($(ARCH), win)
LDFLAGS += -static-libgcc -static-libstdc++ -lpthread \
-Wl,--export-all-symbols,--out-implib,libRack.a -mwindows \
-lgdi32 -lopengl32 -lcomdlg32 -lole32 \
-Ldep/lib -lglew32 -lglfw3dll -lcurl -lzip -lportaudio_x64 -lportmidi \
-Ldep/lib -lglew32 -lglfw3dll -lcurl -lzip -lportaudio_x64 -lrtmidi \
-Wl,-Bstatic -ljansson -lsamplerate
TARGET = Rack.exe
OBJECTS = Rack.res
@@ -98,7 +130,7 @@ ifeq ($(ARCH), mac)
cp dep/lib/libcurl.4.dylib $(BUNDLE)/Contents/MacOS/
cp dep/lib/libzip.5.dylib $(BUNDLE)/Contents/MacOS/
cp dep/lib/libportaudio.2.dylib $(BUNDLE)/Contents/MacOS/
cp dep/lib/libportmidi.dylib $(BUNDLE)/Contents/MacOS/
cp dep/lib/librtmidi.dylib $(BUNDLE)/Contents/MacOS/

install_name_tool -change /usr/local/lib/libGLEW.2.1.0.dylib @executable_path/libGLEW.2.1.0.dylib $(BUNDLE)/Contents/MacOS/Rack
install_name_tool -change lib/libglfw.3.dylib @executable_path/libglfw.3.dylib $(BUNDLE)/Contents/MacOS/Rack
@@ -107,7 +139,7 @@ ifeq ($(ARCH), mac)
install_name_tool -change $(PWD)/dep/lib/libcurl.4.dylib @executable_path/libcurl.4.dylib $(BUNDLE)/Contents/MacOS/Rack
install_name_tool -change $(PWD)/dep/lib/libzip.5.dylib @executable_path/libzip.5.dylib $(BUNDLE)/Contents/MacOS/Rack
install_name_tool -change $(PWD)/dep/lib/libportaudio.2.dylib @executable_path/libportaudio.2.dylib $(BUNDLE)/Contents/MacOS/Rack
install_name_tool -change @rpath/libportmidi.dylib @executable_path/libportmidi.dylib $(BUNDLE)/Contents/MacOS/Rack
install_name_tool -change @rpath/librtmidi.dylib @executable_path/librtmidi.dylib $(BUNDLE)/Contents/MacOS/Rack

otool -L $(BUNDLE)/Contents/MacOS/Rack

@@ -126,7 +158,7 @@ ifeq ($(ARCH), win)
cp dep/bin/glfw3.dll dist/Rack/
cp dep/bin/libcurl-4.dll dist/Rack/
cp dep/bin/libjansson-4.dll dist/Rack/
cp dep/bin/libportmidi.dll dist/Rack/
cp dep/bin/librtmidi.dll dist/Rack/
cp dep/bin/libsamplerate-0.dll dist/Rack/
cp dep/bin/libzip-5.dll dist/Rack/
cp dep/bin/portaudio_x64.dll dist/Rack/
@@ -144,7 +176,7 @@ ifeq ($(ARCH), lin)
cp dep/lib/libcurl.so.4 dist/Rack/
cp dep/lib/libzip.so.5 dist/Rack/
cp dep/lib/libportaudio.so.2 dist/Rack/
cp dep/lib/libportmidi.so dist/Rack/
cp dep/lib/librtmidi.so dist/Rack/
mkdir -p dist/Rack/plugins
cp -R plugins/Fundamental/dist/Fundamental dist/Rack/plugins/
endif


+ 9
- 10
dep/Makefile View File

@@ -1,4 +1,3 @@

LOCAL = $(shell pwd)

# Arch-specifics
@@ -28,7 +27,7 @@ ifeq ($(ARCH),lin)
libsamplerate = lib/libsamplerate.so
libcurl = lib/libcurl.so
libzip = lib/libzip.so
portmidi = lib/libportmidi.so
rtmidi = lib/librtmidi.so
portaudio = lib/libportaudio.so
endif

@@ -39,7 +38,7 @@ ifeq ($(ARCH),mac)
libsamplerate = lib/libsamplerate.dylib
libcurl = lib/libcurl.dylib
libzip = lib/libzip.dylib
portmidi = lib/libportmidi.dylib
rtmidi = lib/librtmidi.dylib
portaudio = lib/libportaudio.dylib
endif

@@ -50,14 +49,14 @@ ifeq ($(ARCH),win)
libsamplerate = bin/libsamplerate-0.dll
libcurl = bin/libcurl-4.dll
libzip = bin/libzip-5.dll
portmidi = bin/libportmidi.dll
rtmidi = bin/rtmidi.dll
portaudio = bin/libportaudio_x64.dll
endif


.NOTPARALLEL:

all: $(glew) $(glfw) $(jansson) $(libsamplerate) $(libcurl) $(libzip) $(portmidi) $(portaudio)
all: $(glew) $(glfw) $(jansson) $(libsamplerate) $(libcurl) $(libzip) $(rtmidi) $(portaudio)
@echo ""
@echo "#######################################"
@echo "# Built all dependencies successfully #"
@@ -114,11 +113,11 @@ $(libzip):
$(MAKE) -C libzip-1.2.0
$(MAKE) -C libzip-1.2.0 install

$(portmidi):
git clone https://github.com/AndrewBelt/portmidi.git portmidi
cd portmidi && $(CMAKE) . -DCMAKE_INSTALL_PREFIX="$(LOCAL)" -DCMAKE_BUILD_TYPE=Release
$(MAKE) -C portmidi
$(MAKE) -C portmidi install
$(rtmidi):
git clone https://github.com/thestk/rtmidi.git rtmidi
cd rtmidi && ./autogen.sh && ./configure --prefix="$(LOCAL)"
$(MAKE) -C rtmidi
$(MAKE) -C rtmidi install

$(portaudio):
ifeq ($(ARCH),win)


Loading…
Cancel
Save