|
|
@@ -25,6 +25,7 @@ ifeq ($(ARCH), mac) |
|
|
|
-framework Cocoa -framework OpenGL -framework IOKit -framework CoreVideo \ |
|
|
|
-Ldep/lib -lGLEW -lglfw -ljansson -lsamplerate -lcurl -lzip -lportaudio -lportmidi |
|
|
|
TARGET = Rack |
|
|
|
BUNDLE = $(TARGET).app |
|
|
|
endif |
|
|
|
|
|
|
|
ifeq ($(ARCH), win) |
|
|
@@ -53,10 +54,70 @@ ifeq ($(ARCH), win) |
|
|
|
endif |
|
|
|
|
|
|
|
clean: |
|
|
|
rm -rf $(TARGET) build |
|
|
|
rm -rf $(TARGET) build dist |
|
|
|
|
|
|
|
# For Windows resources |
|
|
|
%.res: %.rc |
|
|
|
windres $^ -O coff -o $@ |
|
|
|
|
|
|
|
include compile.mk |
|
|
|
|
|
|
|
|
|
|
|
dist: all |
|
|
|
ifndef VERSION |
|
|
|
$(error VERSION is not set.) |
|
|
|
endif |
|
|
|
mkdir -p dist/Rack |
|
|
|
mkdir -p dist/Rack/plugins |
|
|
|
cp -R LICENSE* res dist/Rack/ |
|
|
|
ifeq ($(ARCH), lin) |
|
|
|
cp Rack Rack.sh dist/Rack/ |
|
|
|
cp dep/lib/libsamplerate.so.0 dist/Rack/ |
|
|
|
cp dep/lib/libjansson.so.4 dist/Rack/ |
|
|
|
cp dep/lib/libGLEW.so.2.1 dist/Rack/ |
|
|
|
cp dep/lib/libglfw.so.3 dist/Rack/ |
|
|
|
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/libsamplerate.so.0 dist/Rack/ |
|
|
|
cp dep/lib/libsamplerate.so.0 dist/Rack/ |
|
|
|
endif |
|
|
|
ifeq ($(ARCH), mac) |
|
|
|
mkdir -p $(BUNDLE)/Contents |
|
|
|
cp Info.plist $(BUNDLE)/Contents/ |
|
|
|
|
|
|
|
mkdir -p $(BUNDLE)/Contents/MacOS |
|
|
|
cp Rack $(BUNDLE)/Contents/MacOS/ |
|
|
|
|
|
|
|
otool -L $(BUNDLE)/Contents/MacOS/Rack |
|
|
|
|
|
|
|
# cp /usr/local/opt/glew/lib/libGLEW.2.0.0.dylib $(BUNDLE)/Contents/MacOS/ |
|
|
|
# cp /usr/local/opt/jansson/lib/libjansson.4.dylib $(BUNDLE)/Contents/MacOS/ |
|
|
|
# cp /usr/local/opt/portaudio/lib/libportaudio.2.dylib $(BUNDLE)/Contents/MacOS/ |
|
|
|
# cp /usr/local/opt/portmidi/lib/libportmidi.dylib $(BUNDLE)/Contents/MacOS/ |
|
|
|
# cp /usr/local/opt/libsamplerate/lib/libsamplerate.0.dylib $(BUNDLE)/Contents/MacOS/ |
|
|
|
# cp /usr/local/opt/libzip/lib/libzip.4.dylib $(BUNDLE)/Contents/MacOS/ |
|
|
|
|
|
|
|
# install_name_tool -change /usr/local/opt/glew/lib/libGLEW.2.0.0.dylib @executable_path/libGLEW.2.0.0.dylib $(BUNDLE)/Contents/MacOS/Rack |
|
|
|
# install_name_tool -change /usr/local/opt/jansson/lib/libjansson.4.dylib @executable_path/libjansson.4.dylib $(BUNDLE)/Contents/MacOS/Rack |
|
|
|
# install_name_tool -change /usr/local/opt/portaudio/lib/libportaudio.2.dylib @executable_path/libportaudio.2.dylib $(BUNDLE)/Contents/MacOS/Rack |
|
|
|
# install_name_tool -change /usr/local/opt/portmidi/lib/libportmidi.dylib @executable_path/libportmidi.dylib $(BUNDLE)/Contents/MacOS/Rack |
|
|
|
# install_name_tool -change /usr/local/opt/libsamplerate/lib/libsamplerate.0.dylib @executable_path/libsamplerate.0.dylib $(BUNDLE)/Contents/MacOS/Rack |
|
|
|
# install_name_tool -change /usr/local/opt/libzip/lib/libzip.4.dylib @executable_path/libzip.4.dylib $(BUNDLE)/Contents/MacOS/Rack |
|
|
|
|
|
|
|
otool -L $(BUNDLE)/Contents/MacOS/Rack |
|
|
|
|
|
|
|
cp -R Rack.app dist/Rack/ |
|
|
|
endif |
|
|
|
ifeq ($(ARCH), win) |
|
|
|
# TODO Copy dlls |
|
|
|
cp Rack/*.dll dist/Rack/ |
|
|
|
cp Rack/Rack.exe dist/Rack/ |
|
|
|
endif |
|
|
|
|
|
|
|
# Fundamental |
|
|
|
$(MAKE) -C plugins/Fundamental dist |
|
|
|
cp -R plugins/Fundamental/dist/Fundamental dist/Rack/plugins/ |
|
|
|
|
|
|
|
cd dist && zip -5 -r Rack-$(VERSION)-$(ARCH).zip Rack |