In article <67EC18AEC58049C5A08D8BD3DE63B0F3@WilliamTHINK>, William D. Jones <[email protected]> wrote: >As part of an experiment, I wish to play around with certain MAKECONF >variables that change how NetBSD is built on a cross host (particularly >EXTERNAL_TOOLCHAIN). I figure it would be a good idea to figure out how the >Makefile framework works and how targets are chosen. However, I've run into >a wall that likely has a simple solution I'm overlooking. Perhaps someone >can alleviate my confusion > >I'm starting with the tools directory: the top-level Makefile cds into tools >using the MAKEDIRTARGET defined in bsd.own.mk. In the tools directory, the >default target is build_install. build_install is defined in >bsd.build_install.mk. This is where I run into issues. From what I >understand, build_install will take all subdirectories defined using >${SUBDIR}, split them into groups separated by wait commands (though it >looks like the .WAITs are filtered out), and then executes $MAKEDIRTARGET >using the current directory as the destination of "cd", and "dependall-*" >(where "*" is a directory name) as the target. > >I cannot find where dependall-* is actually defined for each set of tools to >build. How does build_install know to traverse into subdirectories and >actually build each executable then? > >As always, thanks in advance for any help.
The subdir targets are created in bsd.subdir.mk. Is that your question? christos
