| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- //
- // Depends.pp
- //
- // This file is loaded and run after each Sources.pp is read. It
- // defines the inter-directory dependencies, which is useful for
- // determining build order.
- //
- #if $[or $[eq $[DIR_TYPE], src], $[eq $[DIR_TYPE], metalib]]
- #if $[eq $[DEPEND_DIRS],]
- #define DEPENDABLE_HEADERS
- #forscopes metalib_target static_lib_target ss_lib_target lib_target noinst_lib_target bin_target noinst_bin_target
- // We can optimize quite a bit by evaluating now several of the key
- // deferred variables defined in Globals.pp. This way they won't need
- // to get repeatedly reevaluated as each directory examines each
- // other.
- #define build_directory $[build_directory]
- #define build_target $[build_target]
- #define active_local_libs $[active_local_libs]
- #define active_component_libs $[active_component_libs]
- #define active_libs $[active_libs]
- #define get_sources $[get_sources]
- // Report a warning for nonexisting dependencies.
- #define nonexisting $[unmapped all_libs,$[LOCAL_LIBS]]
- #if $[ne $[nonexisting],]
- Warning: Lib(s) $[nonexisting], referenced in $[DIRNAME]/$[TARGET], not found.
- #endif
- #set DEPENDABLE_HEADERS $[DEPENDABLE_HEADERS] $[filter %.h %.I,$[all_sources]]
- #end metalib_target static_lib_target ss_lib_target lib_target noinst_lib_target bin_target noinst_bin_target
- #forscopes test_bin_target
- #set DEPENDABLE_HEADERS $[DEPENDABLE_HEADERS] $[filter %.h %.I,$[all_sources]]
- #end test_bin_target
- // Allow the user to define additional EXTRA_DEPENDS targets in each
- // Sources.pp.
- #define DEPEND_DIRS \
- $[sort $[EXTRA_DEPENDS] $[all_libs $[DIRNAME],$[get_depend_libs]]]
- #set DEPENDABLE_HEADERS $[sort $[DEPENDABLE_HEADERS]]
- #endif
- #endif // DIR_TYPE
|