To give you some control over the ordering of the directories, the macros EARLY_DIRS and LATE_DIRS specify directories to recurse into before or after all others. You'd use this facility with directory trees that contain one directory that depends on another directory at the same level; you want the independent directory to be done first, followed by the dependent directory.

In our example above, we've specified a LATE_DIRS value of boards, because the boards directory depends on the library directory (lib).

Note that the EARLY_DIRS and LATE_DIRS macros accept a list of directories. The list is treated as a group, with no defined ordering within that group.