# -E means stop after preprocessing.
# -P means don't generate line markers (which confuse Javascript).
# -C means not to discard comments.
# -x c means treat the file as C code.

PREPROCESS=gcc -E -P -C -x c


LIVE_DIRECTORY="/Users/$(USER)/Library/Application\ Support/Ableton/Library/Presets/MIDI\ Effects/Max\ MIDI\ Effect/"

LIVE_PATH="Library/Application\ Support/Ableton/Library/Presets/MIDI\ Effects/Max\ MIDI\ Effect"
LIVE_DIRECTORY2="/Users/$(USER)/$(LIVE_PATH)"
REMOTE_DIRECTORY="/Volume/$(USER)/$(LIVE_PATH)"

all: \
 clone_patcher.jso \
 commander.jso \
 morse.jso \
 snoop.jso \
 tests.jso \
 write_lom.jso \
 max4live

%.dep: js/%.js js/*/*.js
	$(PREPROCESS) -M -iquote js $< -o $@

max4live: \
 "$(LIVE_DIRECTORY)/commander.jso" \
 "$(LIVE_DIRECTORY)/write_lom.jso" \
 max4live_data \

remote: \
 "$(REMOTE_DIRECTORY)/commander.jso" \
 "$(REMOTE_DIRECTORY)/write_lom.jso" \

max4live_data: data
	cp -R data/* "$(LIVE_DIRECTORY)/data"


%.jso: js/%.js js/*/*.js
	$(PREPROCESS) -iquote js $< -o $@

"$(LIVE_DIRECTORY)/%.jso": %.jso
	cp "$<" "$@"

clean:
	rm *.jso

