aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2018-11-24 11:21:13 +0100
committerLoïc Hoguin <[email protected]>2018-11-24 11:21:13 +0100
commita63a34077cd001edee2e2b683d7721058f7f9f31 (patch)
treee240aefbbfbaa0718146f2ac7e0ed31882cb9360
parent7eae8ab2b332a31104583031f3d8e761339beab4 (diff)
downloaderlang.mk-a63a34077cd001edee2e2b683d7721058f7f9f31.tar.gz
erlang.mk-a63a34077cd001edee2e2b683d7721058f7f9f31.tar.bz2
erlang.mk-a63a34077cd001edee2e2b683d7721058f7f9f31.zip
Don't try to create a nif if n wasn't provided
-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