diff options
Diffstat (limited to 'test')
-rw-r--r-- | test/plugin_escript.mk | 30 |
1 files changed, 29 insertions, 1 deletions
diff --git a/test/plugin_escript.mk b/test/plugin_escript.mk index 3916094..5677f3a 100644 --- a/test/plugin_escript.mk +++ b/test/plugin_escript.mk @@ -1,6 +1,6 @@ # Escript plugin. -ESCRIPT_CASES = build deps extra +ESCRIPT_CASES = build deps distclean extra ESCRIPT_TARGETS = $(addprefix escript-,$(ESCRIPT_CASES)) .PHONY: escript $(ESCRIPT_TARGETS) @@ -60,6 +60,34 @@ escript-deps: build clean $i "Check that the escript contains the dependency" $t zipinfo $(APP)/$(APP) 2> /dev/null | grep -q ranch +escript-distclean: build clean + + $i "Bootstrap a new OTP library named $(APP)" + $t mkdir $(APP)/ + $t cp ../erlang.mk $(APP)/ + $t $(MAKE) -C $(APP) -f erlang.mk bootstrap-lib $v + + $i "Use a non-standard name for the escript" + $t perl -ni.bak -e 'print;if ($$.==1) {print "ESCRIPT_FILE = real-escript\n"}' $(APP)/Makefile + + $i "Generate a module containing a function main/1" + $t printf "%s\n" \ + "-module($(APP))." \ + "-export([main/1])." \ + 'main(_) -> io:format("good~n").' > $(APP)/src/$(APP).erl + + $i "Build the escript" + $t $(MAKE) -C $(APP) escript $v + + $i "Check that the escript runs" + $t test ! -f $(APP)/$(APP) + $t $(APP)/real-escript | grep -q good + + $i "Check that make distclean removes the generated escript" + $t $(MAKE) -C $(APP) distclean $v + $t test ! -f $(APP)/$(APP) + $t test ! -f $(APP)/real-escript + escript-extra: build clean $i "Bootstrap a new OTP library named $(APP)" |