$(eval $(call include-pass-template,$(KERN_INCLUDE_DIR),kernel))
+$(foreach module,$(kernel_MODULES),$(eval $(call MODULE_kern_template,$(module),$(KERN_MODULES_DIR))))
+
+$(foreach lib,$(kernel_LIBRARIES),$(eval $(call LIBRARY_kern_template,$(lib))))
+
KERN_SOURCES := $(sort $(KERN_SOURCES))
$(foreach src,$(filter %.c,$(KERN_SOURCES)),$(eval $(call COMPILE_c_o_kern_template,$(SOURCES_DIR)/$(src),$(src:%.c=%.o),)))
$(foreach prog,$(bin_PROGRAMS),$(eval $(call PROGBUILTIN_template,$(prog),$(USER_REGISTRY_DIR),$(USER_REGISTRY_DIR))))
-$(foreach module,$(kernel_MODULES),$(eval $(call MODULE_kern_template,$(module),$(KERN_MODULES_DIR))))
-
library-pass-local: $(bin_PROGRAMS:%=$(USER_REGISTRY_DIR)/%.pbi)
+library-pass-local: $(kernel_LIBRARIES:%=$(KERN_LIB_DIR)/lib%.a)
+
clean-local::
$(Q)rm -f $(bin_PROGRAMS:%=$(USER_REGISTRY_DIR)/%.*)