Index: trunk/kBuild/footer.kmk
===================================================================
--- trunk/kBuild/footer.kmk	(revision 2083)
+++ trunk/kBuild/footer.kmk	(revision 2084)
@@ -51,4 +51,5 @@
 _ALL_PROGRAMS    := $(PROGRAMS)    $(PROGRAMS.$(KBUILD_TARGET))      $(PROGRAMS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))        $(PROGRAMS.$(KBUILD_TARGET_ARCH))    $(PROGRAMS.$(KBUILD_TARGET_CPU))     $(PROGRAMS.$(KBUILD_TYPE))
 _ALL_SYSMODS     := $(SYSMODS)     $(SYSMODS.$(KBUILD_TARGET))       $(SYSMODS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))         $(SYSMODS.$(KBUILD_TARGET_ARCH))     $(SYSMODS.$(KBUILD_TARGET_CPU))      $(SYSMODS.$(KBUILD_TYPE))
+_ALL_MISCBINS    := $(MISCBINS)    $(MISCBINS.$(KBUILD_TARGET))      $(MISCBINS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))        $(MISCBINS.$(KBUILD_TARGET_ARCH))    $(MISCBINS.$(KBUILD_TARGET_CPU))     $(MISCBINS.$(KBUILD_TYPE))
 _ALL_OTHERS      := $(OTHERS)      $(OTHERS.$(KBUILD_TARGET))        $(OTHERS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))          $(OTHERS.$(KBUILD_TARGET_ARCH))      $(OTHERS.$(KBUILD_TARGET_CPU))       $(OTHERS.$(KBUILD_TYPE))
 _ALL_INSTALLS    := $(INSTALLS)    $(INSTALLS.$(KBUILD_TARGET))      $(INSTALLS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))        $(INSTALLS.$(KBUILD_TARGET_ARCH))    $(INSTALLS.$(KBUILD_TARGET_CPU))     $(INSTALLS.$(KBUILD_TYPE))
@@ -66,4 +67,5 @@
 	$(_ALL_PROGRAMS) \
 	$(_ALL_SYSMODS) \
+	$(_ALL_MISCBINS) \
 	$(_ALL_INSTALLS) \
 	$(_ALL_OTHERS)
@@ -78,4 +80,5 @@
 	$(_ALL_PROGRAMS) \
 	$(_ALL_SYSMODS) \
+	$(_ALL_MISCBINS) \
 	$(_ALL_INSTALLS) \
 	$(_ALL_OTHERS)
@@ -117,4 +120,5 @@
 _PROGRAMS :=
 _SYSMODS  :=
+_MISCBINS :=
 _INSTALLS :=
 _INSTALLS_FILES :=
@@ -916,4 +920,11 @@
 properties_deferred := $(PROPS_SYSMODS_DEFERRED)
 $(foreach trg, $(_ALL_SYSMODS),$(evalval def_inherit))
+
+# Misc binaries.
+properties          := $(PROPS_MISCBINS_SINGLE)
+properties_now_l    := $(PROPS_MISCBINS_ACCUMULATE_L)
+properties_now_r    := $(PROPS_MISCBINS_ACCUMULATE_R)
+properties_deferred := $(PROPS_MISCBINS_DEFERRED)
+$(foreach trg, $(_ALL_MISCBINS),$(evalval def_inherit))
 
 # Installs.
@@ -1535,4 +1546,16 @@
 bld_trg_base_var := TARGET
 $(foreach target, $(_ALL_SYSMODS), \
+	$(evalval def_pass1_link_common))
+
+
+#
+# MISCBINS (Pass 1)
+#
+EXT     := BIN
+EXTPRE  :=
+definst := $(PATH_BIN)
+tool_prefix := LD
+bld_trg_base_var := TARGET
+$(foreach target, $(_ALL_MISCBINS), \
 	$(evalval def_pass1_link_common))
 
@@ -3012,4 +3035,23 @@
 
 #
+# MISCBINS
+#
+
+# Process MISCBINS
+EXT     := BIN
+EXTPRE  :=
+tool_do := LINK_MISCBIN
+definst := $(PATH_BIN)
+typevar := _MISCBINS
+mode    := 0644
+bld_trg_base_var := TARGET
+$(foreach target, $(_ALL_MISCBINS), $(evalval def_link_common))
+
+ifdef KBUILD_PROFILE_SELF
+ $(evalcall def_profile_self, done misc binary targets)
+endif
+
+
+#
 # OTHERS
 #
