diff --git a/Makefile b/Makefile index 55155836..90930322 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,3 @@ -include Makefile-arch.inc - FLAGS += \ -I./include @@ -7,6 +5,8 @@ SOURCES = $(wildcard src/*.cpp src/*/*.cpp) \ ext/nanovg/src/nanovg.c +include arch.mk + ifeq ($(ARCH), lin) SOURCES += ext/osdialog/osdialog_gtk2.c CFLAGS += $(shell pkg-config --cflags gtk+-2.0) @@ -54,4 +54,4 @@ clean: %.res: %.rc windres $^ -O coff -o $@ -include Makefile.inc +include compile.mk diff --git a/README.md b/README.md index fdec6bab..8faa417e 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,32 @@ -***Note: This repo is unsupported until September 7. All issues and pull requests will be ignored until then.*** +***Note: This repo is unsupported until September 7. See you at [Knobcon](https://knobcon.com/)!*** # Rack -Open source virtual Eurorack DAW +*Rack* is the engine for the VCV open-source virtual Eurorack DAW. ## Building -Install dependencies +*If the build fails for you, please report the issue with a detailed error message to help the portability of Rack.* -- [GLEW](http://www.glfw.org/) -- [GLFW](http://glew.sourceforge.net/) -- [jansson](http://www.digip.org/jansson/) -- [portaudio](http://www.portaudio.com/) -- [portmidi](http://portmedia.sourceforge.net/portmidi/) -- [libsamplerate](http://www.mega-nerd.com/SRC/) -- GTK+-2.0 if Linux (for file open/save dialog) +Clone this repository and `cd` into it. +On Windows, use [MSYS2](http://www.msys2.org/) to set up a \*NIX shell. -Run `make ARCH=lin` or `make ARCH=win` or `make ARCH=mac` +Clone submodules in `/ext`. -If the build breaks because you think I've missed a step, feel free to post an issue. + git submodule update --init + +Build dependencies locally. + + cd dep + make + cd .. + +Build Rack. + + make ## License -Rack source code by [Andrew Belt](https://andrewbelt.name/): [BSD-3-Clause](LICENSE.txt) +Rack source code by [Andrew Belt](https://andrewbelt.name/) licensed under the [BSD-3-Clause](LICENSE.txt) -Component Library graphics by [Grayscale](http://grayscale.info/): [CC BY-NC 4.0](https://creativecommons.org/licenses/by-nc/4.0/) +Component Library graphics by [Grayscale](http://grayscale.info/) licensed under the [CC BY-NC 4.0](https://creativecommons.org/licenses/by-nc/4.0/) diff --git a/Makefile-arch.inc b/arch.mk similarity index 100% rename from Makefile-arch.inc rename to arch.mk diff --git a/Makefile.inc b/compile.mk similarity index 100% rename from Makefile.inc rename to compile.mk diff --git a/dep/Makefile b/dep/Makefile index bbf07b56..418afa57 100755 --- a/dep/Makefile +++ b/dep/Makefile @@ -2,7 +2,8 @@ LOCAL = $(PWD) # Arch-specifics -include ../Makefile-arch.inc +include ../arch.mk + ifeq ($(ARCH),mac) export CFLAGS = -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.7.sdk \ -mmacosx-version-min=10.7 diff --git a/Makefile-plugin.inc b/plugin.mk similarity index 86% rename from Makefile-plugin.inc rename to plugin.mk index de945db5..a1ea6390 100644 --- a/Makefile-plugin.inc +++ b/plugin.mk @@ -1,11 +1,11 @@ # All paths here assume the PWD is plugin/something -include ../../Makefile-arch.inc - FLAGS += -fPIC \ -I../../include +include ../../arch.mk + ifeq ($(ARCH), lin) LDFLAGS += -shared TARGET = plugin.so @@ -27,4 +27,4 @@ all: $(TARGET) clean: rm -rfv build $(TARGET) -include ../../Makefile.inc +include ../../compile.mk