aboutsummaryrefslogtreecommitdiffstats
path: root/test/plugin_escript.mk
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2018-11-26 15:56:10 +0100
committerLoïc Hoguin <[email protected]>2018-11-26 15:56:10 +0100
commitb444f586e25dd2d0355c28cf94b4cd5ee6c1711d (patch)
treeae68664c08ce130b38f1118dfb7480ba08d7881e /test/plugin_escript.mk
parent54df98c780eec454a4ac0a9357c7e7a8a837c0b9 (diff)
downloaderlang.mk-b444f586e25dd2d0355c28cf94b4cd5ee6c1711d.tar.gz
erlang.mk-b444f586e25dd2d0355c28cf94b4cd5ee6c1711d.tar.bz2
erlang.mk-b444f586e25dd2d0355c28cf94b4cd5ee6c1711d.zip
Don't include applications with no ebin/ directory in escripts
Diffstat (limited to 'test/plugin_escript.mk')
-rw-r--r--test/plugin_escript.mk31
1 files changed, 31 insertions, 0 deletions
diff --git a/test/plugin_escript.mk b/test/plugin_escript.mk
index 7c6b8ce..317425a 100644
--- a/test/plugin_escript.mk
+++ b/test/plugin_escript.mk
@@ -34,6 +34,37 @@ escript-build: build clean
$i "Check that the escript was removed"
$t test ! -e $(APP)/$(APP)
+escript-build-deps: 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 "Add Ranch to the list of dependencies"
+ $t perl -ni.bak -e 'print;if ($$.==1) {print "DEPS = ranch\n"}' $(APP)/Makefile
+
+ $i "Add lfe.mk to the list of build dependencies"
+ $t perl -ni.bak -e 'print;if ($$.==1) {print "BUILD_DEPS = lfe.mk\ndep_lfe.mk = git https://github.com/ninenines/lfe.mk master\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 build dependency was fetched"
+ $t test -d $(APP)/deps/lfe.mk
+
+ $i "Check that the escript runs"
+ $t $(APP)/$(APP) | grep -q good
+
+ $i "Check that the escript does not contain the build dependency"
+ $t ! zipinfo $(APP)/$(APP) 2> /dev/null | grep -q lfe
+
escript-deps: build clean
$i "Bootstrap a new OTP library named $(APP)"