build: Only first-level subdirectories with `mk_sub_build_dir`
We have two pairs of functions that are internally used to create the
directory structure the build output directory (normally `build/`):
- The function `mk_sub_build_dir` is intended to create only the first
level subdirectory under the build output directory for a library.
`sub_build_dir` is a companion function that returns the full path
of such a first-level subdirectory for a given library name.
- The function `mk_sub_libbuild_dir` is intended to create further
subdirectories under a library build directory that was created by
`mk_sub_build_dir`. This function allows multiple levels of
subdirectories (example: to create an header include folder:
'include/uk/bits').
`sub_libbuild_dir` is the companion function that returns the
full path of such a library subdirectory.
This commit corrects the implementation so that this behavior is
enforced.
Signed-off-by: Simon Kuenzer <simon@unikraft.io> Reviewed-by: Michalis Pappas <michalis@unikraft.io> Reviewed-by: Robert Kuban <robert.kuban@opensynergy.com> Approved-by: Razvan Deaconescu <razvand@unikraft.io> Tested-by: Unikraft CI <monkey@unikraft.io>
GitHub-Closes: #938