It is expected that the IDL compiler executable is the first word in the
IDL_COMPILER variable. If the first word is not a file (e.g. shell
variable assignment), it will work correctly as $(wildcard ) is used and
it will return empty string in that case.
define COMPILE_idl_template
define COMPILE_idl_template
-$(2).c $(2)-stubs.c $(2)-skels.c $(2)-common.c $(2).h: $(1)
+$(2).c $(2)-stubs.c $(2)-skels.c $(2)-common.c $(2).h: $(1) $$(wildcard $$(firstword $$(idl_COMPILE)))
@$(QUIET_CMD_ECHO) " IDL $$@"
$(Q) $$(idl_COMPILE) $$($(2)_IDLFLAGS) $(1)
endef
@$(QUIET_CMD_ECHO) " IDL $$@"
$(Q) $$(idl_COMPILE) $$($(2)_IDLFLAGS) $(1)
endef