3 include $(slateroot
)/common.mk
8 $(SILENT
) $(MAKE
) -C
$(VMDIR
) vm
9 $(SILENT
) cp
-f
$(VMDIR
)/$(VMNAME
) .
/slate
11 slate.
%.image
: kernel.new.
%.image
12 $(SILENT
) $(ECHO
) "repl resetOnStartup. Load DefaultSourceDir := Directory newNamed: '$(slatesrcdir)'. Image saveNamed: '$@'." |
$(VM
) $(QUIETNESS
) -i
$<
16 $(SILENT
) $(ECHO
) "repl resetOnStartup. Load DefaultSourceDir := Directory newNamed: '$(slatesrcdir)'. Image saveNamed: '$(DEFAULT_IMAGE)'." |
$(VM
) $(QUIETNESS
) -i
$(DEFAULT_KERNEL_IMAGE
)
17 $(SILENT
) touch
$(DEFAULT_IMAGE
)
19 release_image
: vm
$(DEFAULT_IMAGE
)
22 $(SILENT
) $(WGET
) $(LATEST_SLATE_IMAGE_URL
)
23 -bunzip2
-q
-k
$(LATEST_SLATE_IMAGE_RELEASE_NAME
).bz2
24 $(INSTALL
) $(LATEST_SLATE_IMAGE_RELEASE_NAME
) $(DEFAULT_IMAGE
)
27 $(SILENT
) $(INSTALL
) -d
$(exec_prefix) $(lispdir
) $(includedir) $(datadir) $(man1dir)
28 $(SILENT
) $(INSTALL
) -d
$(slatesrcdir
) $(slatesrcdir
)/core
$(slatesrcdir
)/lib
$(slatesrcdir
)/syntax
$(slatesrcdir
)/mobius
$(slatesrcdir
)/demo
30 install: vm
installdirs
31 $(info Installing
) # TODO: Plugins and documentation missing
32 $(SILENT
) $(INSTALL
) $(VM
) $(exec_prefix)/$(execname
)
33 $(SILENT
) $(INSTALL
) $(INSTALL_MODE
) $(slateroot
)/$(DEFAULT_IMAGE
) $(datadir)/$(DEFAULT_IMAGE
)
34 $(SILENT
) $(INSTALL
) $(INSTALL_MODE
) $(VMDIR
)/slate.hpp
$(includedir)/slate.hpp
35 $(SILENT
) $(INSTALL
) $(INSTALL_MODE
) $(slateroot
)/etc
/slate-mode.el
$(lispdir
)/
36 $(SILENT
) mkdir
-p
$(vimdir
)
37 $(SILENT
) $(INSTALL
) $(INSTALL_MODE
) $(slateroot
)/etc
/slate.vim
$(vimdir
)/
38 $(SILENT
) cat
$(slateroot
)/etc
/slate
.1 | sed
-e
's/$${prefix}/$(subst /,\/,$(prefix))/g' |
$(GZIP
) -c
> $(slateroot
)/etc
/slate
.1.gz
39 $(SILENT
) $(INSTALL
) $(INSTALL_MODE
) $(slateroot
)/etc
/slate
.1.gz
$(man1dir)
40 $(SILENT
) $(INSTALL
) $(INSTALL_MODE
) $(slateroot
)/src
/core
/*.slate
$(slatesrcdir
)/core
41 $(SILENT
) $(INSTALL
) $(INSTALL_MODE
) $(slateroot
)/src
/lib
/*.slate
$(slatesrcdir
)/lib
42 $(SILENT
) $(INSTALL
) $(INSTALL_MODE
) $(slateroot
)/src
/syntax
/*.slate
$(slatesrcdir
)/syntax
43 $(SILENT
) $(INSTALL
) $(INSTALL_MODE
) $(slateroot
)/src
/mobius
/*.slate
$(slatesrcdir
)/mobius
44 $(SILENT
) $(INSTALL
) $(INSTALL_MODE
) $(slateroot
)/src
/demo
/*.slate
$(slatesrcdir
)/demo
46 install-strip
: install
47 $(SILENT
) $(INSTALL
) -s
$(VM
) $(exec_prefix)/$(execname
)
50 $(info Checking installation
)
51 # TODO: A few sanity checks should be run on the installed files
52 $(SILENT
) $(exec_prefix)/$(execname
) --eval
"3 + 4. quit."
56 $(SILENT
) $(RM
) -f
$(exec_prefix)/$(execname
)
57 $(SILENT
) $(RM
) -f
$(lispdir
)/slate-mode.el
58 $(SILENT
) $(RM
) -f
$(includedir)/slate.hpp
59 $(SILENT
) $(RM
) -fr
$(datadir)
62 $(info Launching Slate in Emacs
)
63 $(SILENT
) $(EMACS
) -Q
-l
$(slateroot
)/etc
/slate-startup.el
$(src
)
66 $(info Creating completion file for evaluation
)
67 $(SILENT
) $(VM
) $(QUIETNESS
) -i
$(DEFAULT_IMAGE
) --eval
"(File newNamed: '~/.slate_completions' &mode: File CreateWrite) writer sessionDo: [| :x | Symbols keySet do: [| :name | x ; name ; '\n']]. quit."
69 readline-support
: slate-completions
72 $(SILENT
) $(VM
) $(QUIETNESS
) -i
$(DEFAULT_IMAGE
) --load src
/i18n
/init.slate
--eval
"Unicode buildTable" --eval
"Image save. quit."
74 bootstrap
: src
/mobius
/init.slate
75 $(info Bootstrapping new images
)
76 $(SILENT
) $(VM
) $(QUIETNESS
) -i
$(DEFAULT_IMAGE
) --load src
/mobius
/init.slate
--eval
"Bootstrap ImageDefinition bootstrap &bootstrapDirectory: '$(BOOTSTRAP_DIR)' &littleEndian: $(LITTLE_ENDIAN_SLATE) &wordSize: $(WORD_SIZE)." --eval
"quit"
79 tar '--exclude=*.git*' -jcvf ..
/slate-backup.
tar.bz2 .
82 $(MAKE
) -C src
/plugins
85 rm -f core vm vm.fast vm.prof
88 $(MAKE
) -C src
/plugins
clean
90 $(MAKE
) -C src
/vm
clean
92 clean: pluginsclean vmclean
96 TAGS
: $(SOURCES
) $(HEADERS
)
97 $(SECHO
) "Creating $@ file"
98 $(SILENT
) $(ETAGS
) $(SOURCES
) $(HEADERS
)
100 .PHONY
: clean superclean backup plugins pluginsclean vmclean