@@ -3623,5 +3665,5 @@
 
 # misc shortcuts (use secondary expansion here to save strcache[file] space).
-targets:   bldprogs libraries dlls programs sysmods others installs
+targets:   bldprogs libraries dlls programs sysmods miscbins others installs
 objects:   $$(_OBJS)
 bldprogs:  $$(_BLDPROGS)
@@ -3630,4 +3672,5 @@
 programs:  $$(_PROGRAMS)
 sysmods:   $$(_SYSMODS)
+miscbins:  $$(_MISCBINS)
 others:    $$(_OTHERS)
 installs:  $$(_INSTALLS) $$(_INSTALLS_DIRS) $$(_INSTALLS_FILES)
@@ -3682,5 +3725,5 @@
  ifneq ($(KBUILD_PROFILE_SELF),0)
   $(info prof: ALL=$(words $(_ALL_TARGETS)) BLDPROGS=$(words $(_ALL_BLDPROGS)) LIBRARIES=$(words $(_ALL_LIBRARIES)) IMPORT_LIBS=$(words $(IMPORT_LIBS)) DLLS=$(words $(DLLS)) PROGRAMS=$(words $(_ALL_PROGRAMS)) )
-  $(info prof: SYSMODS=$(words $(_ALL_SYSMODS)) OTHERS=$(words $(_ALL_OTHERS)) INSTALLS=$(words $(_ALL_INSTALLS)) FETCHES=$(words $(_ALL_FETCHES)) PACKING=$(words $(_PACKING)) TESTING=$(words $(TESTING)) )
+  $(info prof: SYSMODS=$(words $(_ALL_SYSMODS)) MISCBINS=$(words $(_ALL_MISCBINS)) OTHERS=$(words $(_ALL_OTHERS)) INSTALLS=$(words $(_ALL_INSTALLS)) FETCHES=$(words $(_ALL_FETCHES)) PACKING=$(words $(_PACKING)) TESTING=$(words $(TESTING)) )
   $(info prof: DIRS=$(words $(_DIR_ALL)) TOOLS=$(words $(_TOOLS)) SDKS=$(words $(_SDKS)) USES=$(words $(_USES)) OUT_FILES=$(words $(_OUT_FILES)) OBJS=$(words $(_OBJS)) CLEAN_FILES=$(words $(CLEAN_FILES) $(OTHER_CLEAN)) )
   $(info prof: DEPFILES_INCLUDED=$(words $(_DEPFILES_INCLUDED)) DEPFILES=$(words $(_DEPFILES)) MAKEFILES=$(words $(MAKEFILE_LIST)) )
Index: trunk/kBuild/header.kmk
===================================================================
--- trunk/kBuild/header.kmk	(revision 2083)
+++ trunk/kBuild/header.kmk	(revision 2084)
@@ -819,4 +819,12 @@
 ## @}
 
+## @name Properties valid on misc binaries (MISCBINS)
+## @{
+PROPS_MISCBINS_SINGLE        := $(PROPS_SINGLE_LNK) LDTOOL BINSUFF
+PROPS_MISCBINS_DEFERRED      := $(PROPS_DEFERRED)
+PROPS_MISCBINS_ACCUMULATE_R  := $(PROPS_ACCUMULATE_R_LNK) LDFLAGS
+PROPS_MISCBINS_ACCUMULATE_L  := $(PROPS_ACCUMULATE_L_LNK) LIBS LIBPATH
+## @}
+
 ## @name Properties valid on installs (INSTALLS)
 ## @{
@@ -852,5 +860,5 @@
 endef
 $(foreach prop, $(PROPS_ALL) \
-	FETCHES PATCHES BLDPROGS LIBRARIES IMPORT_LIBS DLLS PROGRAMS SYSMODS INSTALLS OTHERS \
+	FETCHES PATCHES BLDPROGS LIBRARIES IMPORT_LIBS DLLS PROGRAMS SYSMODS MISCBINS INSTALLS OTHERS \
 	SUBDIRS MAKEFILES BLDDIRS \
 	,$(eval $(value def_nuke_environment_prop)))
