Host Packages require BuildPackages line?

I'm creating a series of Host Only packages.

I don't use include $(INCLUDE_DIR)/package.mk
I DO have include $(INCLUDE_DIR)/host-build.mk
I DO have $(eval $(call HostBuild))
I DO have PKG_HOST_ONLY:=1
I don't have Build/ defines or Package/ defines in the file.

If I have #$(eval $(call BuildPackage,xxxxxx)) in the file, it's fine.. called via ./package/feeds/packages/xxxx/{clean,compile}. If I uncomment the line, I need to call it via ./package/feeds/packages/xxxx/host/{clean,compile} (and then requires the Build/ and Package/ defines)

If I remove the commented line, the entire package fails with:
make[1]: *** No rule to make target 'package/feeds/packages/xxxxx/clean'. Stop.

What am I missing (aside from the commented $(eval ) line)?