diff --git a/make_helpers/build_macros.mk b/make_helpers/build_macros.mk
index 36f220e08c965c1e7bce2f32678c4f99ff063581..34d82c9a373c7b06ccd31d66f4ccbba205373642 100644
--- a/make_helpers/build_macros.mk
+++ b/make_helpers/build_macros.mk
@@ -54,7 +54,7 @@ endef
 # Convenience function for verifying option has a boolean value
 # $(eval $(call assert_boolean,FOO)) will assert FOO is 0 or 1
 define assert_boolean
-    $(and $(patsubst 0,,$(value $(1))),$(patsubst 1,,$(value $(1))),$(error $(1) must be boolean))
+    $(if $(filter-out 0 1,$($1)),$(error $1 must be boolean))
 endef
 
 0-9 := 0 1 2 3 4 5 6 7 8 9