|
@@ -1,10 +1,10 @@
|
|
|
-# ErlyDTL plugin
|
|
|
+# ErlyDTL plugin.
|
|
|
|
|
|
-ERLYDTL_CASES = test
|
|
|
+ERLYDTL_CASES = compile
|
|
|
ERLYDTL_TARGETS = $(addprefix erlydtl-,$(ERLYDTL_CASES))
|
|
|
ERLYDTL_CLEAN_TARGETS = $(addprefix clean-,$(ERLYDTL_TARGETS))
|
|
|
|
|
|
-.PHONY: erlydtl clean-erlydtl
|
|
|
+.PHONY: erlydtl $(ERLYDTL_TARGETS) clean-erlydtl $(ERLYDTL_CLEAN_TARGETS)
|
|
|
|
|
|
clean-erlydtl: $(ERLYDTL_CLEAN_TARGETS)
|
|
|
|
|
@@ -13,29 +13,30 @@ $(ERLYDTL_CLEAN_TARGETS):
|
|
|
|
|
|
erlydtl: $(ERLYDTL_TARGETS)
|
|
|
|
|
|
-erlydtl-test: build clean-erlydtl-test
|
|
|
- $i "Bootstrap a new OTP application named $(APP)"
|
|
|
+erlydtl-compile: build clean-erlydtl-compile
|
|
|
+
|
|
|
+ $i "Bootstrap a new OTP library named $(APP)"
|
|
|
$t mkdir $(APP)/
|
|
|
$t cp ../erlang.mk $(APP)/
|
|
|
- $t $(MAKE) -C $(APP) -f erlang.mk bootstrap $v
|
|
|
+ $t $(MAKE) -C $(APP) -f erlang.mk bootstrap-lib $v
|
|
|
+
|
|
|
+ $i "Add ErlyDTL to the list of dependencies"
|
|
|
+ $t perl -ni.bak -e 'print;if ($$.==1) {print "DEPS = erlydtl\n"}' $(APP)/Makefile
|
|
|
+
|
|
|
+ $i "Generate ErlyDTL templates"
|
|
|
$t mkdir $(APP)/templates
|
|
|
- $t touch $(APP)/templates/$(APP)_template.dtl
|
|
|
- $t touch $(APP)/templates/$(APP)_template2.dtl
|
|
|
- $t echo "PROJECT = $(APP)" > $(APP)/Makefile
|
|
|
- $t echo "DEPS = erlydtl" >> $(APP)/Makefile
|
|
|
- $t echo "include erlang.mk" >> $(APP)/Makefile
|
|
|
+ $t touch $(APP)/templates/$(APP)_one.dtl
|
|
|
+ $t touch $(APP)/templates/$(APP)_two.dtl
|
|
|
|
|
|
$i "Build the application"
|
|
|
$t $(MAKE) -C $(APP) $v
|
|
|
|
|
|
$i "Check that ErlyDTL templates are compiled"
|
|
|
- $t test -f $(APP)/ebin/$(APP)_template_dtl.beam
|
|
|
- $t test -f $(APP)/ebin/$(APP)_template2_dtl.beam
|
|
|
+ $t test -f $(APP)/ebin/$(APP)_one_dtl.beam
|
|
|
+ $t test -f $(APP)/ebin/$(APP)_one_dtl.beam
|
|
|
|
|
|
$i "Check that ErlyDTL generated modules are included in .app file"
|
|
|
$t $(ERL) -pa $(APP)/ebin/ -eval " \
|
|
|
ok = application:load($(APP)), \
|
|
|
- {ok, Modules} = application:get_key($(APP), modules), \
|
|
|
- true = lists:member($(APP)_template_dtl, Modules), \
|
|
|
- true = lists:member($(APP)_template2_dtl, Modules), \
|
|
|
+ {ok, [$(APP_)_one_dtl, $(APP)_two_dtl]} = application:get_key($(APP), modules), \
|
|
|
halt()"
|