scripts/gen-sorted.awk: Also emit the subdirectory dependency edges

gen-sorted.awk collects the inter-subdirectory dependencies from the
Depend files and the sysdeps Subdirs 'first' directives, but only uses
them to compute the flattened sorted-subdirs list.

This change also emit the raw edges as subdir-deps-<dir> make variables
so the parent makefile can express the same ordering as explicit
dependencies between the per-subdirectory recursion targets and run
independent subdirectories in parallel.

For instance, on x86_64-linux-gnu build the 'sysd-sorted' now shows:

  [...]
  subdir-deps-assert += iconvdata
  subdir-deps-assert += localedata
  subdir-deps-catgets += intl
  subdir-deps-debug += localedata
  subdir-deps-iconvdata += iconv
  subdir-deps-iconvdata += localedata
  subdir-deps-intl += iconvdata
  subdir-deps-intl += localedata
  subdir-deps-libio += localedata
  subdir-deps-localedata += locale
  [...]

Reviewed-by: Sam James <sam@gentoo.org>
This commit is contained in:
Adhemerval Zanella
2026-07-03 12:24:05 -03:00
parent 3c779ab155
commit e80612e596
+6
View File
@@ -108,5 +108,11 @@ END {
}
printf "%s\n", saw_elf ? " elf" : "";
# Also emit the raw dependency edges so the parent makefile can
# parallelize the subdirectory recursion while preserving the
# relative ordering the Depend files request.
for (i = 0; i < dnt; ++i)
printf "subdir-deps-%s += %s\n", from[i], to[i];
print "sysd-sorted-done := t"
}