aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--plugins/c_src.mk3
-rw-r--r--test/plugin_c_src.mk10
2 files changed, 13 insertions, 0 deletions
diff --git a/plugins/c_src.mk b/plugins/c_src.mk
index 11b1f79..71c0099 100644
--- a/plugins/c_src.mk
+++ b/plugins/c_src.mk
@@ -226,6 +226,9 @@ endif
ifneq ($(wildcard src/$n.erl),)
$(error Error: src/$n.erl already exists)
endif
+ifndef n
+ $(error Usage: $(MAKE) new-nif n=NAME [in=APP])
+endif
ifdef in
$(verbose) $(MAKE) -C $(APPS_DIR)/$(in)/ new-nif n=$n in=
else
diff --git a/test/plugin_c_src.mk b/test/plugin_c_src.mk
index 68a3a97..2b2b1b8 100644
--- a/test/plugin_c_src.mk
+++ b/test/plugin_c_src.mk
@@ -86,3 +86,13 @@ endif
$i "Check that all files were removed"
$t test ! -e $(APP)/c_src/env.mk
+
+c-src-nif-missing-name: 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 "Try to generate a NIF without giving it a name"
+ $t ! $(MAKE) -C $(APP) new-nif $v