@@ -906,5 +914,5 @@
 PASS_BINARIES       := Programs
 PASS_BINARIES_trgs  :=
-PASS_BINARIES_vars  := _PROGRAMS _SYSMODS _OTHER_BINARIES
+PASS_BINARIES_vars  := _PROGRAMS _SYSMODS _MISC_BINS _OTHER_BINARIES
 PASS_BINARIES_pass  := binaries
 
Index: trunk/kBuild/subfooter.kmk
===================================================================
--- trunk/kBuild/subfooter.kmk	(revision 2083)
+++ trunk/kBuild/subfooter.kmk	(revision 2084)
@@ -71,4 +71,5 @@
 	$(PROGRAMS)    $(PROGRAMS.$(KBUILD_TARGET))     $(PROGRAMS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))    $(PROGRAMS.$(KBUILD_TARGET_ARCH))    $(PROGRAMS.$(KBUILD_TARGET_CPU))    $(PROGRAMS.$(KBUILD_TYPE))    \
 	$(SYSMODS)     $(SYSMODS.$(KBUILD_TARGET))      $(SYSMODS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))     $(SYSMODS.$(KBUILD_TARGET_ARCH))     $(SYSMODS.$(KBUILD_TARGET_CPU))     $(SYSMODS.$(KBUILD_TYPE))     \
+	$(MISCBINS)    $(MISCBINS.$(KBUILD_TARGET))     $(MISCBINS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))    $(MISCBINS.$(KBUILD_TARGET_ARCH))    $(MISCBINS.$(KBUILD_TARGET_CPU))    $(MISCBINS.$(KBUILD_TYPE))    \
 	$(INSTALLS)    $(INSTALLS.$(KBUILD_TARGET))     $(INSTALLS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))    $(INSTALLS.$(KBUILD_TARGET_ARCH))    $(INSTALLS.$(KBUILD_TARGET_CPU))    $(INSTALLS.$(KBUILD_TYPE))    \
 	$(OTHERS)      $(OTHERS.$(KBUILD_TARGET))       $(OTHERS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))      $(OTHERS.$(KBUILD_TARGET_ARCH))      $(OTHERS.$(KBUILD_TARGET_CPU))      $(OTHERS.$(KBUILD_TYPE))      \
Index: trunk/kBuild/subheader.kmk
===================================================================
--- trunk/kBuild/subheader.kmk	(revision 2083)
+++ trunk/kBuild/subheader.kmk	(revision 2084)
@@ -82,4 +82,5 @@
 	$(PROGRAMS)    $(PROGRAMS.$(KBUILD_TARGET))     $(PROGRAMS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))    $(PROGRAMS.$(KBUILD_TARGET_ARCH))    $(PROGRAMS.$(KBUILD_TARGET_CPU))    $(PROGRAMS.$(KBUILD_TYPE))    \
 	$(SYSMODS)     $(SYSMODS.$(KBUILD_TARGET))      $(SYSMODS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))     $(SYSMODS.$(KBUILD_TARGET_ARCH))     $(SYSMODS.$(KBUILD_TARGET_CPU))     $(SYSMODS.$(KBUILD_TYPE))     \
+	$(MISCBINS)    $(MISCBINS.$(KBUILD_TARGET))     $(MISCBINS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))    $(MISCBINS.$(KBUILD_TARGET_ARCH))    $(MISCBINS.$(KBUILD_TARGET_CPU))    $(MISCBINS.$(KBUILD_TYPE))    \
 	$(INSTALLS)    $(INSTALLS.$(KBUILD_TARGET))     $(INSTALLS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))    $(INSTALLS.$(KBUILD_TARGET_ARCH))    $(INSTALLS.$(KBUILD_TARGET_CPU))    $(INSTALLS.$(KBUILD_TYPE))    \
 	$(OTHERS)      $(OTHERS.$(KBUILD_TARGET))       $(OTHERS.$(KBUILD_TARGET).$(KBUILD_TARGET_ARCH))      $(OTHERS.$(KBUILD_TARGET_ARCH))      $(OTHERS.$(KBUILD_TARGET_CPU))      $(OTHERS.$(KBUILD_TYPE))      \
