-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMakefile
More file actions
50 lines (33 loc) · 1.24 KB
/
Copy pathMakefile
File metadata and controls
50 lines (33 loc) · 1.24 KB
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
BASENAME:=pe14
all: build_ocaml build_racket build_bash build_c build_cpp build_rust build_haskell build_swift build_java build_scala
build_bash: $(BASENAME)_bash.sh
chmod 775 $(BASENAME)_bash.sh
build_c: $(BASENAME)_c.c
clang -std=gnu99 -pthread -O3 $(BASENAME)_c.c -o $(BASENAME)_c.out -lrt
build_cpp: $(BASENAME)_cpp.cpp
clang++ -std=c++11 $(BASENAME)_cpp.cpp -o $(BASENAME)_cpp.o -ftemplate-depth-100000
build_haskell: $(BASENAME)_haskell.hs
ghc -O2 $(BASENAME)_haskell.hs
build_java: $(BASENAME)_java.java
javac -d javasrc/ $(BASENAME)_java.java
build_ocaml: $(BASENAME)_ocaml.ml
ocamlopt -o $(BASENAME)_ocaml.native $(BASENAME)_ocaml.ml
build_racket: $(BASENAME)_racket.rkt
raco make $(BASENAME)_racket.rkt
build_rust: $(BASENAME)_rust.rs
rustc $(BASENAME)_rust.rs
build_swift: $(BASENAME)_swift.swift
swiftc $(BASENAME)_swift.swift -o $(BASENAME)_swift.o
build_scala: $(BASENAME)_scala.scala
scalac -d scalasrc/ $(BASENAME)_scala.scala
clean_objs:
rm $(BASENAME)_rust $(BASENAME)_haskell
clean_racket:
rm -rf compiled/*.zo compiled/*.dep
clean_ocaml:
rm -rf *.cmi *.cmx *.native *.out *.o
clean_java:
rm -rf javasrc/*.class
clean_scala:
rm -rf scalasrc/*.class
clean: clean_ocaml clean_racket clean_objs clean_java clean_scala