forked from JuliaLang/julia
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile
77 lines (59 loc) · 2.22 KB
/
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
JULIAHOME = $(abspath .)
include $(JULIAHOME)/Make.inc
default: release
debug release: %: julia-% sys.ji
julia-debug julia-release:
@$(MAKE) -sC external
@$(MAKE) -sC src lib$@
@$(MAKE) -sC ui $@
@$(MAKE) -sC j
@ln -f $@-$(DEFAULT_REPL) julia
sys0.ji: src/boot.j src/dump.c j/stage0.j
$(QUIET_JULIA) ./julia -b stage0.j
@rm -f sys.ji
# if sys.ji exists, use it to rebuild, otherwise use sys0.ji
sys.ji: VERSION sys0.ji j/stage1.j j/sysimg.j j/start_image.j j/*.j
$(QUIET_JULIA) ./julia `test -f sys.ji && echo stage1.j || echo -J sys0.ji stage1.j`
install: release
install -d $(DESTDIR)/usr/share/julia/lib
install -d $(DESTDIR)/usr/share/julia/j
install -d $(DESTDIR)/usr/share/julia/contrib
install -d $(DESTDIR)/usr/share/julia/examples
install -v julia* $(DESTDIR)/usr/share/julia
install -v sys.ji $(DESTDIR)/usr/share/julia
install -v j/* $(DESTDIR)/usr/share/julia/j
install -v examples/*.j $(DESTDIR)/usr/share/julia/examples
install -v lib/libarpack.$(SHLIB_EXT) lib/libfdm.$(SHLIB_EXT) lib/libfftw3.$(SHLIB_EXT)* lib/libfftw3f.$(SHLIB_EXT)* lib/libpcre.$(SHLIB_EXT)* lib/libpcrecpp.$(SHLIB_EXT)* lib/libpcreposix.$(SHLIB_EXT)* lib/librandom.$(SHLIB_EXT) lib/liblapack.$(SHLIB_EXT) lib/libsuitesparse*$(SHLIB_EXT) lib/libgrisu.$(SHLIB_EXT) lib/libamos.$(SHLIB_EXT) $(DESTDIR)/usr/share/julia/lib
dist: release
rm -fr dist julia-*.tar.gz
$(MAKE) install DESTDIR=dist
cd dist/usr/share && tar zcvf ../../../julia-$(JULIA_COMMIT)-$(OS)-$(ARCH).tar.gz *
deb:
fakeroot debian/rules binary
debclean:
fakeroot debian/rules clean
h2j: lib/libLLVM*.a lib/libclang*.a src/h2j.cpp
$(QUIET_CC) g++ -O2 -fno-rtti -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS -Iinclude $^ -o $@
clean:
@rm -f julia
@rm -f *~ *#
@rm -f sys0.ji
@rm -f sys.ji
@$(MAKE) -sC j clean
@$(MAKE) -sC src clean
@$(MAKE) -sC ui clean
@$(MAKE) -sC ui/webserver clean
@$(MAKE) -sC test/unicode clean
cleanall: clean
@$(MAKE) -sC src clean-flisp clean-support
distclean: cleanall
#distclean: cleanall
# $(MAKE) -C external cleanall
.PHONY: default debug release julia-debug julia-release \
test testall test-* sloccount clean cleanall
test: release
@$(MAKE) -sC test default
testall: release
@$(MAKE) -sC test all
test-%: release
@$(MAKE) -sC test $*