Merge topic 'shared-libs-with-number-suffix'
342fc04 Recognize shared library files with a numerical suffix
This commit is contained in:
commit
52f9b2e803
@ -882,7 +882,8 @@ void cmComputeLinkInformation::ComputeItemParserInfo()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Compute a regex to match link extensions.
|
// Compute a regex to match link extensions.
|
||||||
std::string libext = this->CreateExtensionRegex(this->LinkExtensions);
|
std::string libext = this->CreateExtensionRegex(this->LinkExtensions,
|
||||||
|
LinkUnknown);
|
||||||
|
|
||||||
// Create regex to remove any library extension.
|
// Create regex to remove any library extension.
|
||||||
std::string reg("(.*)");
|
std::string reg("(.*)");
|
||||||
@ -916,7 +917,8 @@ void cmComputeLinkInformation::ComputeItemParserInfo()
|
|||||||
if(!this->StaticLinkExtensions.empty())
|
if(!this->StaticLinkExtensions.empty())
|
||||||
{
|
{
|
||||||
std::string reg_static = reg;
|
std::string reg_static = reg;
|
||||||
reg_static += this->CreateExtensionRegex(this->StaticLinkExtensions);
|
reg_static += this->CreateExtensionRegex(this->StaticLinkExtensions,
|
||||||
|
LinkStatic);
|
||||||
#ifdef CM_COMPUTE_LINK_INFO_DEBUG
|
#ifdef CM_COMPUTE_LINK_INFO_DEBUG
|
||||||
fprintf(stderr, "static regex [%s]\n", reg_static.c_str());
|
fprintf(stderr, "static regex [%s]\n", reg_static.c_str());
|
||||||
#endif
|
#endif
|
||||||
@ -928,7 +930,7 @@ void cmComputeLinkInformation::ComputeItemParserInfo()
|
|||||||
{
|
{
|
||||||
std::string reg_shared = reg;
|
std::string reg_shared = reg;
|
||||||
this->SharedRegexString =
|
this->SharedRegexString =
|
||||||
this->CreateExtensionRegex(this->SharedLinkExtensions);
|
this->CreateExtensionRegex(this->SharedLinkExtensions, LinkShared);
|
||||||
reg_shared += this->SharedRegexString;
|
reg_shared += this->SharedRegexString;
|
||||||
#ifdef CM_COMPUTE_LINK_INFO_DEBUG
|
#ifdef CM_COMPUTE_LINK_INFO_DEBUG
|
||||||
fprintf(stderr, "shared regex [%s]\n", reg_shared.c_str());
|
fprintf(stderr, "shared regex [%s]\n", reg_shared.c_str());
|
||||||
@ -966,7 +968,7 @@ void cmComputeLinkInformation::AddLinkExtension(const char* e, LinkType type)
|
|||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
std::string
|
std::string
|
||||||
cmComputeLinkInformation
|
cmComputeLinkInformation
|
||||||
::CreateExtensionRegex(std::vector<std::string> const& exts)
|
::CreateExtensionRegex(std::vector<std::string> const& exts, LinkType type)
|
||||||
{
|
{
|
||||||
// Build a list of extension choices.
|
// Build a list of extension choices.
|
||||||
std::string libext = "(";
|
std::string libext = "(";
|
||||||
@ -995,6 +997,10 @@ cmComputeLinkInformation
|
|||||||
{
|
{
|
||||||
libext += "(\\.[0-9]+\\.[0-9]+)?";
|
libext += "(\\.[0-9]+\\.[0-9]+)?";
|
||||||
}
|
}
|
||||||
|
else if(type == LinkShared)
|
||||||
|
{
|
||||||
|
libext += "(\\.[0-9]+)?";
|
||||||
|
}
|
||||||
|
|
||||||
libext += "$";
|
libext += "$";
|
||||||
return libext;
|
return libext;
|
||||||
|
@ -134,7 +134,8 @@ private:
|
|||||||
bool OpenBSD;
|
bool OpenBSD;
|
||||||
void AddLinkPrefix(const char* p);
|
void AddLinkPrefix(const char* p);
|
||||||
void AddLinkExtension(const char* e, LinkType type);
|
void AddLinkExtension(const char* e, LinkType type);
|
||||||
std::string CreateExtensionRegex(std::vector<std::string> const& exts);
|
std::string CreateExtensionRegex(std::vector<std::string> const& exts,
|
||||||
|
LinkType type);
|
||||||
std::string NoCaseExpression(const char* str);
|
std::string NoCaseExpression(const char* str);
|
||||||
|
|
||||||
// Handling of link items.
|
// Handling of link items.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user