| 123456789101112131415161718192021222324252627282930313233 |
- //
- // Global.unix.pp
- //
- // This file is read in before any of the individual Sources.pp files
- // are read. It defines a few global variables to assist
- // Template.unix.pp.
- //
- #defun get_metalibs target,complete_libs
- // In Windows, we need to know the complete set of metalibs that
- // encapsulates each of the libraries we'd be linking with normally.
- // In the case where a particular library is not part of a metalib,
- // we include the library itself.
- #define actual_libs
- #foreach lib $[complete_libs]
- // Only consider libraries that we're actually building.
- #if $[all_libs $[and $[build_directory],$[build_target]],$[lib]]
- #define modmeta $[module $[TARGET],$[lib]]
- #if $[ne $[modmeta],]
- #if $[ne $[modmeta],$[target]] // We don't link with ourselves.
- #set actual_libs $[actual_libs] $[modmeta]
- #endif
- #else
- #set actual_libs $[actual_libs] $[lib]
- #endif
- #endif
- #end lib
- #set actual_libs $[unique $[actual_libs]] $[patsubst %:m,%,$[filter %:m,$[OTHER_LIBS]]]
- $[actual_libs]
- #end get_metalibs
- #defer actual_local_libs $[get_metalibs $[TARGET],$[complete_local_libs]]
|