forked from cubing/ksolve-plus-fork
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathMakefile
35 lines (28 loc) · 771 Bytes
/
Makefile
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
35
# Javascript options.
JS_OPT = -O2
JS_MEMORY = -s TOTAL_MEMORY=536870912
JS_USE_ASM_JS = 1
JS_FUNCTIONS = "['_solve']"
all: ksolve js
# Use GCC for OpenMP support (parallelization), since clang doesn't support it.
# Need to specify GCC version to avoid triggering clang on OSX. :-(
ksolve:
g++-4.2 -o ksolve -O3 -fopenmp ./source/main.cpp
.PHONY: js
js:
emcc -Wall \
$(JS_OPT) -s \
ASM_JS=$(JS_USE_ASM_JS) \
$(JS_MEMORY) \
-s EXPORTED_FUNCTIONS=$(JS_FUNCTIONS) \
-o ./html/ksolve.js \
./source/main.cpp
.PHONY: serve
serve:
cd html ; open "http://localhost:$${1:-8080}/" ; python -m SimpleHTTPServer $${1:-8080}
.PHONY: cpp-test
cpp-test:
./ksolve puzzles/3x3x3_RFU.def puzzles/3x3x3_RFU.txt
.PHONY: clean
clean:
rm -f *.o ksolve ./html/ksolve.js