summaryrefslogtreecommitdiff
path: root/Makefile
blob: a488056fae76b2f05b64c431ba8c36ce5b871558 (plain)
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
-include Makefile.local

OPENSCAD_APP?=/Applications/OpenSCAD.app
OPENSCAD_BIN?=${OPENSCAD_APP}/Contents/MacOS/OpenSCAD
OPENSCAD_FLAGS=-D draft=false
SED?=sed
ECHO?=/bin/echo
AWK?=awk

default:
	@echo "And?"

clean:
	rm -f *.stl *.gcode

stl-another-%:
	$(MAKE) another-$*-{body,lever,knob}.stl

another-%-body.stl: another-%.scad another.scad
	$(OPENSCAD_BIN) $(OPENSCAD_FLAGS) -D 'what="body"' -o "$@" "$<"
another-%-lever.stl: another-%.scad another.scad
	$(OPENSCAD_BIN) $(OPENSCAD_FLAGS) -D 'what="lever"' -o "$@" "$<"
another-%-knob.stl: another-%.scad another.scad
	$(OPENSCAD_BIN) $(OPENSCAD_FLAGS) -D 'what="knob"' -o "$@" "$<"

multiswitch.c8r.scad: multiswitch-c8r.scad threads.scad  pushfit_data.scad pushfittery.scad multiswitch.scad
	@echo "Preprocessing into $@…"
	@( \
	 $(ECHO) "/* DO NOT. JUST DO NOT. FORGET THIS FILE, IT'S PREPROCESSED, GET THE SOURCE. */" ;\
	 $(AWK) '/^\/\/CUSTOMIZERCUTOFF/ {nextfile} {print}' $^ | $(SED) -Ee 's,^(use|include),//\1,g' \
	) > $@

%.stl: %.scad
	${OPENSCAD_BIN} ${OPENSCAD_FLAGS} -o "$@" "$<"