AST,DependencyScan,IRGen,Serialization,Tooling: track library style (#78777)

Track if the dependency is static or dynamic. This is in preparation for
helping rename the static library to differentiate it from import
libraries.
This commit is contained in:
Saleem Abdulrasool
2025-02-06 13:22:56 -08:00
committed by GitHub
parent 8d69807ed6
commit 9c85fbc8da
26 changed files with 158 additions and 96 deletions

View File

@@ -41,7 +41,7 @@ using llvm::BCVBR;
const unsigned char MODULE_DEPENDENCY_CACHE_FORMAT_SIGNATURE[] = {'I', 'M', 'D','C'};
const unsigned MODULE_DEPENDENCY_CACHE_FORMAT_VERSION_MAJOR = 9;
/// Increment this on every change.
const unsigned MODULE_DEPENDENCY_CACHE_FORMAT_VERSION_MINOR = 0;
const unsigned MODULE_DEPENDENCY_CACHE_FORMAT_VERSION_MINOR = 1;
/// Various identifiers in this format will rely on having their strings mapped
/// using this ID.
@@ -148,12 +148,12 @@ using IdentifierArrayLayout =
// A record for a given link library node containing information
// required for the build system client to capture a requirement
// to link a given dependency library.
using LinkLibraryLayout =
BCRecordLayout<LINK_LIBRARY_NODE, // ID
IdentifierIDField, // libraryName
IsFrameworkField, // isFramework
IsForceLoadField // forceLoad
>;
using LinkLibraryLayout = BCRecordLayout<LINK_LIBRARY_NODE, // ID
IdentifierIDField, // libraryName
IsFrameworkField, // isFramework
IsStaticField, // isStatic
IsForceLoadField // forceLoad
>;
using LinkLibraryArrayLayout =
BCRecordLayout<LINK_LIBRARY_ARRAY_NODE, IdentifierIDArryField>;